@swapkit/wallets 3.0.0-beta.13 → 3.0.0-beta.15
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/src/bitget/index.cjs +2 -2
- package/dist/src/bitget/index.cjs.map +3 -3
- package/dist/src/bitget/index.js +2 -2
- package/dist/src/bitget/index.js.map +3 -3
- 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.cjs +2 -2
- package/dist/src/exodus/index.cjs.map +3 -3
- package/dist/src/exodus/index.js +2 -2
- package/dist/src/exodus/index.js.map +3 -3
- package/dist/src/index.js +1 -1
- package/dist/src/keepkey/index.js +1 -1
- package/dist/src/keepkey-bex/index.js +1 -1
- package/dist/src/keystore/index.js +1 -1
- package/dist/src/ledger/index.cjs +3 -3
- package/dist/src/ledger/index.cjs.map +4 -4
- package/dist/src/ledger/index.js +3 -3
- package/dist/src/ledger/index.js.map +4 -4
- package/dist/src/okx/index.cjs +2 -2
- package/dist/src/okx/index.cjs.map +3 -3
- package/dist/src/okx/index.js +2 -2
- package/dist/src/okx/index.js.map +3 -3
- package/dist/src/onekey/index.cjs +2 -2
- package/dist/src/onekey/index.cjs.map +3 -3
- package/dist/src/onekey/index.js +2 -2
- package/dist/src/onekey/index.js.map +3 -3
- 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.js +1 -1
- package/package.json +2 -2
- package/src/bitget/helpers.ts +1 -2
- package/src/exodus/index.ts +1 -2
- package/src/ledger/clients/utxo.ts +1 -3
- package/src/ledger/helpers/getLedgerTransport.ts +4 -2
- package/src/okx/helpers.ts +2 -1
- package/src/onekey/index.ts +1 -1
- /package/dist/{chunk-9cnrfb9p.js → chunk-0vabeczs.js} +0 -0
- /package/dist/{chunk-9cnrfb9p.js.map → chunk-0vabeczs.js.map} +0 -0
- /package/dist/{chunk-bw2b8py6.js → chunk-95tkswae.js} +0 -0
- /package/dist/{chunk-bw2b8py6.js.map → chunk-95tkswae.js.map} +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{a as p}from"../../chunk-
|
|
1
|
+
import{a as p}from"../../chunk-0vabeczs.js";import{c as d,d as m}from"../../chunk-p1kdg37m.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=962A7B2CAE25081964756E2164756E21
|
package/dist/src/trezor/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{a as K}from"../../chunk-
|
|
1
|
+
import{a as K}from"../../chunk-0vabeczs.js";import{c as N,d as V}from"../../chunk-p1kdg37m.js";import{Chain as j,FeeOption as E,SKConfig as S,SwapKitError as M,WalletOption as f,createWallet as y,derivationPathToString as P,filterSupportedChains as b}from"@swapkit/helpers";function w(q){switch(q[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:q,derivationPath:Q}){switch(q){case j.BinanceSmartChain:case j.Avalanche:case j.Arbitrum:case j.Optimism:case j.Polygon:case j.Base:case j.Ethereum:{let{getProvider:H,getEvmToolbox:X}=await import("@swapkit/toolboxes/evm"),{getEVMSigner:Y}=await import("../../chunk-ta4bdjpy.js"),Z=await H(q),I=await Y({chain:q,derivationPath:Q,provider:Z}),D=await I.getAddress();return{...await X(q,{provider:Z,signer:I}),address:D}}case j.Bitcoin:case j.BitcoinCash:case j.Dash:case j.Dogecoin:case j.Litecoin:{let{toCashAddress:H,getUtxoToolbox:X}=await import("@swapkit/toolboxes/utxo"),Y=w(Q);if(!Y)throw new M({errorKey:"wallet_trezor_derivation_path_not_supported",info:{derivationPath:Q}});let Z=q.toLowerCase(),D=await(async($=Q)=>{let F=(await import("@trezor/connect-web")).default,{success:_,payload:G}=await F.getAddress({path:P($),coin:Z});if(!_)throw new M({errorKey:"wallet_trezor_failed_to_get_address",info:{chain:q,error:G.error||"Unknown error"}});if(q===j.BitcoinCash)return(await X(q)).stripPrefix(G.address);return G.address})(),k=async($,F,_="")=>{let G=(await import("@trezor/connect-web")).default,A=Q.map((B,J)=>J<3?(B|2147483648)>>>0:B),L=await X(q),R=await G.signTransaction({coin:Z,inputs:F.map(({hash:B,index:J,value:U})=>({address_n:A,prev_hash:B,prev_index:J,amount:U,script_type:Y.input})),outputs:$.txOutputs.map((B)=>{let J=q===j.BitcoinCash&&B.address?L.stripPrefix(H(B.address)):B.address,U=J===D;if(!B.address)return{amount:"0",op_return_data:Buffer.from(_).toString("hex"),script_type:"PAYTOOPRETURN"};return U?{amount:B.value,address_n:A,script_type:Y.output}:{amount:B.value,address:J,script_type:"PAYTOADDRESS"}})});if(R.success)return R.payload.serializedTx;throw new M({errorKey:"wallet_trezor_failed_to_sign_transaction",info:{chain:q,error:R.payload.error}})},W=async({recipient:$,feeOptionKey:F,feeRate:_,memo:G,...A})=>{if(!(D&&$))throw new M({errorKey:"wallet_missing_params",info:{wallet:f.TREZOR,memo:G,address:D,recipient:$}});let L=await X(q),R=_||(await L.getFeeRates())[F||E.Fast],B=q===j.BitcoinCash?L.buildTx:L.createTransaction,{psbt:J,inputs:U}=await B({...A,memo:G,recipient:$,feeRate:R,sender:D,fetchTxHex:!0}),O=await k(J,U,G);return await L.broadcastTx(O)};return{...await X(q),address:D,transfer:W,signTransaction:k}}default:throw new M({errorKey:"wallet_chain_not_supported",info:{chain:q,wallet:f.TREZOR}})}}var v=y({name:"connectTrezor",walletType:f.TREZOR,supportedChains:[j.Arbitrum,j.Avalanche,j.Base,j.BinanceSmartChain,j.Bitcoin,j.BitcoinCash,j.Dash,j.Dogecoin,j.Ethereum,j.Litecoin,j.Optimism,j.Polygon],connect:({addChain:q,supportedChains:Q,walletType:H})=>async function X(Y,Z){let[I]=b({chains:Y,supportedChains:Q,walletType:H});if(!I)throw new M({errorKey:"wallet_chain_not_supported",info:{chain:I,wallet:f.TREZOR}});let D=(await import("@trezor/connect-web")).default,{success:k}=await D.getDeviceState();if(!k){let z=S.get("integrations").trezor||{appUrl:"",email:""};D.init({lazyLoad:!0,manifest:z})}let W=await g({chain:I,derivationPath:Z});return q({...W,chain:I,walletType:H}),!0}}),C=K(v);export{v as trezorWallet,C as TREZOR_SUPPORTED_CHAINS};
|
|
2
2
|
|
|
3
3
|
//# debugId=241FF615860C5C4564756E2164756E21
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{a as jr}from"../../chunk-
|
|
1
|
+
import{a as jr}from"../../chunk-0vabeczs.js";import{c as Y,d as J}from"../../chunk-p1kdg37m.js";import{Chain as N,ChainId as Vr,SKConfig as fr,SwapKitError as G,WalletOption as c,createWallet as er,filterSupportedChains as kr}from"@swapkit/helpers";var A="wss://relay.walletconnect.com",F="eip155:1",O="eip155:56",l="eip155:43114",X="cosmos:thorchain",L="cosmos:cosmoshub-4",o="cosmos:kaiyo-1",T="cosmos:mayachain-mainnet-v1",D="eip155:42161",E="eip155:10",S="eip155:137",rr="eip155:8453",sr="debug",ur={name:"THORSwap",description:"THORSwap multi-chain dex aggregator powered by THORChain",url:"https://app.thorswap.finance/",icons:["https://static.thorswap.net/logo.png"]},R;((t)=>{t.ETH_SEND_TRANSACTION="eth_sendTransaction";t.ETH_SIGN="eth_sign";t.PERSONAL_SIGN="personal_sign";t.ETH_SIGN_TYPED_DATA="eth_signTypedData"})(R||={});var w;((s)=>{s.ETH_CHAIN_CHANGED="chainChanged";s.ETH_ACCOUNTS_CHANGED="accountsChanged"})(w||={});var V;((p)=>{p.COSMOS_SIGN_DIRECT="cosmos_signDirect";p.COSMOS_SIGN_AMINO="cosmos_signAmino";p.COSMOS_GET_ACCOUNTS="cosmos_getAccounts"})(V||={});var Zr;((r)=>{})(Zr||={});var i;((s)=>{s.SOL_SIGN_TRANSACTION="solana_signTransaction";s.SOL_SIGN_MESSAGE="solana_signMessage"})(i||={});var P;((r)=>{})(P||={});var g;((s)=>{s.POLKADOT_SIGN_TRANSACTION="polkadot_signTransaction";s.POLKADOT_SIGN_MESSAGE="polkadot_signMessage"})(g||={});var x;((r)=>{})(x||={});var d;((I)=>{I.NEAR_SIGN_IN="near_signIn";I.NEAR_SIGN_OUT="near_signOut";I.NEAR_GET_ACCOUNTS="near_getAccounts";I.NEAR_SIGN_AND_SEND_TRANSACTION="near_signAndSendTransaction";I.NEAR_SIGN_AND_SEND_TRANSACTIONS="near_signAndSendTransactions"})(d||={});var n;((r)=>{})(n||={});import{SwapKitError as Nr,WalletOption as vr}from"@swapkit/helpers";import{AbstractSigner as $r}from"ethers";import{Chain as C}from"@swapkit/helpers";var e=(r,u)=>{return(u.find((t)=>t.startsWith(z(r)))||"")?.split(":")?.[2]||""},z=(r)=>{switch(r){case C.Avalanche:return l;case C.Base:return rr;case C.BinanceSmartChain:return O;case C.Ethereum:return F;case C.THORChain:return X;case C.Arbitrum:return D;case C.Optimism:return E;case C.Polygon:return S;case C.Maya:return T;case C.Cosmos:return L;case C.Kujira:return o;default:return""}};class _ extends $r{address;chain;walletconnect;provider;constructor({chain:r,provider:u,walletconnect:s}){super(u);this.chain=r,this.walletconnect=s,this.provider=u,this.address=""}getAddress=async()=>{if(!this.walletconnect)throw new Nr("wallet_walletconnect_connection_not_established");if(!this.address)this.address=e(this.chain,this.walletconnect.accounts);return this.address};signMessage=async(r)=>{let u=await this.walletconnect?.client.request({chainId:z(this.chain),topic:this.walletconnect.session.topic,request:{method:"eth_sign",params:[r]}});return u.startsWith("0x")?u:`0x${u}`};signTransaction=()=>{throw new Error("Not implemented: signTransaction")};signTypedData=()=>{throw new Error("Not implemented: signTypedData")};sendTransaction=async({from:r,to:u,value:s,data:p})=>{let{toHexString:t}=await import("@swapkit/toolboxes/evm"),I={from:r,to:u,value:t(BigInt(s||0)),data:p};return await this.walletconnect?.client.request({chainId:z(this.chain),topic:this.walletconnect.session.topic,request:{method:"eth_sendTransaction",params:[I]}})};connect=(r)=>{if(!r)throw new Nr({errorKey:"wallet_provider_not_found",info:{wallet:vr.WALLETCONNECT,chain:this.chain}});return new _({chain:this.chain,walletconnect:this.walletconnect,provider:r})}}var pr=async({chain:r,walletconnect:u,provider:s})=>new _({chain:r,walletconnect:u,provider:s});import{SwapKitError as tr}from"@swapkit/helpers";var br=(r)=>{let u=[];for(let s of r){let[p]=s.split(":");if(p&&!u.includes(p))u.push(p)}return u},qr=(r)=>{switch(r){case"eip155":return Object.values(R);case"cosmos":return Object.values(V);case"solana":return Object.values(i);case"polkadot":return Object.values(g);case"near":return Object.values(d);default:throw new tr({errorKey:"wallet_walletconnect_namespace_not_supported",info:{namespace:r}})}},Rr=(r)=>{switch(r){case"eip155":return Object.values(w);case"cosmos":return[];case"solana":return Object.values(P);case"polkadot":return Object.values(x);case"near":return Object.values(n);default:throw new tr({errorKey:"wallet_walletconnect_namespace_not_supported",info:{namespace:r}})}},Ir=(r)=>{let u=br(r);return Object.fromEntries(u.map((s)=>[s,{methods:qr(s),chains:r.filter((p)=>p.startsWith(s)),events:Rr(s)}]))};var mr=er({name:"connectWalletconnect",walletType:c.WALLETCONNECT,supportedChains:[N.Arbitrum,N.Avalanche,N.Base,N.BinanceSmartChain,N.Cosmos,N.Ethereum,N.Kujira,N.Maya,N.Optimism,N.Polygon,N.THORChain],connect:({addChain:r,supportedChains:u,walletType:s})=>async function p(t,I){let f=kr({chains:t,supportedChains:u,walletType:s}),{walletConnectProjectId:y}=fr.get("apiKeys");if(!y)throw new G("wallet_walletconnect_project_id_not_specified");let j=await Wr(f,y,I);if(!j)throw new G("wallet_walletconnect_connection_not_established");let{session:Q,accounts:Z}=j;return await Promise.all(f.map(async(K)=>{let v=e(K,Z),k=await Mr({session:Q,address:v,chain:K,walletconnect:j});r({...k,address:v,chain:K,disconnect:j.disconnect,walletType:c.WALLETCONNECT})})),!0}}),Er=jr(mr);async function Mr({chain:r,walletconnect:u,address:s,session:p}){switch(r){case N.Arbitrum:case N.Avalanche:case N.Base:case N.BinanceSmartChain:case N.Ethereum:case N.Optimism:case N.Polygon:{let{getProvider:t,getEvmToolbox:I}=await import("@swapkit/toolboxes/evm"),f=await t(r),y=await pr({walletconnect:u,chain:r,provider:f});return await I(r,{provider:f,signer:y})}case N.THORChain:{let{SignMode:t}=await import("cosmjs-types/cosmos/tx/signing/v1beta1/signing.js"),{TxRaw:I}=await import("cosmjs-types/cosmos/tx/v1beta1/tx.js"),{encodePubkey:f,makeAuthInfoBytes:y}=(await import("@cosmjs/proto-signing")).default,{makeSignDoc:j}=(await import("@cosmjs/amino")).default,{getCosmosToolbox:Q,buildAminoMsg:Z,buildEncodedTxBody:K,createStargateClient:v,fromBase64:k,getDefaultChainFee:Cr,parseAminoMessageForDirectSigning:yr}=await import("@swapkit/toolboxes/cosmos"),m=await Q(N.THORChain);async function hr(h){let b=await m.getAccount(h);if(r!==N.THORChain)return b;let[{address:B,algo:W,pubkey:q}]=await u?.client.request({chainId:X,topic:p.topic,request:{method:"cosmos_getAccounts",params:{}}});return{...b,address:B,pubkey:{type:W,value:q}}}let M=Cr(r),Br=(h)=>u?.client.request({chainId:X,topic:p.topic,request:{method:"cosmos_signAmino",params:{signerAddress:s,signDoc:h}}});async function U({assetValue:h,memo:$,...b}){let B=await m.getAccount(s);if(!B)throw new G({errorKey:"wallet_missing_params",info:{account:B}});if(!B.pubkey)throw new G({errorKey:"wallet_missing_params",info:{account:B,pubkey:B?.pubkey}});let{accountNumber:W,sequence:q=0}=B,H=[Z({assetValue:h,memo:$,sender:s,...b})],Yr=Vr.THORChain,Jr=j(H,M,Yr,$,W?.toString(),q?.toString()||"0"),a=await Br(Jr),Kr=await K({chain:N.THORChain,msgs:H.map(yr),memo:$||""}),zr=f(B.pubkey),Gr=y([{pubkey:zr,sequence:q}],M.amount,Number.parseInt(M.gas),void 0,void 0,t.SIGN_MODE_LEGACY_AMINO_JSON),Qr=I.fromPartial({bodyBytes:Kr,authInfoBytes:Gr,signatures:[k(typeof a.signature==="string"?a.signature:a.signature.signature)]}),Xr=I.encode(Qr).finish();return(await(await v(fr.get("rpcUrls")[N.THORChain])).broadcastTx(Xr)).transactionHash}return{...m,transfer:(h)=>U(h),deposit:(h)=>U(h),getAccount:hr}}default:throw new G({errorKey:"wallet_chain_not_supported",info:{chain:r,wallet:c.WALLETCONNECT}})}}async function Wr(r,u,s){let p;try{if(!u)throw new G("wallet_walletconnect_project_id_not_specified");let t=Ir(r.map(z)),{WalletConnectModalSign:I}=await import("@walletconnect/modal-sign-html"),f=new I({logger:sr,relayUrl:A,projectId:u,metadata:s?.metadata||ur,...s?.core}),y=await f.getSession();if(y)await f.disconnect({topic:y.topic,reason:{code:0,message:"Resetting session"}});let j=await f.connect({requiredNamespaces:t}),Q=Object.values(j.namespaces).flatMap((K)=>K.accounts);return{session:j,accounts:Q,client:f,disconnect:async()=>{await f.disconnect({topic:j.topic,reason:{code:0,message:"User disconnected"}})}}}catch(t){console.error(t)}finally{if(p)p.closeModal()}return}export{mr as walletconnectWallet,Er as WC_SUPPORTED_CHAINS,X as THORCHAIN_MAINNET_ID,S as POLYGON_MAINNET_ID,E as OPTIMISM_MAINNET_ID,T as MAYACHAIN_MAINNET_ID,o as KUJIRA_MAINNET_ID,F as ETHEREUM_MAINNET_ID,i as DEFAULT_SOLANA_METHODS,P as DEFAULT_SOLANA_EVENTS,A as DEFAULT_RELAY_URL,g as DEFAULT_POLKADOT_METHODS,x as DEFAULT_POLKADOT_EVENTS,d as DEFAULT_NEAR_METHODS,n as DEFAULT_NEAR_EVENTS,sr as DEFAULT_LOGGER,w as DEFAULT_EIP_155_EVENTS,R as DEFAULT_EIP155_METHODS,V as DEFAULT_COSMOS_METHODS,Zr as DEFAULT_COSMOS_EVENTS,ur as DEFAULT_APP_METADATA,L as COSMOS_HUB_MAINNET_ID,O as BSC_MAINNET_ID,rr as BASE_MAINNET_ID,l as AVALANCHE_MAINNET_ID,D as ARBITRUM_ONE_MAINNET_ID};
|
|
2
2
|
|
|
3
3
|
//# debugId=28A6E31B556131D864756E2164756E21
|
package/package.json
CHANGED
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"@scure/bip39": "1.5.4",
|
|
28
28
|
"@solana/web3.js": "1.98.2",
|
|
29
29
|
"@swapkit/helpers": "3.0.0-beta.9",
|
|
30
|
-
"@swapkit/toolboxes": "1.0.0-beta.
|
|
30
|
+
"@swapkit/toolboxes": "1.0.0-beta.14",
|
|
31
31
|
"@trezor/connect-web": "9.5.4",
|
|
32
32
|
"@walletconnect/modal-sign-html": "2.7.0",
|
|
33
33
|
"bitcoinjs-lib": "6.1.7",
|
|
@@ -152,5 +152,5 @@
|
|
|
152
152
|
"type-check:go": "tsgo"
|
|
153
153
|
},
|
|
154
154
|
"type": "module",
|
|
155
|
-
"version": "3.0.0-beta.
|
|
155
|
+
"version": "3.0.0-beta.15"
|
|
156
156
|
}
|
package/src/bitget/helpers.ts
CHANGED
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
prepareNetworkSwitch,
|
|
7
7
|
switchEVMWalletNetwork,
|
|
8
8
|
} from "@swapkit/helpers";
|
|
9
|
-
import
|
|
9
|
+
import { Psbt } from "bitcoinjs-lib";
|
|
10
10
|
import type { Eip1193Provider } from "ethers";
|
|
11
11
|
|
|
12
12
|
export async function getWalletMethods(chain: Chain) {
|
|
@@ -38,7 +38,6 @@ export async function getWalletMethods(chain: Chain) {
|
|
|
38
38
|
}
|
|
39
39
|
const { unisat: wallet } = bitget;
|
|
40
40
|
|
|
41
|
-
const { Psbt } = await import("bitcoinjs-lib");
|
|
42
41
|
const { getUtxoToolbox } = await import("@swapkit/toolboxes/utxo");
|
|
43
42
|
const [address] = await wallet.requestAccounts();
|
|
44
43
|
|
package/src/exodus/index.ts
CHANGED
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
prepareNetworkSwitch,
|
|
10
10
|
switchEVMWalletNetwork,
|
|
11
11
|
} from "@swapkit/helpers";
|
|
12
|
-
import
|
|
12
|
+
import { Psbt } from "bitcoinjs-lib";
|
|
13
13
|
import type { BrowserProvider, Eip1193Provider } from "ethers";
|
|
14
14
|
import {
|
|
15
15
|
AddressPurpose,
|
|
@@ -34,7 +34,6 @@ async function getWalletMethods({
|
|
|
34
34
|
}) {
|
|
35
35
|
switch (chain) {
|
|
36
36
|
case Chain.Bitcoin: {
|
|
37
|
-
const { Psbt } = await import("bitcoinjs-lib");
|
|
38
37
|
const { getUtxoToolbox } = await import("@swapkit/toolboxes/utxo");
|
|
39
38
|
|
|
40
39
|
let address = "";
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
getWalletFormatFor,
|
|
8
8
|
} from "@swapkit/helpers";
|
|
9
9
|
import type { UTXOType } from "@swapkit/toolboxes/utxo";
|
|
10
|
-
import type
|
|
10
|
+
import { type Psbt, Transaction } from "bitcoinjs-lib";
|
|
11
11
|
|
|
12
12
|
import { getLedgerTransport } from "../helpers/getLedgerTransport";
|
|
13
13
|
|
|
@@ -22,8 +22,6 @@ const signUTXOTransaction = async (
|
|
|
22
22
|
{ psbt, inputUtxos, btcApp, derivationPath }: Params,
|
|
23
23
|
options?: Partial<CreateTransactionArg>,
|
|
24
24
|
) => {
|
|
25
|
-
const { Transaction } = await import("bitcoinjs-lib");
|
|
26
|
-
|
|
27
25
|
const inputs = inputUtxos.map((item) => {
|
|
28
26
|
const utxoTx = Transaction.fromHex(item.txHex || "");
|
|
29
27
|
const splitTx = btcApp.splitTransaction(utxoTx.toHex(), utxoTx.hasWitnesses());
|
|
@@ -14,13 +14,15 @@ const getLedgerDevices = async () => {
|
|
|
14
14
|
const navigatorUsb = getNavigatorUsb();
|
|
15
15
|
|
|
16
16
|
if (typeof navigatorUsb?.getDevices !== "function") return [];
|
|
17
|
-
const { ledgerUSBVendorId } =
|
|
17
|
+
const { ledgerUSBVendorId } = await import("@ledgerhq/devices");
|
|
18
18
|
|
|
19
19
|
const devices = await navigatorUsb?.getDevices();
|
|
20
20
|
const existingDevices = devices.filter((d) => d.vendorId === ledgerUSBVendorId);
|
|
21
21
|
if (existingDevices.length > 0) return existingDevices[0];
|
|
22
22
|
|
|
23
|
-
return navigatorUsb?.requestDevice({
|
|
23
|
+
return navigatorUsb?.requestDevice({
|
|
24
|
+
filters: [{ vendorId: ledgerUSBVendorId }],
|
|
25
|
+
});
|
|
24
26
|
};
|
|
25
27
|
|
|
26
28
|
export const getLedgerTransport = async () => {
|
package/src/okx/helpers.ts
CHANGED
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
prepareNetworkSwitch,
|
|
7
7
|
switchEVMWalletNetwork,
|
|
8
8
|
} from "@swapkit/helpers";
|
|
9
|
+
import { Psbt } from "bitcoinjs-lib";
|
|
9
10
|
import type { Eip1193Provider } from "ethers";
|
|
10
11
|
|
|
11
12
|
const cosmosTransfer =
|
|
@@ -81,7 +82,7 @@ export async function getWalletMethods(chain: Chain) {
|
|
|
81
82
|
if (!(window.okxwallet && "bitcoin" in window.okxwallet)) {
|
|
82
83
|
throw new Error("No bitcoin okxwallet found");
|
|
83
84
|
}
|
|
84
|
-
|
|
85
|
+
|
|
85
86
|
const { getUtxoToolbox } = await import("@swapkit/toolboxes/utxo");
|
|
86
87
|
|
|
87
88
|
const { bitcoin: wallet } = window.okxwallet;
|
package/src/onekey/index.ts
CHANGED
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
filterSupportedChains,
|
|
10
10
|
prepareNetworkSwitch,
|
|
11
11
|
} from "@swapkit/helpers";
|
|
12
|
+
import { Psbt } from "bitcoinjs-lib";
|
|
12
13
|
import type {
|
|
13
14
|
BitcoinProvider,
|
|
14
15
|
GetAddressOptions,
|
|
@@ -27,7 +28,6 @@ async function getWalletMethodsForExtension(chain: Chain) {
|
|
|
27
28
|
});
|
|
28
29
|
}
|
|
29
30
|
|
|
30
|
-
const { Psbt } = await import("bitcoinjs-lib");
|
|
31
31
|
const { getUtxoToolbox } = await import("@swapkit/toolboxes/utxo");
|
|
32
32
|
const {
|
|
33
33
|
signTransaction: satsSignTransaction,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|