@swapkit/wallets 4.0.0-beta.40 → 4.0.0-beta.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-3vygfd50.js → chunk-a3x125xy.js} +1 -1
- package/dist/{chunk-940zcsgd.js → chunk-brmp4444.js} +1 -1
- package/dist/chunk-hj6ccepz.js +5 -0
- package/dist/chunk-hj6ccepz.js.map +10 -0
- package/dist/chunk-xy3yys5z.js +4 -0
- package/dist/chunk-xy3yys5z.js.map +10 -0
- package/dist/src/bitget/index.js +1 -1
- package/dist/src/coinbase/index.js +1 -1
- package/dist/src/ctrl/index.js +1 -1
- package/dist/src/evm-extensions/index.js +1 -1
- package/dist/src/exodus/index.js +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/keepkey/index.cjs +2 -2
- package/dist/src/keepkey/index.cjs.map +3 -3
- package/dist/src/keepkey/index.js +2 -2
- package/dist/src/keepkey/index.js.map +3 -3
- package/dist/src/keepkey-bex/index.js +1 -1
- package/dist/src/keystore/index.js +1 -1
- package/dist/src/ledger/index.js +1 -1
- package/dist/src/okx/index.js +1 -1
- package/dist/src/onekey/index.js +1 -1
- package/dist/src/phantom/index.js +1 -1
- package/dist/src/polkadotjs/index.js +1 -1
- package/dist/src/radix/index.js +1 -1
- package/dist/src/talisman/index.js +1 -1
- package/dist/src/trezor/index.js +1 -1
- package/dist/src/walletconnect/index.cjs +1 -1
- package/dist/src/walletconnect/index.js +1 -1
- package/dist/src/xaman/index.js +1 -1
- package/package.json +7 -7
- package/src/keepkey/chains/cosmos.ts +2 -2
- package/src/walletconnect/constants.ts +6 -4
- package/dist/chunk-3t5jkca2.js +0 -5
- package/dist/chunk-3t5jkca2.js.map +0 -10
- package/dist/chunk-kfw1mys1.js +0 -4
- package/dist/chunk-kfw1mys1.js.map +0 -10
- /package/dist/{chunk-3vygfd50.js.map → chunk-a3x125xy.js.map} +0 -0
- /package/dist/{chunk-940zcsgd.js.map → chunk-brmp4444.js.map} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as B}from"../../chunk-
|
|
1
|
+
import{F as B}from"../../chunk-a3x125xy.js";import{H as d,I as u}from"../../chunk-fa0psb24.js";import{AssetValue as L,Chain as t,ChainIdToChain as V,SwapKitError as _,WalletOption as b,createWallet as j,filterSupportedChains as H}from"@swapkit/helpers";import{Chain as a,EVMChains as D,SwapKitError as p,WalletOption as A}from"@swapkit/helpers";import{erc20ABI as I}from"@swapkit/helpers/contracts";var O=(e)=>{switch(e){case a.Bitcoin:return"bitcoin";case a.BitcoinCash:return"bitcoincash";case a.Dash:return"dash";case a.Dogecoin:return"dogecoin";case a.Litecoin:return"litecoin";default:throw new p("wallet_keepkey_chain_not_supported",{chain:e})}};function w(e){if(!window.keepkey)throw new p("wallet_keepkey_not_found");switch(e){case a.Ethereum:case a.Base:case a.Avalanche:case a.BinanceSmartChain:case a.Arbitrum:case a.Optimism:case a.Polygon:return window.keepkey.ethereum;case a.Cosmos:return window.keepkey.cosmos;case a.Bitcoin:return window.keepkey.bitcoin;case a.BitcoinCash:return window.keepkey.bitcoincash;case a.Dogecoin:return window.keepkey.dogecoin;case a.Litecoin:return window.keepkey.litecoin;case a.Dash:return window.keepkey.dash;case a.THORChain:return window.keepkey.thorchain;case a.Maya:return window.keepkey.mayachain;default:return}}async function F({method:e,params:c,chain:r}){let s=w(r);return new Promise((o,i)=>{if(s&&"request"in s)s.request({method:e,params:c},(n,m)=>{n?i(n):o(m)});else i(new p("wallet_provider_not_found"))})}async function k(e){let c=w(e);if(!c)throw new p({errorKey:"wallet_provider_not_found",info:{wallet:A.KEEPKEY,chain:e}});let r="request_accounts";if(D.includes(e))r="eth_requestAccounts";let[s]=await c.request({method:r,params:[]});return s}async function f({assetValue:e,recipient:c,memo:r,gasLimit:s},o="transfer"){if(!e)throw new p("wallet_keepkey_asset_not_defined");let i=await k(e.chain),n=[{amount:{amount:e.getValue("string"),decimals:e.decimal},asset:{chain:e.chain,symbol:e.symbol.toUpperCase(),ticker:e.symbol.toUpperCase()},memo:r,from:i,recipient:c,gasLimit:s}];return F({method:o,params:n,chain:e.chain})}function l(e,c){return{call:async({contractAddress:r,abi:s,funcName:o,funcParams:i=[],txOverrides:n})=>{if(!r)throw new p("wallet_keepkey_contract_address_not_provided");let{createContract:m,getCreateContractTxObject:g,isStateChangingCall:y,toHexString:P}=await import("@swapkit/toolboxes/evm");if(y({abi:s,funcName:o})){let X=g({provider:e,chain:c}),{value:U,from:q,to:M,data:x}=await X({contractAddress:r,abi:s,funcName:o,funcParams:i,txOverrides:n});return e.send("eth_sendTransaction",[{value:P(BigInt(U||0)),from:q,to:M,data:x||"0x"}])}let v=await m(r,s,e)[o]?.(...i);return typeof v?.hash==="string"?v?.hash:v},approve:async({assetAddress:r,spenderAddress:s,amount:o,from:i})=>{let{MAX_APPROVAL:n,getCreateContractTxObject:m,toHexString:g}=await import("@swapkit/toolboxes/evm"),y=m({provider:e,chain:c}),{value:P,to:T,data:E}=await y({contractAddress:r,abi:I,funcName:"approve",funcParams:[s,BigInt(o||n)],txOverrides:{from:i}});return e.send("eth_sendTransaction",[{value:g(BigInt(P||0)),from:i,to:T,data:E||"0x"}])},sendTransaction:async(r)=>{let{from:s,to:o,data:i,value:n}=r;if(!o)throw new p("wallet_keepkey_send_transaction_no_address");let{toHexString:m}=await import("@swapkit/toolboxes/evm");return e.send("eth_sendTransaction",[{value:m(BigInt(n||0)),from:s,to:o,data:i||"0x"}])}}}var K=j({name:"connectKeepkeyBex",supportedChains:[t.Arbitrum,t.Avalanche,t.BinanceSmartChain,t.Bitcoin,t.BitcoinCash,t.Base,t.Cosmos,t.Dash,t.Dogecoin,t.Ethereum,t.Kujira,t.Litecoin,t.Maya,t.Optimism,t.Polygon,t.Ripple,t.Solana,t.THORChain],walletType:b.KEEPKEY_BEX,connect:({addChain:e,supportedChains:c,walletType:r})=>async function s(o){let i=H({chains:o,supportedChains:c,walletType:r});return await Promise.all(i.map(async(n)=>{let m=await k(n),g=await R(n);e({...g,address:m,chain:n,walletType:r})})),!0}}),S=B(K);async function R(e){switch(e){case t.Maya:case t.THORChain:{let{getCosmosToolbox:c,THORCHAIN_GAS_VALUE:r,MAYA_GAS_VALUE:s}=await import("@swapkit/toolboxes/cosmos"),o=e===t.Maya?s:r;return{...c(e),deposit:(n)=>f({...n,recipient:""},"deposit"),transfer:(n)=>f({...n,gasLimit:o},"transfer")}}case t.Cosmos:case t.Kujira:{let{getCosmosToolbox:c}=await import("@swapkit/toolboxes/cosmos"),r=window.keepkey?.cosmos?.getOfflineSignerOnlyAmino(V[e]);if(!r)throw new _("wallet_keepkey_signer_not_found");let s=c(e,{signer:r}),o=await r.getAccounts();if(!o?.[0]?.address)throw new _("wallet_keepkey_no_accounts");let[{address:i}]=o;return{...s,address:i}}case t.Dash:case t.Bitcoin:case t.BitcoinCash:case t.Dogecoin:case t.Litecoin:{let{getUtxoToolbox:c}=await import("@swapkit/toolboxes/utxo");return{...await c(e),getBalance:async()=>{let o=O(e),i=await window?.keepkey?.[o]?.request({method:"request_balance"});return[L.from({chain:e,value:i[0].balance})]},transfer:f}}case t.Ethereum:case t.BinanceSmartChain:case t.Base:case t.Arbitrum:case t.Optimism:case t.Polygon:case t.Avalanche:{let{prepareNetworkSwitch:c,switchEVMWalletNetwork:r}=await import("@swapkit/helpers"),{getEvmToolbox:s}=await import("@swapkit/toolboxes/evm"),{BrowserProvider:o}=await import("ethers"),i=w(e);if(!i)throw new _("wallet_keepkey_not_found");let n=new o(i,"any"),m=await n.getSigner(),g=await s(e,{provider:n,signer:m}),y=l(n,e);try{if(e!==t.Ethereum){let P=g.getNetworkParams();await r(n,e,P)}}catch(P){throw new _({errorKey:"wallet_failed_to_add_or_switch_network",info:{wallet:b.KEEPKEY,chain:e}})}return c({provider:n,chain:e,toolbox:{...g,...y}})}default:return null}}export{K as keepkeyBexWallet,S as KEEPKEY_BEX_SUPPORTED_CHAINS};
|
|
2
2
|
|
|
3
3
|
//# debugId=E3231199BC788E9764756E2164756E21
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as v}from"../../chunk-
|
|
1
|
+
import{F as v}from"../../chunk-a3x125xy.js";import{H as m,I as h}from"../../chunk-fa0psb24.js";import{Chain as c,CosmosChains as E,EVMChains as A,NetworkDerivationPath as _,UTXOChains as R,WalletOption as w,createWallet as U,filterSupportedChains as W,updateDerivationPath as F}from"@swapkit/helpers";import{createCipheriv as P,createDecipheriv as K,pbkdf2Sync as y,randomBytes as d}from"node:crypto";import{generateMnemonic as T,validateMnemonic as D}from"@scure/bip39";import{wordlist as g}from"@scure/bip39/wordlists/english";async function x(t){let{blake2bFinal:i,blake2bInit:s,blake2bUpdate:n}=(await import("blakejs")).default,e=t;if(!(e instanceof Buffer))e=Buffer.from(e,"hex");let a=s(32);return n(a,e),Array.from(i(a)).map((r)=>r<16?`0${r.toString(16)}`:r.toString(16)).join("")}async function V(t,i){let n=d(16),e=d(32),a={c:262144,prf:"hmac-sha256",dklen:32,salt:e.toString("hex")},r=y(i,e,a.c,a.dklen,"sha256"),p=P("aes-128-ctr",r.subarray(0,16),n),o=Buffer.concat([p.update(Buffer.from(t,"utf8")),p.final()]),f=Buffer.concat([r.subarray(16,32),Buffer.from(o)]),l=await x(f);return{meta:"xchain-keystore",version:1,crypto:{cipher:"aes-128-ctr",cipherparams:{iv:n.toString("hex")},ciphertext:o.toString("hex"),kdf:"pbkdf2",kdfparams:a,mac:l}}}function H(t=12){return T(g,t===12?128:256)}function X(t){return D(t,g)}async function $(t,i){let{SwapKitError:s}=await import("@swapkit/helpers");switch(t.version){case 1:{let n=t.crypto.kdfparams,e=Buffer.from(n.salt,"hex"),a=y(i,e,n.c,n.dklen,"sha256"),r=Buffer.from(t.crypto.ciphertext,"hex"),p=Buffer.concat([a.subarray(16,32),r]);if(await x(p)!==t.crypto.mac)throw new s("wallet_keystore_invalid_password");let f=K(t.crypto.cipher,a.subarray(0,16),Buffer.from(t.crypto.cipherparams.iv,"hex"));return Buffer.concat([f.update(r),f.final()]).toString("utf8")}default:throw new s("wallet_keystore_unsupported_version")}}var N=U({name:"connectKeystore",walletType:w.KEYSTORE,supportedChains:[...A,...R,...E,c.Polkadot,c.Chainflip,c.Ripple,c.Solana,c.Tron,c.Near],connect:({addChain:t,supportedChains:i,walletType:s})=>async function n(e,a,r){let p=W({chains:e,supportedChains:i,walletType:s});return await Promise.all(p.map(async(o)=>{let f=typeof r==="number"?r:0,l=r&&typeof r==="object"?r[o]:void 0,b=_[o].slice(0,o===c.Solana?4:5),k=l||F(b,{index:f}),{getToolbox:S}=await import("@swapkit/toolboxes"),u=await S(o,{phrase:a,derivationPath:k}),C=await u.getAddress()||"",B={...u,address:C};t({...B,chain:o,walletType:w.KEYSTORE})})),!0}}),I=v(N);export{X as validatePhrase,N as keystoreWallet,H as generatePhrase,V as encryptToKeyStore,$ as decryptFromKeystore,I as KEYSTORE_SUPPORTED_CHAINS};
|
|
2
2
|
|
|
3
3
|
//# debugId=E28F1ED5D0FD24A764756E2164756E21
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/dist/src/ledger/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as k0}from"../../chunk-3vygfd50.js";import{H as W,I as J}from"../../chunk-fa0psb24.js";import{Chain as F,ChainId as Am,FeeOption as Pm,SKConfig as O0,StagenetChain as Im,SwapKitError as E,WalletOption as b0,createWallet as Sm,filterSupportedChains as Vm}from"@swapkit/helpers";import{Chain as M,SwapKitError as mm,WalletOption as Lm}from"@swapkit/helpers";var P=async({chain:m,ledgerClient:L})=>{if(!L)return"";switch(m){case M.Cosmos:case M.THORChain:return L.connect();case M.Ethereum:case M.BinanceSmartChain:case M.Avalanche:case M.Polygon:case M.Arbitrum:case M.Optimism:case M.Base:return L.getAddress();case M.Bitcoin:case M.BitcoinCash:case M.Dash:case M.Dogecoin:case M.Litecoin:{let y=L;await y.connect();let O=await y.getAddress();return m===M.BitcoinCash?O.replace("bitcoincash:",""):O}case M.Near:return await L.getAddress();case M.Ripple:return L.address;case M.Tron:return L.getAddress();default:throw new mm("wallet_chain_not_supported",{wallet:Lm.LEDGER,chain:m})}};import{Chain as j,SwapKitError as qm,WalletOption as lm}from"@swapkit/helpers";import{NetworkDerivationPath as Xm,SwapKitError as Q0,derivationPathToString as Bm}from"@swapkit/helpers";import{LedgerErrorCode as r,NetworkDerivationPath as Tm,SwapKitError as m0}from"@swapkit/helpers";import{SwapKitError as M0}from"@swapkit/helpers";var V=85,t=250;var I={GET_VERSION:0,INS_PUBLIC_KEY_SECP256K1:1,SIGN_SECP256K1:2,GET_ADDR_SECP256K1:4},u={INIT:0,ADD:1,LAST:2},p={ONLY_RETRIEVE:0,SHOW_ADDRESS_IN_DEVICE:1},K={JSON:0},w={NoError:36864},F0={1:"U2F: Unknown",2:"U2F: Bad request",3:"U2F: Configuration unsupported",4:"U2F: Device Ineligible",5:"U2F: Timeout",14:"Timeout",36864:"No errors",36865:"Device is busy",26626:"Error deriving keys",25600:"Execution Error",26368:"Wrong Length",27010:"Empty Buffer",27011:"Output buffer too small",27012:"Data is invalid",27013:"Conditions not satisfied",27014:"Transaction rejected",27264:"Bad key handle",27392:"Invalid P1/P2",27904:"Instruction not supported",28160:"App does not seem to be open",28416:"Unknown error",28417:"Sign/verify error"};function H(m){if(m in F0)return F0[m];return`Unknown Status Code: ${m}`}function ym(m){return typeof m==="object"&&m!==null&&!Array.isArray(m)&&!(m instanceof Date)}function C(m){if(m){if(ym(m)){if(Object.prototype.hasOwnProperty.call(m,"statusCode"))return{return_code:m.statusCode,error_message:H(m.statusCode)};if(Object.prototype.hasOwnProperty.call(m,"return_code")&&Object.prototype.hasOwnProperty.call(m,"error_message"))return m}return{return_code:65535,error_message:m.toString()}}return{return_code:65535,error_message:m.toString()}}async function a(m){return m.send(85,I.GET_VERSION,0,0).then((L)=>{let y=L.slice(-2),O=y[0]*256+y[1],_=0;if(L.length>=9)_=(L[5]<<24)+(L[6]<<16)+(L[7]<<8)+(L[8]<<0);return{return_code:O,error_message:H(O),test_mode:L[0]!==0,major:L[1],minor:L[2],patch:L[3],device_locked:L[4]===1,target_id:_.toString(16)}},C)}import{SwapKitError as h}from"@swapkit/helpers";function R0(m){if(m==null||m.length<3)throw new h("wallet_ledger_invalid_params",{reason:"Path too short"});if(m.length>10)throw new h("wallet_ledger_invalid_params",{reason:"Path too long"});let L=Buffer.alloc(1+4*m.length);L.writeUInt8(m.length,0);for(let y=0;y<m.length;y+=1){let O=m[y]||0;if(y<3)O|=2147483648;L.writeInt32LE(O,1+y*4)}return L}async function s(m,L,y,O,_=K.JSON){return m.transport.send(V,I.SIGN_SECP256K1,L,_,O,[w.NoError,27012,27264]).then((T)=>{let B=T.slice(-2),X=B[0]*256+B[1],G=H(X);if(X===27264||X===27012)G=`${G} : ${T.slice(0,T.length-2).toString("ascii")}`;let R=null;if(T.length>2)R=T.slice(0,T.length-2);return{signature:R,return_code:X,error_message:G}},C)}function _m(m){if(m.length!==65)throw new h("wallet_ledger_invalid_params",{reason:"decompressed public key length should be 65 bytes"});let L=m.slice(33,65),y=Buffer.from([2+(L[L.length-1]&1)]);return Buffer.concat([y,m.slice(1,33)])}async function W0(m,L){return m.transport.send(V,I.INS_PUBLIC_KEY_SECP256K1,0,0,L,[w.NoError]).then((y)=>{let O=y.slice(-2),_=O[0]*256+O[1],T=Buffer.from(y.slice(0,65));return{pk:T,compressed_pk:_m(T),return_code:_,error_message:H(_)}},C)}function J0(m){if(!m||m.length!==5)throw new h("wallet_ledger_invalid_params",{reason:"Path must be exactly 5 elements"});let L=Buffer.alloc(20);return L.writeUInt32LE(2147483648+m[0],0),L.writeUInt32LE(2147483648+m[1],4),L.writeUInt32LE(2147483648+m[2],8),L.writeUInt32LE(m[3],12),L.writeUInt32LE(m[4],16),L}function $0(m,L,y,O,_=K.JSON){let T=u.ADD;if(L===1)T=u.INIT;if(L===y)T=u.LAST;return s(m,T,0,O,_)}async function j0(m,L){return m.transport.send(V,I.GET_ADDR_SECP256K1,0,0,L,[w.NoError]).then((y)=>{let O=y.slice(-2),_=O[0]*256+O[1];return{pk:"OBSOLETE PROPERTY",compressed_pk:Buffer.from(y.slice(0,33)),return_code:_,error_message:H(_)}},C)}class b{transport;versionResponse;constructor(m){if(!m)throw new M0("wallet_ledger_transport_not_defined");this.transport=m}static serializeHRP(m){if(m==null||m.length<3||m.length>83)throw new M0("wallet_ledger_invalid_params",{reason:"Invalid HRP"});let L=Buffer.alloc(1+m.length);return L.writeUInt8(m.length,0),L.write(m,1),L}async serializePath(m){if(this.versionResponse=await a(this.transport),this.versionResponse.return_code!==w.NoError)throw this.versionResponse;switch(this.versionResponse.major){case 1:return R0(m);case 2:return J0(m);default:return Buffer.alloc(0)}}async signGetChunks(m,L){let y=await this.serializePath(m),O=[];O.push(y);for(let _=0;_<L.length;_+=t){let T=_+t;if(_>L.length)T=L.length;O.push(L.slice(_,T))}return O}async getVersion(){try{return this.versionResponse=await a(this.transport),this.versionResponse}catch(m){return C(m)}}async appInfo(){return this.transport.send(176,1,0,0).then((m)=>{let L=m.slice(-2),y=L[0]*256+L[1],O="",_="",T=0,B=0;if(m[0]!==1)return{return_code:36865,error_message:"response format ID not recognized"};let X=m[1];O=m.slice(2,2+X).toString("ascii");let G=2+X,R=m[G];G+=1,_=m.slice(G,G+R).toString("ascii"),G+=R;let $=m[G];return G+=1,T=$,B=m[G],{return_code:y,error_message:H(y),appName:O,appVersion:_,flagLen:T,flagsValue:B,flag_recovery:(B&1)!==0,flag_signed_mcu_code:(B&2)!==0,flag_onboarded:(B&4)!==0,flag_pin_validated:(B&128)!==0}},C)}async deviceInfo(){return this.transport.send(224,1,0,0,Buffer.from([]),[w.NoError,28160]).then((m)=>{let L=m.slice(-2),y=L[0]*256+L[1];if(y===28160)return{return_code:y,error_message:"This command is only available in the Dashboard"};let O=m.slice(0,4).toString("hex"),_=4,T=m[_];_+=1;let B=m.slice(_,_+T).toString();_+=T;let X=m[_];_+=1;let G=m.slice(_,_+X).toString("hex");_+=X;let R=m[_];_+=1;let $=m.slice(_,_+R);if($[R-1]===0)$=m.slice(_,_+R-1);let Z=$.toString();return{return_code:y,error_message:H(y),targetId:O,seVersion:B,flag:G,mcuVersion:Z}},C)}async publicKey(m){try{let L=await this.serializePath(m);switch(this.versionResponse.major){case 1:return W0(this,L);case 2:{let y=Buffer.concat([b.serializeHRP("thor"),L]);return j0(this,y)}default:return{return_code:25600,error_message:"App Version is not supported"}}}catch(L){return C(L)}}async getAddressAndPubKey(m,L,y=!1){return this.serializePath(m).then((O)=>{let _=Buffer.concat([b.serializeHRP(L),O]);return this.transport.send(V,I.GET_ADDR_SECP256K1,y?p.SHOW_ADDRESS_IN_DEVICE:p.ONLY_RETRIEVE,0,_,[w.NoError]).then((T)=>{let B=T.slice(-2),X=B[0]*256+B[1],G=Buffer.from(T.slice(0,33));return{bech32_address:Buffer.from(T.slice(33,-2)).toString(),compressed_pk:G,return_code:X,error_message:H(X)}},C)}).catch((O)=>C(O))}showAddressAndPubKey(m,L){return this.getAddressAndPubKey(m,L,!0)}signSendChunk(m,L,y,O=K.JSON){switch(this.versionResponse.major){case 1:return s(this,m,L,y,O);case 2:return $0(this,m,L,y,O);default:return{return_code:25600,error_message:"App Version is not supported"}}}async sign(m,L,y=K.JSON){let O=Buffer.from(L),_=[],T;try{_=await this.signGetChunks(m,O),T=await this.signSendChunk(1,_.length,_[0],y)}catch(X){C(X)}let B={return_code:T.return_code,error_message:T.error_message,signature:null};for(let X=1;X<_.length;X+=1)if(B=await this.signSendChunk(1+X,_.length,_[X],y),B.return_code!==w.NoError)break;return{return_code:B.return_code,error_message:B.error_message,signature:B.signature}}}import{SwapKitError as d}from"@swapkit/helpers";var e=()=>navigator?.usb,Om=async()=>{let m=e();if(typeof m?.getDevices!=="function")return[];let{ledgerUSBVendorId:L}=await import("@ledgerhq/devices"),O=(await m?.getDevices()).filter((_)=>_.vendorId===L);if(O.length>0)return O[0];return m?.requestDevice({filters:[{vendorId:L}]})},Y=async()=>{let m=await Om();if(!m)throw new d("wallet_ledger_device_not_found");if(await m.open(),m.configuration===null)await m.selectConfiguration(1);try{await m.reset()}catch{}let L=m.configurations[0].interfaces.find(({alternates:X})=>X.some(({interfaceClass:G})=>G===255));if(!L)throw await m.close(),new d("wallet_ledger_connection_error");try{await m.claimInterface(L.interfaceNumber)}catch(X){throw await m.close(),new d("wallet_ledger_connection_claimed",X)}let y=(await import("@ledgerhq/hw-transport-webusb")).default;if(!await y.isSupported())throw new d("wallet_ledger_webusb_not_supported");let{DisconnectedDevice:_}=await import("@ledgerhq/errors"),T=new y(m,L.interfaceNumber),B=(X)=>{if(m===X.device)e()?.removeEventListener("disconnect",B),T._emitDisconnect(new _)};return e()?.addEventListener("disconnect",B),T};class k{ledgerTimeout=50000;derivationPath=Tm.GAIA;transport;ledgerApp;chain="thor";checkOrCreateTransportAndLedger=async(m=!1)=>{if(!m&&this.transport&&this.ledgerApp)return;try{switch(this.transport=m||!this.transport?await Y():this.transport,this.chain){case"thor":{this.ledgerApp=m||!this.ledgerApp?new b(this.transport):this.ledgerApp;break}case"cosmos":{let L=(await import("@ledgerhq/hw-app-cosmos")).default;this.ledgerApp=m||!this.ledgerApp?new L(this.transport):this.ledgerApp}}return this.ledgerApp}catch(L){throw new m0("wallet_ledger_connection_error",L)}};validateResponse=(m,L)=>{switch(m){case r.NoError:return;case r.LockedDevice:throw new m0("wallet_ledger_device_locked",{message:`Ledger is locked: ${L}`});case r.TC_NotFound:throw new m0("wallet_ledger_device_not_found");default:break}}}class L0 extends k{pubKey=null;derivationPath;constructor(m=Xm.GAIA){super();this.chain="cosmos",this.derivationPath=Bm(m)}connect=async()=>{await this.checkOrCreateTransportAndLedger(!0);let{publicKey:m,address:L}=await this.getAddressAndPubKey();return this.pubKey=Buffer.from(m,"hex").toString("base64"),L};getAddressAndPubKey=async()=>{return await this.checkOrCreateTransportAndLedger(!0),await this.ledgerApp.getAddress(this.derivationPath,this.chain)};signTransaction=async(m,L="0")=>{await this.checkOrCreateTransportAndLedger(!0);let{return_code:y,error_message:O,signature:_}=await this.ledgerApp.sign(this.derivationPath,m);if(!this.pubKey)throw new Q0("wallet_ledger_pubkey_not_found");return this.validateResponse(y,O),[{pub_key:{type:"tendermint/PubKeySecp256k1",value:this.pubKey},sequence:L,signature:_}]};signAmino=async(m,L)=>{await this.checkOrCreateTransportAndLedger(!0);let y=await this.getAccounts();if(y.findIndex(($)=>$.address===m)===-1)throw new Q0("wallet_ledger_address_not_found",{address:m});let{encodeSecp256k1Signature:_,serializeSignDoc:T}=(await import("@cosmjs/amino")).default,{Secp256k1Signature:B}=(await import("@cosmjs/crypto")).default,X=T(L),G=await this.ledgerApp.sign(this.derivationPath,X);this.validateResponse(G.return_code,G.error_message);let R=B.fromDer(G.signature).toFixedLength();return{signed:L,signature:_(y[0].pubkey,R)}};getAccounts=async()=>{await this.checkOrCreateTransportAndLedger(!0);let m=await this.getAddressAndPubKey();return[{address:m.address,algo:"secp256k1",pubkey:Buffer.from(m.publicKey,"hex")}]}}import{ChainId as D,NetworkDerivationPath as Gm,SwapKitError as x,derivationPathToString as Fm}from"@swapkit/helpers";import{AbstractSigner as Rm}from"ethers";class z extends Rm{chainId=D.Ethereum;derivationPath="";ledgerApp=null;ledgerTimeout=50000;constructor({provider:m,derivationPath:L=Gm.OP,chainId:y=D.Optimism}){super(m);this.chainId=y||D.Ethereum,this.derivationPath=typeof L==="string"?L:Fm(L),Object.defineProperty(this,"provider",{enumerable:!0,value:m||null,writable:!1})}connect=(m)=>new z({provider:m,derivationPath:this.derivationPath,chainId:this.chainId});checkOrCreateTransportAndLedger=async()=>{if(this.ledgerApp)return;await this.createTransportAndLedger()};createTransportAndLedger=async()=>{let m=await Y(),L=(await import("@ledgerhq/hw-app-eth")).default;this.ledgerApp=new L(m)};getAddress=async()=>{let m=await this.getAddressAndPubKey();if(!m)throw new x("wallet_ledger_failed_to_get_address");return m.address};getAddressAndPubKey=async()=>{return await this.createTransportAndLedger(),this.ledgerApp?.getAddress(this.derivationPath)};showAddressAndPubKey=async()=>{return await this.createTransportAndLedger(),this.ledgerApp?.getAddress(this.derivationPath,!0)};signMessage=async(m)=>{let{Signature:L}=await import("ethers");await this.createTransportAndLedger();let y=await this.ledgerApp?.signPersonalMessage(this.derivationPath,m);if(!y)throw new x("wallet_ledger_signing_error");return y.r=`0x${y.r}`,y.s=`0x${y.s}`,L.from(y).serialized};sendTransaction=async(m)=>{if(!this.provider)throw new x("wallet_ledger_no_provider");let L=await this.signTransaction(m);return await this.provider.broadcastTransaction(L)};signTypedData(){throw new x("wallet_ledger_method_not_supported",{method:"signTypedData"})}signTransaction=async(m)=>{let{Transaction:L}=await import("ethers");await this.createTransportAndLedger();let y=await this.provider?.getTransactionCount(m.from||await this.getAddress()),O={chainId:m.chainId||this.chainId,data:m.data,gasLimit:m.gasLimit,...m.gasPrice&&{gasPrice:m.gasPrice},...!m.gasPrice&&m.maxFeePerGas&&{maxFeePerGas:m.maxFeePerGas,maxPriorityFeePerGas:m.maxPriorityFeePerGas},nonce:m.nonce!==void 0?Number((m.nonce||y||0).toString()):y,to:m.to?.toString(),value:m.value,type:m.type&&!Number.isNaN(m.type)?m.type:m.maxFeePerGas?2:0},_=L.from(O).unsignedSerialized.slice(2),{ledgerService:T}=await import("@ledgerhq/hw-app-eth"),B=await T.resolveTransaction(_,{},{externalPlugins:!0,erc20:!0}),X=await this.ledgerApp?.signTransaction(this.derivationPath,_,B);if(!X)throw new x("wallet_ledger_signing_error");let{r:G,s:R,v:$}=X;return L.from({...O,signature:{v:Number(BigInt($)),r:`0x${G}`,s:`0x${R}`}}).serialized}}var Y0=({provider:m,derivationPath:L})=>new z({chainId:D.Ethereum,provider:m,derivationPath:L}),Z0=({provider:m,derivationPath:L})=>new z({chainId:D.Avalanche,provider:m,derivationPath:L}),C0=({provider:m,derivationPath:L})=>new z({chainId:D.BinanceSmartChain,provider:m,derivationPath:L}),N0=({provider:m,derivationPath:L})=>new z({chainId:D.Arbitrum,provider:m,derivationPath:L}),U0=({provider:m,derivationPath:L})=>new z({chainId:D.Polygon,provider:m,derivationPath:L}),H0=({provider:m,derivationPath:L})=>new z({chainId:D.Optimism,provider:m,derivationPath:L}),D0=({provider:m,derivationPath:L})=>new z({chainId:D.Base,provider:m,derivationPath:L});async function f0(m,L){let y=await import("@ledgerhq/hw-app-near"),{Chain:O,DerivationPath:_,derivationPathToString:T,SwapKitError:B}=await import("@swapkit/helpers"),X=new y.default(m),G=L?T(L):_[O.Near],{address:R,publicKey:$}=await X.getAddress(G);return{async getPublicKey(){let{utils:Q}=await import("near-api-js");return Q.PublicKey.fromString(`ed25519:${$}`)},signNep413Message(Q,N,f,U,S){return Promise.reject(new B("wallet_ledger_method_not_supported",{wallet:"Ledger",method:"signNep413Message"}))},getAddress(){return Promise.resolve(R)},async signTransaction(Q){let{Signature:N,SignedTransaction:f}=await import("near-api-js/lib/transaction");try{let U=await X.signTransaction(Q.encode(),G);if(!U)throw new Error("Signature undefined");let S=new N({keyType:0,data:U}),v=new f({transaction:Q,signature:S});return[U,v]}catch(U){throw new B("wallet_ledger_signing_error",{error:U})}},signDelegateAction(Q){return Promise.reject(new B("wallet_ledger_method_not_supported",{wallet:"Ledger",method:"signDelegateAction"}))}}}import{base64 as Jm}from"@scure/base";import{NetworkDerivationPath as $m,SwapKitError as w0}from"@swapkit/helpers";import{base64 as Wm}from"@scure/base";import{SwapKitError as q}from"@swapkit/helpers";var y0=(m)=>{if(m.length<64)throw new q("wallet_ledger_invalid_signature",{reason:"Too short"});if(m[0]!==48)throw new q("wallet_ledger_invalid_signature",{reason:"TLV encoding: expected first byte 0x30"});if(m[1]+2!==m.length)throw new q("wallet_ledger_invalid_signature",{reason:"signature length does not match TLV"});if(m[2]!==2)throw new q("wallet_ledger_invalid_signature",{reason:"TLV encoding: expected length type 0x02"});let L=m[3],y=m.slice(4,L+4);if(y.length===33&&y[0]===0)y=y.slice(1,33);else if(y.length===33)throw new q("wallet_ledger_invalid_signature",{reason:"r too long"});while(y.length<32)y.unshift(0);if(m[L+4]!==2)throw new q("wallet_ledger_invalid_signature",{reason:"TLV encoding: expected length type 0x02 for s"});let O=m[L+5];if(4+L+2+O!==m.length)throw new q("wallet_ledger_invalid_signature",{reason:"TLV byte lengths do not match message length"});let _=m.slice(L+6,m.length);if(_.length===33&&_[0]===0)_=_.slice(1,33);else if(_.length===33)throw new q("wallet_ledger_invalid_signature",{reason:"s too long"});while(_.length<32)_.unshift(0);if(y.length!==32||_.length!==32)throw new q("wallet_ledger_invalid_signature",{reason:"must be 32 bytes each"});return Wm.encode(Buffer.concat([y,_]))};class _0 extends k{pubKey=null;derivationPath;constructor(m=$m.THOR){super();this.chain="thor",this.derivationPath=m}get pubkey(){return this.pubKey}connect=async()=>{await this.checkOrCreateTransportAndLedger();let{compressed_pk:m,bech32_address:L}=await this.getAddressAndPubKey();return this.pubKey=Jm.encode(m),L};getAddressAndPubKey=async()=>{await this.checkOrCreateTransportAndLedger(!0);let m=await this.ledgerApp.getAddressAndPubKey(this.derivationPath,this.chain);return this.validateResponse(m.return_code,m.error_message),m};showAddressAndPubKey=async()=>{await this.checkOrCreateTransportAndLedger(!0);let m=await this.ledgerApp.showAddressAndPubKey(this.derivationPath,this.chain);return this.validateResponse(m.return_code,m.error_message),m};signTransaction=async(m,L="0")=>{await this.checkOrCreateTransportAndLedger(!0);let{return_code:y,error_message:O,signature:_}=await this.ledgerApp.sign(this.derivationPath,m);if(!this.pubKey)throw new w0("wallet_ledger_pubkey_not_found");return this.validateResponse(y,O),[{pub_key:{type:"tendermint/PubKeySecp256k1",value:this.pubKey},sequence:L,signature:y0(_)}]};sign=async(m)=>{await this.checkOrCreateTransportAndLedger(!0);let{return_code:L,error_message:y,signature:O}=await this.ledgerApp.sign(this.derivationPath,m);if(!this.pubKey)throw new w0("wallet_ledger_pubkey_not_found");return this.validateResponse(L,y),y0(O)}}import{NetworkDerivationPath as jm,SwapKitError as g,derivationPathToString as Mm}from"@swapkit/helpers";class z0{derivationPath;ledgerApp=null;ledgerTimeout=50000;constructor(m){this.derivationPath=typeof m==="string"?m:Mm(m||jm.TRX)}checkOrCreateTransportAndLedger=async()=>{if(this.ledgerApp)return;await this.createTransportAndLedger()};createTransportAndLedger=async()=>{let m=await Y(),L=(await import("@ledgerhq/hw-app-trx")).default;this.ledgerApp=new L(m)};getAddress=async()=>{let m=await this.getAddressAndPubKey();if(!m)throw new g("wallet_ledger_failed_to_get_address");return m.address};getAddressAndPubKey=async()=>{await this.createTransportAndLedger();let m=await this.ledgerApp?.getAddress(this.derivationPath);if(!m)throw new g("wallet_ledger_failed_to_get_address");return{address:m.address,publicKey:m.publicKey}};showAddressAndPubKey=async()=>{return await this.createTransportAndLedger(),this.ledgerApp?.getAddress(this.derivationPath,!0)};signTransaction=async(m)=>{if(await this.createTransportAndLedger(),!this.ledgerApp)throw new g("wallet_ledger_transport_error");let L=JSON.stringify(m);try{let y=await this.ledgerApp.signTransaction(this.derivationPath,L,[]);if(!y)throw new g("wallet_ledger_signing_error");return{...m,signature:[y]}}catch(y){throw new g("wallet_ledger_signing_error",{error:y})}}}var q0=(m)=>new z0(m);import{SwapKitError as l0,derivationPathToString as Qm,getWalletFormatFor as Ym}from"@swapkit/helpers";import{Transaction as Zm}from"bitcoinjs-lib";var Cm=async({psbt:m,inputUtxos:L,btcApp:y,derivationPath:O},_)=>{let T=L.map(($)=>{let Z=Zm.fromHex($.txHex||"");return[y.splitTransaction(Z.toHex(),Z.hasWitnesses()),$.index,void 0,void 0]}),B=m.data.globalMap.unsignedTx.toBuffer().toString("hex"),X=y.splitTransaction(B,!0),G=y.serializeTransactionOutputs(X).toString("hex"),R={additionals:["bech32"],associatedKeysets:T.map(()=>O),inputs:T,outputScriptHex:G,segwit:!0,useTrustedInputForSegwit:!0};return y.createPaymentTransaction({...R,..._})},c=({chain:m,additionalSignParams:L})=>{let y,O=null;async function _(B=!0){if(B&&!y)new l0("wallet_ledger_connection_error",{message:`Ledger connection failed:
|
|
1
|
+
import{F as k0}from"../../chunk-a3x125xy.js";import{H as W,I as J}from"../../chunk-fa0psb24.js";import{Chain as F,ChainId as Am,FeeOption as Pm,SKConfig as O0,StagenetChain as Im,SwapKitError as E,WalletOption as b0,createWallet as Sm,filterSupportedChains as Vm}from"@swapkit/helpers";import{Chain as M,SwapKitError as mm,WalletOption as Lm}from"@swapkit/helpers";var P=async({chain:m,ledgerClient:L})=>{if(!L)return"";switch(m){case M.Cosmos:case M.THORChain:return L.connect();case M.Ethereum:case M.BinanceSmartChain:case M.Avalanche:case M.Polygon:case M.Arbitrum:case M.Optimism:case M.Base:return L.getAddress();case M.Bitcoin:case M.BitcoinCash:case M.Dash:case M.Dogecoin:case M.Litecoin:{let y=L;await y.connect();let O=await y.getAddress();return m===M.BitcoinCash?O.replace("bitcoincash:",""):O}case M.Near:return await L.getAddress();case M.Ripple:return L.address;case M.Tron:return L.getAddress();default:throw new mm("wallet_chain_not_supported",{wallet:Lm.LEDGER,chain:m})}};import{Chain as j,SwapKitError as qm,WalletOption as lm}from"@swapkit/helpers";import{NetworkDerivationPath as Xm,SwapKitError as Q0,derivationPathToString as Bm}from"@swapkit/helpers";import{LedgerErrorCode as r,NetworkDerivationPath as Tm,SwapKitError as m0}from"@swapkit/helpers";import{SwapKitError as M0}from"@swapkit/helpers";var V=85,t=250;var I={GET_VERSION:0,INS_PUBLIC_KEY_SECP256K1:1,SIGN_SECP256K1:2,GET_ADDR_SECP256K1:4},u={INIT:0,ADD:1,LAST:2},p={ONLY_RETRIEVE:0,SHOW_ADDRESS_IN_DEVICE:1},K={JSON:0},w={NoError:36864},F0={1:"U2F: Unknown",2:"U2F: Bad request",3:"U2F: Configuration unsupported",4:"U2F: Device Ineligible",5:"U2F: Timeout",14:"Timeout",36864:"No errors",36865:"Device is busy",26626:"Error deriving keys",25600:"Execution Error",26368:"Wrong Length",27010:"Empty Buffer",27011:"Output buffer too small",27012:"Data is invalid",27013:"Conditions not satisfied",27014:"Transaction rejected",27264:"Bad key handle",27392:"Invalid P1/P2",27904:"Instruction not supported",28160:"App does not seem to be open",28416:"Unknown error",28417:"Sign/verify error"};function H(m){if(m in F0)return F0[m];return`Unknown Status Code: ${m}`}function ym(m){return typeof m==="object"&&m!==null&&!Array.isArray(m)&&!(m instanceof Date)}function C(m){if(m){if(ym(m)){if(Object.prototype.hasOwnProperty.call(m,"statusCode"))return{return_code:m.statusCode,error_message:H(m.statusCode)};if(Object.prototype.hasOwnProperty.call(m,"return_code")&&Object.prototype.hasOwnProperty.call(m,"error_message"))return m}return{return_code:65535,error_message:m.toString()}}return{return_code:65535,error_message:m.toString()}}async function a(m){return m.send(85,I.GET_VERSION,0,0).then((L)=>{let y=L.slice(-2),O=y[0]*256+y[1],_=0;if(L.length>=9)_=(L[5]<<24)+(L[6]<<16)+(L[7]<<8)+(L[8]<<0);return{return_code:O,error_message:H(O),test_mode:L[0]!==0,major:L[1],minor:L[2],patch:L[3],device_locked:L[4]===1,target_id:_.toString(16)}},C)}import{SwapKitError as h}from"@swapkit/helpers";function R0(m){if(m==null||m.length<3)throw new h("wallet_ledger_invalid_params",{reason:"Path too short"});if(m.length>10)throw new h("wallet_ledger_invalid_params",{reason:"Path too long"});let L=Buffer.alloc(1+4*m.length);L.writeUInt8(m.length,0);for(let y=0;y<m.length;y+=1){let O=m[y]||0;if(y<3)O|=2147483648;L.writeInt32LE(O,1+y*4)}return L}async function s(m,L,y,O,_=K.JSON){return m.transport.send(V,I.SIGN_SECP256K1,L,_,O,[w.NoError,27012,27264]).then((T)=>{let B=T.slice(-2),X=B[0]*256+B[1],G=H(X);if(X===27264||X===27012)G=`${G} : ${T.slice(0,T.length-2).toString("ascii")}`;let R=null;if(T.length>2)R=T.slice(0,T.length-2);return{signature:R,return_code:X,error_message:G}},C)}function _m(m){if(m.length!==65)throw new h("wallet_ledger_invalid_params",{reason:"decompressed public key length should be 65 bytes"});let L=m.slice(33,65),y=Buffer.from([2+(L[L.length-1]&1)]);return Buffer.concat([y,m.slice(1,33)])}async function W0(m,L){return m.transport.send(V,I.INS_PUBLIC_KEY_SECP256K1,0,0,L,[w.NoError]).then((y)=>{let O=y.slice(-2),_=O[0]*256+O[1],T=Buffer.from(y.slice(0,65));return{pk:T,compressed_pk:_m(T),return_code:_,error_message:H(_)}},C)}function J0(m){if(!m||m.length!==5)throw new h("wallet_ledger_invalid_params",{reason:"Path must be exactly 5 elements"});let L=Buffer.alloc(20);return L.writeUInt32LE(2147483648+m[0],0),L.writeUInt32LE(2147483648+m[1],4),L.writeUInt32LE(2147483648+m[2],8),L.writeUInt32LE(m[3],12),L.writeUInt32LE(m[4],16),L}function $0(m,L,y,O,_=K.JSON){let T=u.ADD;if(L===1)T=u.INIT;if(L===y)T=u.LAST;return s(m,T,0,O,_)}async function j0(m,L){return m.transport.send(V,I.GET_ADDR_SECP256K1,0,0,L,[w.NoError]).then((y)=>{let O=y.slice(-2),_=O[0]*256+O[1];return{pk:"OBSOLETE PROPERTY",compressed_pk:Buffer.from(y.slice(0,33)),return_code:_,error_message:H(_)}},C)}class b{transport;versionResponse;constructor(m){if(!m)throw new M0("wallet_ledger_transport_not_defined");this.transport=m}static serializeHRP(m){if(m==null||m.length<3||m.length>83)throw new M0("wallet_ledger_invalid_params",{reason:"Invalid HRP"});let L=Buffer.alloc(1+m.length);return L.writeUInt8(m.length,0),L.write(m,1),L}async serializePath(m){if(this.versionResponse=await a(this.transport),this.versionResponse.return_code!==w.NoError)throw this.versionResponse;switch(this.versionResponse.major){case 1:return R0(m);case 2:return J0(m);default:return Buffer.alloc(0)}}async signGetChunks(m,L){let y=await this.serializePath(m),O=[];O.push(y);for(let _=0;_<L.length;_+=t){let T=_+t;if(_>L.length)T=L.length;O.push(L.slice(_,T))}return O}async getVersion(){try{return this.versionResponse=await a(this.transport),this.versionResponse}catch(m){return C(m)}}async appInfo(){return this.transport.send(176,1,0,0).then((m)=>{let L=m.slice(-2),y=L[0]*256+L[1],O="",_="",T=0,B=0;if(m[0]!==1)return{return_code:36865,error_message:"response format ID not recognized"};let X=m[1];O=m.slice(2,2+X).toString("ascii");let G=2+X,R=m[G];G+=1,_=m.slice(G,G+R).toString("ascii"),G+=R;let $=m[G];return G+=1,T=$,B=m[G],{return_code:y,error_message:H(y),appName:O,appVersion:_,flagLen:T,flagsValue:B,flag_recovery:(B&1)!==0,flag_signed_mcu_code:(B&2)!==0,flag_onboarded:(B&4)!==0,flag_pin_validated:(B&128)!==0}},C)}async deviceInfo(){return this.transport.send(224,1,0,0,Buffer.from([]),[w.NoError,28160]).then((m)=>{let L=m.slice(-2),y=L[0]*256+L[1];if(y===28160)return{return_code:y,error_message:"This command is only available in the Dashboard"};let O=m.slice(0,4).toString("hex"),_=4,T=m[_];_+=1;let B=m.slice(_,_+T).toString();_+=T;let X=m[_];_+=1;let G=m.slice(_,_+X).toString("hex");_+=X;let R=m[_];_+=1;let $=m.slice(_,_+R);if($[R-1]===0)$=m.slice(_,_+R-1);let Z=$.toString();return{return_code:y,error_message:H(y),targetId:O,seVersion:B,flag:G,mcuVersion:Z}},C)}async publicKey(m){try{let L=await this.serializePath(m);switch(this.versionResponse.major){case 1:return W0(this,L);case 2:{let y=Buffer.concat([b.serializeHRP("thor"),L]);return j0(this,y)}default:return{return_code:25600,error_message:"App Version is not supported"}}}catch(L){return C(L)}}async getAddressAndPubKey(m,L,y=!1){return this.serializePath(m).then((O)=>{let _=Buffer.concat([b.serializeHRP(L),O]);return this.transport.send(V,I.GET_ADDR_SECP256K1,y?p.SHOW_ADDRESS_IN_DEVICE:p.ONLY_RETRIEVE,0,_,[w.NoError]).then((T)=>{let B=T.slice(-2),X=B[0]*256+B[1],G=Buffer.from(T.slice(0,33));return{bech32_address:Buffer.from(T.slice(33,-2)).toString(),compressed_pk:G,return_code:X,error_message:H(X)}},C)}).catch((O)=>C(O))}showAddressAndPubKey(m,L){return this.getAddressAndPubKey(m,L,!0)}signSendChunk(m,L,y,O=K.JSON){switch(this.versionResponse.major){case 1:return s(this,m,L,y,O);case 2:return $0(this,m,L,y,O);default:return{return_code:25600,error_message:"App Version is not supported"}}}async sign(m,L,y=K.JSON){let O=Buffer.from(L),_=[],T;try{_=await this.signGetChunks(m,O),T=await this.signSendChunk(1,_.length,_[0],y)}catch(X){C(X)}let B={return_code:T.return_code,error_message:T.error_message,signature:null};for(let X=1;X<_.length;X+=1)if(B=await this.signSendChunk(1+X,_.length,_[X],y),B.return_code!==w.NoError)break;return{return_code:B.return_code,error_message:B.error_message,signature:B.signature}}}import{SwapKitError as d}from"@swapkit/helpers";var e=()=>navigator?.usb,Om=async()=>{let m=e();if(typeof m?.getDevices!=="function")return[];let{ledgerUSBVendorId:L}=await import("@ledgerhq/devices"),O=(await m?.getDevices()).filter((_)=>_.vendorId===L);if(O.length>0)return O[0];return m?.requestDevice({filters:[{vendorId:L}]})},Y=async()=>{let m=await Om();if(!m)throw new d("wallet_ledger_device_not_found");if(await m.open(),m.configuration===null)await m.selectConfiguration(1);try{await m.reset()}catch{}let L=m.configurations[0].interfaces.find(({alternates:X})=>X.some(({interfaceClass:G})=>G===255));if(!L)throw await m.close(),new d("wallet_ledger_connection_error");try{await m.claimInterface(L.interfaceNumber)}catch(X){throw await m.close(),new d("wallet_ledger_connection_claimed",X)}let y=(await import("@ledgerhq/hw-transport-webusb")).default;if(!await y.isSupported())throw new d("wallet_ledger_webusb_not_supported");let{DisconnectedDevice:_}=await import("@ledgerhq/errors"),T=new y(m,L.interfaceNumber),B=(X)=>{if(m===X.device)e()?.removeEventListener("disconnect",B),T._emitDisconnect(new _)};return e()?.addEventListener("disconnect",B),T};class k{ledgerTimeout=50000;derivationPath=Tm.GAIA;transport;ledgerApp;chain="thor";checkOrCreateTransportAndLedger=async(m=!1)=>{if(!m&&this.transport&&this.ledgerApp)return;try{switch(this.transport=m||!this.transport?await Y():this.transport,this.chain){case"thor":{this.ledgerApp=m||!this.ledgerApp?new b(this.transport):this.ledgerApp;break}case"cosmos":{let L=(await import("@ledgerhq/hw-app-cosmos")).default;this.ledgerApp=m||!this.ledgerApp?new L(this.transport):this.ledgerApp}}return this.ledgerApp}catch(L){throw new m0("wallet_ledger_connection_error",L)}};validateResponse=(m,L)=>{switch(m){case r.NoError:return;case r.LockedDevice:throw new m0("wallet_ledger_device_locked",{message:`Ledger is locked: ${L}`});case r.TC_NotFound:throw new m0("wallet_ledger_device_not_found");default:break}}}class L0 extends k{pubKey=null;derivationPath;constructor(m=Xm.GAIA){super();this.chain="cosmos",this.derivationPath=Bm(m)}connect=async()=>{await this.checkOrCreateTransportAndLedger(!0);let{publicKey:m,address:L}=await this.getAddressAndPubKey();return this.pubKey=Buffer.from(m,"hex").toString("base64"),L};getAddressAndPubKey=async()=>{return await this.checkOrCreateTransportAndLedger(!0),await this.ledgerApp.getAddress(this.derivationPath,this.chain)};signTransaction=async(m,L="0")=>{await this.checkOrCreateTransportAndLedger(!0);let{return_code:y,error_message:O,signature:_}=await this.ledgerApp.sign(this.derivationPath,m);if(!this.pubKey)throw new Q0("wallet_ledger_pubkey_not_found");return this.validateResponse(y,O),[{pub_key:{type:"tendermint/PubKeySecp256k1",value:this.pubKey},sequence:L,signature:_}]};signAmino=async(m,L)=>{await this.checkOrCreateTransportAndLedger(!0);let y=await this.getAccounts();if(y.findIndex(($)=>$.address===m)===-1)throw new Q0("wallet_ledger_address_not_found",{address:m});let{encodeSecp256k1Signature:_,serializeSignDoc:T}=(await import("@cosmjs/amino")).default,{Secp256k1Signature:B}=(await import("@cosmjs/crypto")).default,X=T(L),G=await this.ledgerApp.sign(this.derivationPath,X);this.validateResponse(G.return_code,G.error_message);let R=B.fromDer(G.signature).toFixedLength();return{signed:L,signature:_(y[0].pubkey,R)}};getAccounts=async()=>{await this.checkOrCreateTransportAndLedger(!0);let m=await this.getAddressAndPubKey();return[{address:m.address,algo:"secp256k1",pubkey:Buffer.from(m.publicKey,"hex")}]}}import{ChainId as D,NetworkDerivationPath as Gm,SwapKitError as x,derivationPathToString as Fm}from"@swapkit/helpers";import{AbstractSigner as Rm}from"ethers";class z extends Rm{chainId=D.Ethereum;derivationPath="";ledgerApp=null;ledgerTimeout=50000;constructor({provider:m,derivationPath:L=Gm.OP,chainId:y=D.Optimism}){super(m);this.chainId=y||D.Ethereum,this.derivationPath=typeof L==="string"?L:Fm(L),Object.defineProperty(this,"provider",{enumerable:!0,value:m||null,writable:!1})}connect=(m)=>new z({provider:m,derivationPath:this.derivationPath,chainId:this.chainId});checkOrCreateTransportAndLedger=async()=>{if(this.ledgerApp)return;await this.createTransportAndLedger()};createTransportAndLedger=async()=>{let m=await Y(),L=(await import("@ledgerhq/hw-app-eth")).default;this.ledgerApp=new L(m)};getAddress=async()=>{let m=await this.getAddressAndPubKey();if(!m)throw new x("wallet_ledger_failed_to_get_address");return m.address};getAddressAndPubKey=async()=>{return await this.createTransportAndLedger(),this.ledgerApp?.getAddress(this.derivationPath)};showAddressAndPubKey=async()=>{return await this.createTransportAndLedger(),this.ledgerApp?.getAddress(this.derivationPath,!0)};signMessage=async(m)=>{let{Signature:L}=await import("ethers");await this.createTransportAndLedger();let y=await this.ledgerApp?.signPersonalMessage(this.derivationPath,m);if(!y)throw new x("wallet_ledger_signing_error");return y.r=`0x${y.r}`,y.s=`0x${y.s}`,L.from(y).serialized};sendTransaction=async(m)=>{if(!this.provider)throw new x("wallet_ledger_no_provider");let L=await this.signTransaction(m);return await this.provider.broadcastTransaction(L)};signTypedData(){throw new x("wallet_ledger_method_not_supported",{method:"signTypedData"})}signTransaction=async(m)=>{let{Transaction:L}=await import("ethers");await this.createTransportAndLedger();let y=await this.provider?.getTransactionCount(m.from||await this.getAddress()),O={chainId:m.chainId||this.chainId,data:m.data,gasLimit:m.gasLimit,...m.gasPrice&&{gasPrice:m.gasPrice},...!m.gasPrice&&m.maxFeePerGas&&{maxFeePerGas:m.maxFeePerGas,maxPriorityFeePerGas:m.maxPriorityFeePerGas},nonce:m.nonce!==void 0?Number((m.nonce||y||0).toString()):y,to:m.to?.toString(),value:m.value,type:m.type&&!Number.isNaN(m.type)?m.type:m.maxFeePerGas?2:0},_=L.from(O).unsignedSerialized.slice(2),{ledgerService:T}=await import("@ledgerhq/hw-app-eth"),B=await T.resolveTransaction(_,{},{externalPlugins:!0,erc20:!0}),X=await this.ledgerApp?.signTransaction(this.derivationPath,_,B);if(!X)throw new x("wallet_ledger_signing_error");let{r:G,s:R,v:$}=X;return L.from({...O,signature:{v:Number(BigInt($)),r:`0x${G}`,s:`0x${R}`}}).serialized}}var Y0=({provider:m,derivationPath:L})=>new z({chainId:D.Ethereum,provider:m,derivationPath:L}),Z0=({provider:m,derivationPath:L})=>new z({chainId:D.Avalanche,provider:m,derivationPath:L}),C0=({provider:m,derivationPath:L})=>new z({chainId:D.BinanceSmartChain,provider:m,derivationPath:L}),N0=({provider:m,derivationPath:L})=>new z({chainId:D.Arbitrum,provider:m,derivationPath:L}),U0=({provider:m,derivationPath:L})=>new z({chainId:D.Polygon,provider:m,derivationPath:L}),H0=({provider:m,derivationPath:L})=>new z({chainId:D.Optimism,provider:m,derivationPath:L}),D0=({provider:m,derivationPath:L})=>new z({chainId:D.Base,provider:m,derivationPath:L});async function f0(m,L){let y=await import("@ledgerhq/hw-app-near"),{Chain:O,DerivationPath:_,derivationPathToString:T,SwapKitError:B}=await import("@swapkit/helpers"),X=new y.default(m),G=L?T(L):_[O.Near],{address:R,publicKey:$}=await X.getAddress(G);return{async getPublicKey(){let{utils:Q}=await import("near-api-js");return Q.PublicKey.fromString(`ed25519:${$}`)},signNep413Message(Q,N,f,U,S){return Promise.reject(new B("wallet_ledger_method_not_supported",{wallet:"Ledger",method:"signNep413Message"}))},getAddress(){return Promise.resolve(R)},async signTransaction(Q){let{Signature:N,SignedTransaction:f}=await import("near-api-js/lib/transaction");try{let U=await X.signTransaction(Q.encode(),G);if(!U)throw new Error("Signature undefined");let S=new N({keyType:0,data:U}),v=new f({transaction:Q,signature:S});return[U,v]}catch(U){throw new B("wallet_ledger_signing_error",{error:U})}},signDelegateAction(Q){return Promise.reject(new B("wallet_ledger_method_not_supported",{wallet:"Ledger",method:"signDelegateAction"}))}}}import{base64 as Jm}from"@scure/base";import{NetworkDerivationPath as $m,SwapKitError as w0}from"@swapkit/helpers";import{base64 as Wm}from"@scure/base";import{SwapKitError as q}from"@swapkit/helpers";var y0=(m)=>{if(m.length<64)throw new q("wallet_ledger_invalid_signature",{reason:"Too short"});if(m[0]!==48)throw new q("wallet_ledger_invalid_signature",{reason:"TLV encoding: expected first byte 0x30"});if(m[1]+2!==m.length)throw new q("wallet_ledger_invalid_signature",{reason:"signature length does not match TLV"});if(m[2]!==2)throw new q("wallet_ledger_invalid_signature",{reason:"TLV encoding: expected length type 0x02"});let L=m[3],y=m.slice(4,L+4);if(y.length===33&&y[0]===0)y=y.slice(1,33);else if(y.length===33)throw new q("wallet_ledger_invalid_signature",{reason:"r too long"});while(y.length<32)y.unshift(0);if(m[L+4]!==2)throw new q("wallet_ledger_invalid_signature",{reason:"TLV encoding: expected length type 0x02 for s"});let O=m[L+5];if(4+L+2+O!==m.length)throw new q("wallet_ledger_invalid_signature",{reason:"TLV byte lengths do not match message length"});let _=m.slice(L+6,m.length);if(_.length===33&&_[0]===0)_=_.slice(1,33);else if(_.length===33)throw new q("wallet_ledger_invalid_signature",{reason:"s too long"});while(_.length<32)_.unshift(0);if(y.length!==32||_.length!==32)throw new q("wallet_ledger_invalid_signature",{reason:"must be 32 bytes each"});return Wm.encode(Buffer.concat([y,_]))};class _0 extends k{pubKey=null;derivationPath;constructor(m=$m.THOR){super();this.chain="thor",this.derivationPath=m}get pubkey(){return this.pubKey}connect=async()=>{await this.checkOrCreateTransportAndLedger();let{compressed_pk:m,bech32_address:L}=await this.getAddressAndPubKey();return this.pubKey=Jm.encode(m),L};getAddressAndPubKey=async()=>{await this.checkOrCreateTransportAndLedger(!0);let m=await this.ledgerApp.getAddressAndPubKey(this.derivationPath,this.chain);return this.validateResponse(m.return_code,m.error_message),m};showAddressAndPubKey=async()=>{await this.checkOrCreateTransportAndLedger(!0);let m=await this.ledgerApp.showAddressAndPubKey(this.derivationPath,this.chain);return this.validateResponse(m.return_code,m.error_message),m};signTransaction=async(m,L="0")=>{await this.checkOrCreateTransportAndLedger(!0);let{return_code:y,error_message:O,signature:_}=await this.ledgerApp.sign(this.derivationPath,m);if(!this.pubKey)throw new w0("wallet_ledger_pubkey_not_found");return this.validateResponse(y,O),[{pub_key:{type:"tendermint/PubKeySecp256k1",value:this.pubKey},sequence:L,signature:y0(_)}]};sign=async(m)=>{await this.checkOrCreateTransportAndLedger(!0);let{return_code:L,error_message:y,signature:O}=await this.ledgerApp.sign(this.derivationPath,m);if(!this.pubKey)throw new w0("wallet_ledger_pubkey_not_found");return this.validateResponse(L,y),y0(O)}}import{NetworkDerivationPath as jm,SwapKitError as g,derivationPathToString as Mm}from"@swapkit/helpers";class z0{derivationPath;ledgerApp=null;ledgerTimeout=50000;constructor(m){this.derivationPath=typeof m==="string"?m:Mm(m||jm.TRX)}checkOrCreateTransportAndLedger=async()=>{if(this.ledgerApp)return;await this.createTransportAndLedger()};createTransportAndLedger=async()=>{let m=await Y(),L=(await import("@ledgerhq/hw-app-trx")).default;this.ledgerApp=new L(m)};getAddress=async()=>{let m=await this.getAddressAndPubKey();if(!m)throw new g("wallet_ledger_failed_to_get_address");return m.address};getAddressAndPubKey=async()=>{await this.createTransportAndLedger();let m=await this.ledgerApp?.getAddress(this.derivationPath);if(!m)throw new g("wallet_ledger_failed_to_get_address");return{address:m.address,publicKey:m.publicKey}};showAddressAndPubKey=async()=>{return await this.createTransportAndLedger(),this.ledgerApp?.getAddress(this.derivationPath,!0)};signTransaction=async(m)=>{if(await this.createTransportAndLedger(),!this.ledgerApp)throw new g("wallet_ledger_transport_error");let L=JSON.stringify(m);try{let y=await this.ledgerApp.signTransaction(this.derivationPath,L,[]);if(!y)throw new g("wallet_ledger_signing_error");return{...m,signature:[y]}}catch(y){throw new g("wallet_ledger_signing_error",{error:y})}}}var q0=(m)=>new z0(m);import{SwapKitError as l0,derivationPathToString as Qm,getWalletFormatFor as Ym}from"@swapkit/helpers";import{Transaction as Zm}from"bitcoinjs-lib";var Cm=async({psbt:m,inputUtxos:L,btcApp:y,derivationPath:O},_)=>{let T=L.map(($)=>{let Z=Zm.fromHex($.txHex||"");return[y.splitTransaction(Z.toHex(),Z.hasWitnesses()),$.index,void 0,void 0]}),B=m.data.globalMap.unsignedTx.toBuffer().toString("hex"),X=y.splitTransaction(B,!0),G=y.serializeTransactionOutputs(X).toString("hex"),R={additionals:["bech32"],associatedKeysets:T.map(()=>O),inputs:T,outputScriptHex:G,segwit:!0,useTrustedInputForSegwit:!0};return y.createPaymentTransaction({...R,..._})},c=({chain:m,additionalSignParams:L})=>{let y,O=null;async function _(B=!0){if(B&&!y)new l0("wallet_ledger_connection_error",{message:`Ledger connection failed:
|
|
2
2
|
${JSON.stringify({checkBtcApp:B,btcApp:y})}`});O||=await Y()}async function T(){O=await Y(),y=new(await import("@ledgerhq/hw-app-btc")).default({transport:O,currency:m})}return(B)=>{let X=typeof B==="string"?B:Qm(B),G=Ym(X);return{connect:async()=>{await _(!1),y=new(await import("@ledgerhq/hw-app-btc")).default({transport:O,currency:m})},getExtendedPublicKey:async(R="84'/0'/0'",$=76067358)=>{return await _(!1),y.getWalletXpub({path:R,xpubVersion:$})},signTransaction:async(R,$)=>{return await T(),Cm({psbt:R,derivationPath:X,btcApp:y,inputUtxos:$},L)},getAddress:async()=>{let{toCashAddress:R}=await import("@swapkit/toolboxes/utxo");await _(!1);let{bitcoinAddress:$}=await y.getWalletPublicKey(X,{format:G});if(!$)throw new l0("wallet_ledger_get_address_error",{message:`Cannot get ${m} address from ledger derivation path: ${X}`});return m==="bitcoin-cash"&&G==="legacy"?R($).replace(/(bchtest:|bitcoincash:)/,""):$}}}},A0=c({chain:"bitcoin"}),P0=c({chain:"litecoin"}),I0=c({chain:"bitcoin-cash",additionalSignParams:{segwit:!1,additionals:["abc"],sigHashType:65}}),S0=c({chain:"dogecoin",additionalSignParams:{additionals:[],segwit:!1,useTrustedInputForSegwit:!1}}),V0=c({chain:"dash",additionalSignParams:{additionals:[],segwit:!1,useTrustedInputForSegwit:!1}});import{Chain as Nm,NetworkDerivationPath as Um,derivationPathToString as Hm}from"@swapkit/helpers";import{encode as K0}from"ripple-binary-codec";var Dm=2147483648;function fm(m){let L={};for(let y in m)if(m[y]!==null&&m[y]!==void 0)L[y]=m[y];return L}async function wm(m){let{default:L}=await import("@ledgerhq/hw-app-xrp");return new L(m)}function zm({instance:m,derivationPath:L}){return m.getAddress(L)}var E0=async(m)=>{let L=Hm(m||Um[Nm.Ripple]),y=await Y(),O=await wm(y),{address:_,publicKey:T}=await zm({instance:O,derivationPath:L});async function B(X){let{hashes:G}=await import("@swapkit/toolboxes/ripple"),$={...fm(X),Flags:X.Flags||Dm,SigningPubKey:T.toUpperCase()},Z=K0($),Q=await O.signTransaction(L,Z),N=K0({...$,TxnSignature:Q}),f=G.hashSignedTx(N);return{tx_blob:N,hash:f}}return{address:_,sign:B}};var l=async({chain:m,derivationPath:L})=>{let{match:y}=await import("ts-pattern");return y(m).returnType().with(j.THORChain,()=>Promise.resolve(new _0(L))).with(j.Cosmos,()=>Promise.resolve(new L0(L))).with(j.Bitcoin,()=>Promise.resolve(A0(L))).with(j.BitcoinCash,()=>Promise.resolve(I0(L))).with(j.Dash,()=>Promise.resolve(V0(L))).with(j.Dogecoin,()=>Promise.resolve(S0(L))).with(j.Litecoin,()=>Promise.resolve(P0(L))).with(j.Ripple,()=>Promise.resolve(E0(L))).with(j.Tron,()=>Promise.resolve(q0(L))).with(j.Near,async()=>{let O=await Y();return f0(O,L)}).with(j.Arbitrum,j.Avalanche,j.BinanceSmartChain,j.Ethereum,j.Optimism,j.Polygon,j.Base,async()=>{let{getProvider:O}=await import("@swapkit/toolboxes/evm"),_={provider:await O(m),derivationPath:L};return y(m).with(j.BinanceSmartChain,()=>C0(_)).with(j.Avalanche,()=>Z0(_)).with(j.Arbitrum,()=>N0(_)).with(j.Optimism,()=>H0(_)).with(j.Polygon,()=>U0(_)).with(j.Base,()=>D0(_)).otherwise(()=>Y0(_))}).otherwise(()=>{throw new qm("wallet_chain_not_supported",{wallet:lm.LEDGER,chain:m})})};var Km=Sm({name:"connectLedger",supportedChains:[F.Arbitrum,F.Avalanche,F.Base,F.BinanceSmartChain,F.Bitcoin,F.BitcoinCash,F.Cosmos,F.Dash,F.Dogecoin,F.Ethereum,F.Litecoin,F.Near,F.Optimism,F.Polygon,F.Ripple,F.THORChain,F.Tron],walletType:b0.LEDGER,connect:({addChain:m,supportedChains:L,walletType:y})=>async function O(_,T){let[B]=Vm({chains:_,supportedChains:L,walletType:y});if(!B)return!1;let X=await km({chain:B,derivationPath:T});return m({...X,chain:B,walletType:b0.LEDGER}),!0}}),oL=k0(Km);function Em(m,L="t"){if(!m?.includes("=:"))return m;let y=m.includes(`:${L}:`)?m.split(`:${L}:`)[0]:m;return y?.substring(0,y.lastIndexOf(":"))}function i(m){if(Array.isArray(m))return m.forEach((O,_)=>{m[_]=i(O)}),m;if(typeof m!=="object")return m;let L={},y=Object.keys(m).sort();for(let O of y)L[O]=i(m[O]);return L}function bm(m){return JSON.stringify(i(m))}async function km({chain:m,derivationPath:L}){switch(m){case F.BitcoinCash:case F.Bitcoin:case F.Dash:case F.Dogecoin:case F.Litecoin:{let{getUtxoToolbox:y}=await import("@swapkit/toolboxes/utxo"),O=await y(m),_=await l({chain:m,derivationPath:L}),T=await P({chain:m,ledgerClient:_});return{...O,address:T,transfer:async(X)=>{let G=X.feeRate||(await O.getFeeRates())[Pm.Average],R=[F.Bitcoin].includes(m)?X.memo:Em(X.memo),{psbt:$,inputs:Z}=await O.createTransaction({...X,feeRate:G,memo:R,sender:T,fetchTxHex:!0}),Q=await _.signTransaction($,Z);return await O.broadcastTx(Q)}}}case F.Ethereum:case F.Avalanche:case F.Arbitrum:case F.Optimism:case F.Polygon:case F.BinanceSmartChain:case F.Base:{let{getEvmToolbox:y}=await import("@swapkit/toolboxes/evm"),O=await l({chain:m,derivationPath:L}),_=await P({chain:m,ledgerClient:O});return{...await y(m,{signer:O}),address:_}}case F.Cosmos:{let{createSigningStargateClient:y,getMsgSendDenom:O,getCosmosToolbox:_}=await import("@swapkit/toolboxes/cosmos"),T=await _(F.Cosmos),B=await l({chain:m,derivationPath:L}),X=await P({chain:m,ledgerClient:B});return{...T,address:X,transfer:async({assetValue:R,recipient:$,memo:Z})=>{if(!R)throw new E("wallet_ledger_invalid_asset");let Q={amount:[{amount:R.getBaseValue("string"),denom:O(`u${R.symbol}`).toLowerCase()}],fromAddress:X,toAddress:$},N=await y(O0.get("rpcUrls")[m],B,"0.007uatom"),{transactionHash:f}=await N.signAndBroadcast(X,[{typeUrl:"/cosmos.bank.v1beta1.MsgSend",value:Q}],2,Z);return f}}}case F.THORChain:{let{SignMode:y}=await import("cosmjs-types/cosmos/tx/signing/v1beta1/signing.js"),{TxRaw:O}=await import("cosmjs-types/cosmos/tx/v1beta1/tx.js"),{encodePubkey:_,makeAuthInfoBytes:T}=(await import("@cosmjs/proto-signing")).default,{createStargateClient:B,buildEncodedTxBody:X,getCosmosToolbox:G,buildAminoMsg:R,getDefaultChainFee:$,fromBase64:Z,parseAminoMessageForDirectSigning:Q}=await import("@swapkit/toolboxes/cosmos"),N=await G(m),f=await l({chain:m,derivationPath:L}),U=await P({chain:m,ledgerClient:f}),S=$(m),{pubkey:v,signTransaction:x0,sign:g0}=f,T0=async({memo:A="",assetValue:X0,...c0})=>{let B0=await N.getAccount(U);if(!B0)throw new E("wallet_ledger_invalid_account");if(!X0)throw new E("wallet_ledger_invalid_asset");if(!v)throw new E("wallet_ledger_pubkey_not_found");let{accountNumber:v0,sequence:u0}=B0,o=(u0||0).toString(),G0=i([R({sender:U,assetValue:X0,memo:A,...c0})]),h0=bm({account_number:v0?.toString(),chain_id:Am.THORChain,fee:S,memo:A,msgs:G0,sequence:o}),n=await x0(h0,o);if(!n)throw new E("wallet_ledger_signing_error");let d0=_({type:"tendermint/PubKeySecp256k1",value:v}),i0=G0.map(Q),o0=await X({msgs:i0,chain:m,memo:A}),n0=T([{pubkey:d0,sequence:Number(o)}],S.amount,Number.parseInt(S.gas),void 0,void 0,y.SIGN_MODE_LEGACY_AMINO_JSON),t0=n?.[0]?.signature?Z(n[0].signature):Uint8Array.from([]),p0=O.fromPartial({bodyBytes:o0,authInfoBytes:n0,signatures:[t0]}),a0=O.encode(p0).finish(),{isStagenet:s0}=O0.get("envs"),e0=await B(O0.get("rpcUrls")[s0?Im.THORChain:F.THORChain]),{transactionHash:r0}=await e0.broadcastTx(a0);return r0};return{...N,address:U,deposit:(A)=>T0(A),transfer:(A)=>T0(A),signMessage:g0}}case F.Near:{let{getNearToolbox:y}=await import("@swapkit/toolboxes/near"),O=await l({chain:m,derivationPath:L}),_=await O.getAddress();return{...await y({signer:O}),address:_}}case F.Ripple:{let{getRippleToolbox:y}=await import("@swapkit/toolboxes/ripple"),O=await l({chain:m,derivationPath:L}),_=O.address;return{...await y({signer:O}),address:_}}case F.Tron:{let{createTronToolbox:y}=await import("@swapkit/toolboxes/tron"),O=await l({chain:m,derivationPath:L}),_=await P({chain:m,ledgerClient:O});return{...await y({signer:O}),address:_}}default:throw new E("wallet_ledger_chain_not_supported",{chain:m})}}export{Km as ledgerWallet,oL as LEDGER_SUPPORTED_CHAINS};
|
|
3
3
|
|
|
4
4
|
//# debugId=01B79B30FF27A40064756E2164756E21
|
package/dist/src/okx/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as g}from"../../chunk-
|
|
1
|
+
import{F as g}from"../../chunk-a3x125xy.js";import{H as d,I as m}from"../../chunk-fa0psb24.js";import{Chain as w,WalletOption as T,createWallet as P,filterSupportedChains as S}from"@swapkit/helpers";import{Chain as t,ChainId as p,SKConfig as k,SwapKitError as s,prepareNetworkSwitch as f,switchEVMWalletNetwork as _}from"@swapkit/helpers";import{Psbt as b}from"bitcoinjs-lib";var y=(r)=>async({recipient:i,assetValue:c,memo:a})=>{if(!(window.okxwallet&&("keplr"in window.okxwallet)))throw new s("wallet_okx_not_found",{chain:t.Cosmos});let{createSigningStargateClient:o}=await import("@swapkit/toolboxes/cosmos"),{keplr:e}=window.okxwallet,n=e?.getOfflineSignerOnlyAmino(p.Cosmos),l=await o(k.get("rpcUrls").GAIA,n),x=[{denom:c?.symbol==="MUON"?"umuon":"uatom",amount:c.getBaseValue("string")}],{transactionHash:h}=await l.sendTokens(r,i,x,1.6,a);return h};async function C({walletProvider:r,chain:i}){let{getEvmToolbox:c}=await import("@swapkit/toolboxes/evm"),{BrowserProvider:a}=await import("ethers");if(!r)throw new s("wallet_okx_not_found");let o=new a(r,"any"),e=await o.getSigner(),n=await c(i,{provider:o,signer:e});try{if(i!==t.Ethereum&&"getNetworkParams"in n)await _(o,i,n.getNetworkParams())}catch(l){throw new s("wallet_okx_failed_to_switch_network",{chain:i})}return f({toolbox:n,provider:o,chain:i})}async function u(r){let{match:i,P:c}=await import("ts-pattern");return i(r).with(c.union(t.Ethereum,t.Base,t.Avalanche,t.Arbitrum,t.Optimism,t.Polygon,t.BinanceSmartChain),async()=>{if(!(window.okxwallet&&("send"in window.okxwallet)))throw new s("wallet_okx_not_found",{chain:r});let a=await C({chain:r,walletProvider:window.okxwallet}),o=(await window.okxwallet.send("eth_requestAccounts",[])).result[0];return{...a,address:o}}).with(t.Bitcoin,async()=>{if(!(window.okxwallet&&("bitcoin"in window.okxwallet)))throw new s("wallet_okx_not_found",{chain:t.Bitcoin});let{getUtxoToolbox:a}=await import("@swapkit/toolboxes/utxo"),{bitcoin:o}=window.okxwallet,e=(await o.connect()).address,n={signTransaction:async(x)=>{let h=await o.signPsbt(x.toHex(),{from:e,type:"list"});return b.fromHex(h)},getAddress:async()=>Promise.resolve(e)};return{...await a(t.Bitcoin,{signer:n}),address:e}}).with(t.Cosmos,async()=>{if(!(window.okxwallet&&("keplr"in window.okxwallet)))throw new s("wallet_okx_not_found",{chain:t.Cosmos});let{keplr:a}=window.okxwallet;await a.enable(p.Cosmos);let o=await a.getOfflineSignerOnlyAmino(p.Cosmos).getAccounts();if(!o?.[0])throw new s("wallet_okx_no_accounts",{chain:t.Cosmos});let{getCosmosToolbox:e}=await import("@swapkit/toolboxes/cosmos"),[{address:n}]=o;return{...e(t.Cosmos),address:n,transfer:y(n)}}).with(t.Near,async()=>{if(!(window.okxwallet&&("near"in window.okxwallet)))throw new s("wallet_okx_not_found",{chain:t.Near});let{createNearSignerFromProvider:a}=await import("../../chunk-bnnq9hg1.js"),{getNearToolbox:o}=await import("@swapkit/toolboxes/near"),e=window.okxwallet.near,n=await a(e,"OKX"),l=await n.getAddress();return{...await o({signer:n}),address:l}}).with(t.Tron,async()=>{if(!(window.okxwallet&&("tronLink"in window.okxwallet)))throw new s("wallet_okx_not_found",{chain:t.Tron});let{createTronToolbox:a}=await import("@swapkit/toolboxes/tron"),o=window.okxwallet.tronLink,e=await o.request({method:"tron_requestAccounts"});if(!e||e.length===0)throw new s("wallet_okx_no_accounts",{chain:t.Tron});let n=o.tronWeb.defaultAddress.base58;return{...await a({signer:{getAddress:async()=>n,signTransaction:async(h)=>{return await o.tronWeb.trx.sign(h)}}}),address:n}}).otherwise(()=>{throw new s("wallet_okx_chain_not_supported",{chain:r})})}var A=P({name:"connectOkx",walletType:T.OKX,supportedChains:[w.Arbitrum,w.Avalanche,w.Base,w.BinanceSmartChain,w.Bitcoin,w.Cosmos,w.Ethereum,w.Near,w.Optimism,w.Polygon,w.Tron],connect:({addChain:r,supportedChains:i,walletType:c})=>async function a(o){let e=S({chains:o,supportedChains:i,walletType:c});return await Promise.all(e.map(async(n)=>{let l=await u(n),x=await l.getAddress()||"";r({...l,address:x,chain:n,walletType:c})})),!0}}),M=g(A);export{A as okxWallet,M as OKX_SUPPORTED_CHAINS};
|
|
2
2
|
|
|
3
3
|
//# debugId=34E446E92C682B2664756E2164756E21
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/dist/src/onekey/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as k}from"../../chunk-
|
|
1
|
+
import{F as k}from"../../chunk-a3x125xy.js";import{H as p,I as m}from"../../chunk-fa0psb24.js";import{Chain as e,SKConfig as b,SwapKitError as s,WalletOption as u,addEVMWalletNetwork as A,createWallet as S,filterSupportedChains as E,prepareNetworkSwitch as O}from"@swapkit/helpers";import{Psbt as x}from"bitcoinjs-lib";async function B(t){switch(t){case e.Bitcoin:{if(!window.$onekey?.btc)throw new s({errorKey:"wallet_onekey_not_found",info:{chain:t}});let{getUtxoToolbox:r}=await import("@swapkit/toolboxes/utxo"),{signTransaction:a,getAddress:w,AddressPurpose:o,BitcoinNetworkType:c}=await import("sats-connect"),n="",i=()=>new Promise((d)=>d(window.$onekey?.btc)),l={getProvider:i,payload:{purposes:[o.Payment],message:"Address for receiving and sending payments",network:{type:c.Mainnet}},onFinish:(d)=>{if(d.addresses[0]?.address)n=d.addresses[0].address},onCancel:()=>{throw new s("wallet_connection_rejected_by_user")}};await w(l);async function y(d){let _,P={getProvider:i,payload:{message:"Sign transaction",network:{type:c.Mainnet},psbtBase64:d.toBase64(),broadcast:!1,inputsToSign:[{address:n,signingIndexes:d.txInputs.map((f,h)=>h)}]},onFinish:(f)=>{_=x.fromBase64(f.psbtBase64)},onCancel:()=>{throw new s("wallet_connection_rejected_by_user")}};if(await a(P),!_)throw new s("wallet_onekey_sign_transaction_error");return _}return{...await r(t,{signer:{signTransaction:y,getAddress:()=>Promise.resolve(n)}}),address:n}}case e.Solana:{if(!window.$onekey?.sol)throw new s({errorKey:"wallet_onekey_not_found",info:{chain:t}});let{getSolanaToolbox:r}=await import("@swapkit/toolboxes/solana"),a=window.$onekey.sol,w=await a.getAddress();return{...r({signer:a}),address:w}}case e.Arbitrum:case e.Avalanche:case e.Base:case e.BinanceSmartChain:case e.Ethereum:case e.Optimism:case e.Polygon:{let{getProvider:r,getEvmToolbox:a}=await import("@swapkit/toolboxes/evm");if(!window.$onekey?.ethereum)throw new s({errorKey:"wallet_onekey_not_found",info:{chain:t}});let{BrowserProvider:w}=await import("ethers"),o=new w(window.$onekey.ethereum,"any"),c=b.get("rpcUrls")[t];await o.send("eth_requestAccounts",[]);let n=await r(t,c),i=await o.getSigner(),l=await i.getAddress(),y=await a(t,{provider:n,signer:i});try{if(t!==e.Ethereum){let g=y.getNetworkParams();await A(o,g)}}catch(g){throw new s({errorKey:"wallet_failed_to_add_or_switch_network",info:{chain:t,error:g}})}return{address:l,...O({toolbox:y,chain:t,provider:o})}}default:throw new s({errorKey:"wallet_chain_not_supported",info:{chain:t,wallet:u.ONEKEY}})}}var v=S({name:"connectOnekeyWallet",walletType:u.ONEKEY,supportedChains:[e.Arbitrum,e.Avalanche,e.Base,e.BinanceSmartChain,e.Bitcoin,e.Ethereum,e.Optimism,e.Polygon,e.Solana],connect:({addChain:t,walletType:r,supportedChains:a})=>async function w(o){if(!window.$onekey)throw new s({errorKey:"wallet_onekey_not_found",info:{wallet:u.ONEKEY}});let c=E({chains:o,supportedChains:a,walletType:r});return await Promise.all(c.map(async(n)=>{let i=await B(n),l=await i.getAddress()||"F";t({...i,chain:n,address:l,walletType:r})})),!0}}),W=k(v);export{v as onekeyWallet,W as ONEKEY_WALLET_SUPPORTED_CHAINS};
|
|
2
2
|
|
|
3
3
|
//# debugId=76D465A525B9E7F164756E2164756E21
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as f}from"../../chunk-
|
|
1
|
+
import{F as f}from"../../chunk-a3x125xy.js";import{H as l,I as d}from"../../chunk-fa0psb24.js";import{Chain as i,SwapKitError as r,WalletOption as _,createWallet as S,filterSupportedChains as C}from"@swapkit/helpers";var A=S({name:"connectPhantom",walletType:_.PHANTOM,supportedChains:[i.Bitcoin,i.Ethereum,i.Solana],connect:({addChain:s,supportedChains:c,walletType:o})=>async function n(e){let a=C({chains:e,supportedChains:c,walletType:o});try{return await Promise.all(a.map(async(t)=>{let{address:h,...w}=await v(t);s({...w,chain:t,address:h,walletType:o})})),!0}catch(t){if(t instanceof r)throw t;throw new r("wallet_connection_rejected_by_user",t)}}}),N=f(A);async function v(s){let c=window?.phantom;switch(s){case i.Bitcoin:{let o=c?.bitcoin;if(!o?.isPhantom)throw new r("wallet_phantom_not_found");let{getUtxoToolbox:n}=await import("@swapkit/toolboxes/utxo"),[{address:e}]=await o.requestAccounts();return{...await n(s),address:e}}case i.Ethereum:{let{getEvmToolbox:o}=await import("@swapkit/toolboxes/evm"),{BrowserProvider:n}=await import("ethers"),e=new n(c?.ethereum,"any"),[a]=await e.send("eth_requestAccounts",[]),t=await e.getSigner();return{...await o(s,{signer:t,provider:e}),address:a}}case i.Solana:{let{getSolanaToolbox:o}=await import("@swapkit/toolboxes/solana"),n=c?.solana;if(!n?.isPhantom)throw new r("wallet_phantom_not_found");let a=(await n.connect()).publicKey.toString(),t=await o();return{...t,transfer:async({recipient:w,assetValue:P,isProgramDerivedAddress:m})=>{let{PublicKey:b}=await import("@solana/web3.js"),y=await t.getAddressValidator();if(!(m||y(w)))throw new r("core_transaction_invalid_recipient_address");let g=new b(a),u=await t.getConnection(),p=await t.createTransaction({recipient:w,assetValue:P,sender:a,isProgramDerivedAddress:m});if(!p)throw new r("core_transaction_invalid_sender_address");let T=await u.getLatestBlockhash();p.recentBlockhash=T.blockhash,p.feePayer=g;let x=await n.signTransaction(p);return await u.sendRawTransaction(x.serialize())},address:a}}default:throw new r("wallet_chain_not_supported",{wallet:_.PHANTOM,chain:s})}}export{A as phantomWallet,N as PHANTOM_SUPPORTED_CHAINS};
|
|
2
2
|
|
|
3
3
|
//# debugId=A9960DE5BAA559AD64756E2164756E21
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as c}from"../../chunk-
|
|
1
|
+
import{F as c}from"../../chunk-a3x125xy.js";import{H as u,I as f}from"../../chunk-fa0psb24.js";import{Chain as i,SwapKitError as l,WalletOption as d,createWallet as _,filterSupportedChains as P}from"@swapkit/helpers";var h=_({name:"connectPolkadotJs",walletType:d.POLKADOT_JS,supportedChains:[i.Polkadot],connect:({addChain:t,supportedChains:s,walletType:r})=>async function a(n){let e=P({chains:n,supportedChains:s,walletType:r});return await Promise.all(e.map(async(o)=>{let{address:w,...p}=await m(o);t({...p,chain:o,address:w,walletType:r})})),!0}}),g=c(h);async function m(t){switch(t){case i.Polkadot:{let{getSubstrateToolbox:s}=await import("@swapkit/toolboxes/substrate"),a=await window?.injectedWeb3?.["polkadot-js"]?.enable?.("polkadot-js");if(!a)throw new l({errorKey:"wallet_polkadot_not_found",info:{chain:t}});let n=await s(t,{signer:a.signer}),[e]=await a.accounts.get();if(!e?.address)throw new l({errorKey:"wallet_missing_params",info:{wallet:d.POLKADOT_JS,address:e?.address}});let o=n.convertAddress(e.address,0);return{...n,getAddress:()=>o,address:o}}default:throw new l({errorKey:"wallet_chain_not_supported",info:{chain:t,wallet:d.POLKADOT_JS}})}}export{h as polkadotWallet,g as POLKADOT_SUPPORTED_CHAINS};
|
|
2
2
|
|
|
3
3
|
//# debugId=1CB4FFAEF9F396FC64756E2164756E21
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/dist/src/radix/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as I}from"../../chunk-
|
|
1
|
+
import{F as I}from"../../chunk-a3x125xy.js";import{H as _,I as $}from"../../chunk-fa0psb24.js";import{AssetValue as S,Chain as T,SKConfig as Y,SwapKitError as X,WalletOption as x,createWallet as B,filterSupportedChains as C}from"@swapkit/helpers";var h=B({name:"connectRadixWallet",walletType:x.RADIX_WALLET,supportedChains:[T.Radix],connect:({addChain:L,supportedChains:K,walletType:H})=>async function V(M){let O=C({chains:M,supportedChains:K,walletType:H});if(!Y.get("integrations").radix)throw new X("wallet_radix_not_found");return await Promise.all(O.map(async(z)=>{let j=await E();L({...j,chain:z,walletType:H})})),!0}}),f=I(h);async function k(L){let{GatewayApiClient:K}=await import("@radixdlt/babylon-gateway-api-sdk"),{applicationName:H}=Y.get("integrations").radix,V=K.initialize({networkId:1,applicationName:H}),M=!0,O,U=[],z=await v(V);while(M){let j={address:L,limit_per_page:100,cursor:O,at_ledger_state:{state_version:z}},Q=await V.state.innerClient.entityFungiblesPage({stateEntityFungiblesPageRequest:j});if(U=U.concat(Q.items),Q.next_cursor)O=Q.next_cursor;else M=!1}return U}async function v(L){return L.status.getCurrent().then((K)=>K.ledger_state.state_version)}async function D(L){let{GatewayApiClient:K}=await import("@radixdlt/babylon-gateway-api-sdk"),H=await k(L),{applicationName:V}=Y.get("integrations").radix,M=K.initialize({networkId:1,applicationName:V}),O=[],U=50,z=[];for(let j=0;j<H.length;j+=50)z.push(H.slice(j,j+50));for(let j of z){let Q=j.map((J)=>J.resource_address),Z=await M.state.getEntityDetailsVaultAggregated(Q),q=new Map;for(let J of Z)if(J.details!==void 0){let W=J.metadata?.items.find((N)=>N.key==="symbol"),G=W?.value.typed.type==="String"?W.value.typed.value:"?";if(J.details.type==="FungibleResource")q.set(J.address,{decimals:J.details.divisibility,symbol:G})}for(let J of j)if(J.aggregation_level==="Global"){let W=q.get(J.resource_address)||{decimals:0,symbol:"?"},G=S.from({asset:W.symbol!==T.Radix?`${T.Radix}.${W.symbol}-${J.resource_address}`:"XRD.XRD",value:J.amount});O.push(G)}}return O}async function E(){let{RadixDappToolkit:L}=await import("@radixdlt/radix-dapp-toolkit"),K=Y.get("integrations").radix,H=L({...K,networkId:K.network.networkId});function V(z){return new Promise((j)=>setTimeout(j,z))}await V(400);function M(){return H.walletApi.getWalletData()?.accounts?.[0]?.address}let O=async()=>{let{DataRequestBuilder:z}=await import("@radixdlt/radix-dapp-toolkit");H.walletApi.setRequestData(z.accounts().exactly(1));let j=await H.walletApi.sendRequest();if(!j)throw new X("wallet_radix_no_account");let Q=j.unwrapOr(null)?.accounts[0]?.address;if(!Q)throw new X("wallet_radix_no_account");return Q},U=M()||await O();return{radixDappToolkit:H,address:U,getAddress:M,getBalance:()=>D(U),transfer:(z)=>{throw new X("wallet_radix_method_not_supported",{method:"transfer"})},signAndBroadcast:async({manifest:z,message:j})=>{let Z=(await H.walletApi.sendTransaction({transactionManifest:z,message:j})).unwrapOr(null)?.transactionIntentHash;if(!Z)throw new X("wallet_radix_transaction_failed");return Z}}}export{h as radixWallet,f as RADIX_SUPPORTED_CHAINS};
|
|
2
2
|
|
|
3
3
|
//# debugId=12B9728892FFE3DD64756E2164756E21
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as p}from"../../chunk-
|
|
1
|
+
import{F as p}from"../../chunk-a3x125xy.js";import{H as d,I as m}from"../../chunk-fa0psb24.js";import{Chain as t,SwapKitError as s,WalletOption as l,createWallet as h,filterSupportedChains as f,prepareNetworkSwitch as u,switchEVMWalletNetwork as _}from"@swapkit/helpers";var A=h({name:"connectTalisman",walletType:l.TALISMAN,supportedChains:[t.Ethereum,t.Arbitrum,t.Avalanche,t.Base,t.Polygon,t.BinanceSmartChain,t.Optimism,t.Polkadot,t.Chainflip],connect:({addChain:e,supportedChains:a,walletType:r})=>async function c(o){let i=f({chains:o,supportedChains:a,walletType:r});return await Promise.all(i.map(async(n)=>{let w=await S(n);e({...w,chain:n,walletType:r})})),!0}}),C=p(A);async function E({walletProvider:e,chain:a}){let{getEvmToolbox:r}=await import("@swapkit/toolboxes/evm"),{BrowserProvider:c}=await import("ethers");if(!e)throw new s({errorKey:"wallet_provider_not_found",info:{wallet:l.TALISMAN,chain:a}});let o=new c(e,"any"),i=await o.getSigner(),n=await r(a,{provider:o,signer:i});try{if(a!==t.Ethereum)await _(o,a,n.getNetworkParams())}catch(w){throw new s({errorKey:"wallet_failed_to_add_or_switch_network",info:{wallet:l.TALISMAN,chain:a}})}return u({toolbox:n,chain:a,provider:o})}async function S(e){switch(e){case t.Ethereum:case t.Arbitrum:case t.Optimism:case t.Polygon:case t.Avalanche:case t.BinanceSmartChain:case t.Base:{if(!(window.talismanEth&&("send"in window.talismanEth)))throw new s({errorKey:"wallet_talisman_not_found",info:{chain:e}});let a=await E({chain:e,walletProvider:window.talismanEth}),r=(await window.talismanEth.send("eth_requestAccounts",[]))[0];return{...a,address:r}}case t.Polkadot:case t.Chainflip:{let{getSubstrateToolbox:a,SubstrateNetwork:r}=await import("@swapkit/toolboxes/substrate"),o=await window?.injectedWeb3?.talisman?.enable?.("talisman");if(!o)throw new s({errorKey:"wallet_talisman_not_enabled",info:{chain:e}});let i=await a(e,{signer:o.signer}),n=await o.accounts.get();if(!n[0]?.address)throw new s({errorKey:"wallet_missing_params",info:{wallet:l.TALISMAN,accounts:n,address:n[0]?.address}});let w=i.convertAddress(n[0].address,r[e].prefix);return{...i,address:w}}default:throw new s({errorKey:"wallet_chain_not_supported",info:{chain:e,wallet:l.TALISMAN}})}}export{A as talismanWallet,C as TALISMAN_SUPPORTED_CHAINS};
|
|
2
2
|
|
|
3
3
|
//# debugId=528AC8E8FE01AAD464756E2164756E21
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/dist/src/trezor/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as f}from"../../chunk-
|
|
1
|
+
import{F as f}from"../../chunk-a3x125xy.js";import{H as N,I as V}from"../../chunk-fa0psb24.js";import{Chain as q,FeeOption as y,SKConfig as E,SwapKitError as M,WalletOption as W,createWallet as S,derivationPathToString as w,filterSupportedChains as P}from"@swapkit/helpers";function b(B){switch(B[0]){case 84:return{input:"SPENDWITNESS",output:"PAYTOWITNESS"};case 49:return{input:"SPENDP2SHWITNESS",output:"PAYTOP2SHWITNESS"};case 44:return{input:"SPENDADDRESS",output:"PAYTOADDRESS"};default:return null}}async function g({chain:B,derivationPath:X}){switch(B){case q.BinanceSmartChain:case q.Avalanche:case q.Arbitrum:case q.Optimism:case q.Polygon:case q.Base:case q.Ethereum:{let{getProvider:j,getEvmToolbox:Y}=await import("@swapkit/toolboxes/evm"),{getEVMSigner:Z}=await import("../../chunk-xwda1ncj.js"),$=await j(B),L=await Z({chain:B,derivationPath:X,provider:$}),G=await L.getAddress();return{...await Y(B,{provider:$,signer:L}),address:G}}case q.Bitcoin:case q.BitcoinCash:case q.Dash:case q.Dogecoin:case q.Litecoin:{let{toCashAddress:j,getUtxoToolbox:Y}=await import("@swapkit/toolboxes/utxo"),Z=b(X);if(!Z)throw new M({errorKey:"wallet_trezor_derivation_path_not_supported",info:{derivationPath:X}});let $=B.toLowerCase(),G=await(async(I=X)=>{let A=(await import("@trezor/connect-web")).default,{success:F,payload:J}=await A.getAddress({path:w(I),coin:$});if(!F)throw new M({errorKey:"wallet_trezor_failed_to_get_address",info:{chain:B,error:J.error||"Unknown error"}});if(B===q.BitcoinCash)return(await Y(B)).stripPrefix(J.address);return J.address})(),k=async(I,A,F="")=>{let J=(await import("@trezor/connect-web")).default,_=X.map((D,Q)=>Q<3?(D|2147483648)>>>0:D),H=await Y(B),R=await J.signTransaction({coin:$,inputs:A.map(({hash:D,index:Q,value:O})=>({address_n:_,prev_hash:D,prev_index:Q,amount:O,script_type:Z.input})),outputs:I.txOutputs.map((D)=>{if(!D.address)return{amount:"0",op_return_data:Buffer.from(F).toString("hex"),script_type:"PAYTOOPRETURN"};let Q=B===q.BitcoinCash?H.stripPrefix(j(D.address)):D.address;return Q===G?{amount:D.value,address_n:_,script_type:Z.output}:{amount:D.value,address:Q,script_type:"PAYTOADDRESS"}})});if(R.success)return R.payload.serializedTx;throw new M({errorKey:"wallet_trezor_failed_to_sign_transaction",info:{chain:B,error:R.payload.error}})},K=async({recipient:I,feeOptionKey:A,feeRate:F,memo:J,..._})=>{if(!(G&&I))throw new M({errorKey:"wallet_missing_params",info:{wallet:W.TREZOR,memo:J,address:G,recipient:I}});let H=await Y(B),R=F||(await H.getFeeRates())[A||y.Fast],D=B===q.BitcoinCash?H.buildTx:H.createTransaction,{psbt:Q,inputs:O}=await D({..._,memo:J,recipient:I,feeRate:R,sender:G,fetchTxHex:!0}),z=await k(Q,O,J);return await H.broadcastTx(z)};return{...await Y(B),address:G,transfer:K,signTransaction:k}}default:throw new M({errorKey:"wallet_chain_not_supported",info:{chain:B,wallet:W.TREZOR}})}}var v=S({name:"connectTrezor",walletType:W.TREZOR,supportedChains:[q.Arbitrum,q.Avalanche,q.Base,q.BinanceSmartChain,q.Bitcoin,q.BitcoinCash,q.Dash,q.Dogecoin,q.Ethereum,q.Litecoin,q.Optimism,q.Polygon],connect:({addChain:B,supportedChains:X,walletType:j})=>async function Y(Z,$){let[L]=P({chains:Z,supportedChains:X,walletType:j});if(!L)throw new M({errorKey:"wallet_chain_not_supported",info:{chain:L,wallet:W.TREZOR}});let G=(await import("@trezor/connect-web")).default,{success:k}=await G.getDeviceState();if(!k){let U=E.get("integrations").trezor,I=U?{...U,appName:U.appName||"SwapKit"}:{appUrl:"",email:"",appName:"SwapKit"};G.init({lazyLoad:!0,manifest:I})}let K=await g({chain:L,derivationPath:$});return B({...K,chain:L,walletType:j}),!0}}),C=f(v);export{v as trezorWallet,C as TREZOR_SUPPORTED_CHAINS};
|
|
2
2
|
|
|
3
3
|
//# debugId=7855FB22D51203C464756E2164756E21
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var S5={};D5(S5,{walletconnectWallet:()=>G5,WC_SUPPORTED_CHAINS:()=>r5,TRON_MAINNET_ID:()=>i,THORCHAIN_MAINNET_ID:()=>k,POLYGON_MAINNET_ID:()=>s,OPTIMISM_MAINNET_ID:()=>I,NEAR_TESTNET_ID:()=>c,NEAR_MAINNET_ID:()=>t,MAYACHAIN_MAINNET_ID:()=>h,KUJIRA_MAINNET_ID:()=>d,ETHEREUM_MAINNET_ID:()=>g,DEFAULT_TRON_METHODS:()=>U5,DEFAULT_TRON_EVENTS:()=>V5,DEFAULT_SOLANA_METHODS:()=>n,DEFAULT_SOLANA_EVENTS:()=>L5,DEFAULT_RELAY_URL:()=>H,DEFAULT_POLKADOT_METHODS:()=>O5,DEFAULT_POLKADOT_EVENTS:()=>j5,DEFAULT_NEAR_METHODS:()=>F5,DEFAULT_NEAR_EVENTS:()=>f5,DEFAULT_LOGGER:()=>S,DEFAULT_EIP_155_EVENTS:()=>a,DEFAULT_EIP155_METHODS:()=>r,DEFAULT_COSMOS_METHODS:()=>B,DEFAULT_COSMOS_EVENTS:()=>R5,DEFAULT_APP_METADATA:()=>z5,COSMOS_HUB_MAINNET_ID:()=>C,BSC_MAINNET_ID:()=>A,BASE_MAINNET_ID:()=>e,AVALANCHE_MAINNET_ID:()=>N,ARBITRUM_ONE_MAINNET_ID:()=>l});module.exports=u5(S5);var L=require("@swapkit/helpers");var Y=require("@swapkit/helpers"),Z5=require("ethers");var V=require("@swapkit/helpers");var R=(O,j)=>{return(j.find((p)=>p.startsWith($(O)))||"")?.split(":")?.[2]||""},$=(O)=>{switch(O){case V.Chain.Avalanche:return N;case V.Chain.Base:return e;case V.Chain.BinanceSmartChain:return A;case V.Chain.Ethereum:return g;case V.Chain.THORChain:return k;case V.Chain.Arbitrum:return l;case V.Chain.Optimism:return I;case V.Chain.Polygon:return s;case V.Chain.Maya:return h;case V.Chain.Cosmos:return C;case V.Chain.Kujira:return d;case V.Chain.Near:{let{isStagenet:j}=V.SKConfig.get("envs");return j?c:t}case V.Chain.Tron:return i;default:return""}};class o extends Z5.AbstractSigner{address;chain;walletconnect;provider;constructor({chain:O,provider:j,walletconnect:F}){super(j);this.chain=O,this.walletconnect=F,this.provider=j,this.address=""}getAddress=async()=>{if(!this.walletconnect)throw new Y.SwapKitError("wallet_walletconnect_connection_not_established");if(!this.address)this.address=R(this.chain,this.walletconnect.accounts||[]);return this.address};signMessage=async(O)=>{let j=await this.walletconnect?.client.request({chainId:$(this.chain),topic:this.walletconnect.session.topic||"",request:{method:"eth_sign",params:[O]}});return j.startsWith("0x")?j:`0x${j}`};signTransaction=()=>{throw new Y.SwapKitError("wallet_walletconnect_method_not_supported",{method:"signTransaction"})};signTypedData=()=>{throw new Y.SwapKitError("wallet_walletconnect_method_not_supported",{method:"signTypedData"})};sendTransaction=async({from:O,to:j,value:F,data:U})=>{let{toHexString:p}=await import("@swapkit/toolboxes/evm"),f={from:O,to:j,value:p(BigInt(F||0)),data:U};return await this.walletconnect?.client.request({chainId:$(this.chain),topic:this.walletconnect.session.topic,request:{method:"eth_sendTransaction",params:[f]}})};connect=(O)=>{if(!O)throw new Y.SwapKitError({errorKey:"wallet_provider_not_found",info:{wallet:Y.WalletOption.WALLETCONNECT,chain:this.chain}});return new o({chain:this.chain,walletconnect:this.walletconnect,provider:O})}}var v5=async({chain:O,walletconnect:j,provider:F})=>new o({chain:O,walletconnect:j,provider:F});var p5=require("@swapkit/helpers");var P5=(O)=>{let j=[];for(let F of O){let[U]=F.split(":");if(U&&!j.includes(U))j.push(U)}return j},W5=(O)=>{switch(O){case"eip155":return Object.values(r);case"cosmos":return Object.values(B);case"solana":return Object.values(n);case"polkadot":return Object.values(O5);case"near":return Object.values(F5);case"tron":return Object.values(U5);default:throw new p5.SwapKitError({errorKey:"wallet_walletconnect_namespace_not_supported",info:{namespace:O}})}},_5=(O)=>{switch(O){case"eip155":return Object.values(a);case"cosmos":return[];case"solana":return Object.values(L5);case"polkadot":return Object.values(j5);case"near":return Object.values(f5);case"tron":return Object.values(V5);default:throw new p5.SwapKitError({errorKey:"wallet_walletconnect_namespace_not_supported",info:{namespace:O}})}},y5=(O)=>{let j=P5(O);return Object.fromEntries(j.map((F)=>[F,{methods:W5(F),chains:O.filter((U)=>U.startsWith(F)),events:_5(F)}]))};var G5=L.createWallet({name:"connectWalletconnect",walletType:L.WalletOption.WALLETCONNECT,supportedChains:[L.Chain.Arbitrum,L.Chain.Avalanche,L.Chain.Base,L.Chain.BinanceSmartChain,L.Chain.Cosmos,L.Chain.Ethereum,L.Chain.Kujira,L.Chain.Maya,L.Chain.Near,L.Chain.Optimism,L.Chain.Polygon,L.Chain.THORChain,L.Chain.Tron],connect:({addChain:O,supportedChains:j,walletType:F})=>async function U(p,f){let Q=L.filterSupportedChains({chains:p,supportedChains:j,walletType:F}),{walletConnectProjectId:v}=L.SKConfig.get("apiKeys");if(!v)throw new L.SwapKitError("wallet_walletconnect_project_id_not_specified");let z=await H5(Q,v,f);if(!z)throw new L.SwapKitError("wallet_walletconnect_connection_not_established");let{accounts:y}=z;return await Promise.all(Q.map(async(Z)=>{let K=R(Z,y||[]),q=await B5({address:K,chain:Z,walletconnect:z});O({...q,address:K,chain:Z,disconnect:z.disconnect,walletType:L.WalletOption.WALLETCONNECT})})),!0}}),r5=J5(G5);async function B5({chain:O,walletconnect:j,address:F}){let U=j?.session;if(!U)throw new L.SwapKitError("wallet_walletconnect_connection_not_established");switch(O){case L.Chain.Arbitrum:case L.Chain.Avalanche:case L.Chain.Base:case L.Chain.BinanceSmartChain:case L.Chain.Ethereum:case L.Chain.Optimism:case L.Chain.Polygon:{let{getProvider:p,getEvmToolbox:f}=await import("@swapkit/toolboxes/evm"),Q=await p(O),v=await v5({walletconnect:j,chain:O,provider:Q});return await f(O,{provider:Q,signer:v})}case L.Chain.THORChain:{let{SignMode:p}=await import("cosmjs-types/cosmos/tx/signing/v1beta1/signing.js"),{TxRaw:f}=await import("cosmjs-types/cosmos/tx/v1beta1/tx.js"),{encodePubkey:Q,makeAuthInfoBytes:v}=(await import("@cosmjs/proto-signing")).default,{makeSignDoc:z}=(await import("@cosmjs/amino")).default,{getCosmosToolbox:y,buildAminoMsg:Z,buildEncodedTxBody:K,createStargateClient:q,fromBase64:P,getDefaultChainFee:T,parseAminoMessageForDirectSigning:w}=await import("@swapkit/toolboxes/cosmos"),E=await y(L.Chain.THORChain);async function m(G){let u=await E.getAccount(G);if(O!==L.Chain.THORChain)return u;let[{address:J,algo:x,pubkey:D}]=await j?.client.request({chainId:k,topic:U.topic,request:{method:"cosmos_getAccounts",params:{}}});return{...u,address:J,pubkey:{type:x,value:D}}}let b=T(O),Q5=(G)=>j?.client.request({chainId:k,topic:U.topic,request:{method:"cosmos_signAmino",params:{signerAddress:F,signDoc:G}}});async function W({assetValue:G,memo:_,...u}){let J=await E.getAccount(F);if(!J)throw new L.SwapKitError({errorKey:"wallet_missing_params",info:{account:J}});if(!J.pubkey)throw new L.SwapKitError({errorKey:"wallet_missing_params",info:{account:J,pubkey:J?.pubkey}});let{accountNumber:x,sequence:D=0}=J,X5=[Z({assetValue:G,memo:_,sender:F,...u})],K5=L.ChainId.THORChain,$5=z(X5,b,K5,_,x?.toString(),D?.toString()||"0"),M=await Q5($5),q5=await K({chain:L.Chain.THORChain,msgs:X5.map(w),memo:_||""}),Y5=Q(J.pubkey),b5=v([{pubkey:Y5,sequence:D}],b.amount,Number.parseInt(b.gas),void 0,void 0,p.SIGN_MODE_LEGACY_AMINO_JSON),k5=f.fromPartial({bodyBytes:q5,authInfoBytes:b5,signatures:[P(typeof M.signature==="string"?M.signature:M.signature.signature)]}),E5=f.encode(k5).finish();return(await(await q(L.SKConfig.get("rpcUrls")[L.Chain.THORChain])).broadcastTx(E5)).transactionHash}return{...E,transfer:(G)=>W(G),deposit:(G)=>W(G),getAccount:m}}case L.Chain.Near:{let{getNearToolbox:p}=await import("@swapkit/toolboxes/near"),{DEFAULT_NEAR_METHODS:f}=await import("../../chunk-
|
|
1
|
+
var S5={};D5(S5,{walletconnectWallet:()=>G5,WC_SUPPORTED_CHAINS:()=>r5,TRON_MAINNET_ID:()=>i,THORCHAIN_MAINNET_ID:()=>k,POLYGON_MAINNET_ID:()=>s,OPTIMISM_MAINNET_ID:()=>I,NEAR_TESTNET_ID:()=>c,NEAR_MAINNET_ID:()=>t,MAYACHAIN_MAINNET_ID:()=>h,KUJIRA_MAINNET_ID:()=>d,ETHEREUM_MAINNET_ID:()=>g,DEFAULT_TRON_METHODS:()=>U5,DEFAULT_TRON_EVENTS:()=>V5,DEFAULT_SOLANA_METHODS:()=>n,DEFAULT_SOLANA_EVENTS:()=>L5,DEFAULT_RELAY_URL:()=>H,DEFAULT_POLKADOT_METHODS:()=>O5,DEFAULT_POLKADOT_EVENTS:()=>j5,DEFAULT_NEAR_METHODS:()=>F5,DEFAULT_NEAR_EVENTS:()=>f5,DEFAULT_LOGGER:()=>S,DEFAULT_EIP_155_EVENTS:()=>a,DEFAULT_EIP155_METHODS:()=>r,DEFAULT_COSMOS_METHODS:()=>B,DEFAULT_COSMOS_EVENTS:()=>R5,DEFAULT_APP_METADATA:()=>z5,COSMOS_HUB_MAINNET_ID:()=>C,BSC_MAINNET_ID:()=>A,BASE_MAINNET_ID:()=>e,AVALANCHE_MAINNET_ID:()=>N,ARBITRUM_ONE_MAINNET_ID:()=>l});module.exports=u5(S5);var L=require("@swapkit/helpers");var Y=require("@swapkit/helpers"),Z5=require("ethers");var V=require("@swapkit/helpers");var R=(O,j)=>{return(j.find((p)=>p.startsWith($(O)))||"")?.split(":")?.[2]||""},$=(O)=>{switch(O){case V.Chain.Avalanche:return N;case V.Chain.Base:return e;case V.Chain.BinanceSmartChain:return A;case V.Chain.Ethereum:return g;case V.Chain.THORChain:return k;case V.Chain.Arbitrum:return l;case V.Chain.Optimism:return I;case V.Chain.Polygon:return s;case V.Chain.Maya:return h;case V.Chain.Cosmos:return C;case V.Chain.Kujira:return d;case V.Chain.Near:{let{isStagenet:j}=V.SKConfig.get("envs");return j?c:t}case V.Chain.Tron:return i;default:return""}};class o extends Z5.AbstractSigner{address;chain;walletconnect;provider;constructor({chain:O,provider:j,walletconnect:F}){super(j);this.chain=O,this.walletconnect=F,this.provider=j,this.address=""}getAddress=async()=>{if(!this.walletconnect)throw new Y.SwapKitError("wallet_walletconnect_connection_not_established");if(!this.address)this.address=R(this.chain,this.walletconnect.accounts||[]);return this.address};signMessage=async(O)=>{let j=await this.walletconnect?.client.request({chainId:$(this.chain),topic:this.walletconnect.session.topic||"",request:{method:"eth_sign",params:[O]}});return j.startsWith("0x")?j:`0x${j}`};signTransaction=()=>{throw new Y.SwapKitError("wallet_walletconnect_method_not_supported",{method:"signTransaction"})};signTypedData=()=>{throw new Y.SwapKitError("wallet_walletconnect_method_not_supported",{method:"signTypedData"})};sendTransaction=async({from:O,to:j,value:F,data:U})=>{let{toHexString:p}=await import("@swapkit/toolboxes/evm"),f={from:O,to:j,value:p(BigInt(F||0)),data:U};return await this.walletconnect?.client.request({chainId:$(this.chain),topic:this.walletconnect.session.topic,request:{method:"eth_sendTransaction",params:[f]}})};connect=(O)=>{if(!O)throw new Y.SwapKitError({errorKey:"wallet_provider_not_found",info:{wallet:Y.WalletOption.WALLETCONNECT,chain:this.chain}});return new o({chain:this.chain,walletconnect:this.walletconnect,provider:O})}}var v5=async({chain:O,walletconnect:j,provider:F})=>new o({chain:O,walletconnect:j,provider:F});var p5=require("@swapkit/helpers");var P5=(O)=>{let j=[];for(let F of O){let[U]=F.split(":");if(U&&!j.includes(U))j.push(U)}return j},W5=(O)=>{switch(O){case"eip155":return Object.values(r);case"cosmos":return Object.values(B);case"solana":return Object.values(n);case"polkadot":return Object.values(O5);case"near":return Object.values(F5);case"tron":return Object.values(U5);default:throw new p5.SwapKitError({errorKey:"wallet_walletconnect_namespace_not_supported",info:{namespace:O}})}},_5=(O)=>{switch(O){case"eip155":return Object.values(a);case"cosmos":return[];case"solana":return Object.values(L5);case"polkadot":return Object.values(j5);case"near":return Object.values(f5);case"tron":return Object.values(V5);default:throw new p5.SwapKitError({errorKey:"wallet_walletconnect_namespace_not_supported",info:{namespace:O}})}},y5=(O)=>{let j=P5(O);return Object.fromEntries(j.map((F)=>[F,{methods:W5(F),chains:O.filter((U)=>U.startsWith(F)),events:_5(F)}]))};var G5=L.createWallet({name:"connectWalletconnect",walletType:L.WalletOption.WALLETCONNECT,supportedChains:[L.Chain.Arbitrum,L.Chain.Avalanche,L.Chain.Base,L.Chain.BinanceSmartChain,L.Chain.Cosmos,L.Chain.Ethereum,L.Chain.Kujira,L.Chain.Maya,L.Chain.Near,L.Chain.Optimism,L.Chain.Polygon,L.Chain.THORChain,L.Chain.Tron],connect:({addChain:O,supportedChains:j,walletType:F})=>async function U(p,f){let Q=L.filterSupportedChains({chains:p,supportedChains:j,walletType:F}),{walletConnectProjectId:v}=L.SKConfig.get("apiKeys");if(!v)throw new L.SwapKitError("wallet_walletconnect_project_id_not_specified");let z=await H5(Q,v,f);if(!z)throw new L.SwapKitError("wallet_walletconnect_connection_not_established");let{accounts:y}=z;return await Promise.all(Q.map(async(Z)=>{let K=R(Z,y||[]),q=await B5({address:K,chain:Z,walletconnect:z});O({...q,address:K,chain:Z,disconnect:z.disconnect,walletType:L.WalletOption.WALLETCONNECT})})),!0}}),r5=J5(G5);async function B5({chain:O,walletconnect:j,address:F}){let U=j?.session;if(!U)throw new L.SwapKitError("wallet_walletconnect_connection_not_established");switch(O){case L.Chain.Arbitrum:case L.Chain.Avalanche:case L.Chain.Base:case L.Chain.BinanceSmartChain:case L.Chain.Ethereum:case L.Chain.Optimism:case L.Chain.Polygon:{let{getProvider:p,getEvmToolbox:f}=await import("@swapkit/toolboxes/evm"),Q=await p(O),v=await v5({walletconnect:j,chain:O,provider:Q});return await f(O,{provider:Q,signer:v})}case L.Chain.THORChain:{let{SignMode:p}=await import("cosmjs-types/cosmos/tx/signing/v1beta1/signing.js"),{TxRaw:f}=await import("cosmjs-types/cosmos/tx/v1beta1/tx.js"),{encodePubkey:Q,makeAuthInfoBytes:v}=(await import("@cosmjs/proto-signing")).default,{makeSignDoc:z}=(await import("@cosmjs/amino")).default,{getCosmosToolbox:y,buildAminoMsg:Z,buildEncodedTxBody:K,createStargateClient:q,fromBase64:P,getDefaultChainFee:T,parseAminoMessageForDirectSigning:w}=await import("@swapkit/toolboxes/cosmos"),E=await y(L.Chain.THORChain);async function m(G){let u=await E.getAccount(G);if(O!==L.Chain.THORChain)return u;let[{address:J,algo:x,pubkey:D}]=await j?.client.request({chainId:k,topic:U.topic,request:{method:"cosmos_getAccounts",params:{}}});return{...u,address:J,pubkey:{type:x,value:D}}}let b=T(O),Q5=(G)=>j?.client.request({chainId:k,topic:U.topic,request:{method:"cosmos_signAmino",params:{signerAddress:F,signDoc:G}}});async function W({assetValue:G,memo:_,...u}){let J=await E.getAccount(F);if(!J)throw new L.SwapKitError({errorKey:"wallet_missing_params",info:{account:J}});if(!J.pubkey)throw new L.SwapKitError({errorKey:"wallet_missing_params",info:{account:J,pubkey:J?.pubkey}});let{accountNumber:x,sequence:D=0}=J,X5=[Z({assetValue:G,memo:_,sender:F,...u})],K5=L.ChainId.THORChain,$5=z(X5,b,K5,_,x?.toString(),D?.toString()||"0"),M=await Q5($5),q5=await K({chain:L.Chain.THORChain,msgs:X5.map(w),memo:_||""}),Y5=Q(J.pubkey),b5=v([{pubkey:Y5,sequence:D}],b.amount,Number.parseInt(b.gas),void 0,void 0,p.SIGN_MODE_LEGACY_AMINO_JSON),k5=f.fromPartial({bodyBytes:q5,authInfoBytes:b5,signatures:[P(typeof M.signature==="string"?M.signature:M.signature.signature)]}),E5=f.encode(k5).finish();return(await(await q(L.SKConfig.get("rpcUrls")[L.Chain.THORChain])).broadcastTx(E5)).transactionHash}return{...E,transfer:(G)=>W(G),deposit:(G)=>W(G),getAccount:m}}case L.Chain.Near:{let{getNearToolbox:p}=await import("@swapkit/toolboxes/near"),{DEFAULT_NEAR_METHODS:f}=await import("../../chunk-xy3yys5z.js");return await p({signer:{getPublicKey(){return Promise.reject(new L.SwapKitError("wallet_walletconnect_method_not_supported",{method:"getPublicKey"}))},signNep413Message(z,y,Z,K,q){return Promise.reject(new L.SwapKitError("wallet_walletconnect_method_not_supported",{method:"signNep413Message"}))},async signTransaction(z){if(!j)throw new L.SwapKitError("wallet_walletconnect_connection_not_established");let y=await j.client.request({topic:U.topic,chainId:$(L.Chain.Near),request:{method:f.NEAR_SIGN_AND_SEND_TRANSACTION,params:{transaction:z}}});return[new Uint8Array(32),y]},signDelegateAction(z){return Promise.reject(new L.SwapKitError("wallet_walletconnect_method_not_supported",{method:"signDelegateAction"}))},getAddress(){return Promise.resolve(F)}}})}case L.Chain.Tron:{let{createTronToolbox:p}=await import("@swapkit/toolboxes/tron"),{DEFAULT_TRON_METHODS:f}=await import("../../chunk-xy3yys5z.js");return await p({signer:{getAddress(){return Promise.resolve(F)},async signTransaction(z){if(!j)throw new L.SwapKitError("wallet_walletconnect_connection_not_established");return await j.client.request({topic:U.topic,chainId:$(L.Chain.Tron),request:{method:f.TRON_SIGN_TRANSACTION,params:{transaction:z}}})}}})}default:throw new L.SwapKitError({errorKey:"wallet_chain_not_supported",info:{chain:O,wallet:L.WalletOption.WALLETCONNECT}})}}async function H5(O,j,F){let U,p,f,Q;try{if(!j)throw new L.SwapKitError("wallet_walletconnect_project_id_not_specified");let v=y5(O.map($)),{SignClient:z}=await import("@walletconnect/sign-client"),{WalletConnectModal:y}=await import("@walletconnect/modal"),Z=new z({logger:S,relayUrl:H,projectId:j,metadata:F?.metadata||z5,...F?.core}),K=new y({logger:S,relayUrl:H,projectId:j,...F?.core}),q=await Z.session.getAll()[0];if(q)await Z.disconnect({topic:q.topic,reason:{code:0,message:"Resetting session"}});let{uri:P,approval:T}=await Z.connect({requiredNamespaces:v});if(P){let E=function(m){let b=[];for(let[Q5,W]of Object.entries(m.namespaces))b.push(...W.accounts);return b};K.openModal({uri:P}),f=await T(),K.closeModal(),Q=E(f)}let w=async()=>{f&&await Z.disconnect({topic:f.topic,reason:{code:0,message:"User disconnected"}})};if(!f)throw new L.SwapKitError("wallet_walletconnect_connection_not_established");return{signer:p,session:f,accounts:Q,client:Z,disconnect:w}}catch(v){}finally{if(U)U.closeModal()}return}
|
|
2
2
|
|
|
3
3
|
//# debugId=32F4C15134E6661864756E2164756E21
|
|
4
4
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{A as X5,B as Z5,C as v5,a as A,b as l,c as I,d as s,e as P,f as e,g as t,h as c,i,j as o,k as a,l as n,m as L5,n as O5,o as j5,p as N,q as J5,r as x,s as f5,t as g,u as VL,v as U5,w as V5,x as p5,y as z5,z as Q5}from"../../chunk-
|
|
1
|
+
import{A as X5,B as Z5,C as v5,a as A,b as l,c as I,d as s,e as P,f as e,g as t,h as c,i,j as o,k as a,l as n,m as L5,n as O5,o as j5,p as N,q as J5,r as x,s as f5,t as g,u as VL,v as U5,w as V5,x as p5,y as z5,z as Q5}from"../../chunk-hj6ccepz.js";import{F as $5}from"../../chunk-a3x125xy.js";import{H as X,I as Z}from"../../chunk-fa0psb24.js";import{Chain as j,ChainId as H5,SKConfig as K5,SwapKitError as v,WalletOption as C,createWallet as S5,filterSupportedChains as T5}from"@swapkit/helpers";import{SwapKitError as B,WalletOption as u5}from"@swapkit/helpers";import{AbstractSigner as D5}from"ethers";import{Chain as Q,SKConfig as _5}from"@swapkit/helpers";var r=(L,O)=>{return(O.find((V)=>V.startsWith(Y(L)))||"")?.split(":")?.[2]||""},Y=(L)=>{switch(L){case Q.Avalanche:return s;case Q.Base:return n;case Q.BinanceSmartChain:return I;case Q.Ethereum:return l;case Q.THORChain:return P;case Q.Arbitrum:return i;case Q.Optimism:return o;case Q.Polygon:return a;case Q.Maya:return c;case Q.Cosmos:return e;case Q.Kujira:return t;case Q.Near:{let{isStagenet:O}=_5.get("envs");return O?O5:L5}case Q.Tron:return j5;default:return""}};class M extends D5{address;chain;walletconnect;provider;constructor({chain:L,provider:O,walletconnect:F}){super(O);this.chain=L,this.walletconnect=F,this.provider=O,this.address=""}getAddress=async()=>{if(!this.walletconnect)throw new B("wallet_walletconnect_connection_not_established");if(!this.address)this.address=r(this.chain,this.walletconnect.accounts||[]);return this.address};signMessage=async(L)=>{let O=await this.walletconnect?.client.request({chainId:Y(this.chain),topic:this.walletconnect.session.topic||"",request:{method:"eth_sign",params:[L]}});return O.startsWith("0x")?O:`0x${O}`};signTransaction=()=>{throw new B("wallet_walletconnect_method_not_supported",{method:"signTransaction"})};signTypedData=()=>{throw new B("wallet_walletconnect_method_not_supported",{method:"signTypedData"})};sendTransaction=async({from:L,to:O,value:F,data:U})=>{let{toHexString:V}=await import("@swapkit/toolboxes/evm"),f={from:L,to:O,value:V(BigInt(F||0)),data:U};return await this.walletconnect?.client.request({chainId:Y(this.chain),topic:this.walletconnect.session.topic,request:{method:"eth_sendTransaction",params:[f]}})};connect=(L)=>{if(!L)throw new B({errorKey:"wallet_provider_not_found",info:{wallet:u5.WALLETCONNECT,chain:this.chain}});return new M({chain:this.chain,walletconnect:this.walletconnect,provider:L})}}var F5=async({chain:L,walletconnect:O,provider:F})=>new M({chain:L,walletconnect:O,provider:F});import{SwapKitError as y5}from"@swapkit/helpers";var R5=(L)=>{let O=[];for(let F of L){let[U]=F.split(":");if(U&&!O.includes(U))O.push(U)}return O},r5=(L)=>{switch(L){case"eip155":return Object.values(x);case"cosmos":return Object.values(g);case"solana":return Object.values(U5);case"polkadot":return Object.values(p5);case"near":return Object.values(Q5);case"tron":return Object.values(Z5);default:throw new y5({errorKey:"wallet_walletconnect_namespace_not_supported",info:{namespace:L}})}},B5=(L)=>{switch(L){case"eip155":return Object.values(f5);case"cosmos":return[];case"solana":return Object.values(V5);case"polkadot":return Object.values(z5);case"near":return Object.values(X5);case"tron":return Object.values(v5);default:throw new y5({errorKey:"wallet_walletconnect_namespace_not_supported",info:{namespace:L}})}},G5=(L)=>{let O=R5(L);return Object.fromEntries(O.map((F)=>[F,{methods:r5(F),chains:L.filter((U)=>U.startsWith(F)),events:B5(F)}]))};var w5=S5({name:"connectWalletconnect",walletType:C.WALLETCONNECT,supportedChains:[j.Arbitrum,j.Avalanche,j.Base,j.BinanceSmartChain,j.Cosmos,j.Ethereum,j.Kujira,j.Maya,j.Near,j.Optimism,j.Polygon,j.THORChain,j.Tron],connect:({addChain:L,supportedChains:O,walletType:F})=>async function U(V,f){let z=T5({chains:V,supportedChains:O,walletType:F}),{walletConnectProjectId:G}=K5.get("apiKeys");if(!G)throw new v("wallet_walletconnect_project_id_not_specified");let p=await x5(z,G,f);if(!p)throw new v("wallet_walletconnect_connection_not_established");let{accounts:J}=p;return await Promise.all(z.map(async(y)=>{let q=r(y,J||[]),b=await m5({address:q,chain:y,walletconnect:p});L({...b,address:q,chain:y,disconnect:p.disconnect,walletType:C.WALLETCONNECT})})),!0}}),jL=$5(w5);async function m5({chain:L,walletconnect:O,address:F}){let U=O?.session;if(!U)throw new v("wallet_walletconnect_connection_not_established");switch(L){case j.Arbitrum:case j.Avalanche:case j.Base:case j.BinanceSmartChain:case j.Ethereum:case j.Optimism:case j.Polygon:{let{getProvider:V,getEvmToolbox:f}=await import("@swapkit/toolboxes/evm"),z=await V(L),G=await F5({walletconnect:O,chain:L,provider:z});return await f(L,{provider:z,signer:G})}case j.THORChain:{let{SignMode:V}=await import("cosmjs-types/cosmos/tx/signing/v1beta1/signing.js"),{TxRaw:f}=await import("cosmjs-types/cosmos/tx/v1beta1/tx.js"),{encodePubkey:z,makeAuthInfoBytes:G}=(await import("@cosmjs/proto-signing")).default,{makeSignDoc:p}=(await import("@cosmjs/amino")).default,{getCosmosToolbox:J,buildAminoMsg:y,buildEncodedTxBody:q,createStargateClient:b,fromBase64:W,getDefaultChainFee:H,parseAminoMessageForDirectSigning:S}=await import("@swapkit/toolboxes/cosmos"),E=await J(j.THORChain);async function T(K){let D=await E.getAccount(K);if(L!==j.THORChain)return D;let[{address:$,algo:w,pubkey:R}]=await O?.client.request({chainId:P,topic:U.topic,request:{method:"cosmos_getAccounts",params:{}}});return{...D,address:$,pubkey:{type:w,value:R}}}let k=H(L),d=(K)=>O?.client.request({chainId:P,topic:U.topic,request:{method:"cosmos_signAmino",params:{signerAddress:F,signDoc:K}}});async function _({assetValue:K,memo:u,...D}){let $=await E.getAccount(F);if(!$)throw new v({errorKey:"wallet_missing_params",info:{account:$}});if(!$.pubkey)throw new v({errorKey:"wallet_missing_params",info:{account:$,pubkey:$?.pubkey}});let{accountNumber:w,sequence:R=0}=$,h=[y({assetValue:K,memo:u,sender:F,...D})],q5=H5.THORChain,Y5=p(h,k,q5,u,w?.toString(),R?.toString()||"0"),m=await d(Y5),b5=await q({chain:j.THORChain,msgs:h.map(S),memo:u||""}),k5=z($.pubkey),E5=G([{pubkey:k5,sequence:R}],k.amount,Number.parseInt(k.gas),void 0,void 0,V.SIGN_MODE_LEGACY_AMINO_JSON),P5=f.fromPartial({bodyBytes:b5,authInfoBytes:E5,signatures:[W(typeof m.signature==="string"?m.signature:m.signature.signature)]}),W5=f.encode(P5).finish();return(await(await b(K5.get("rpcUrls")[j.THORChain])).broadcastTx(W5)).transactionHash}return{...E,transfer:(K)=>_(K),deposit:(K)=>_(K),getAccount:T}}case j.Near:{let{getNearToolbox:V}=await import("@swapkit/toolboxes/near"),{DEFAULT_NEAR_METHODS:f}=await import("../../chunk-hj6ccepz.js");return await V({signer:{getPublicKey(){return Promise.reject(new v("wallet_walletconnect_method_not_supported",{method:"getPublicKey"}))},signNep413Message(p,J,y,q,b){return Promise.reject(new v("wallet_walletconnect_method_not_supported",{method:"signNep413Message"}))},async signTransaction(p){if(!O)throw new v("wallet_walletconnect_connection_not_established");let J=await O.client.request({topic:U.topic,chainId:Y(j.Near),request:{method:f.NEAR_SIGN_AND_SEND_TRANSACTION,params:{transaction:p}}});return[new Uint8Array(32),J]},signDelegateAction(p){return Promise.reject(new v("wallet_walletconnect_method_not_supported",{method:"signDelegateAction"}))},getAddress(){return Promise.resolve(F)}}})}case j.Tron:{let{createTronToolbox:V}=await import("@swapkit/toolboxes/tron"),{DEFAULT_TRON_METHODS:f}=await import("../../chunk-hj6ccepz.js");return await V({signer:{getAddress(){return Promise.resolve(F)},async signTransaction(p){if(!O)throw new v("wallet_walletconnect_connection_not_established");return await O.client.request({topic:U.topic,chainId:Y(j.Tron),request:{method:f.TRON_SIGN_TRANSACTION,params:{transaction:p}}})}}})}default:throw new v({errorKey:"wallet_chain_not_supported",info:{chain:L,wallet:C.WALLETCONNECT}})}}async function x5(L,O,F){let U,V,f,z;try{if(!O)throw new v("wallet_walletconnect_project_id_not_specified");let G=G5(L.map(Y)),{SignClient:p}=await import("@walletconnect/sign-client"),{WalletConnectModal:J}=await import("@walletconnect/modal"),y=new p({logger:N,relayUrl:A,projectId:O,metadata:F?.metadata||J5,...F?.core}),q=new J({logger:N,relayUrl:A,projectId:O,...F?.core}),b=await y.session.getAll()[0];if(b)await y.disconnect({topic:b.topic,reason:{code:0,message:"Resetting session"}});let{uri:W,approval:H}=await y.connect({requiredNamespaces:G});if(W){let E=function(T){let k=[];for(let[d,_]of Object.entries(T.namespaces))k.push(..._.accounts);return k};q.openModal({uri:W}),f=await H(),q.closeModal(),z=E(f)}let S=async()=>{f&&await y.disconnect({topic:f.topic,reason:{code:0,message:"User disconnected"}})};if(!f)throw new v("wallet_walletconnect_connection_not_established");return{signer:V,session:f,accounts:z,client:y,disconnect:S}}catch(G){}finally{if(U)U.closeModal()}return}export{w5 as walletconnectWallet,jL as WC_SUPPORTED_CHAINS,j5 as TRON_MAINNET_ID,P as THORCHAIN_MAINNET_ID,a as POLYGON_MAINNET_ID,o as OPTIMISM_MAINNET_ID,O5 as NEAR_TESTNET_ID,L5 as NEAR_MAINNET_ID,c as MAYACHAIN_MAINNET_ID,t as KUJIRA_MAINNET_ID,l as ETHEREUM_MAINNET_ID,Z5 as DEFAULT_TRON_METHODS,v5 as DEFAULT_TRON_EVENTS,U5 as DEFAULT_SOLANA_METHODS,V5 as DEFAULT_SOLANA_EVENTS,A as DEFAULT_RELAY_URL,p5 as DEFAULT_POLKADOT_METHODS,z5 as DEFAULT_POLKADOT_EVENTS,Q5 as DEFAULT_NEAR_METHODS,X5 as DEFAULT_NEAR_EVENTS,N as DEFAULT_LOGGER,f5 as DEFAULT_EIP_155_EVENTS,x as DEFAULT_EIP155_METHODS,g as DEFAULT_COSMOS_METHODS,VL as DEFAULT_COSMOS_EVENTS,J5 as DEFAULT_APP_METADATA,e as COSMOS_HUB_MAINNET_ID,I as BSC_MAINNET_ID,n as BASE_MAINNET_ID,s as AVALANCHE_MAINNET_ID,i as ARBITRUM_ONE_MAINNET_ID};
|
|
2
2
|
|
|
3
3
|
//# debugId=AD77A18299EBA6DB64756E2164756E21
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/dist/src/xaman/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as j}from"../../chunk-
|
|
1
|
+
import{F as j}from"../../chunk-a3x125xy.js";import{H as G,I as J}from"../../chunk-fa0psb24.js";import{Chain as Q,SKConfig as T,SwapKitError as Y,WalletOption as U,createWallet as Z,filterSupportedChains as $}from"@swapkit/helpers";import{Xumm as I}from"xumm";import{Chain as L,SwapKitError as h}from"@swapkit/helpers";import{SwapKitError as A}from"@swapkit/helpers";var H=async(f)=>{if(!f)throw new A("wallet_xaman_not_configured");try{let o=await(await f.user)?.account;if(o)return o;throw new A("wallet_xaman_auth_failed")}catch(n){throw console.error("Xaman wallet connection failed:",n),new A("wallet_xaman_connection_failed")}},O=async(f,n)=>{try{if(!(n.destination&&n.amount&&n.from))throw new A("wallet_xaman_connection_failed");let o=(Number.parseFloat(n.amount)*1e6).toString(),P={TransactionType:"Payment",Destination:n.destination,Amount:o,Account:n.from,...n.destinationTag!==void 0&&{DestinationTag:n.destinationTag},...n.memo&&{Memos:[{Memo:{MemoData:Buffer.from(n.memo,"utf8").toString("hex").toUpperCase()}}]}},t=await f.payload?.createAndSubscribe(P,(X)=>{if("signed"in X.data)return X.data;return});if(!t)throw new A("wallet_xaman_transaction_failed");let{created:C}=t;if(f.runtime?.xapp)f.xapp?.openSignRequest(C);else if(typeof window!=="undefined"){let X=C.pushed&&C.next?.no_push_msg_received?C.next.no_push_msg_received:C.next?.always;if(X)window.open(X)}let g=await t.resolved;if(!g||typeof g!=="object"||!("signed"in g)||!g.signed)throw new A("wallet_xaman_transaction_failed");let W=await f.payload?.get(g.payload_uuidv4);if(!W)throw new A("wallet_xaman_monitoring_failed");let _=W.response?.txid||"",y=W.response?.account||"";if(!_)throw new A("wallet_xaman_transaction_failed");return{payloadId:C.uuid||"",qrCode:C.refs?.qr_png||"",deepLink:C.next?.always||"",websocketUrl:C.refs?.websocket_status||"",result:{success:!0,transactionId:_,account:y,reason:void 0}}}catch(o){if(console.error("Xaman payment creation and subscription failed:",o),o instanceof A)throw o;throw new A("wallet_xaman_transaction_failed")}};async function z({xumm:f,chain:n,address:o,rpcUrl:P}){switch(n){case L.Ripple:{let{getRippleToolbox:t}=await import("@swapkit/toolboxes/ripple");return{...await t({rpcUrl:P}),address:o,getAddress:()=>o,transfer:async(W)=>{let{recipient:_,assetValue:y,memo:X}=W,l=await O(f,{from:o,destination:_,amount:y.getValue("string"),memo:X});if(!(l.result.success&&l.result.transactionId))throw new h("wallet_xaman_transaction_failed");return l.result.transactionId},createAndSubscribePayment:O,disconnect:f.logout}}default:throw new h("wallet_chain_not_supported",{wallet:"Xaman",chain:n})}}var R=Z({name:"connectXaman",walletType:U.XAMAN,supportedChains:[Q.Ripple],connect:({addChain:f,supportedChains:n,walletType:o})=>async function P(t,C){let g=$({chains:t,supportedChains:n,walletType:o}),{xaman:W}=T.get("apiKeys"),_=C?.apiKey||W;if(!_)throw new Y("wallet_missing_api_key",{wallet:"Xaman"});let y=new I(_);return new Promise((X,l)=>{y.on("success",async()=>{try{let N=await H(y),q=g.map(async(M)=>{let B=T.get("rpcUrls")[M],F=await z({xumm:y,chain:M,address:N,rpcUrl:B});f({...F,chain:M,balance:[],walletType:U.XAMAN,address:N,disconnect:y.logout})});await Promise.all(q),X(!0)}catch(N){l(N)}}),y.on("error",(N)=>{l(N)}),y.authorize()})}}),v=j(R);export{R as xamanWallet,v as XAMAN_SUPPORTED_CHAINS};
|
|
2
2
|
|
|
3
3
|
//# debugId=C2B1DD7DD4B9F64064756E2164756E21
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
"@scure/base": "^1.2.0",
|
|
25
25
|
"@scure/bip39": "^1.6.0",
|
|
26
26
|
"@solana/web3.js": "^1.98.0",
|
|
27
|
-
"@swapkit/helpers": "^4.0.0-beta.
|
|
28
|
-
"@swapkit/toolboxes": "^4.0.0-beta.
|
|
27
|
+
"@swapkit/helpers": "^4.0.0-beta.26",
|
|
28
|
+
"@swapkit/toolboxes": "^4.0.0-beta.38",
|
|
29
29
|
"@trezor/connect-web": "^9.6.0",
|
|
30
30
|
"@walletconnect/modal": "^2.7.0",
|
|
31
31
|
"@walletconnect/sign-client": "^2.21.0",
|
|
@@ -63,8 +63,8 @@
|
|
|
63
63
|
"@scure/base": "1.2.6",
|
|
64
64
|
"@scure/bip39": "1.6.0",
|
|
65
65
|
"@solana/web3.js": "1.98.2",
|
|
66
|
-
"@swapkit/helpers": "4.0.0-beta.
|
|
67
|
-
"@swapkit/toolboxes": "4.0.0-beta.
|
|
66
|
+
"@swapkit/helpers": "4.0.0-beta.26",
|
|
67
|
+
"@swapkit/toolboxes": "4.0.0-beta.38",
|
|
68
68
|
"@trezor/connect-web": "9.6.0",
|
|
69
69
|
"@walletconnect/logger": "2.1.2",
|
|
70
70
|
"@walletconnect/modal": "2.7.0",
|
|
@@ -190,12 +190,12 @@
|
|
|
190
190
|
"src/",
|
|
191
191
|
"dist/"
|
|
192
192
|
],
|
|
193
|
-
"homepage": "https://github.com/
|
|
193
|
+
"homepage": "https://github.com/swapkit/SwapKit",
|
|
194
194
|
"license": "Apache-2.0",
|
|
195
195
|
"name": "@swapkit/wallets",
|
|
196
196
|
"repository": {
|
|
197
197
|
"type": "git",
|
|
198
|
-
"url": "git+https://github.com/
|
|
198
|
+
"url": "git+https://github.com/swapkit/SwapKit.git"
|
|
199
199
|
},
|
|
200
200
|
"scripts": {
|
|
201
201
|
"build": "bun run ./build.ts",
|
|
@@ -205,5 +205,5 @@
|
|
|
205
205
|
"type-check:go": "tsgo"
|
|
206
206
|
},
|
|
207
207
|
"type": "module",
|
|
208
|
-
"version": "4.0.0-beta.
|
|
208
|
+
"version": "4.0.0-beta.41"
|
|
209
209
|
}
|
|
@@ -18,7 +18,7 @@ export const cosmosWalletMethods = async ({
|
|
|
18
18
|
const {
|
|
19
19
|
DEFAULT_COSMOS_FEE_MAINNET,
|
|
20
20
|
getCosmosToolbox,
|
|
21
|
-
|
|
21
|
+
getFeeRateFromSwapKit,
|
|
22
22
|
createStargateClient,
|
|
23
23
|
} = await import("@swapkit/toolboxes/cosmos");
|
|
24
24
|
const derivationPathString = derivationPath
|
|
@@ -33,7 +33,7 @@ export const cosmosWalletMethods = async ({
|
|
|
33
33
|
|
|
34
34
|
if (DEFAULT_COSMOS_FEE_MAINNET.amount[0]) {
|
|
35
35
|
DEFAULT_COSMOS_FEE_MAINNET.amount[0].amount = String(
|
|
36
|
-
await
|
|
36
|
+
await getFeeRateFromSwapKit(ChainId.Cosmos, 500),
|
|
37
37
|
);
|
|
38
38
|
}
|
|
39
39
|
|
|
@@ -20,10 +20,12 @@ export const TRON_MAINNET_ID = "tron:0x2b6653dc";
|
|
|
20
20
|
export const DEFAULT_LOGGER = "debug";
|
|
21
21
|
|
|
22
22
|
export const DEFAULT_APP_METADATA: ClientMetadata = {
|
|
23
|
-
name: "
|
|
24
|
-
description: "
|
|
25
|
-
url: "https://
|
|
26
|
-
icons: [
|
|
23
|
+
name: "SwapKit",
|
|
24
|
+
description: "SwapKit cross-chain SDK",
|
|
25
|
+
url: "https://swapkit.dev/",
|
|
26
|
+
icons: [
|
|
27
|
+
"https://raw.githubusercontent.com/swapkit/SwapKit/refs/heads/develop/docs/src/assets/logo-black.png",
|
|
28
|
+
],
|
|
27
29
|
};
|
|
28
30
|
|
|
29
31
|
/**
|
package/dist/chunk-3t5jkca2.js
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import"./chunk-fa0psb24.js";var Q="wss://relay.walletconnect.com",W="eip155:1",X="eip155:56",Y="eip155:43114",Z="cosmos:thorchain",$="cosmos:cosmoshub-4",c="cosmos:kaiyo-1",e="cosmos:mayachain-mainnet-v1",g="eip155:42161",h="eip155:10",o="eip155:137",r="eip155:8453",G="near:mainnet",a="near:testnet",i="tron:0x2b6653dc",s="debug",t={name:"THORSwap",description:"THORSwap multi-chain dex aggregator powered by THORChain",url:"https://app.thorswap.finance/",icons:["https://static.thorswap.net/logo.png"]},l;((b)=>{b.ETH_SEND_TRANSACTION="eth_sendTransaction";b.ETH_SIGN="eth_sign";b.PERSONAL_SIGN="personal_sign";b.ETH_SIGN_TYPED_DATA="eth_signTypedData"})(l||={});var m;((d)=>{d.ETH_CHAIN_CHANGED="chainChanged";d.ETH_ACCOUNTS_CHANGED="accountsChanged"})(m||={});var p;((k)=>{k.COSMOS_SIGN_DIRECT="cosmos_signDirect";k.COSMOS_SIGN_AMINO="cosmos_signAmino";k.COSMOS_GET_ACCOUNTS="cosmos_getAccounts"})(p||={});var q;((j)=>{})(q||={});var u;((d)=>{d.SOL_SIGN_TRANSACTION="solana_signTransaction";d.SOL_SIGN_MESSAGE="solana_signMessage"})(u||={});var v;((j)=>{})(v||={});var w;((d)=>{d.POLKADOT_SIGN_TRANSACTION="polkadot_signTransaction";d.POLKADOT_SIGN_MESSAGE="polkadot_signMessage"})(w||={});var x;((j)=>{})(x||={});var y;((f)=>{f.NEAR_SIGN_IN="near_signIn";f.NEAR_SIGN_OUT="near_signOut";f.NEAR_GET_ACCOUNTS="near_getAccounts";f.NEAR_SIGN_AND_SEND_TRANSACTION="near_signAndSendTransaction";f.NEAR_SIGN_AND_SEND_TRANSACTIONS="near_signAndSendTransactions"})(y||={});var z;((j)=>{})(z||={});var B;((b)=>{b.TRON_SIGN_MESSAGE="tron_signMessage";b.TRON_SIGN_TRANSACTION="tron_signTransaction";b.TRON_SEND_TRANSACTION="tron_sendTransaction";b.TRON_GET_ACCOUNTS="tron_getAccounts"})(B||={});var J;((j)=>{})(J||={});export{i as TRON_MAINNET_ID,Z as THORCHAIN_MAINNET_ID,o as POLYGON_MAINNET_ID,h as OPTIMISM_MAINNET_ID,a as NEAR_TESTNET_ID,G as NEAR_MAINNET_ID,e as MAYACHAIN_MAINNET_ID,c as KUJIRA_MAINNET_ID,W as ETHEREUM_MAINNET_ID,B as DEFAULT_TRON_METHODS,J as DEFAULT_TRON_EVENTS,u as DEFAULT_SOLANA_METHODS,v as DEFAULT_SOLANA_EVENTS,Q as DEFAULT_RELAY_URL,w as DEFAULT_POLKADOT_METHODS,x as DEFAULT_POLKADOT_EVENTS,y as DEFAULT_NEAR_METHODS,z as DEFAULT_NEAR_EVENTS,s as DEFAULT_LOGGER,m as DEFAULT_EIP_155_EVENTS,l as DEFAULT_EIP155_METHODS,p as DEFAULT_COSMOS_METHODS,q as DEFAULT_COSMOS_EVENTS,t as DEFAULT_APP_METADATA,$ as COSMOS_HUB_MAINNET_ID,X as BSC_MAINNET_ID,r as BASE_MAINNET_ID,Y as AVALANCHE_MAINNET_ID,g as ARBITRUM_ONE_MAINNET_ID};
|
|
2
|
-
export{Q as a,W as b,X as c,Y as d,Z as e,$ as f,c as g,e as h,g as i,h as j,o as k,r as l,G as m,a as n,i as o,s as p,t as q,l as r,m as s,p as t,q as u,u as v,v as w,w as x,x as y,y as z,z as A,B,J as C};
|
|
3
|
-
|
|
4
|
-
//# debugId=FCF404336067EE3464756E2164756E21
|
|
5
|
-
//# sourceMappingURL=chunk-3t5jkca2.js.map
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../src/walletconnect/constants.ts"],
|
|
4
|
-
"sourcesContent": [
|
|
5
|
-
"import type { ClientMetadata } from \"./types\";\n\nexport const DEFAULT_RELAY_URL = \"wss://relay.walletconnect.com\";\n\nexport const ETHEREUM_MAINNET_ID = \"eip155:1\";\nexport const BSC_MAINNET_ID = \"eip155:56\";\nexport const AVALANCHE_MAINNET_ID = \"eip155:43114\";\nexport const THORCHAIN_MAINNET_ID = \"cosmos:thorchain\";\nexport const COSMOS_HUB_MAINNET_ID = \"cosmos:cosmoshub-4\";\nexport const KUJIRA_MAINNET_ID = \"cosmos:kaiyo-1\";\nexport const MAYACHAIN_MAINNET_ID = \"cosmos:mayachain-mainnet-v1\";\nexport const ARBITRUM_ONE_MAINNET_ID = \"eip155:42161\";\nexport const OPTIMISM_MAINNET_ID = \"eip155:10\";\nexport const POLYGON_MAINNET_ID = \"eip155:137\";\nexport const BASE_MAINNET_ID = \"eip155:8453\";\nexport const NEAR_MAINNET_ID = \"near:mainnet\";\nexport const NEAR_TESTNET_ID = \"near:testnet\";\nexport const TRON_MAINNET_ID = \"tron:0x2b6653dc\";\n\nexport const DEFAULT_LOGGER = \"debug\";\n\nexport const DEFAULT_APP_METADATA: ClientMetadata = {\n name: \"THORSwap\",\n description: \"THORSwap multi-chain dex aggregator powered by THORChain\",\n url: \"https://app.thorswap.finance/\",\n icons: [\"https://static.thorswap.net/logo.png\"],\n};\n\n/**\n * EIP155\n */\nexport enum DEFAULT_EIP155_METHODS {\n ETH_SEND_TRANSACTION = \"eth_sendTransaction\",\n // not supported by most WC wallets\n // ETH_SIGN_TRANSACTION = 'eth_signTransaction',\n ETH_SIGN = \"eth_sign\",\n PERSONAL_SIGN = \"personal_sign\",\n ETH_SIGN_TYPED_DATA = \"eth_signTypedData\",\n}\n\nexport enum DEFAULT_EIP_155_EVENTS {\n ETH_CHAIN_CHANGED = \"chainChanged\",\n ETH_ACCOUNTS_CHANGED = \"accountsChanged\",\n}\n\n/**\n * COSMOS\n */\nexport enum DEFAULT_COSMOS_METHODS {\n COSMOS_SIGN_DIRECT = \"cosmos_signDirect\",\n COSMOS_SIGN_AMINO = \"cosmos_signAmino\",\n COSMOS_GET_ACCOUNTS = \"cosmos_getAccounts\",\n}\n\nexport enum DEFAULT_COSMOS_EVENTS {}\n\n/**\n * SOLANA\n */\nexport enum DEFAULT_SOLANA_METHODS {\n SOL_SIGN_TRANSACTION = \"solana_signTransaction\",\n SOL_SIGN_MESSAGE = \"solana_signMessage\",\n}\n\nexport enum DEFAULT_SOLANA_EVENTS {}\n\n/**\n * POLKADOT\n */\nexport enum DEFAULT_POLKADOT_METHODS {\n POLKADOT_SIGN_TRANSACTION = \"polkadot_signTransaction\",\n POLKADOT_SIGN_MESSAGE = \"polkadot_signMessage\",\n}\n\nexport enum DEFAULT_POLKADOT_EVENTS {}\n\n/**\n * NEAR\n */\nexport enum DEFAULT_NEAR_METHODS {\n NEAR_SIGN_IN = \"near_signIn\",\n NEAR_SIGN_OUT = \"near_signOut\",\n NEAR_GET_ACCOUNTS = \"near_getAccounts\",\n NEAR_SIGN_AND_SEND_TRANSACTION = \"near_signAndSendTransaction\",\n NEAR_SIGN_AND_SEND_TRANSACTIONS = \"near_signAndSendTransactions\",\n}\n\nexport enum DEFAULT_NEAR_EVENTS {}\n\n/**\n * TRON\n */\nexport enum DEFAULT_TRON_METHODS {\n TRON_SIGN_MESSAGE = \"tron_signMessage\",\n TRON_SIGN_TRANSACTION = \"tron_signTransaction\",\n TRON_SEND_TRANSACTION = \"tron_sendTransaction\",\n TRON_GET_ACCOUNTS = \"tron_getAccounts\",\n}\n\nexport enum DEFAULT_TRON_EVENTS {}\n"
|
|
6
|
-
],
|
|
7
|
-
"mappings": "4BAEO,IAAM,EAAoB,gCAEpB,EAAsB,WACtB,EAAiB,YACjB,EAAuB,eACvB,EAAuB,mBACvB,EAAwB,qBACxB,EAAoB,iBACpB,EAAuB,8BACvB,EAA0B,eAC1B,EAAsB,YACtB,EAAqB,aACrB,EAAkB,cAClB,EAAkB,eAClB,EAAkB,eAClB,EAAkB,kBAElB,EAAiB,QAEjB,EAAuC,CAClD,KAAM,WACN,YAAa,2DACb,IAAK,gCACL,MAAO,CAAC,sCAAsC,CAChD,EAKY,GAAL,CAAK,IAAL,CACL,uBAAuB,sBAGvB,WAAW,WACX,gBAAgB,gBAChB,sBAAsB,sBANZ,QASL,IAAK,GAAL,CAAK,IAAL,CACL,oBAAoB,eACpB,uBAAuB,oBAFb,QAQL,IAAK,GAAL,CAAK,IAAL,CACL,qBAAqB,oBACrB,oBAAoB,mBACpB,sBAAsB,uBAHZ,QAML,IAAK,GAAL,CAAK,IAAL,IAAK,QAKL,IAAK,GAAL,CAAK,IAAL,CACL,uBAAuB,yBACvB,mBAAmB,uBAFT,QAKL,IAAK,GAAL,CAAK,IAAL,IAAK,QAKL,IAAK,GAAL,CAAK,IAAL,CACL,4BAA4B,2BAC5B,wBAAwB,yBAFd,QAKL,IAAK,GAAL,CAAK,IAAL,IAAK,QAKL,IAAK,GAAL,CAAK,IAAL,CACL,eAAe,cACf,gBAAgB,eAChB,oBAAoB,mBACpB,iCAAiC,8BACjC,kCAAkC,iCALxB,QAQL,IAAK,GAAL,CAAK,IAAL,IAAK,QAKL,IAAK,GAAL,CAAK,IAAL,CACL,oBAAoB,mBACpB,wBAAwB,uBACxB,wBAAwB,uBACxB,oBAAoB,qBAJV,QAOL,IAAK,GAAL,CAAK,IAAL,IAAK",
|
|
8
|
-
"debugId": "FCF404336067EE3464756E2164756E21",
|
|
9
|
-
"names": []
|
|
10
|
-
}
|
package/dist/chunk-kfw1mys1.js
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
var Q="wss://relay.walletconnect.com",W="eip155:1",X="eip155:56",Y="eip155:43114",Z="cosmos:thorchain",$="cosmos:cosmoshub-4",c="cosmos:kaiyo-1",e="cosmos:mayachain-mainnet-v1",g="eip155:42161",h="eip155:10",o="eip155:137",r="eip155:8453",G="near:mainnet",a="near:testnet",i="tron:0x2b6653dc",s="debug",t={name:"THORSwap",description:"THORSwap multi-chain dex aggregator powered by THORChain",url:"https://app.thorswap.finance/",icons:["https://static.thorswap.net/logo.png"]},l;((b)=>{b.ETH_SEND_TRANSACTION="eth_sendTransaction";b.ETH_SIGN="eth_sign";b.PERSONAL_SIGN="personal_sign";b.ETH_SIGN_TYPED_DATA="eth_signTypedData"})(l||={});var m;((d)=>{d.ETH_CHAIN_CHANGED="chainChanged";d.ETH_ACCOUNTS_CHANGED="accountsChanged"})(m||={});var p;((k)=>{k.COSMOS_SIGN_DIRECT="cosmos_signDirect";k.COSMOS_SIGN_AMINO="cosmos_signAmino";k.COSMOS_GET_ACCOUNTS="cosmos_getAccounts"})(p||={});var q;((j)=>{})(q||={});var u;((d)=>{d.SOL_SIGN_TRANSACTION="solana_signTransaction";d.SOL_SIGN_MESSAGE="solana_signMessage"})(u||={});var v;((j)=>{})(v||={});var w;((d)=>{d.POLKADOT_SIGN_TRANSACTION="polkadot_signTransaction";d.POLKADOT_SIGN_MESSAGE="polkadot_signMessage"})(w||={});var x;((j)=>{})(x||={});var y;((f)=>{f.NEAR_SIGN_IN="near_signIn";f.NEAR_SIGN_OUT="near_signOut";f.NEAR_GET_ACCOUNTS="near_getAccounts";f.NEAR_SIGN_AND_SEND_TRANSACTION="near_signAndSendTransaction";f.NEAR_SIGN_AND_SEND_TRANSACTIONS="near_signAndSendTransactions"})(y||={});var z;((j)=>{})(z||={});var B;((b)=>{b.TRON_SIGN_MESSAGE="tron_signMessage";b.TRON_SIGN_TRANSACTION="tron_signTransaction";b.TRON_SEND_TRANSACTION="tron_sendTransaction";b.TRON_GET_ACCOUNTS="tron_getAccounts"})(B||={});var J;((j)=>{})(J||={});
|
|
2
|
-
|
|
3
|
-
//# debugId=B92B90DEBD0C13E464756E2164756E21
|
|
4
|
-
//# sourceMappingURL=chunk-kfw1mys1.js.map
|