@swapkit/wallet-hardware 4.0.0-beta.9 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,7 +2,7 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/ledger/index.ts", "../src/ledger/helpers/getLedgerAddress.ts", "../src/ledger/helpers/getLedgerClient.ts", "../src/ledger/clients/cosmos.ts", "../src/ledger/interfaces/CosmosLedgerInterface.ts", "../src/ledger/clients/thorchain/lib.ts", "../src/ledger/clients/thorchain/common.ts", "../src/ledger/clients/thorchain/helpers.ts", "../src/ledger/helpers/getLedgerTransport.ts", "../src/ledger/clients/evm.ts", "../src/ledger/clients/near.ts", "../src/ledger/clients/thorchain/index.ts", "../src/ledger/clients/thorchain/utils.ts", "../src/ledger/clients/tron.ts", "../src/ledger/clients/utxo.ts", "../src/ledger/clients/xrp.ts"],
4
4
  "sourcesContent": [
5
- "import {\n Chain,\n ChainId,\n type DerivationPathArray,\n FeeOption,\n type GenericTransferParams,\n SKConfig,\n StagenetChain,\n SwapKitError,\n WalletOption,\n filterSupportedChains,\n} from \"@swapkit/helpers\";\nimport type { ThorchainDepositParams } from \"@swapkit/toolboxes/cosmos\";\nimport type { UTXOBuildTxParams } from \"@swapkit/toolboxes/utxo\";\n\nimport { createWallet, getWalletSupportedChains } from \"@swapkit/wallet-core\";\nimport { getLedgerAddress, getLedgerClient } from \"./helpers\";\n\nexport const ledgerWallet = createWallet({\n name: \"connectLedger\",\n supportedChains: [\n Chain.Arbitrum,\n Chain.Aurora,\n Chain.Avalanche,\n Chain.Base,\n Chain.BinanceSmartChain,\n Chain.Bitcoin,\n Chain.BitcoinCash,\n Chain.Cosmos,\n Chain.Dash,\n Chain.Dogecoin,\n Chain.Ethereum,\n Chain.Gnosis,\n Chain.Litecoin,\n Chain.Near,\n Chain.Optimism,\n Chain.Polygon,\n Chain.Ripple,\n Chain.THORChain,\n Chain.Tron,\n ],\n walletType: WalletOption.LEDGER,\n connect: ({ addChain, supportedChains, walletType }) =>\n async function connectLedger(chains: Chain[], derivationPath?: DerivationPathArray) {\n const [chain] = filterSupportedChains({ chains, supportedChains, walletType });\n\n if (!chain) return false;\n\n const walletMethods = await getWalletMethods({ chain, derivationPath });\n\n addChain({ ...walletMethods, chain, walletType: WalletOption.LEDGER });\n\n return true;\n },\n});\n\nexport const LEDGER_SUPPORTED_CHAINS = getWalletSupportedChains(ledgerWallet);\n\n// reduce memo length by removing trade limit\nfunction reduceMemo(memo?: string, affiliateAddress = \"t\") {\n if (!memo?.includes(\"=:\")) return memo;\n\n const removedAffiliate = memo.includes(`:${affiliateAddress}:`)\n ? memo.split(`:${affiliateAddress}:`)[0]\n : memo;\n\n return removedAffiliate?.substring(0, removedAffiliate.lastIndexOf(\":\"));\n}\n\nfunction recursivelyOrderKeys(unordered: any) {\n // If it's an array - recursively order any\n // dictionary items within the array\n if (Array.isArray(unordered)) {\n unordered.forEach((item, index) => {\n unordered[index] = recursivelyOrderKeys(item);\n });\n return unordered;\n }\n\n // If it's an object - let's order the keys\n if (typeof unordered !== \"object\") return unordered;\n const ordered: any = {};\n const sortedKeys = Object.keys(unordered).sort();\n\n for (const key of sortedKeys) {\n ordered[key] = recursivelyOrderKeys(unordered[key]);\n }\n\n return ordered;\n}\n\nfunction stringifyKeysInOrder(data: any) {\n return JSON.stringify(recursivelyOrderKeys(data));\n}\n\nasync function getWalletMethods({\n chain,\n derivationPath,\n}: { chain: Chain; derivationPath?: DerivationPathArray }) {\n switch (chain) {\n case Chain.BitcoinCash:\n case Chain.Bitcoin:\n case Chain.Dash:\n case Chain.Dogecoin:\n case Chain.Litecoin: {\n const { getUtxoToolbox } = await import(\"@swapkit/toolboxes/utxo\");\n const toolbox = await getUtxoToolbox(chain as Chain.Bitcoin);\n\n const signer = await getLedgerClient({ chain, derivationPath });\n const address = await getLedgerAddress({ chain, ledgerClient: signer });\n\n const transfer = async (params: UTXOBuildTxParams) => {\n const feeRate = params.feeRate || (await toolbox.getFeeRates())[FeeOption.Average];\n const memo = [Chain.Bitcoin].includes(chain) ? params.memo : reduceMemo(params.memo);\n\n const { psbt, inputs } = await toolbox.createTransaction({\n ...params,\n feeRate,\n memo,\n sender: address,\n fetchTxHex: true,\n });\n const txHex = await signer.signTransaction(psbt, inputs);\n const tx = await toolbox.broadcastTx(txHex);\n\n return tx;\n };\n\n return { ...toolbox, address, transfer };\n }\n\n case Chain.Ethereum:\n case Chain.Avalanche:\n case Chain.Arbitrum:\n case Chain.Optimism:\n case Chain.Polygon:\n case Chain.BinanceSmartChain:\n case Chain.Base:\n case Chain.Aurora:\n case Chain.Gnosis: {\n const { getEvmToolbox } = await import(\"@swapkit/toolboxes/evm\");\n const signer = await getLedgerClient({ chain, derivationPath });\n const address = await getLedgerAddress({ chain, ledgerClient: signer });\n const toolbox = await getEvmToolbox(chain, { signer });\n\n return { ...toolbox, address };\n }\n\n case Chain.Cosmos: {\n const { createSigningStargateClient, getMsgSendDenom, getCosmosToolbox } = await import(\n \"@swapkit/toolboxes/cosmos\"\n );\n const toolbox = await getCosmosToolbox(Chain.Cosmos);\n const signer = await getLedgerClient({ chain, derivationPath });\n const address = await getLedgerAddress({ chain, ledgerClient: signer });\n\n const transfer = async ({ assetValue, recipient, memo }: GenericTransferParams) => {\n if (!assetValue) throw new SwapKitError(\"wallet_ledger_invalid_asset\");\n\n const sendCoinsMessage = {\n amount: [\n {\n amount: assetValue.getBaseValue(\"string\"),\n denom: getMsgSendDenom(`u${assetValue.symbol}`).toLowerCase(),\n },\n ],\n fromAddress: address,\n toAddress: recipient,\n };\n\n const signingClient = await createSigningStargateClient(\n SKConfig.get(\"rpcUrls\")[chain],\n signer,\n \"0.007uatom\",\n );\n\n const { transactionHash } = await signingClient.signAndBroadcast(\n address,\n [{ typeUrl: \"/cosmos.bank.v1beta1.MsgSend\", value: sendCoinsMessage }],\n 2,\n memo,\n );\n\n return transactionHash;\n };\n\n return { ...toolbox, address, transfer };\n }\n\n case Chain.THORChain: {\n const { SignMode } = await import(\"cosmjs-types/cosmos/tx/signing/v1beta1/signing.js\");\n const { TxRaw } = await import(\"cosmjs-types/cosmos/tx/v1beta1/tx.js\");\n const importedSigning = await import(\"@cosmjs/proto-signing\");\n const encodePubkey = importedSigning.encodePubkey ?? importedSigning.default?.encodePubkey;\n const makeAuthInfoBytes =\n importedSigning.makeAuthInfoBytes ?? importedSigning.default?.makeAuthInfoBytes;\n const {\n createStargateClient,\n buildEncodedTxBody,\n getCosmosToolbox,\n buildAminoMsg,\n getDefaultChainFee,\n fromBase64,\n parseAminoMessageForDirectSigning,\n } = await import(\"@swapkit/toolboxes/cosmos\");\n const toolbox = await getCosmosToolbox(chain);\n const signer = await getLedgerClient({ chain, derivationPath });\n const address = await getLedgerAddress({ chain, ledgerClient: signer });\n\n const fee = getDefaultChainFee(chain);\n const { pubkey: value, signTransaction, sign: signMessage } = signer;\n\n // ANCHOR (@Chillios): Same parts in methods + can extract StargateClient init to toolbox\n const thorchainTransfer = async ({\n memo = \"\",\n assetValue,\n ...rest\n // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: Refactor to reduce complexity\n }: GenericTransferParams | ThorchainDepositParams) => {\n const account = await toolbox.getAccount(address);\n if (!account) throw new SwapKitError(\"wallet_ledger_invalid_account\");\n if (!assetValue) throw new SwapKitError(\"wallet_ledger_invalid_asset\");\n if (!value) throw new SwapKitError(\"wallet_ledger_pubkey_not_found\");\n\n const { accountNumber, sequence: sequenceNumber } = account;\n const sequence = (sequenceNumber || 0).toString();\n\n const orderedMessages = recursivelyOrderKeys([\n buildAminoMsg({ sender: address, assetValue, memo, ...rest }),\n ]);\n\n // get tx signing msg\n const rawSendTx = stringifyKeysInOrder({\n account_number: accountNumber?.toString(),\n chain_id: ChainId.THORChain,\n fee,\n memo,\n msgs: orderedMessages,\n sequence,\n });\n\n const signatures = await signTransaction(rawSendTx, sequence);\n if (!signatures) throw new SwapKitError(\"wallet_ledger_signing_error\");\n\n const pubkey = encodePubkey({ type: \"tendermint/PubKeySecp256k1\", value });\n const msgs = orderedMessages.map(parseAminoMessageForDirectSigning);\n const bodyBytes = await buildEncodedTxBody({ msgs, chain, memo });\n\n const authInfoBytes = makeAuthInfoBytes(\n [{ pubkey, sequence: Number(sequence) }],\n fee.amount,\n Number.parseInt(fee.gas),\n undefined,\n undefined,\n SignMode.SIGN_MODE_LEGACY_AMINO_JSON,\n );\n\n const signature = signatures?.[0]?.signature\n ? fromBase64(signatures[0].signature)\n : Uint8Array.from([]);\n\n const txRaw = TxRaw.fromPartial({ bodyBytes, authInfoBytes, signatures: [signature] });\n const txBytes = TxRaw.encode(txRaw).finish();\n const { isStagenet } = SKConfig.get(\"envs\");\n\n const broadcaster = await createStargateClient(\n SKConfig.get(\"rpcUrls\")[isStagenet ? StagenetChain.THORChain : Chain.THORChain],\n );\n const { transactionHash } = await broadcaster.broadcastTx(txBytes);\n\n return transactionHash;\n };\n\n const transfer = (params: GenericTransferParams) => thorchainTransfer(params);\n const deposit = (params: ThorchainDepositParams) => thorchainTransfer(params);\n\n return { ...toolbox, address, deposit, transfer, signMessage };\n }\n\n case Chain.Near: {\n const { getNearToolbox } = await import(\"@swapkit/toolboxes/near\");\n const signer = await getLedgerClient({ chain, derivationPath });\n const accountId = await signer.getAddress();\n const toolbox = await getNearToolbox({ signer });\n\n return { ...toolbox, address: accountId };\n }\n\n case Chain.Ripple: {\n const { getRippleToolbox } = await import(\"@swapkit/toolboxes/ripple\");\n const signer = await getLedgerClient({ chain, derivationPath });\n const address = signer.address;\n const toolbox = await getRippleToolbox({ signer });\n\n return { ...toolbox, address };\n }\n\n case Chain.Tron: {\n const { createTronToolbox } = await import(\"@swapkit/toolboxes/tron\");\n const signer = await getLedgerClient({ chain, derivationPath });\n const address = await getLedgerAddress({ chain, ledgerClient: signer });\n const toolbox = await createTronToolbox({ signer });\n\n return { ...toolbox, address };\n }\n\n default:\n throw new SwapKitError(\"wallet_ledger_chain_not_supported\", { chain });\n }\n}\n",
5
+ "import {\n Chain,\n ChainId,\n type DerivationPathArray,\n FeeOption,\n type GenericTransferParams,\n SwapKitError,\n WalletOption,\n filterSupportedChains,\n getRPCUrl,\n} from \"@swapkit/helpers\";\nimport type { ThorchainDepositParams } from \"@swapkit/toolboxes/cosmos\";\nimport type { UTXOBuildTxParams } from \"@swapkit/toolboxes/utxo\";\n\nimport { createWallet, getWalletSupportedChains } from \"@swapkit/wallet-core\";\nimport { getLedgerAddress, getLedgerClient } from \"./helpers\";\n\nexport const ledgerWallet = createWallet({\n name: \"connectLedger\",\n supportedChains: [\n Chain.Arbitrum,\n Chain.Aurora,\n Chain.Avalanche,\n Chain.Base,\n Chain.BinanceSmartChain,\n Chain.Bitcoin,\n Chain.BitcoinCash,\n Chain.Cosmos,\n Chain.Dash,\n Chain.Dogecoin,\n Chain.Ethereum,\n Chain.Gnosis,\n Chain.Litecoin,\n Chain.Near,\n Chain.Optimism,\n Chain.Polygon,\n Chain.Ripple,\n Chain.THORChain,\n Chain.Tron,\n ],\n walletType: WalletOption.LEDGER,\n connect: ({ addChain, supportedChains, walletType }) =>\n async function connectLedger(chains: Chain[], derivationPath?: DerivationPathArray) {\n const [chain] = filterSupportedChains({ chains, supportedChains, walletType });\n\n if (!chain) return false;\n\n const walletMethods = await getWalletMethods({ chain, derivationPath });\n\n addChain({ ...walletMethods, chain, walletType: WalletOption.LEDGER });\n\n return true;\n },\n});\n\nexport const LEDGER_SUPPORTED_CHAINS = getWalletSupportedChains(ledgerWallet);\n\n// reduce memo length by removing trade limit\nfunction reduceMemo(memo?: string, affiliateAddress = \"t\") {\n if (!memo?.includes(\"=:\")) return memo;\n\n const removedAffiliate = memo.includes(`:${affiliateAddress}:`)\n ? memo.split(`:${affiliateAddress}:`)[0]\n : memo;\n\n return removedAffiliate?.substring(0, removedAffiliate.lastIndexOf(\":\"));\n}\n\nfunction recursivelyOrderKeys(unordered: any) {\n // If it's an array - recursively order any\n // dictionary items within the array\n if (Array.isArray(unordered)) {\n unordered.forEach((item, index) => {\n unordered[index] = recursivelyOrderKeys(item);\n });\n return unordered;\n }\n\n // If it's an object - let's order the keys\n if (typeof unordered !== \"object\") return unordered;\n const ordered: any = {};\n const sortedKeys = Object.keys(unordered).sort();\n\n for (const key of sortedKeys) {\n ordered[key] = recursivelyOrderKeys(unordered[key]);\n }\n\n return ordered;\n}\n\nfunction stringifyKeysInOrder(data: any) {\n return JSON.stringify(recursivelyOrderKeys(data));\n}\n\nasync function getWalletMethods({\n chain,\n derivationPath,\n}: { chain: Chain; derivationPath?: DerivationPathArray }) {\n switch (chain) {\n case Chain.BitcoinCash:\n case Chain.Bitcoin:\n case Chain.Dash:\n case Chain.Dogecoin:\n case Chain.Litecoin: {\n const { getUtxoToolbox } = await import(\"@swapkit/toolboxes/utxo\");\n const toolbox = await getUtxoToolbox(chain as Chain.Bitcoin);\n\n const signer = await getLedgerClient({ chain, derivationPath });\n const address = await getLedgerAddress({ chain, ledgerClient: signer });\n\n const transfer = async (params: UTXOBuildTxParams) => {\n const feeRate = params.feeRate || (await toolbox.getFeeRates())[FeeOption.Average];\n const memo = [Chain.Bitcoin].includes(chain) ? params.memo : reduceMemo(params.memo);\n\n const { psbt, inputs } = await toolbox.createTransaction({\n ...params,\n feeRate,\n memo,\n sender: address,\n fetchTxHex: true,\n });\n const txHex = await signer.signTransaction(psbt, inputs);\n const tx = await toolbox.broadcastTx(txHex);\n\n return tx;\n };\n\n return { ...toolbox, address, transfer };\n }\n\n case Chain.Ethereum:\n case Chain.Avalanche:\n case Chain.Arbitrum:\n case Chain.Optimism:\n case Chain.Polygon:\n case Chain.BinanceSmartChain:\n case Chain.Base:\n case Chain.Aurora:\n case Chain.Gnosis: {\n const { getEvmToolbox } = await import(\"@swapkit/toolboxes/evm\");\n const signer = await getLedgerClient({ chain, derivationPath });\n const address = await getLedgerAddress({ chain, ledgerClient: signer });\n const toolbox = await getEvmToolbox(chain, { signer });\n\n return { ...toolbox, address };\n }\n\n case Chain.Cosmos: {\n const { createSigningStargateClient, getMsgSendDenom, getCosmosToolbox } = await import(\n \"@swapkit/toolboxes/cosmos\"\n );\n const toolbox = await getCosmosToolbox(Chain.Cosmos);\n const signer = await getLedgerClient({ chain, derivationPath });\n const address = await getLedgerAddress({ chain, ledgerClient: signer });\n\n const transfer = async ({ assetValue, recipient, memo }: GenericTransferParams) => {\n if (!assetValue) throw new SwapKitError(\"wallet_ledger_invalid_asset\");\n\n const sendCoinsMessage = {\n amount: [\n {\n amount: assetValue.getBaseValue(\"string\"),\n denom: getMsgSendDenom(`u${assetValue.symbol}`).toLowerCase(),\n },\n ],\n fromAddress: address,\n toAddress: recipient,\n };\n\n const rpcUrl = await getRPCUrl(chain);\n const signingClient = await createSigningStargateClient(rpcUrl, signer, \"0.007uatom\");\n\n const { transactionHash } = await signingClient.signAndBroadcast(\n address,\n [{ typeUrl: \"/cosmos.bank.v1beta1.MsgSend\", value: sendCoinsMessage }],\n 2,\n memo,\n );\n\n return transactionHash;\n };\n\n return { ...toolbox, address, transfer };\n }\n\n case Chain.THORChain: {\n const { SignMode } = await import(\"cosmjs-types/cosmos/tx/signing/v1beta1/signing.js\");\n const { TxRaw } = await import(\"cosmjs-types/cosmos/tx/v1beta1/tx.js\");\n const importedSigning = await import(\"@cosmjs/proto-signing\");\n const encodePubkey = importedSigning.encodePubkey ?? importedSigning.default?.encodePubkey;\n const makeAuthInfoBytes =\n importedSigning.makeAuthInfoBytes ?? importedSigning.default?.makeAuthInfoBytes;\n const {\n createStargateClient,\n buildEncodedTxBody,\n getCosmosToolbox,\n buildAminoMsg,\n getDefaultChainFee,\n fromBase64,\n parseAminoMessageForDirectSigning,\n } = await import(\"@swapkit/toolboxes/cosmos\");\n const toolbox = await getCosmosToolbox(chain);\n const signer = await getLedgerClient({ chain, derivationPath });\n const address = await getLedgerAddress({ chain, ledgerClient: signer });\n\n const fee = getDefaultChainFee(chain);\n const { pubkey: value, signTransaction, sign: signMessage } = signer;\n\n // ANCHOR (@Chillios): Same parts in methods + can extract StargateClient init to toolbox\n const thorchainTransfer = async ({\n memo = \"\",\n assetValue,\n ...rest\n // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: Refactor to reduce complexity\n }: GenericTransferParams | ThorchainDepositParams) => {\n const account = await toolbox.getAccount(address);\n if (!account) throw new SwapKitError(\"wallet_ledger_invalid_account\");\n if (!assetValue) throw new SwapKitError(\"wallet_ledger_invalid_asset\");\n if (!value) throw new SwapKitError(\"wallet_ledger_pubkey_not_found\");\n\n const { accountNumber, sequence: sequenceNumber } = account;\n const sequence = (sequenceNumber || 0).toString();\n\n const orderedMessages = recursivelyOrderKeys([\n buildAminoMsg({ sender: address, assetValue, memo, ...rest }),\n ]);\n\n // get tx signing msg\n const rawSendTx = stringifyKeysInOrder({\n account_number: accountNumber?.toString(),\n chain_id: ChainId.THORChain,\n fee,\n memo,\n msgs: orderedMessages,\n sequence,\n });\n\n const signatures = await signTransaction(rawSendTx, sequence);\n if (!signatures) throw new SwapKitError(\"wallet_ledger_signing_error\");\n\n const pubkey = encodePubkey({ type: \"tendermint/PubKeySecp256k1\", value });\n const msgs = orderedMessages.map(parseAminoMessageForDirectSigning);\n const bodyBytes = await buildEncodedTxBody({ msgs, chain, memo });\n\n const authInfoBytes = makeAuthInfoBytes(\n [{ pubkey, sequence: Number(sequence) }],\n fee.amount,\n Number.parseInt(fee.gas),\n undefined,\n undefined,\n SignMode.SIGN_MODE_LEGACY_AMINO_JSON,\n );\n\n const signature = signatures?.[0]?.signature\n ? fromBase64(signatures[0].signature)\n : Uint8Array.from([]);\n\n const txRaw = TxRaw.fromPartial({ bodyBytes, authInfoBytes, signatures: [signature] });\n const txBytes = TxRaw.encode(txRaw).finish();\n const rpcUrl = await getRPCUrl(Chain.THORChain);\n\n const broadcaster = await createStargateClient(rpcUrl);\n const { transactionHash } = await broadcaster.broadcastTx(txBytes);\n\n return transactionHash;\n };\n\n const transfer = (params: GenericTransferParams) => thorchainTransfer(params);\n const deposit = (params: ThorchainDepositParams) => thorchainTransfer(params);\n\n return { ...toolbox, address, deposit, transfer, signMessage };\n }\n\n case Chain.Near: {\n const { getNearToolbox } = await import(\"@swapkit/toolboxes/near\");\n const signer = await getLedgerClient({ chain, derivationPath });\n const accountId = await signer.getAddress();\n const toolbox = await getNearToolbox({ signer });\n\n return { ...toolbox, address: accountId };\n }\n\n case Chain.Ripple: {\n const { getRippleToolbox } = await import(\"@swapkit/toolboxes/ripple\");\n const signer = await getLedgerClient({ chain, derivationPath });\n const address = signer.address;\n const toolbox = await getRippleToolbox({ signer });\n\n return { ...toolbox, address };\n }\n\n case Chain.Tron: {\n const { createTronToolbox } = await import(\"@swapkit/toolboxes/tron\");\n const signer = await getLedgerClient({ chain, derivationPath });\n const address = await getLedgerAddress({ chain, ledgerClient: signer });\n const toolbox = await createTronToolbox({ signer });\n\n return { ...toolbox, address };\n }\n\n default:\n throw new SwapKitError(\"wallet_ledger_chain_not_supported\", { chain });\n }\n}\n",
6
6
  "import { Chain, SwapKitError, WalletOption } from \"@swapkit/helpers\";\n\nimport type { getNearLedgerClient } from \"../clients/near\";\nimport type { TronLedger } from \"../clients/tron\";\nimport type { XRPLedger } from \"../clients/xrp\";\nimport type { LEDGER_SUPPORTED_CHAINS } from \"../index\";\nimport type { CosmosLedgerClients, EVMLedgerClients, UTXOLedgerClients } from \"../types\";\nimport type { getLedgerClient } from \"./getLedgerClient\";\n\nexport const getLedgerAddress = async <\n T extends (typeof LEDGER_SUPPORTED_CHAINS)[number],\n L extends Awaited<ReturnType<typeof getLedgerClient<T>>>,\n>({\n chain,\n ledgerClient,\n}: {\n chain: T;\n ledgerClient: L;\n}) => {\n if (!ledgerClient) return \"\";\n\n switch (chain) {\n case Chain.Cosmos:\n case Chain.THORChain: {\n return (ledgerClient as CosmosLedgerClients).connect();\n }\n\n case Chain.Ethereum:\n case Chain.BinanceSmartChain:\n case Chain.Avalanche:\n case Chain.Polygon:\n case Chain.Arbitrum:\n case Chain.Optimism:\n case Chain.Base:\n case Chain.Aurora:\n case Chain.Gnosis: {\n return (ledgerClient as EVMLedgerClients).getAddress();\n }\n\n case Chain.Bitcoin:\n case Chain.BitcoinCash:\n case Chain.Dash:\n case Chain.Dogecoin:\n case Chain.Litecoin: {\n const ledger = ledgerClient as UTXOLedgerClients;\n await ledger.connect();\n const address = await ledger.getAddress();\n\n return chain === Chain.BitcoinCash ? address.replace(\"bitcoincash:\", \"\") : address;\n }\n\n case Chain.Near: {\n return await (ledgerClient as Awaited<ReturnType<typeof getNearLedgerClient>>).getAddress();\n }\n\n case Chain.Ripple: {\n return (ledgerClient as Awaited<ReturnType<typeof XRPLedger>>).address;\n }\n\n case Chain.Tron: {\n return (ledgerClient as Awaited<ReturnType<typeof TronLedger>>).getAddress();\n }\n\n default:\n throw new SwapKitError(\"wallet_chain_not_supported\", { wallet: WalletOption.LEDGER, chain });\n }\n};\n",
7
7
  "import {\n Chain,\n type DerivationPathArray,\n type EVMChain,\n SwapKitError,\n WalletOption,\n} from \"@swapkit/helpers\";\n\nimport { CosmosLedger } from \"../clients/cosmos\";\nimport {\n ArbitrumLedger,\n AuroraLedger,\n AvalancheLedger,\n BaseLedger,\n BinanceSmartChainLedger,\n EthereumLedger,\n GnosisLedger,\n OptimismLedger,\n PolygonLedger,\n} from \"../clients/evm\";\nimport { getNearLedgerClient } from \"../clients/near\";\nimport { THORChainLedger } from \"../clients/thorchain\";\nimport { TronLedger } from \"../clients/tron\";\nimport {\n BitcoinCashLedger,\n BitcoinLedger,\n DashLedger,\n DogecoinLedger,\n LitecoinLedger,\n} from \"../clients/utxo\";\nimport { XRPLedger } from \"../clients/xrp\";\nimport { getLedgerTransport } from \"./getLedgerTransport\";\n\ntype LedgerSignerMap = {\n [Chain.Arbitrum]: ReturnType<typeof ArbitrumLedger>;\n [Chain.Aurora]: ReturnType<typeof AuroraLedger>;\n [Chain.Avalanche]: ReturnType<typeof AvalancheLedger>;\n [Chain.Base]: ReturnType<typeof BaseLedger>;\n [Chain.BinanceSmartChain]: ReturnType<typeof BinanceSmartChainLedger>;\n [Chain.BitcoinCash]: ReturnType<typeof BitcoinCashLedger>;\n [Chain.Bitcoin]: ReturnType<typeof BitcoinLedger>;\n [Chain.Cosmos]: CosmosLedger;\n [Chain.Dash]: ReturnType<typeof DashLedger>;\n [Chain.Dogecoin]: ReturnType<typeof DogecoinLedger>;\n [Chain.Ethereum]: ReturnType<typeof EthereumLedger>;\n [Chain.Gnosis]: ReturnType<typeof GnosisLedger>;\n [Chain.Litecoin]: ReturnType<typeof LitecoinLedger>;\n [Chain.Near]: Awaited<ReturnType<typeof getNearLedgerClient>>;\n [Chain.Optimism]: ReturnType<typeof OptimismLedger>;\n [Chain.Polygon]: ReturnType<typeof PolygonLedger>;\n [Chain.Ripple]: ReturnType<typeof XRPLedger>;\n [Chain.THORChain]: THORChainLedger;\n [Chain.Tron]: ReturnType<typeof TronLedger>;\n};\n\ntype LedgerSupportedChain = keyof LedgerSignerMap;\n\nexport const getLedgerClient = async <T extends LedgerSupportedChain>({\n chain,\n derivationPath,\n}: {\n chain: T;\n derivationPath?: DerivationPathArray;\n}): Promise<LedgerSignerMap[T]> => {\n const { match } = await import(\"ts-pattern\");\n\n return match(chain as LedgerSupportedChain)\n .returnType<Promise<LedgerSignerMap[T]>>()\n .with(Chain.THORChain, () =>\n Promise.resolve(new THORChainLedger(derivationPath) as LedgerSignerMap[T]),\n )\n .with(Chain.Cosmos, () =>\n Promise.resolve(new CosmosLedger(derivationPath) as LedgerSignerMap[T]),\n )\n .with(Chain.Bitcoin, () => Promise.resolve(BitcoinLedger(derivationPath) as LedgerSignerMap[T]))\n .with(Chain.BitcoinCash, () =>\n Promise.resolve(BitcoinCashLedger(derivationPath) as LedgerSignerMap[T]),\n )\n .with(Chain.Dash, () => Promise.resolve(DashLedger(derivationPath) as LedgerSignerMap[T]))\n .with(Chain.Dogecoin, () =>\n Promise.resolve(DogecoinLedger(derivationPath) as LedgerSignerMap[T]),\n )\n .with(Chain.Litecoin, () =>\n Promise.resolve(LitecoinLedger(derivationPath) as LedgerSignerMap[T]),\n )\n .with(Chain.Ripple, () => Promise.resolve(XRPLedger(derivationPath) as LedgerSignerMap[T]))\n .with(Chain.Tron, () => Promise.resolve(TronLedger(derivationPath) as LedgerSignerMap[T]))\n .with(Chain.Near, async () => {\n const transport = await getLedgerTransport();\n return getNearLedgerClient(transport, derivationPath) as unknown as LedgerSignerMap[T];\n })\n .with(\n Chain.Arbitrum,\n Chain.Aurora,\n Chain.Avalanche,\n Chain.BinanceSmartChain,\n Chain.Ethereum,\n Chain.Gnosis,\n Chain.Optimism,\n Chain.Polygon,\n Chain.Base,\n async () => {\n const { getProvider } = await import(\"@swapkit/toolboxes/evm\");\n const params = { provider: await getProvider(chain as EVMChain), derivationPath };\n\n return match(chain as Chain)\n .with(\n Chain.BinanceSmartChain,\n () => BinanceSmartChainLedger(params) as LedgerSignerMap[T],\n )\n .with(Chain.Avalanche, () => AvalancheLedger(params) as LedgerSignerMap[T])\n .with(Chain.Arbitrum, () => ArbitrumLedger(params) as LedgerSignerMap[T])\n .with(Chain.Optimism, () => OptimismLedger(params) as LedgerSignerMap[T])\n .with(Chain.Polygon, () => PolygonLedger(params) as LedgerSignerMap[T])\n .with(Chain.Base, () => BaseLedger(params) as LedgerSignerMap[T])\n .with(Chain.Aurora, () => AuroraLedger(params) as LedgerSignerMap[T])\n .with(Chain.Gnosis, () => GnosisLedger(params) as LedgerSignerMap[T])\n .otherwise(() => EthereumLedger(params) as LedgerSignerMap[T]);\n },\n )\n .otherwise(() => {\n throw new SwapKitError(\"wallet_chain_not_supported\", { wallet: WalletOption.LEDGER, chain });\n });\n};\n",
8
8
  "import {\n type DerivationPathArray,\n NetworkDerivationPath,\n SwapKitError,\n derivationPathToString,\n} from \"@swapkit/helpers\";\nimport { CosmosLedgerInterface } from \"../interfaces/CosmosLedgerInterface\";\n\nexport class CosmosLedger extends CosmosLedgerInterface {\n private pubKey: string | null = null;\n\n derivationPath: string;\n\n constructor(derivationPath: DerivationPathArray = NetworkDerivationPath.GAIA) {\n super();\n this.chain = \"cosmos\";\n this.derivationPath = derivationPathToString(derivationPath);\n }\n\n connect = async () => {\n await this.checkOrCreateTransportAndLedger(true);\n const { publicKey, address } = await this.getAddressAndPubKey();\n\n this.pubKey = Buffer.from(publicKey, \"hex\").toString(\"base64\");\n\n return address;\n };\n\n getAddressAndPubKey = async () => {\n await this.checkOrCreateTransportAndLedger(true);\n\n const response = await this.ledgerApp.getAddress(this.derivationPath, this.chain);\n\n return response;\n };\n\n signTransaction = async (rawTx: string, sequence = \"0\") => {\n await this.checkOrCreateTransportAndLedger(true);\n\n const { return_code, error_message, signature } = await this.ledgerApp.sign(\n this.derivationPath,\n rawTx,\n );\n\n if (!this.pubKey) throw new SwapKitError(\"wallet_ledger_pubkey_not_found\");\n\n this.validateResponse(return_code, error_message);\n\n return [\n {\n pub_key: { type: \"tendermint/PubKeySecp256k1\", value: this.pubKey },\n sequence,\n signature,\n },\n ];\n };\n\n signAmino = async (signerAddress: string, signDoc: any): Promise<any> => {\n await this.checkOrCreateTransportAndLedger(true);\n\n const accounts = await this.getAccounts();\n const accountIndex = accounts.findIndex((account) => account.address === signerAddress);\n\n if (accountIndex === -1) {\n throw new SwapKitError(\"wallet_ledger_address_not_found\", { address: signerAddress });\n }\n\n const importedAmino = await import(\"@cosmjs/amino\");\n const encodeSecp256k1Signature =\n importedAmino.encodeSecp256k1Signature ?? importedAmino.default?.encodeSecp256k1Signature;\n const serializeSignDoc =\n importedAmino.serializeSignDoc ?? importedAmino.default?.serializeSignDoc;\n const importedCrypto = await import(\"@cosmjs/crypto\");\n const Secp256k1Signature =\n importedCrypto.Secp256k1Signature ?? importedCrypto.default?.Secp256k1Signature;\n\n const message = serializeSignDoc(signDoc);\n const signature = await this.ledgerApp.sign(this.derivationPath, message);\n\n this.validateResponse(signature.return_code, signature.error_message);\n\n const secpSignature = Secp256k1Signature.fromDer(signature.signature).toFixedLength();\n\n return {\n signed: signDoc,\n signature: encodeSecp256k1Signature(accounts[0].pubkey, secpSignature),\n };\n };\n\n getAccounts = async () => {\n await this.checkOrCreateTransportAndLedger(true);\n\n const addressAndPubKey = await this.getAddressAndPubKey();\n return [\n {\n address: addressAndPubKey.address,\n algo: \"secp256k1\",\n pubkey: Buffer.from(addressAndPubKey.publicKey, \"hex\"),\n },\n ] as any[];\n };\n}\n",
@@ -15,11 +15,11 @@
15
15
  "import type Transport from \"@ledgerhq/hw-transport\";\nimport type { DerivationPathArray } from \"@swapkit/helpers\";\nimport type { NearSigner } from \"@swapkit/toolboxes/near\";\nimport type { SignedTransaction, Transaction } from \"near-api-js/lib/transaction\";\n\nexport async function getNearLedgerClient(\n transport: Transport,\n derivationPath?: DerivationPathArray,\n) {\n const Near = await import(\"@ledgerhq/hw-app-near\");\n const { Chain, DerivationPath, derivationPathToString, SwapKitError } = await import(\n \"@swapkit/helpers\"\n );\n const nearApp = new Near.default(transport);\n\n // NEAR uses m/44'/397'/0'/0'/0' by default\n const path = derivationPath ? derivationPathToString(derivationPath) : DerivationPath[Chain.Near];\n\n // Get address and public key from Ledger\n const { address, publicKey: pubKeyHex } = await nearApp.getAddress(path);\n\n const signer = {\n async getPublicKey() {\n const { utils } = await import(\"near-api-js\");\n // Convert hex public key to NEAR PublicKey format\n return utils.PublicKey.fromString(`ed25519:${pubKeyHex}`);\n },\n\n signNep413Message(\n _message: string,\n _accountId: string,\n _recipient: string,\n _nonce: Uint8Array,\n _callbackUrl?: string,\n ) {\n // Most NEAR Ledger apps don't support arbitrary message signing\n return Promise.reject(\n new SwapKitError(\"wallet_ledger_method_not_supported\", {\n wallet: \"Ledger\",\n method: \"signNep413Message\",\n }),\n );\n },\n\n getAddress() {\n return Promise.resolve(address);\n },\n\n async signTransaction(transaction: Transaction) {\n const { Signature, SignedTransaction } = await import(\"near-api-js/lib/transaction\");\n try {\n const signatureArray = await nearApp.signTransaction(transaction.encode(), path);\n if (!signatureArray) {\n throw new Error(\"Signature undefined\");\n }\n\n const signature = new Signature({\n keyType: 0,\n data: signatureArray,\n });\n\n const signedTransaction = new SignedTransaction({ transaction, signature });\n\n return [signatureArray, signedTransaction] as [\n Uint8Array<ArrayBufferLike>,\n SignedTransaction,\n ];\n } catch (error) {\n throw new SwapKitError(\"wallet_ledger_signing_error\", {\n error,\n });\n }\n },\n\n signDelegateAction(_delegateAction: any) {\n return Promise.reject(\n new SwapKitError(\"wallet_ledger_method_not_supported\", {\n wallet: \"Ledger\",\n method: \"signDelegateAction\",\n }),\n );\n },\n };\n\n return signer as NearSigner;\n}\n",
16
16
  "import { base64 } from \"@scure/base\";\nimport { type DerivationPathArray, NetworkDerivationPath, SwapKitError } from \"@swapkit/helpers\";\n\nimport { CosmosLedgerInterface } from \"../../interfaces/CosmosLedgerInterface\";\nimport type { GetAddressAndPubKeyResponse } from \"../../types\";\nimport { getSignature } from \"./utils\";\n\nexport class THORChainLedger extends CosmosLedgerInterface {\n private pubKey: string | null = null;\n\n derivationPath: DerivationPathArray;\n\n constructor(derivationPath: DerivationPathArray = NetworkDerivationPath.THOR) {\n super();\n this.chain = \"thor\";\n this.derivationPath = derivationPath;\n }\n\n get pubkey() {\n return this.pubKey;\n }\n\n connect = async () => {\n await this.checkOrCreateTransportAndLedger();\n const { compressed_pk, bech32_address }: GetAddressAndPubKeyResponse =\n await this.getAddressAndPubKey();\n\n this.pubKey = base64.encode(compressed_pk);\n\n return bech32_address;\n };\n\n getAddressAndPubKey = async () => {\n await this.checkOrCreateTransportAndLedger(true);\n\n const response: GetAddressAndPubKeyResponse = await this.ledgerApp.getAddressAndPubKey(\n this.derivationPath,\n this.chain,\n );\n\n this.validateResponse(response.return_code, response.error_message);\n\n return response;\n };\n\n showAddressAndPubKey = async () => {\n await this.checkOrCreateTransportAndLedger(true);\n\n const response: GetAddressAndPubKeyResponse = await this.ledgerApp.showAddressAndPubKey(\n this.derivationPath,\n this.chain,\n );\n\n this.validateResponse(response.return_code, response.error_message);\n\n return response;\n };\n\n signTransaction = async (rawTx: string, sequence = \"0\") => {\n await this.checkOrCreateTransportAndLedger(true);\n\n const { return_code, error_message, signature } = await this.ledgerApp.sign(\n this.derivationPath,\n rawTx,\n );\n\n if (!this.pubKey) throw new SwapKitError(\"wallet_ledger_pubkey_not_found\");\n\n this.validateResponse(return_code, error_message);\n\n return [\n {\n pub_key: { type: \"tendermint/PubKeySecp256k1\", value: this.pubKey },\n sequence,\n signature: getSignature(signature),\n },\n ];\n };\n\n sign = async (message: string) => {\n await this.checkOrCreateTransportAndLedger(true);\n\n const { return_code, error_message, signature } = await this.ledgerApp.sign(\n this.derivationPath,\n message,\n );\n\n if (!this.pubKey) throw new SwapKitError(\"wallet_ledger_pubkey_not_found\");\n\n this.validateResponse(return_code, error_message);\n\n return getSignature(signature);\n };\n}\n",
17
17
  "import { base64 } from \"@scure/base\";\nimport { SwapKitError } from \"@swapkit/helpers\";\n\n// biome-ignore lint/complexity/noExcessiveCognitiveComplexity: any: refactor\nexport const getSignature = (signatureArray: any) => {\n // Check Type Length Value encoding\n if (signatureArray.length < 64) {\n throw new SwapKitError(\"wallet_ledger_invalid_signature\", { reason: \"Too short\" });\n }\n if (signatureArray[0] !== 0x30) {\n throw new SwapKitError(\"wallet_ledger_invalid_signature\", {\n reason: \"TLV encoding: expected first byte 0x30\",\n });\n }\n if (signatureArray[1] + 2 !== signatureArray.length) {\n throw new SwapKitError(\"wallet_ledger_invalid_signature\", {\n reason: \"signature length does not match TLV\",\n });\n }\n if (signatureArray[2] !== 0x02) {\n throw new SwapKitError(\"wallet_ledger_invalid_signature\", {\n reason: \"TLV encoding: expected length type 0x02\",\n });\n }\n\n // r signature\n const rLength = signatureArray[3];\n let rSignature = signatureArray.slice(4, rLength + 4);\n\n // Drop leading zero on some 'r' signatures that are 33 bytes.\n if (rSignature.length === 33 && rSignature[0] === 0) {\n rSignature = rSignature.slice(1, 33);\n } else if (rSignature.length === 33) {\n throw new SwapKitError(\"wallet_ledger_invalid_signature\", { reason: \"r too long\" });\n }\n\n // add leading zero's to pad to 32 bytes\n while (rSignature.length < 32) {\n rSignature.unshift(0);\n }\n\n // s signature\n if (signatureArray[rLength + 4] !== 0x02) {\n throw new SwapKitError(\"wallet_ledger_invalid_signature\", {\n reason: \"TLV encoding: expected length type 0x02 for s\",\n });\n }\n\n const sLength = signatureArray[rLength + 5];\n\n if (4 + rLength + 2 + sLength !== signatureArray.length) {\n throw new SwapKitError(\"wallet_ledger_invalid_signature\", {\n reason: \"TLV byte lengths do not match message length\",\n });\n }\n\n let sSignature = signatureArray.slice(rLength + 6, signatureArray.length);\n\n // Drop leading zero on 's' signatures that are 33 bytes. This shouldn't occur since ledger signs using \"Small s\" math. But just to be sure...\n if (sSignature.length === 33 && sSignature[0] === 0) {\n sSignature = sSignature.slice(1, 33);\n } else if (sSignature.length === 33) {\n throw new SwapKitError(\"wallet_ledger_invalid_signature\", { reason: \"s too long\" });\n }\n\n // add leading zero's to pad to 32 bytes\n while (sSignature.length < 32) {\n sSignature.unshift(0);\n }\n\n if (rSignature.length !== 32 || sSignature.length !== 32) {\n throw new SwapKitError(\"wallet_ledger_invalid_signature\", { reason: \"must be 32 bytes each\" });\n }\n\n return base64.encode(Buffer.concat([rSignature, sSignature]));\n};\n",
18
- "import type TronApp from \"@ledgerhq/hw-app-trx\";\nimport {\n type DerivationPathArray,\n NetworkDerivationPath,\n SwapKitError,\n derivationPathToString,\n} from \"@swapkit/helpers\";\nimport type { TronSignedTransaction, TronSigner, TronTransaction } from \"@swapkit/toolboxes/tron\";\n\nimport { getLedgerTransport } from \"../helpers/getLedgerTransport\";\n\nexport class TronLedgerInterface implements TronSigner {\n derivationPath: string;\n ledgerApp: InstanceType<typeof TronApp> | null = null;\n ledgerTimeout = 50000;\n\n constructor(derivationPath?: DerivationPathArray | string) {\n this.derivationPath =\n typeof derivationPath === \"string\"\n ? derivationPath\n : derivationPathToString(derivationPath || NetworkDerivationPath.TRX);\n }\n\n checkOrCreateTransportAndLedger = async () => {\n if (this.ledgerApp) return;\n await this.createTransportAndLedger();\n };\n\n createTransportAndLedger = async () => {\n const transport = await getLedgerTransport();\n const TronApp = (await import(\"@ledgerhq/hw-app-trx\")).default;\n\n this.ledgerApp = new TronApp(transport);\n };\n\n getAddress = async (): Promise<string> => {\n const response = await this.getAddressAndPubKey();\n if (!response) throw new SwapKitError(\"wallet_ledger_failed_to_get_address\");\n return response.address;\n };\n\n getAddressAndPubKey = async () => {\n await this.createTransportAndLedger();\n const result = await this.ledgerApp?.getAddress(this.derivationPath);\n\n if (!result) throw new SwapKitError(\"wallet_ledger_failed_to_get_address\");\n\n return {\n address: result.address,\n publicKey: result.publicKey,\n };\n };\n\n showAddressAndPubKey = async () => {\n await this.createTransportAndLedger();\n return this.ledgerApp?.getAddress(this.derivationPath, true);\n };\n\n signTransaction = async (transaction: TronTransaction): Promise<TronSignedTransaction> => {\n await this.createTransportAndLedger();\n\n if (!this.ledgerApp) {\n throw new SwapKitError(\"wallet_ledger_transport_error\");\n }\n\n // Tron transactions need to be serialized before signing\n const serializedTx = JSON.stringify(transaction);\n\n try {\n const signature = await this.ledgerApp.signTransaction(\n this.derivationPath,\n serializedTx,\n [], // Token signatures array - empty for native TRX transfers\n );\n\n if (!signature) {\n throw new SwapKitError(\"wallet_ledger_signing_error\");\n }\n\n // Return the signed transaction in Tron's expected format\n return {\n ...transaction,\n signature: [signature],\n };\n } catch (error) {\n throw new SwapKitError(\"wallet_ledger_signing_error\", { error });\n }\n };\n}\n\nexport const TronLedger = (derivationPath?: DerivationPathArray) =>\n new TronLedgerInterface(derivationPath);\n",
18
+ "import type TronApp from \"@ledgerhq/hw-app-trx\";\nimport {\n type DerivationPathArray,\n NetworkDerivationPath,\n SwapKitError,\n derivationPathToString,\n} from \"@swapkit/helpers\";\nimport type { TronSignedTransaction, TronSigner, TronTransaction } from \"@swapkit/toolboxes/tron\";\n\nimport { getLedgerTransport } from \"../helpers/getLedgerTransport\";\n\nexport class TronLedgerInterface implements TronSigner {\n derivationPath: string;\n ledgerApp: InstanceType<typeof TronApp> | null = null;\n ledgerTimeout = 50000;\n\n constructor(derivationPath?: DerivationPathArray | string) {\n this.derivationPath =\n typeof derivationPath === \"string\"\n ? derivationPath\n : derivationPathToString(derivationPath || NetworkDerivationPath.TRON);\n }\n\n checkOrCreateTransportAndLedger = async () => {\n if (this.ledgerApp) return;\n await this.createTransportAndLedger();\n };\n\n createTransportAndLedger = async () => {\n const transport = await getLedgerTransport();\n const TronApp = (await import(\"@ledgerhq/hw-app-trx\")).default;\n\n this.ledgerApp = new TronApp(transport);\n };\n\n getAddress = async (): Promise<string> => {\n const response = await this.getAddressAndPubKey();\n if (!response) throw new SwapKitError(\"wallet_ledger_failed_to_get_address\");\n return response.address;\n };\n\n getAddressAndPubKey = async () => {\n await this.createTransportAndLedger();\n const result = await this.ledgerApp?.getAddress(this.derivationPath);\n\n if (!result) throw new SwapKitError(\"wallet_ledger_failed_to_get_address\");\n\n return {\n address: result.address,\n publicKey: result.publicKey,\n };\n };\n\n showAddressAndPubKey = async () => {\n await this.createTransportAndLedger();\n return this.ledgerApp?.getAddress(this.derivationPath, true);\n };\n\n signTransaction = async (transaction: TronTransaction): Promise<TronSignedTransaction> => {\n await this.createTransportAndLedger();\n\n if (!this.ledgerApp) {\n throw new SwapKitError(\"wallet_ledger_transport_error\");\n }\n\n // Tron transactions need to be serialized before signing\n const serializedTx = JSON.stringify(transaction);\n\n try {\n const signature = await this.ledgerApp.signTransaction(\n this.derivationPath,\n serializedTx,\n [], // Token signatures array - empty for native TRX transfers\n );\n\n if (!signature) {\n throw new SwapKitError(\"wallet_ledger_signing_error\");\n }\n\n // Return the signed transaction in Tron's expected format\n return {\n ...transaction,\n signature: [signature],\n };\n } catch (error) {\n throw new SwapKitError(\"wallet_ledger_signing_error\", { error });\n }\n };\n}\n\nexport const TronLedger = (derivationPath?: DerivationPathArray) =>\n new TronLedgerInterface(derivationPath);\n",
19
19
  "import type BitcoinApp from \"@ledgerhq/hw-app-btc\";\nimport type { CreateTransactionArg } from \"@ledgerhq/hw-app-btc/lib-es/createTransaction\";\nimport {\n type DerivationPathArray,\n SwapKitError,\n derivationPathToString,\n getWalletFormatFor,\n} from \"@swapkit/helpers\";\nimport type { UTXOType } from \"@swapkit/toolboxes/utxo\";\nimport { type Psbt, Transaction } from \"bitcoinjs-lib\";\n\nimport { getLedgerTransport } from \"../helpers/getLedgerTransport\";\n\ntype Params = {\n psbt: Psbt;\n inputUtxos: UTXOType[];\n btcApp: any;\n derivationPath: string;\n};\n\nconst signUTXOTransaction = async (\n { psbt, inputUtxos, btcApp, derivationPath }: Params,\n options?: Partial<CreateTransactionArg>,\n) => {\n const inputs = inputUtxos.map((item) => {\n const utxoTx = Transaction.fromHex(item.txHex || \"\");\n const splitTx = btcApp.splitTransaction(utxoTx.toHex(), utxoTx.hasWitnesses());\n\n return [\n splitTx,\n item.index,\n undefined as string | null | undefined,\n undefined as number | null | undefined,\n ] as any;\n });\n\n const newTxHex = psbt.data.globalMap.unsignedTx.toBuffer().toString(\"hex\");\n\n const splitNewTx = btcApp.splitTransaction(newTxHex, true);\n const outputScriptHex = btcApp.serializeTransactionOutputs(splitNewTx).toString(\"hex\");\n\n const params: CreateTransactionArg = {\n additionals: [\"bech32\"],\n associatedKeysets: inputs.map(() => derivationPath),\n inputs,\n outputScriptHex,\n segwit: true,\n useTrustedInputForSegwit: true,\n };\n\n return btcApp.createPaymentTransaction({ ...params, ...options });\n};\n\nconst BaseLedgerUTXO = ({\n chain,\n additionalSignParams,\n}: {\n chain: \"bitcoin-cash\" | \"bitcoin\" | \"litecoin\" | \"dogecoin\" | \"dash\";\n additionalSignParams?: Partial<CreateTransactionArg>;\n}) => {\n let btcApp: InstanceType<typeof BitcoinApp>;\n let transport: any = null;\n\n async function checkBtcAppAndCreateTransportWebUSB(checkBtcApp = true) {\n if (checkBtcApp && !btcApp) {\n new SwapKitError(\"wallet_ledger_connection_error\", {\n message: `Ledger connection failed:\\n${JSON.stringify({ checkBtcApp, btcApp })}`,\n });\n }\n\n transport ||= await getLedgerTransport();\n }\n\n async function createTransportWebUSB() {\n transport = await getLedgerTransport();\n const BitcoinApp = (await import(\"@ledgerhq/hw-app-btc\")).default;\n\n btcApp = new BitcoinApp({ transport, currency: chain });\n }\n\n return (derivationPathArray?: DerivationPathArray | string) => {\n const derivationPath =\n typeof derivationPathArray === \"string\"\n ? derivationPathArray\n : derivationPathToString(derivationPathArray as DerivationPathArray);\n\n const format = getWalletFormatFor(derivationPath);\n\n return {\n connect: async () => {\n await checkBtcAppAndCreateTransportWebUSB(false);\n const BitcoinApp = (await import(\"@ledgerhq/hw-app-btc\")).default;\n\n btcApp = new BitcoinApp({ transport, currency: chain });\n },\n getExtendedPublicKey: async (path = \"84'/0'/0'\", xpubVersion = 76067358) => {\n await checkBtcAppAndCreateTransportWebUSB(false);\n\n return btcApp.getWalletXpub({ path, xpubVersion });\n },\n signTransaction: async (psbt: Psbt, inputUtxos: UTXOType[]) => {\n await createTransportWebUSB();\n\n return signUTXOTransaction(\n { psbt, derivationPath, btcApp, inputUtxos },\n additionalSignParams,\n );\n },\n getAddress: async () => {\n const { toCashAddress } = await import(\"@swapkit/toolboxes/utxo\");\n\n await checkBtcAppAndCreateTransportWebUSB(false);\n\n const { bitcoinAddress: address } = await btcApp.getWalletPublicKey(derivationPath, {\n format,\n });\n\n if (!address) {\n throw new SwapKitError(\"wallet_ledger_get_address_error\", {\n message: `Cannot get ${chain} address from ledger derivation path: ${derivationPath}`,\n });\n }\n\n return chain === \"bitcoin-cash\" && format === \"legacy\"\n ? toCashAddress(address).replace(/(bchtest:|bitcoincash:)/, \"\")\n : address;\n },\n };\n };\n};\n\nexport const BitcoinLedger = BaseLedgerUTXO({ chain: \"bitcoin\" });\nexport const LitecoinLedger = BaseLedgerUTXO({ chain: \"litecoin\" });\n\nexport const BitcoinCashLedger = BaseLedgerUTXO({\n chain: \"bitcoin-cash\",\n additionalSignParams: { segwit: false, additionals: [\"abc\"], sigHashType: 0x41 },\n});\n\nexport const DogecoinLedger = BaseLedgerUTXO({\n chain: \"dogecoin\",\n additionalSignParams: { additionals: [], segwit: false, useTrustedInputForSegwit: false },\n});\n\nexport const DashLedger = BaseLedgerUTXO({\n chain: \"dash\",\n additionalSignParams: { additionals: [], segwit: false, useTrustedInputForSegwit: false },\n});\n",
20
20
  "import type Xrp from \"@ledgerhq/hw-app-xrp\";\nimport type Transport from \"@ledgerhq/hw-transport\";\nimport {\n Chain,\n type DerivationPathArray,\n NetworkDerivationPath,\n derivationPathToString,\n} from \"@swapkit/helpers\";\nimport type { Transaction } from \"@swapkit/toolboxes/ripple\";\nimport { encode } from \"ripple-binary-codec\";\nimport type { Payment } from \"xrpl\";\nimport { getLedgerTransport } from \"../helpers\";\n\nconst TF_FULLY_CANONICAL_SIG = 2147483648;\n\nfunction cleanTransactionObject(obj: Record<string, any>) {\n const cleaned: Record<string, any> = {};\n for (const key in obj) {\n if (obj[key] !== null && obj[key] !== undefined) {\n cleaned[key] = obj[key];\n }\n }\n return cleaned;\n}\n\nasync function establishConnection(transport: Transport) {\n const { default: Xrp } = await import(\"@ledgerhq/hw-app-xrp\");\n return new Xrp(transport);\n}\n\nfunction fetchAddressAndPublicKey({\n instance,\n derivationPath,\n}: { instance: Xrp; derivationPath: string }) {\n return instance.getAddress(derivationPath);\n}\n\nexport const XRPLedger = async (derivationPath?: DerivationPathArray) => {\n const path = derivationPathToString(derivationPath || NetworkDerivationPath[Chain.Ripple]);\n const transport = await getLedgerTransport();\n const xrpInstance = await establishConnection(transport);\n\n const { address, publicKey } = await fetchAddressAndPublicKey({\n instance: xrpInstance,\n derivationPath: path,\n });\n\n async function sign(transaction: Payment | Transaction) {\n const { hashes } = await import(\"@swapkit/toolboxes/ripple\");\n const cleanedTxWithPubKey = cleanTransactionObject(transaction);\n const transactionJSON = {\n ...cleanedTxWithPubKey,\n Flags: transaction.Flags || TF_FULLY_CANONICAL_SIG,\n SigningPubKey: publicKey.toUpperCase(),\n };\n\n const transactionToSignOnLedger = encode(transactionJSON);\n const txnSignature = await xrpInstance.signTransaction(path, transactionToSignOnLedger);\n const tx_blob = encode({ ...transactionJSON, TxnSignature: txnSignature });\n const hash = hashes.hashSignedTx(tx_blob);\n\n return { tx_blob, hash };\n }\n\n return { address, sign };\n};\n"
21
21
  ],
22
- "mappings": "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",
23
- "debugId": "1B53CF4372DE316864756E2164756E21",
22
+ "mappings": "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",
23
+ "debugId": "30333A7967C2CBF564756E2164756E21",
24
24
  "names": []
25
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cosmos.d.ts","sourceRoot":"","sources":["../../../../src/keepkey/chains/cosmos.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAEL,OAAO,EAEP,KAAK,mBAAmB,EAGzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAI9D,eAAO,MAAM,mBAAmB,GAAU,0BAGvC;IAAE,GAAG,EAAE,UAAU,CAAC;IAAC,cAAc,CAAC,EAAE,mBAAmB,CAAA;CAAE;gDAwBD,qBAAqB;;;;sDAKvE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCT,CAAC"}
1
+ {"version":3,"file":"cosmos.d.ts","sourceRoot":"","sources":["../../../../src/keepkey/chains/cosmos.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAEL,OAAO,EAEP,KAAK,mBAAmB,EAGzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAI9D,eAAO,MAAM,mBAAmB,GAAU,0BAGvC;IAAE,GAAG,EAAE,UAAU,CAAC;IAAC,cAAc,CAAC,EAAE,mBAAmB,CAAA;CAAE;gDAwBD,qBAAqB;;;;sDAKxE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiCR,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"mayachain.d.ts","sourceRoot":"","sources":["../../../../src/keepkey/chains/mayachain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,KAAK,UAAU,EACf,KAAK,EACL,OAAO,EAEP,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAI3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAWxE,eAAO,MAAM,sBAAsB,GAAU,0BAG1C;IACD,GAAG,EAAE,UAAU,CAAC;IAChB,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC;gDAmE0D,qBAAqB;oCAajC,sBAAsB;;;;;iBAnE7D,CAAC;;YAKL,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2DA4EizB,CAAC;;;;;;;;;;;;;;;sDAAgsB,CAAC;;;;;;;;;;;;;;;;;;;EADv/C,CAAC"}
1
+ {"version":3,"file":"mayachain.d.ts","sourceRoot":"","sources":["../../../../src/keepkey/chains/mayachain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,KAAK,UAAU,EACf,KAAK,EACL,OAAO,EAEP,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAI3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAWxE,eAAO,MAAM,sBAAsB,GAAU,0BAG1C;IACD,GAAG,EAAE,UAAU,CAAC;IAChB,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC;gDAmE0D,qBAAqB;oCAcjC,sBAAsB;;;;;iBApE9D,CAAC;;YAKJ,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2DA8E2wB,CAAC;;;;;;;;;;;;;;;sDAAgsB,CAAC;;;;;;;;;;;;;;;;;;;EADh9C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"thorchain.d.ts","sourceRoot":"","sources":["../../../../src/keepkey/chains/thorchain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAGX,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,UAAU,EACf,KAAK,EACL,OAAO,EAEP,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAI3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAWxE,eAAO,MAAM,sBAAsB,GAAU,0BAG1C;IACD,GAAG,EAAE,UAAU,CAAC;IAChB,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC;gDAqD0D,qBAAqB;oCAajC,sBAAsB;;;;;iBA1DnC,CAAC;;YAGC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2DA0E85B,CAAC;;;;;;;;;;;;;;;sDAAgsB,CAAC;;;;;;;;;;;;;;;;;;;EADpoD,CAAC"}
1
+ {"version":3,"file":"thorchain.d.ts","sourceRoot":"","sources":["../../../../src/keepkey/chains/thorchain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAGX,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,UAAU,EACf,KAAK,EACL,OAAO,EAEP,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAI3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAWxE,eAAO,MAAM,sBAAsB,GAAU,0BAG1C;IACD,GAAG,EAAE,UAAU,CAAC;IAChB,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC;gDAqD0D,qBAAqB;oCAcjC,sBAAsB;;;;;iBA3DpC,CAAC;;YAGC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2DA4Ew3B,CAAC;;;;;;;;;;;;;;;sDAAgsB,CAAC;;;;;;;;;;;;;;;;;;;EAD7lD,CAAC"}
@@ -17,9 +17,10 @@ export declare const utxoWalletMethods: ({ sdk, chain, derivationPath, }: {
17
17
  signTransaction: (psbt: Psbt, inputs: KeepKeyInputObject[], memo?: string) => Promise<string>;
18
18
  transfer: ({ recipient, feeOptionKey, feeRate, memo, ...rest }: GenericTransferParams) => Promise<string>;
19
19
  address: string;
20
- accumulative: ({ inputs, outputs, feeRate: initialFeeRate, chain, }: import("@swapkit/toolboxes/utxo").UTXOCalculateTxSizeParams & {
20
+ accumulative: ({ inputs, outputs, feeRate: initialFeeRate, chain, changeAddress, }: import("@swapkit/toolboxes/utxo").UTXOCalculateTxSizeParams & {
21
21
  outputs: import("@swapkit/toolboxes/utxo").TargetOutput[];
22
22
  chain: UTXOChain;
23
+ changeAddress?: string;
23
24
  }) => {
24
25
  inputs: (import("@swapkit/toolboxes/utxo").UTXOType | import("@swapkit/toolboxes/utxo").UTXOInputWithScriptType)[];
25
26
  outputs: import("@swapkit/toolboxes/utxo").TargetOutput[];
@@ -121,9 +122,10 @@ export declare const utxoWalletMethods: ({ sdk, chain, derivationPath, }: {
121
122
  stripPrefix: typeof import("@swapkit/toolboxes/utxo").stripPrefix;
122
123
  stripToCashAddress: typeof import("@swapkit/toolboxes/utxo").stripToCashAddress;
123
124
  validateAddress: typeof import("@swapkit/toolboxes/utxo").bchValidateAddress;
124
- accumulative: ({ inputs, outputs, feeRate: initialFeeRate, chain, }: import("@swapkit/toolboxes/utxo").UTXOCalculateTxSizeParams & {
125
+ accumulative: ({ inputs, outputs, feeRate: initialFeeRate, chain, changeAddress, }: import("@swapkit/toolboxes/utxo").UTXOCalculateTxSizeParams & {
125
126
  outputs: import("@swapkit/toolboxes/utxo").TargetOutput[];
126
127
  chain: import("@swapkit/helpers").UTXOChain;
128
+ changeAddress?: string;
127
129
  }) => {
128
130
  inputs: (import("@swapkit/toolboxes/utxo").UTXOType | import("@swapkit/toolboxes/utxo").UTXOInputWithScriptType)[];
129
131
  outputs: import("@swapkit/toolboxes/utxo").TargetOutput[];
@@ -1 +1 @@
1
- {"version":3,"file":"utxo.d.ts","sourceRoot":"","sources":["../../../../src/keepkey/chains/utxo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,KAAK,EAEL,KAAK,mBAAmB,EACxB,SAAS,EACT,KAAK,qBAAqB,EAE1B,KAAK,SAAS,EAEf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAK1C,UAAU,kBAAkB;IAC1B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,iBAAiB,GAAU,iCAIrC;IACD,GAAG,EAAE,UAAU,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACvC,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC;4BAoBsC,IAAI,UAAU,kBAAkB,EAAE;oEAsDpE,qBAAqB;;;;;;;;;;;cAxDpB,CAAC;eAA4B,CAAC;;;;;;;;;;;;;WAaA,CAAC;cAAwB,CAAC;sBAAgC,CAAC;;;;;;;;oBA8CrF,CAAC;eAAwB,CAAC;;;;;;;cAK7B,CAAC;eAEa,CAAC;;;;;;4CApCP,CAAC;;;;;YAM0B,CAAC;oBAA8B,CAAC;eAEtE,CAAH;kBAEoB,CAAC;;;;YAIb,CAAC;eAGN,CAAH;oBAA8B,CAAC;kBAGxB,CAAA;;;4BAhD+B,IAAI,UAAU,kBAAkB,EAAE;oEAsDpE,qBAAqB;;;;;;;;;sBAmBI,CAAC;;;;;;;;;;;;;;;;;0BASpB,CAAA;;6CAjGP,CAAA;;;;;;;;;;;;;;;;;;cA0BqB,CAAC;eAA4B,CAAC;;;;WAGvB,CAAC;cACvB,CAAH;sBACa,CAAC;;;oBAQN,CAAC;eACD,CAAC;;;;;;;cAQV,CAAJ;eACM,CAAF;;;;;;;;;;YAQc,CAAA;oBAGL,CAAC;eAA4B,CAAC;kBAG5B,CAAC;;;;YAQoC,CAAC;eACvC,CAAC;oBAA8B,CAAC;kBAG1C,CAAL;;EAiCA,CAAC"}
1
+ {"version":3,"file":"utxo.d.ts","sourceRoot":"","sources":["../../../../src/keepkey/chains/utxo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,KAAK,EAEL,KAAK,mBAAmB,EACxB,SAAS,EACT,KAAK,qBAAqB,EAE1B,KAAK,SAAS,EAEf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAK1C,UAAU,kBAAkB;IAC1B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,iBAAiB,GAAU,iCAIrC;IACD,GAAG,EAAE,UAAU,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACvC,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC;4BAoBsC,IAAI,UAAU,kBAAkB,EAAE;oEAsDpE,qBAAqB;;;;;qBAtD4D,CAAA;;;;;;;cAMrE,CAAC;eACG,CAAC;;;;;;;;;;;;;WAYC,CAAC;cACH,CAAC;sBAId,CAAD;;;;;;;;oBA2C0C,CAAC;eAExC,CAAC;;;;;;;cAI6D,CAAC;eACjE,CAAC;;;;;;4CAjCH,CAAA;;;;;YAOoB,CAAC;oBAEb,CAAC;eAGX,CAAD;kBACgB,CAAC;;;;YAKhB,CAAD;eACK,CAAC;oBAA8B,CAAC;kBAChC,CAAA;;;4BA7D+B,IAAI,UAAU,kBAAkB,EAAE;oEAsDpE,qBAAqB;;;;;;;;;sBAmBmD,CAAC;;;;;;;;;;;;;;;;;0BAW/D,CAAC;;6CAnGZ,CAAA;;;;;;;;;;;;qBAoBM,CAAP;;;;;;;cAMsE,CAAA;eAA4B,CAAC;;;;WAK1F,CAAF;cAAwB,CAAC;sBACjB,CAAC;;;oBAQc,CAAC;eAA4B,CAAC;;;;;;;cASxC,CAAC;eAA4B,CAAC;;;;;;;;;;YAWtB,CAAC;oBAG1B,CAAC;eACA,CAAC;kBAEJ,CAAA;;;;YAMkC,CAAA;eAElC,CAAC;oBACW,CAAA;kBAA+B,CAAC;;EAiC/C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ledger/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EAEL,KAAK,mBAAmB,EAQzB,MAAM,kBAAkB,CAAC;AAO1B,eAAO,MAAM,YAAY;;;;;;;CAoCvB,CAAC;AAEH,eAAO,MAAM,uBAAuB,0TAAyC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ledger/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EAEL,KAAK,mBAAmB,EAOzB,MAAM,kBAAkB,CAAC;AAO1B,eAAO,MAAM,YAAY;;;;;;;CAoCvB,CAAC;AAEH,eAAO,MAAM,uBAAuB,0TAAyC,CAAC"}
package/package.json CHANGED
@@ -13,8 +13,8 @@
13
13
  "@ledgerhq/hw-transport": "~6.31.0",
14
14
  "@ledgerhq/hw-transport-webusb": "~6.29.0",
15
15
  "@ledgerhq/wallet-api-client": "~1.9.0",
16
- "@swapkit/helpers": "4.0.0-beta.41",
17
- "@swapkit/toolboxes": "4.0.0-beta.58",
16
+ "@swapkit/helpers": "4.0.0",
17
+ "@swapkit/toolboxes": "4.0.0",
18
18
  "ethers": "^6.14.0",
19
19
  "ts-pattern": "~5.7.0"
20
20
  },
@@ -76,5 +76,5 @@
76
76
  "type-check:go": "tsgo"
77
77
  },
78
78
  "type": "module",
79
- "version": "4.0.0-beta.9"
79
+ "version": "4.0.0"
80
80
  }