@tcswap/wallets 4.3.16 → 4.3.17

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.
Files changed (107) hide show
  1. package/dist/bitget.cjs +4 -0
  2. package/dist/bitget.cjs.map +10 -0
  3. package/dist/bitget.js +4 -0
  4. package/dist/bitget.js.map +10 -0
  5. package/dist/chunk-1m30h0t9.js +4 -0
  6. package/dist/chunk-1m30h0t9.js.map +9 -0
  7. package/dist/chunk-7jtd4aht.js +5 -0
  8. package/dist/chunk-7jtd4aht.js.map +9 -0
  9. package/dist/chunk-ae6bkfs5.js +3 -0
  10. package/dist/chunk-ae6bkfs5.js.map +9 -0
  11. package/dist/chunk-w091cwmh.js +5 -0
  12. package/dist/chunk-w091cwmh.js.map +10 -0
  13. package/dist/chunk-w4smbq6w.js +4 -0
  14. package/dist/chunk-w4smbq6w.js.map +9 -0
  15. package/dist/coinbase/index.cjs +4 -0
  16. package/dist/coinbase/index.cjs.map +11 -0
  17. package/dist/coinbase/index.js +4 -0
  18. package/dist/coinbase/index.js.map +11 -0
  19. package/dist/cosmostation.cjs +4 -0
  20. package/dist/cosmostation.cjs.map +10 -0
  21. package/dist/cosmostation.js +4 -0
  22. package/dist/cosmostation.js.map +10 -0
  23. package/dist/ctrl.cjs +4 -0
  24. package/dist/ctrl.cjs.map +10 -0
  25. package/dist/ctrl.js +4 -0
  26. package/dist/ctrl.js.map +10 -0
  27. package/dist/evm-extensions.cjs +4 -0
  28. package/dist/evm-extensions.cjs.map +10 -0
  29. package/dist/evm-extensions.js +4 -0
  30. package/dist/evm-extensions.js.map +10 -0
  31. package/dist/index.cjs +4 -0
  32. package/dist/index.cjs.map +11 -0
  33. package/dist/index.js +4 -0
  34. package/dist/index.js.map +11 -0
  35. package/dist/keepkey-bex.cjs +4 -0
  36. package/dist/keepkey-bex.cjs.map +10 -0
  37. package/dist/keepkey-bex.js +4 -0
  38. package/dist/keepkey-bex.js.map +10 -0
  39. package/dist/keepkey.cjs +4 -0
  40. package/dist/keepkey.cjs.map +10 -0
  41. package/dist/keepkey.js +4 -0
  42. package/dist/keepkey.js.map +10 -0
  43. package/dist/keplr.cjs +4 -0
  44. package/dist/keplr.cjs.map +10 -0
  45. package/dist/keplr.js +4 -0
  46. package/dist/keplr.js.map +10 -0
  47. package/dist/keystore.cjs +4 -0
  48. package/dist/keystore.cjs.map +10 -0
  49. package/dist/keystore.js +4 -0
  50. package/dist/keystore.js.map +10 -0
  51. package/dist/ledger.cjs +4 -0
  52. package/dist/ledger.cjs.map +10 -0
  53. package/dist/ledger.js +4 -0
  54. package/dist/ledger.js.map +10 -0
  55. package/dist/near-wallet-selector/index.cjs +4 -0
  56. package/dist/near-wallet-selector/index.cjs.map +10 -0
  57. package/dist/near-wallet-selector/index.js +4 -0
  58. package/dist/near-wallet-selector/index.js.map +10 -0
  59. package/dist/okx.cjs +4 -0
  60. package/dist/okx.cjs.map +10 -0
  61. package/dist/okx.js +4 -0
  62. package/dist/okx.js.map +10 -0
  63. package/dist/onekey.cjs +4 -0
  64. package/dist/onekey.cjs.map +10 -0
  65. package/dist/onekey.js +4 -0
  66. package/dist/onekey.js.map +10 -0
  67. package/dist/passkeys/index.cjs +4 -0
  68. package/dist/passkeys/index.cjs.map +10 -0
  69. package/dist/passkeys/index.js +4 -0
  70. package/dist/passkeys/index.js.map +10 -0
  71. package/dist/phantom.cjs +4 -0
  72. package/dist/phantom.cjs.map +10 -0
  73. package/dist/phantom.js +4 -0
  74. package/dist/phantom.js.map +10 -0
  75. package/dist/polkadotjs.cjs +4 -0
  76. package/dist/polkadotjs.cjs.map +10 -0
  77. package/dist/polkadotjs.js +4 -0
  78. package/dist/polkadotjs.js.map +10 -0
  79. package/dist/radix/index.cjs +4 -0
  80. package/dist/radix/index.cjs.map +10 -0
  81. package/dist/radix/index.js +4 -0
  82. package/dist/radix/index.js.map +10 -0
  83. package/dist/talisman.cjs +4 -0
  84. package/dist/talisman.cjs.map +10 -0
  85. package/dist/talisman.js +4 -0
  86. package/dist/talisman.js.map +10 -0
  87. package/dist/trezor.cjs +4 -0
  88. package/dist/trezor.cjs.map +10 -0
  89. package/dist/trezor.js +4 -0
  90. package/dist/trezor.js.map +10 -0
  91. package/dist/tronlink.cjs +4 -0
  92. package/dist/tronlink.cjs.map +10 -0
  93. package/dist/tronlink.js +4 -0
  94. package/dist/tronlink.js.map +10 -0
  95. package/dist/vultisig.cjs +4 -0
  96. package/dist/vultisig.cjs.map +10 -0
  97. package/dist/vultisig.js +4 -0
  98. package/dist/vultisig.js.map +10 -0
  99. package/dist/walletconnect/index.cjs +4 -0
  100. package/dist/walletconnect/index.cjs.map +13 -0
  101. package/dist/walletconnect/index.js +4 -0
  102. package/dist/walletconnect/index.js.map +13 -0
  103. package/dist/xaman/index.cjs +4 -0
  104. package/dist/xaman/index.cjs.map +12 -0
  105. package/dist/xaman/index.js +4 -0
  106. package/dist/xaman/index.js.map +12 -0
  107. package/package.json +57 -57
@@ -0,0 +1,13 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/walletconnect/index.ts", "../src/walletconnect/evmSigner.ts", "../src/walletconnect/helpers.ts", "../src/walletconnect/namespaces.ts"],
4
+ "sourcesContent": [
5
+ "/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport type { StdSignDoc } from \"@cosmjs/amino\";\nimport type { Transaction } from \"@near-js/transactions\";\nimport {\n Chain,\n filterSupportedChains,\n type GenericTransferParams,\n getRPCUrl,\n USwapConfig,\n USwapError,\n WalletOption,\n} from \"@tcswap/helpers\";\nimport type { ThorchainDepositParams } from \"@tcswap/toolboxes/cosmos\";\nimport type { NearSigner } from \"@tcswap/toolboxes/near\";\nimport type { TronSignedTransaction, TronSigner, TronTransaction } from \"@tcswap/toolboxes/tron\";\nimport { createWallet, getWalletSupportedChains } from \"@tcswap/wallet-core\";\nimport type { WalletConnectModal } from \"@walletconnect/modal\";\nimport type { SignClient } from \"@walletconnect/sign-client\";\nimport type { SessionTypes, SignClientTypes } from \"@walletconnect/types\";\nimport {\n DEFAULT_APP_METADATA,\n DEFAULT_COSMOS_METHODS,\n DEFAULT_LOGGER,\n DEFAULT_RELAY_URL,\n THORCHAIN_MAINNET_ID,\n} from \"./constants\";\nimport { getEVMSigner } from \"./evmSigner\";\nimport { chainToChainId, getAddressByChain } from \"./helpers\";\nimport { getRequiredNamespaces } from \"./namespaces\";\n\nexport * from \"./constants\";\nexport * from \"./types\";\n\nexport const walletconnectWallet = createWallet({\n connect: ({ addChain, supportedChains, walletType }) =>\n async function connectWalletconnect(chains: Chain[], walletconnectOptions?: SignClientTypes.Options) {\n const filteredChains = filterSupportedChains({ chains, supportedChains, walletType });\n const { walletConnectProjectId } = USwapConfig.get(\"apiKeys\");\n\n if (!walletConnectProjectId) {\n throw new USwapError(\"wallet_walletconnect_project_id_not_specified\");\n }\n\n const walletconnect = await getWalletconnect(filteredChains, walletConnectProjectId, walletconnectOptions);\n\n if (!walletconnect) {\n throw new USwapError(\"wallet_walletconnect_connection_not_established\");\n }\n\n const { accounts } = walletconnect;\n\n await Promise.all(\n filteredChains.map(async (chain) => {\n const address = getAddressByChain(chain, accounts || []);\n const toolbox = await getToolbox({ address, chain, walletconnect });\n\n addChain({\n ...toolbox,\n address,\n chain,\n disconnect: walletconnect.disconnect,\n walletType: WalletOption.WALLETCONNECT,\n });\n }),\n );\n\n return true;\n },\n name: \"connectWalletconnect\",\n supportedChains: [\n Chain.Arbitrum,\n Chain.Aurora,\n Chain.Avalanche,\n Chain.Base,\n Chain.Berachain,\n Chain.BinanceSmartChain,\n Chain.Cosmos,\n Chain.Ethereum,\n Chain.Kujira,\n Chain.Maya,\n Chain.Monad,\n Chain.Near,\n Chain.Optimism,\n Chain.Polygon,\n Chain.THORChain,\n Chain.Tron,\n Chain.XLayer,\n ],\n walletType: WalletOption.WALLETCONNECT,\n});\n\nexport const WC_SUPPORTED_CHAINS = getWalletSupportedChains(walletconnectWallet);\nexport type Walletconnect = Awaited<ReturnType<typeof getWalletconnect>>;\n\nasync function getToolbox<T extends (typeof WC_SUPPORTED_CHAINS)[number]>({\n chain,\n walletconnect,\n address,\n}: {\n walletconnect: Walletconnect;\n chain: T;\n address: string;\n}) {\n const session = walletconnect?.session;\n if (!session) {\n throw new USwapError(\"wallet_walletconnect_connection_not_established\");\n }\n\n switch (chain) {\n case Chain.Arbitrum:\n case Chain.Avalanche:\n case Chain.Base:\n case Chain.BinanceSmartChain:\n case Chain.Ethereum:\n case Chain.Monad:\n case Chain.Optimism:\n case Chain.Polygon:\n case Chain.XLayer: {\n const { getProvider, getEvmToolbox } = await import(\"@tcswap/toolboxes/evm\");\n\n const provider = await getProvider(chain);\n const signer = await getEVMSigner({ chain, provider, walletconnect });\n const toolbox = await getEvmToolbox(chain, { provider, signer });\n\n return toolbox;\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\n const importedSigning = await import(\"@cosmjs/proto-signing\");\n const encodePubkey = importedSigning.encodePubkey ?? importedSigning.default?.encodePubkey;\n const makeAuthInfoBytes = importedSigning.makeAuthInfoBytes ?? importedSigning.default?.makeAuthInfoBytes;\n const importedAmino = await import(\"@cosmjs/amino\");\n const makeSignDoc = importedAmino.makeSignDoc ?? importedSigning.default?.makeSignDoc;\n\n const {\n getCosmosToolbox,\n buildAminoMsg,\n buildEncodedTxBody,\n createStargateClient,\n fromBase64,\n getDefaultChainFee,\n parseAminoMessageForDirectSigning,\n } = await import(\"@tcswap/toolboxes/cosmos\");\n const toolbox = await getCosmosToolbox(chain);\n\n const fee = getDefaultChainFee(chain);\n\n const signRequest = (signDoc: StdSignDoc) =>\n walletconnect?.client.request({\n chainId: THORCHAIN_MAINNET_ID,\n request: { method: DEFAULT_COSMOS_METHODS.COSMOS_SIGN_AMINO, params: { signDoc, signerAddress: address } },\n topic: session.topic,\n });\n\n async function thorchainTransfer({ assetValue, memo, ...rest }: GenericTransferParams | ThorchainDepositParams) {\n const account = await toolbox.getAccount(address);\n if (!account) {\n throw new USwapError({ errorKey: \"wallet_missing_params\", info: { account } });\n }\n\n if (!account.pubkey) {\n throw new USwapError({ errorKey: \"wallet_missing_params\", info: { account, pubkey: account?.pubkey } });\n }\n\n const { accountNumber, sequence = 0 } = account;\n\n const msgs = [buildAminoMsg({ ...rest, assetValue, memo, sender: address })];\n\n const signDoc = makeSignDoc(\n msgs,\n fee,\n assetValue.chainId,\n memo,\n accountNumber?.toString(),\n sequence?.toString() || \"0\",\n );\n\n const signature: any = await signRequest(signDoc);\n\n const bodyBytes = await buildEncodedTxBody({\n chain: Chain.THORChain,\n memo: memo || \"\",\n msgs: msgs.map(parseAminoMessageForDirectSigning),\n });\n const pubkey = encodePubkey(account.pubkey);\n const authInfoBytes = makeAuthInfoBytes(\n [{ pubkey, sequence }],\n fee.amount,\n Number.parseInt(fee.gas, 10),\n undefined,\n undefined,\n SignMode.SIGN_MODE_LEGACY_AMINO_JSON,\n );\n\n const txRaw = TxRaw.fromPartial({\n authInfoBytes,\n bodyBytes,\n signatures: [\n fromBase64(typeof signature.signature === \"string\" ? signature.signature : signature.signature.signature),\n ],\n });\n const txBytes = TxRaw.encode(txRaw).finish();\n\n const rpcUrl = await getRPCUrl(Chain.THORChain);\n const broadcaster = await createStargateClient(rpcUrl);\n const result = await broadcaster.broadcastTx(txBytes);\n return result.transactionHash;\n }\n\n return {\n ...toolbox,\n deposit: (params: ThorchainDepositParams) => thorchainTransfer(params),\n transfer: (params: GenericTransferParams) => thorchainTransfer(params),\n };\n }\n\n case Chain.Near: {\n const { getNearToolbox } = await import(\"@tcswap/toolboxes/near\");\n const { DEFAULT_NEAR_METHODS } = await import(\"./constants\");\n\n // Create a NEAR signer that uses WalletConnect\n const signer = {\n getAddress() {\n return Promise.resolve(address);\n },\n getPublicKey() {\n // WalletConnect NEAR doesn't expose public key directly\n return Promise.reject(\n new USwapError(\"wallet_walletconnect_method_not_supported\", { method: \"getPublicKey\" }),\n );\n },\n\n signDelegateAction(_delegateAction: any) {\n return Promise.reject(\n new USwapError(\"wallet_walletconnect_method_not_supported\", { method: \"signDelegateAction\" }),\n );\n },\n\n signNep413Message(\n _message: string,\n _accountId: string,\n _recipient: string,\n _nonce: Uint8Array,\n _callbackUrl?: string,\n ) {\n // WalletConnect NEAR spec doesn't include NEP-413 message signing\n return Promise.reject(\n new USwapError(\"wallet_walletconnect_method_not_supported\", { method: \"signNep413Message\" }),\n );\n },\n\n async signTransaction(transaction: Transaction) {\n if (!walletconnect) {\n throw new USwapError(\"wallet_walletconnect_connection_not_established\");\n }\n // WalletConnect signs and sends in one operation\n const result = await walletconnect.client.request({\n chainId: chainToChainId(Chain.Near),\n request: { method: DEFAULT_NEAR_METHODS.NEAR_SIGN_AND_SEND_TRANSACTION, params: { transaction } },\n topic: session.topic,\n });\n // Return dummy hash and result\n return [new Uint8Array(32), result];\n },\n } as NearSigner;\n\n const toolbox = await getNearToolbox({ signer });\n return toolbox;\n }\n\n case Chain.Tron: {\n const { createTronToolbox } = await import(\"@tcswap/toolboxes/tron\");\n const { DEFAULT_TRON_METHODS } = await import(\"./constants\");\n\n // Create a Tron signer that uses WalletConnect\n const signer: TronSigner = {\n getAddress() {\n return Promise.resolve(address);\n },\n\n async signTransaction(transaction: TronTransaction) {\n if (!walletconnect) {\n throw new USwapError(\"wallet_walletconnect_connection_not_established\");\n }\n\n const signedTx = await walletconnect.client.request({\n chainId: chainToChainId(Chain.Tron),\n request: { method: DEFAULT_TRON_METHODS.TRON_SIGN_TRANSACTION, params: { transaction } },\n topic: session.topic,\n });\n\n return signedTx as TronSignedTransaction;\n },\n };\n\n const toolbox = await createTronToolbox({ signer });\n return toolbox;\n }\n\n default:\n throw new USwapError({\n errorKey: \"wallet_chain_not_supported\",\n info: { chain, wallet: WalletOption.WALLETCONNECT },\n });\n }\n}\n\nasync function getWalletconnect(\n chains: Chain[],\n walletConnectProjectId: string,\n walletconnectOptions?: SignClientTypes.Options,\n) {\n let modal: WalletConnectModal | undefined;\n let signer: typeof SignClient | undefined;\n let session: SessionTypes.Struct | undefined;\n let accounts: string[] | undefined;\n try {\n const requiredNamespaces = getRequiredNamespaces(chains.map(chainToChainId));\n\n const { SignClient } = await import(\"@walletconnect/sign-client\");\n const { WalletConnectModal } = await import(\"@walletconnect/modal\");\n\n const client = await SignClient.init({\n logger: DEFAULT_LOGGER,\n metadata: walletconnectOptions?.metadata || DEFAULT_APP_METADATA,\n projectId: walletConnectProjectId,\n relayUrl: DEFAULT_RELAY_URL,\n ...walletconnectOptions?.core,\n });\n\n const modal = new WalletConnectModal({\n logger: DEFAULT_LOGGER,\n projectId: walletConnectProjectId,\n relayUrl: DEFAULT_RELAY_URL,\n ...walletconnectOptions?.core,\n });\n\n const oldSession = (await client.session.getAll())[0];\n\n // disconnect old Session cause we can't handle using it with current ui\n if (oldSession) {\n await client.disconnect({ reason: { code: 0, message: \"Resetting session\" }, topic: oldSession.topic });\n }\n\n const { uri, approval } = await client.connect({\n // Optionally: pass a known prior pairing (e.g. from `client.core.pairing.getPairings()`) to skip the `uri` step.\n // pairingTopic: pairing?.topic,\n // Provide the namespaces and chains (e.g. `eip155` for EVM-based chains) we want to use in this session.\n requiredNamespaces,\n });\n\n if (uri) {\n modal.openModal({ uri });\n // Await session approval from the wallet.\n session = await approval();\n // Handle the returned session (e.g. update UI to \"connected\" state).\n // Close the QRCode modal in case it was open.\n modal.closeModal();\n\n function extractAccountsFromSession(session: SessionTypes.Struct) {\n const accounts: string[] = [];\n\n for (const [_namespace, data] of Object.entries(session.namespaces)) {\n accounts.push(...data.accounts);\n }\n\n return accounts;\n }\n\n accounts = extractAccountsFromSession(session);\n }\n\n const disconnect = async () => {\n session && (await client.disconnect({ reason: { code: 0, message: \"User disconnected\" }, topic: session.topic }));\n };\n\n if (!session) {\n throw new USwapError(\"wallet_walletconnect_connection_not_established\");\n }\n\n return { accounts, client, disconnect, session, signer };\n } catch {\n // Errors are handled by returning undefined\n } finally {\n if (modal) {\n modal.closeModal();\n }\n }\n return undefined;\n}\n",
6
+ "/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport { type EVMChain, USwapError, WalletOption } from \"@tcswap/helpers\";\nimport type { JsonRpcProvider, Provider, TransactionRequest, TransactionResponse } from \"ethers\";\nimport { AbstractSigner } from \"ethers\";\n\nimport { DEFAULT_EIP155_METHODS } from \"./constants\";\nimport { chainToChainId, getAddressByChain } from \"./helpers\";\nimport type { Walletconnect } from \"./index\";\n\ninterface WalletconnectEVMSignerParams {\n chain: EVMChain;\n walletconnect: Walletconnect;\n provider: Provider | JsonRpcProvider;\n}\n\nclass WalletconnectSigner extends AbstractSigner {\n address: string;\n\n private chain: EVMChain;\n private walletconnect: Walletconnect;\n readonly provider: Provider | JsonRpcProvider;\n\n constructor({ chain, provider, walletconnect }: WalletconnectEVMSignerParams) {\n super(provider);\n this.chain = chain;\n this.walletconnect = walletconnect;\n this.provider = provider;\n this.address = \"\";\n }\n\n // biome-ignore lint/suspicious/useAwait: fulfil implementation type\n getAddress = async () => {\n if (!this.walletconnect) {\n throw new USwapError(\"wallet_walletconnect_connection_not_established\");\n }\n if (!this.address) {\n this.address = getAddressByChain(this.chain, this.walletconnect.accounts || []);\n }\n\n return this.address;\n };\n\n signMessage = async (message: string) => {\n // this is probably broken\n const txHash = (await this.walletconnect?.client.request({\n chainId: chainToChainId(this.chain),\n request: { method: DEFAULT_EIP155_METHODS.ETH_SIGN, params: [message] },\n topic: this.walletconnect.session.topic || \"\",\n })) as string;\n\n return txHash.startsWith(\"0x\") ? txHash : `0x${txHash}`;\n };\n\n signTransaction = () => {\n throw new USwapError(\"wallet_walletconnect_method_not_supported\", { method: \"signTransaction\" });\n\n // const baseTx = {\n // from,\n // to,\n // value: BigNumber.from(value || 0).toHexString(),\n // data,\n // };\n\n // const txHash = (await this.walletconnect?.client.request({\n // chainId: chainToChainId(this.chain),\n // topic: this.walletconnect.session.topic,\n // request: {\n // method: DEFAULT_EIP155_METHODS.ETH_SIGN_TRANSACTION,\n // params: [baseTx],\n // },\n // })) as string;\n\n // return txHash.startsWith('0x') ? txHash : `0x${txHash}`;\n };\n\n // ANCHOR (@Towan) - Implement in future\n signTypedData = () => {\n throw new USwapError(\"wallet_walletconnect_method_not_supported\", { method: \"signTypedData\" });\n\n // const { toHexString } = await import('@tcswap/toolboxes/evm');\n\n // const baseTx = {\n // from,\n // to,\n // value: toHexString(value || 0n),\n // data,\n // };\n\n // const txHash = (await this.walletconnect?.client.request({\n // chainId: chainToChainId(this.chain),\n // topic: this.walletconnect.session.topic,\n // request: {\n // method: DEFAULT_EIP155_METHODS.ETH_SIGN_TYPED_DATA,\n // params: [baseTx],\n // },\n // })) as string;\n\n // return txHash.startsWith('0x') ? txHash : `0x${txHash}`;\n };\n\n sendTransaction = async ({ from, to, value, data }: TransactionRequest) => {\n const { toHexString } = await import(\"@tcswap/toolboxes/evm\");\n\n const baseTx = { data, from, to, value: toHexString(BigInt(value || 0)) };\n const response = await this.walletconnect?.client.request({\n chainId: chainToChainId(this.chain),\n request: { method: DEFAULT_EIP155_METHODS.ETH_SEND_TRANSACTION, params: [baseTx] },\n topic: this.walletconnect.session.topic,\n });\n\n return response as TransactionResponse;\n };\n\n connect = (provider: Provider | null) => {\n if (!provider) {\n throw new USwapError({\n errorKey: \"wallet_provider_not_found\",\n info: { chain: this.chain, wallet: WalletOption.WALLETCONNECT },\n });\n }\n\n return new WalletconnectSigner({ chain: this.chain, provider, walletconnect: this.walletconnect });\n };\n}\nexport const getEVMSigner = async ({ chain, walletconnect, provider }: WalletconnectEVMSignerParams) =>\n new WalletconnectSigner({ chain, provider, walletconnect });\n",
7
+ "/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport { Chain, type CosmosChain, type EVMChain, USwapConfig } from \"@tcswap/helpers\";\n\nimport {\n ARBITRUM_ONE_MAINNET_ID,\n AURORA_MAINNET_ID,\n AVALANCHE_MAINNET_ID,\n BASE_MAINNET_ID,\n BERACHAIN_MAINNET_ID,\n BSC_MAINNET_ID,\n COSMOS_HUB_MAINNET_ID,\n ETHEREUM_MAINNET_ID,\n KUJIRA_MAINNET_ID,\n MAYACHAIN_MAINNET_ID,\n MONAD_MAINNET_ID,\n NEAR_MAINNET_ID,\n NEAR_TESTNET_ID,\n OPTIMISM_MAINNET_ID,\n POLYGON_MAINNET_ID,\n THORCHAIN_MAINNET_ID,\n TRON_MAINNET_ID,\n} from \"./constants\";\n\nexport const getAddressByChain = (\n chain: EVMChain | Exclude<CosmosChain, typeof Chain.Noble> | typeof Chain.Near | typeof Chain.Tron,\n accounts: string[],\n) => {\n const account = accounts.find((account) => account.startsWith(chainToChainId(chain))) || \"\";\n const address = account?.split(\":\")?.[2];\n\n return address || \"\";\n};\n\nexport const chainToChainId = (chain: Chain) => {\n switch (chain) {\n case Chain.Avalanche:\n return AVALANCHE_MAINNET_ID;\n case Chain.Aurora:\n return AURORA_MAINNET_ID;\n case Chain.Base:\n return BASE_MAINNET_ID;\n case Chain.BinanceSmartChain:\n return BSC_MAINNET_ID;\n case Chain.Berachain:\n return BERACHAIN_MAINNET_ID;\n case Chain.Monad:\n return MONAD_MAINNET_ID;\n case Chain.Ethereum:\n return ETHEREUM_MAINNET_ID;\n case Chain.THORChain:\n return THORCHAIN_MAINNET_ID;\n case Chain.Arbitrum:\n return ARBITRUM_ONE_MAINNET_ID;\n case Chain.Optimism:\n return OPTIMISM_MAINNET_ID;\n case Chain.Polygon:\n return POLYGON_MAINNET_ID;\n case Chain.Maya:\n return MAYACHAIN_MAINNET_ID;\n case Chain.Cosmos:\n return COSMOS_HUB_MAINNET_ID;\n case Chain.Kujira:\n return KUJIRA_MAINNET_ID;\n case Chain.Near: {\n // Use testnet if stagenet is enabled\n const { isStagenet } = USwapConfig.get(\"envs\");\n return isStagenet ? NEAR_TESTNET_ID : NEAR_MAINNET_ID;\n }\n case Chain.Tron:\n return TRON_MAINNET_ID;\n default:\n return \"\";\n }\n};\n",
8
+ "/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport { USwapError } from \"@tcswap/helpers\";\nimport type { ProposalTypes } from \"@walletconnect/types\";\nimport {\n DEFAULT_COSMOS_METHODS,\n DEFAULT_EIP_155_EVENTS,\n DEFAULT_EIP155_METHODS,\n DEFAULT_NEAR_EVENTS,\n DEFAULT_NEAR_METHODS,\n DEFAULT_POLKADOT_EVENTS,\n DEFAULT_POLKADOT_METHODS,\n DEFAULT_SOLANA_EVENTS,\n DEFAULT_SOLANA_METHODS,\n DEFAULT_TRON_EVENTS,\n DEFAULT_TRON_METHODS,\n} from \"./constants\";\n\nexport const getNamespacesFromChains = (chains: string[]) => {\n const supportedNamespaces: string[] = [];\n for (const chainId of chains) {\n const [namespace] = chainId.split(\":\");\n if (namespace && !supportedNamespaces.includes(namespace)) {\n supportedNamespaces.push(namespace);\n }\n }\n\n return supportedNamespaces;\n};\n\nexport const getSupportedMethodsByNamespace = (namespace: string) => {\n switch (namespace) {\n case \"eip155\":\n return Object.values(DEFAULT_EIP155_METHODS);\n case \"cosmos\":\n return Object.values(DEFAULT_COSMOS_METHODS);\n case \"solana\":\n return Object.values(DEFAULT_SOLANA_METHODS);\n case \"polkadot\":\n return Object.values(DEFAULT_POLKADOT_METHODS);\n case \"near\":\n return Object.values(DEFAULT_NEAR_METHODS);\n case \"tron\":\n return Object.values(DEFAULT_TRON_METHODS);\n default:\n throw new USwapError({ errorKey: \"wallet_walletconnect_namespace_not_supported\", info: { namespace } });\n }\n};\n\nexport const getSupportedEventsByNamespace = (namespace: string) => {\n switch (namespace) {\n case \"eip155\":\n return Object.values(DEFAULT_EIP_155_EVENTS);\n case \"cosmos\":\n return [];\n case \"solana\":\n return Object.values(DEFAULT_SOLANA_EVENTS);\n case \"polkadot\":\n return Object.values(DEFAULT_POLKADOT_EVENTS);\n case \"near\":\n return Object.values(DEFAULT_NEAR_EVENTS);\n case \"tron\":\n return Object.values(DEFAULT_TRON_EVENTS);\n default:\n throw new USwapError({ errorKey: \"wallet_walletconnect_namespace_not_supported\", info: { namespace } });\n }\n};\n\nexport const getRequiredNamespaces = (chains: string[]): ProposalTypes.RequiredNamespaces => {\n const selectedNamespaces = getNamespacesFromChains(chains);\n\n return Object.fromEntries(\n selectedNamespaces.map((namespace) => [\n namespace,\n {\n chains: chains.filter((chain) => chain.startsWith(namespace)),\n events: getSupportedEventsByNamespace(namespace) as any[],\n methods: getSupportedMethodsByNamespace(namespace),\n },\n ]),\n );\n};\n"
9
+ ],
10
+ "mappings": "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",
11
+ "debugId": "B88D8B65AEE5069664756E2164756E21",
12
+ "names": []
13
+ }
@@ -0,0 +1,4 @@
1
+ import{A as Q5,B as V5,C as X5,D as Z5,E as k5,F as v5,a as m,b as C,c as h,d as l,e as u,f as s,g as I,h as t,i as c,j as e,k as o,l as i,m as a,n,o as L5,p as j5,q as O5,r as F5,s as M,t as $5,u as S,v as K5,w as x,x as VL,y as y5,z as z5}from"../chunk-w091cwmh.js";import{G as X}from"../chunk-7jtd4aht.js";import{Chain as O,filterSupportedChains as _5,getRPCUrl as S5,USwapConfig as T5,USwapError as k,WalletOption as A}from"@tcswap/helpers";import{createWallet as x5,getWalletSupportedChains as m5}from"@tcswap/wallet-core";import{USwapError as E,WalletOption as B5}from"@tcswap/helpers";import{AbstractSigner as H5}from"ethers";import{Chain as z,USwapConfig as r5}from"@tcswap/helpers";var W=(L,j)=>{return(j.find((Q)=>Q.startsWith(b(L)))||"")?.split(":")?.[2]||""},b=(L)=>{switch(L){case z.Avalanche:return l;case z.Aurora:return j5;case z.Base:return i;case z.BinanceSmartChain:return h;case z.Berachain:return O5;case z.Monad:return F5;case z.Ethereum:return C;case z.THORChain:return u;case z.Arbitrum:return c;case z.Optimism:return e;case z.Polygon:return o;case z.Maya:return t;case z.Cosmos:return s;case z.Kujira:return I;case z.Near:{let{isStagenet:j}=r5.get("envs");return j?n:a}case z.Tron:return L5;default:return""}};class T extends H5{address;chain;walletconnect;provider;constructor({chain:L,provider:j,walletconnect:F}){super(j);this.chain=L,this.walletconnect=F,this.provider=j,this.address=""}getAddress=async()=>{if(!this.walletconnect)throw new E("wallet_walletconnect_connection_not_established");if(!this.address)this.address=W(this.chain,this.walletconnect.accounts||[]);return this.address};signMessage=async(L)=>{let j=await this.walletconnect?.client.request({chainId:b(this.chain),request:{method:"eth_sign",params:[L]},topic:this.walletconnect.session.topic||""});return j.startsWith("0x")?j:`0x${j}`};signTransaction=()=>{throw new E("wallet_walletconnect_method_not_supported",{method:"signTransaction"})};signTypedData=()=>{throw new E("wallet_walletconnect_method_not_supported",{method:"signTypedData"})};sendTransaction=async({from:L,to:j,value:F,data:K})=>{let{toHexString:Q}=await import("@tcswap/toolboxes/evm"),f={data:K,from:L,to:j,value:Q(BigInt(F||0))};return await this.walletconnect?.client.request({chainId:b(this.chain),request:{method:"eth_sendTransaction",params:[f]},topic:this.walletconnect.session.topic})};connect=(L)=>{if(!L)throw new E({errorKey:"wallet_provider_not_found",info:{chain:this.chain,wallet:B5.WALLETCONNECT}});return new T({chain:this.chain,provider:L,walletconnect:this.walletconnect})}}var f5=async({chain:L,walletconnect:j,provider:F})=>new T({chain:L,provider:F,walletconnect:j});import{USwapError as G5}from"@tcswap/helpers";var R5=(L)=>{let j=[];for(let F of L){let[K]=F.split(":");if(K&&!j.includes(K))j.push(K)}return j},D5=(L)=>{switch(L){case"eip155":return Object.values(S);case"cosmos":return Object.values(x);case"solana":return Object.values(y5);case"polkadot":return Object.values(Q5);case"near":return Object.values(X5);case"tron":return Object.values(k5);default:throw new G5({errorKey:"wallet_walletconnect_namespace_not_supported",info:{namespace:L}})}},w5=(L)=>{switch(L){case"eip155":return Object.values(K5);case"cosmos":return[];case"solana":return Object.values(z5);case"polkadot":return Object.values(V5);case"near":return Object.values(Z5);case"tron":return Object.values(v5);default:throw new G5({errorKey:"wallet_walletconnect_namespace_not_supported",info:{namespace:L}})}},J5=(L)=>{let j=R5(L);return Object.fromEntries(j.map((F)=>[F,{chains:L.filter((K)=>K.startsWith(F)),events:w5(F),methods:D5(F)}]))};var M5=x5({connect:({addChain:L,supportedChains:j,walletType:F})=>async function(Q,f){let y=_5({chains:Q,supportedChains:j,walletType:F}),{walletConnectProjectId:v}=T5.get("apiKeys");if(!v)throw new k("wallet_walletconnect_project_id_not_specified");let V=await d5(y,v,f);if(!V)throw new k("wallet_walletconnect_connection_not_established");let{accounts:G}=V;return await Promise.all(y.map(async(Z)=>{let J=W(Z,G||[]),q=await A5({address:J,chain:Z,walletconnect:V});L({...q,address:J,chain:Z,disconnect:V.disconnect,walletType:A.WALLETCONNECT})})),!0},name:"connectWalletconnect",supportedChains:[O.Arbitrum,O.Aurora,O.Avalanche,O.Base,O.Berachain,O.BinanceSmartChain,O.Cosmos,O.Ethereum,O.Kujira,O.Maya,O.Monad,O.Near,O.Optimism,O.Polygon,O.THORChain,O.Tron,O.XLayer],walletType:A.WALLETCONNECT}),KL=m5(M5);async function A5({chain:L,walletconnect:j,address:F}){let K=j?.session;if(!K)throw new k("wallet_walletconnect_connection_not_established");switch(L){case O.Arbitrum:case O.Avalanche:case O.Base:case O.BinanceSmartChain:case O.Ethereum:case O.Monad:case O.Optimism:case O.Polygon:case O.XLayer:{let{getProvider:Q,getEvmToolbox:f}=await import("@tcswap/toolboxes/evm"),y=await Q(L),v=await f5({chain:L,provider:y,walletconnect:j});return await f(L,{provider:y,signer:v})}case O.THORChain:{let{SignMode:Q}=await import("cosmjs-types/cosmos/tx/signing/v1beta1/signing.js"),{TxRaw:f}=await import("cosmjs-types/cosmos/tx/v1beta1/tx.js"),y=await import("@cosmjs/proto-signing"),v=y.encodePubkey??y.default?.encodePubkey,V=y.makeAuthInfoBytes??y.default?.makeAuthInfoBytes,Z=(await import("@cosmjs/amino")).makeSignDoc??y.default?.makeSignDoc,{getCosmosToolbox:J,buildAminoMsg:q,buildEncodedTxBody:U,createStargateClient:r,fromBase64:B,getDefaultChainFee:H,parseAminoMessageForDirectSigning:R}=await import("@tcswap/toolboxes/cosmos"),P=await J(L),p=H(L),D=($)=>j?.client.request({chainId:u,request:{method:"cosmos_signAmino",params:{signDoc:$,signerAddress:F}},topic:K.topic});async function d({assetValue:$,memo:w,...b5}){let Y=await P.getAccount(F);if(!Y)throw new k({errorKey:"wallet_missing_params",info:{account:Y}});if(!Y.pubkey)throw new k({errorKey:"wallet_missing_params",info:{account:Y,pubkey:Y?.pubkey}});let{accountNumber:q5,sequence:g=0}=Y,N=[q({...b5,assetValue:$,memo:w,sender:F})],Y5=Z(N,p,$.chainId,w,q5?.toString(),g?.toString()||"0"),_=await D(Y5),P5=await U({chain:O.THORChain,memo:w||"",msgs:N.map(R)}),U5=v(Y.pubkey),p5=V([{pubkey:U5,sequence:g}],p.amount,Number.parseInt(p.gas,10),void 0,void 0,Q.SIGN_MODE_LEGACY_AMINO_JSON),u5=f.fromPartial({authInfoBytes:p5,bodyBytes:P5,signatures:[B(typeof _.signature==="string"?_.signature:_.signature.signature)]}),W5=f.encode(u5).finish(),E5=await S5(O.THORChain);return(await(await r(E5)).broadcastTx(W5)).transactionHash}return{...P,deposit:($)=>d($),transfer:($)=>d($)}}case O.Near:{let{getNearToolbox:Q}=await import("@tcswap/toolboxes/near"),{DEFAULT_NEAR_METHODS:f}=await import("../chunk-w4smbq6w.js");return await Q({signer:{getAddress(){return Promise.resolve(F)},getPublicKey(){return Promise.reject(new k("wallet_walletconnect_method_not_supported",{method:"getPublicKey"}))},signDelegateAction(V){return Promise.reject(new k("wallet_walletconnect_method_not_supported",{method:"signDelegateAction"}))},signNep413Message(V,G,Z,J,q){return Promise.reject(new k("wallet_walletconnect_method_not_supported",{method:"signNep413Message"}))},async signTransaction(V){if(!j)throw new k("wallet_walletconnect_connection_not_established");let G=await j.client.request({chainId:b(O.Near),request:{method:f.NEAR_SIGN_AND_SEND_TRANSACTION,params:{transaction:V}},topic:K.topic});return[new Uint8Array(32),G]}}})}case O.Tron:{let{createTronToolbox:Q}=await import("@tcswap/toolboxes/tron"),{DEFAULT_TRON_METHODS:f}=await import("../chunk-w4smbq6w.js");return await Q({signer:{getAddress(){return Promise.resolve(F)},async signTransaction(V){if(!j)throw new k("wallet_walletconnect_connection_not_established");return await j.client.request({chainId:b(O.Tron),request:{method:f.TRON_SIGN_TRANSACTION,params:{transaction:V}},topic:K.topic})}}})}default:throw new k({errorKey:"wallet_chain_not_supported",info:{chain:L,wallet:A.WALLETCONNECT}})}}async function d5(L,j,F){let K,Q,f,y;try{let v=J5(L.map(b)),{SignClient:V}=await import("@walletconnect/sign-client"),{WalletConnectModal:G}=await import("@walletconnect/modal"),Z=await V.init({logger:M,metadata:F?.metadata||$5,projectId:j,relayUrl:m,...F?.core}),J=new G({logger:M,projectId:j,relayUrl:m,...F?.core}),q=(await Z.session.getAll())[0];if(q)await Z.disconnect({reason:{code:0,message:"Resetting session"},topic:q.topic});let{uri:U,approval:r}=await Z.connect({requiredNamespaces:v});if(U){let H=function(R){let P=[];for(let[p,D]of Object.entries(R.namespaces))P.push(...D.accounts);return P};J.openModal({uri:U}),f=await r(),J.closeModal(),y=H(f)}let B=async()=>{f&&await Z.disconnect({reason:{code:0,message:"User disconnected"},topic:f.topic})};if(!f)throw new k("wallet_walletconnect_connection_not_established");return{accounts:y,client:Z,disconnect:B,session:f,signer:Q}}catch{}finally{if(K)K.closeModal()}return}export{M5 as walletconnectWallet,KL as WC_SUPPORTED_CHAINS,L5 as TRON_MAINNET_ID,u as THORCHAIN_MAINNET_ID,o as POLYGON_MAINNET_ID,e as OPTIMISM_MAINNET_ID,n as NEAR_TESTNET_ID,a as NEAR_MAINNET_ID,F5 as MONAD_MAINNET_ID,t as MAYACHAIN_MAINNET_ID,I as KUJIRA_MAINNET_ID,C as ETHEREUM_MAINNET_ID,k5 as DEFAULT_TRON_METHODS,v5 as DEFAULT_TRON_EVENTS,y5 as DEFAULT_SOLANA_METHODS,z5 as DEFAULT_SOLANA_EVENTS,m as DEFAULT_RELAY_URL,Q5 as DEFAULT_POLKADOT_METHODS,V5 as DEFAULT_POLKADOT_EVENTS,X5 as DEFAULT_NEAR_METHODS,Z5 as DEFAULT_NEAR_EVENTS,M as DEFAULT_LOGGER,K5 as DEFAULT_EIP_155_EVENTS,S as DEFAULT_EIP155_METHODS,x as DEFAULT_COSMOS_METHODS,VL as DEFAULT_COSMOS_EVENTS,$5 as DEFAULT_APP_METADATA,s as COSMOS_HUB_MAINNET_ID,h as BSC_MAINNET_ID,O5 as BERACHAIN_MAINNET_ID,i as BASE_MAINNET_ID,l as AVALANCHE_MAINNET_ID,j5 as AURORA_MAINNET_ID,c as ARBITRUM_ONE_MAINNET_ID};
2
+
3
+ //# debugId=9DCC6BA7C9BFEB1464756E2164756E21
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,13 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/walletconnect/index.ts", "../src/walletconnect/evmSigner.ts", "../src/walletconnect/helpers.ts", "../src/walletconnect/namespaces.ts"],
4
+ "sourcesContent": [
5
+ "/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport type { StdSignDoc } from \"@cosmjs/amino\";\nimport type { Transaction } from \"@near-js/transactions\";\nimport {\n Chain,\n filterSupportedChains,\n type GenericTransferParams,\n getRPCUrl,\n USwapConfig,\n USwapError,\n WalletOption,\n} from \"@tcswap/helpers\";\nimport type { ThorchainDepositParams } from \"@tcswap/toolboxes/cosmos\";\nimport type { NearSigner } from \"@tcswap/toolboxes/near\";\nimport type { TronSignedTransaction, TronSigner, TronTransaction } from \"@tcswap/toolboxes/tron\";\nimport { createWallet, getWalletSupportedChains } from \"@tcswap/wallet-core\";\nimport type { WalletConnectModal } from \"@walletconnect/modal\";\nimport type { SignClient } from \"@walletconnect/sign-client\";\nimport type { SessionTypes, SignClientTypes } from \"@walletconnect/types\";\nimport {\n DEFAULT_APP_METADATA,\n DEFAULT_COSMOS_METHODS,\n DEFAULT_LOGGER,\n DEFAULT_RELAY_URL,\n THORCHAIN_MAINNET_ID,\n} from \"./constants\";\nimport { getEVMSigner } from \"./evmSigner\";\nimport { chainToChainId, getAddressByChain } from \"./helpers\";\nimport { getRequiredNamespaces } from \"./namespaces\";\n\nexport * from \"./constants\";\nexport * from \"./types\";\n\nexport const walletconnectWallet = createWallet({\n connect: ({ addChain, supportedChains, walletType }) =>\n async function connectWalletconnect(chains: Chain[], walletconnectOptions?: SignClientTypes.Options) {\n const filteredChains = filterSupportedChains({ chains, supportedChains, walletType });\n const { walletConnectProjectId } = USwapConfig.get(\"apiKeys\");\n\n if (!walletConnectProjectId) {\n throw new USwapError(\"wallet_walletconnect_project_id_not_specified\");\n }\n\n const walletconnect = await getWalletconnect(filteredChains, walletConnectProjectId, walletconnectOptions);\n\n if (!walletconnect) {\n throw new USwapError(\"wallet_walletconnect_connection_not_established\");\n }\n\n const { accounts } = walletconnect;\n\n await Promise.all(\n filteredChains.map(async (chain) => {\n const address = getAddressByChain(chain, accounts || []);\n const toolbox = await getToolbox({ address, chain, walletconnect });\n\n addChain({\n ...toolbox,\n address,\n chain,\n disconnect: walletconnect.disconnect,\n walletType: WalletOption.WALLETCONNECT,\n });\n }),\n );\n\n return true;\n },\n name: \"connectWalletconnect\",\n supportedChains: [\n Chain.Arbitrum,\n Chain.Aurora,\n Chain.Avalanche,\n Chain.Base,\n Chain.Berachain,\n Chain.BinanceSmartChain,\n Chain.Cosmos,\n Chain.Ethereum,\n Chain.Kujira,\n Chain.Maya,\n Chain.Monad,\n Chain.Near,\n Chain.Optimism,\n Chain.Polygon,\n Chain.THORChain,\n Chain.Tron,\n Chain.XLayer,\n ],\n walletType: WalletOption.WALLETCONNECT,\n});\n\nexport const WC_SUPPORTED_CHAINS = getWalletSupportedChains(walletconnectWallet);\nexport type Walletconnect = Awaited<ReturnType<typeof getWalletconnect>>;\n\nasync function getToolbox<T extends (typeof WC_SUPPORTED_CHAINS)[number]>({\n chain,\n walletconnect,\n address,\n}: {\n walletconnect: Walletconnect;\n chain: T;\n address: string;\n}) {\n const session = walletconnect?.session;\n if (!session) {\n throw new USwapError(\"wallet_walletconnect_connection_not_established\");\n }\n\n switch (chain) {\n case Chain.Arbitrum:\n case Chain.Avalanche:\n case Chain.Base:\n case Chain.BinanceSmartChain:\n case Chain.Ethereum:\n case Chain.Monad:\n case Chain.Optimism:\n case Chain.Polygon:\n case Chain.XLayer: {\n const { getProvider, getEvmToolbox } = await import(\"@tcswap/toolboxes/evm\");\n\n const provider = await getProvider(chain);\n const signer = await getEVMSigner({ chain, provider, walletconnect });\n const toolbox = await getEvmToolbox(chain, { provider, signer });\n\n return toolbox;\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\n const importedSigning = await import(\"@cosmjs/proto-signing\");\n const encodePubkey = importedSigning.encodePubkey ?? importedSigning.default?.encodePubkey;\n const makeAuthInfoBytes = importedSigning.makeAuthInfoBytes ?? importedSigning.default?.makeAuthInfoBytes;\n const importedAmino = await import(\"@cosmjs/amino\");\n const makeSignDoc = importedAmino.makeSignDoc ?? importedSigning.default?.makeSignDoc;\n\n const {\n getCosmosToolbox,\n buildAminoMsg,\n buildEncodedTxBody,\n createStargateClient,\n fromBase64,\n getDefaultChainFee,\n parseAminoMessageForDirectSigning,\n } = await import(\"@tcswap/toolboxes/cosmos\");\n const toolbox = await getCosmosToolbox(chain);\n\n const fee = getDefaultChainFee(chain);\n\n const signRequest = (signDoc: StdSignDoc) =>\n walletconnect?.client.request({\n chainId: THORCHAIN_MAINNET_ID,\n request: { method: DEFAULT_COSMOS_METHODS.COSMOS_SIGN_AMINO, params: { signDoc, signerAddress: address } },\n topic: session.topic,\n });\n\n async function thorchainTransfer({ assetValue, memo, ...rest }: GenericTransferParams | ThorchainDepositParams) {\n const account = await toolbox.getAccount(address);\n if (!account) {\n throw new USwapError({ errorKey: \"wallet_missing_params\", info: { account } });\n }\n\n if (!account.pubkey) {\n throw new USwapError({ errorKey: \"wallet_missing_params\", info: { account, pubkey: account?.pubkey } });\n }\n\n const { accountNumber, sequence = 0 } = account;\n\n const msgs = [buildAminoMsg({ ...rest, assetValue, memo, sender: address })];\n\n const signDoc = makeSignDoc(\n msgs,\n fee,\n assetValue.chainId,\n memo,\n accountNumber?.toString(),\n sequence?.toString() || \"0\",\n );\n\n const signature: any = await signRequest(signDoc);\n\n const bodyBytes = await buildEncodedTxBody({\n chain: Chain.THORChain,\n memo: memo || \"\",\n msgs: msgs.map(parseAminoMessageForDirectSigning),\n });\n const pubkey = encodePubkey(account.pubkey);\n const authInfoBytes = makeAuthInfoBytes(\n [{ pubkey, sequence }],\n fee.amount,\n Number.parseInt(fee.gas, 10),\n undefined,\n undefined,\n SignMode.SIGN_MODE_LEGACY_AMINO_JSON,\n );\n\n const txRaw = TxRaw.fromPartial({\n authInfoBytes,\n bodyBytes,\n signatures: [\n fromBase64(typeof signature.signature === \"string\" ? signature.signature : signature.signature.signature),\n ],\n });\n const txBytes = TxRaw.encode(txRaw).finish();\n\n const rpcUrl = await getRPCUrl(Chain.THORChain);\n const broadcaster = await createStargateClient(rpcUrl);\n const result = await broadcaster.broadcastTx(txBytes);\n return result.transactionHash;\n }\n\n return {\n ...toolbox,\n deposit: (params: ThorchainDepositParams) => thorchainTransfer(params),\n transfer: (params: GenericTransferParams) => thorchainTransfer(params),\n };\n }\n\n case Chain.Near: {\n const { getNearToolbox } = await import(\"@tcswap/toolboxes/near\");\n const { DEFAULT_NEAR_METHODS } = await import(\"./constants\");\n\n // Create a NEAR signer that uses WalletConnect\n const signer = {\n getAddress() {\n return Promise.resolve(address);\n },\n getPublicKey() {\n // WalletConnect NEAR doesn't expose public key directly\n return Promise.reject(\n new USwapError(\"wallet_walletconnect_method_not_supported\", { method: \"getPublicKey\" }),\n );\n },\n\n signDelegateAction(_delegateAction: any) {\n return Promise.reject(\n new USwapError(\"wallet_walletconnect_method_not_supported\", { method: \"signDelegateAction\" }),\n );\n },\n\n signNep413Message(\n _message: string,\n _accountId: string,\n _recipient: string,\n _nonce: Uint8Array,\n _callbackUrl?: string,\n ) {\n // WalletConnect NEAR spec doesn't include NEP-413 message signing\n return Promise.reject(\n new USwapError(\"wallet_walletconnect_method_not_supported\", { method: \"signNep413Message\" }),\n );\n },\n\n async signTransaction(transaction: Transaction) {\n if (!walletconnect) {\n throw new USwapError(\"wallet_walletconnect_connection_not_established\");\n }\n // WalletConnect signs and sends in one operation\n const result = await walletconnect.client.request({\n chainId: chainToChainId(Chain.Near),\n request: { method: DEFAULT_NEAR_METHODS.NEAR_SIGN_AND_SEND_TRANSACTION, params: { transaction } },\n topic: session.topic,\n });\n // Return dummy hash and result\n return [new Uint8Array(32), result];\n },\n } as NearSigner;\n\n const toolbox = await getNearToolbox({ signer });\n return toolbox;\n }\n\n case Chain.Tron: {\n const { createTronToolbox } = await import(\"@tcswap/toolboxes/tron\");\n const { DEFAULT_TRON_METHODS } = await import(\"./constants\");\n\n // Create a Tron signer that uses WalletConnect\n const signer: TronSigner = {\n getAddress() {\n return Promise.resolve(address);\n },\n\n async signTransaction(transaction: TronTransaction) {\n if (!walletconnect) {\n throw new USwapError(\"wallet_walletconnect_connection_not_established\");\n }\n\n const signedTx = await walletconnect.client.request({\n chainId: chainToChainId(Chain.Tron),\n request: { method: DEFAULT_TRON_METHODS.TRON_SIGN_TRANSACTION, params: { transaction } },\n topic: session.topic,\n });\n\n return signedTx as TronSignedTransaction;\n },\n };\n\n const toolbox = await createTronToolbox({ signer });\n return toolbox;\n }\n\n default:\n throw new USwapError({\n errorKey: \"wallet_chain_not_supported\",\n info: { chain, wallet: WalletOption.WALLETCONNECT },\n });\n }\n}\n\nasync function getWalletconnect(\n chains: Chain[],\n walletConnectProjectId: string,\n walletconnectOptions?: SignClientTypes.Options,\n) {\n let modal: WalletConnectModal | undefined;\n let signer: typeof SignClient | undefined;\n let session: SessionTypes.Struct | undefined;\n let accounts: string[] | undefined;\n try {\n const requiredNamespaces = getRequiredNamespaces(chains.map(chainToChainId));\n\n const { SignClient } = await import(\"@walletconnect/sign-client\");\n const { WalletConnectModal } = await import(\"@walletconnect/modal\");\n\n const client = await SignClient.init({\n logger: DEFAULT_LOGGER,\n metadata: walletconnectOptions?.metadata || DEFAULT_APP_METADATA,\n projectId: walletConnectProjectId,\n relayUrl: DEFAULT_RELAY_URL,\n ...walletconnectOptions?.core,\n });\n\n const modal = new WalletConnectModal({\n logger: DEFAULT_LOGGER,\n projectId: walletConnectProjectId,\n relayUrl: DEFAULT_RELAY_URL,\n ...walletconnectOptions?.core,\n });\n\n const oldSession = (await client.session.getAll())[0];\n\n // disconnect old Session cause we can't handle using it with current ui\n if (oldSession) {\n await client.disconnect({ reason: { code: 0, message: \"Resetting session\" }, topic: oldSession.topic });\n }\n\n const { uri, approval } = await client.connect({\n // Optionally: pass a known prior pairing (e.g. from `client.core.pairing.getPairings()`) to skip the `uri` step.\n // pairingTopic: pairing?.topic,\n // Provide the namespaces and chains (e.g. `eip155` for EVM-based chains) we want to use in this session.\n requiredNamespaces,\n });\n\n if (uri) {\n modal.openModal({ uri });\n // Await session approval from the wallet.\n session = await approval();\n // Handle the returned session (e.g. update UI to \"connected\" state).\n // Close the QRCode modal in case it was open.\n modal.closeModal();\n\n function extractAccountsFromSession(session: SessionTypes.Struct) {\n const accounts: string[] = [];\n\n for (const [_namespace, data] of Object.entries(session.namespaces)) {\n accounts.push(...data.accounts);\n }\n\n return accounts;\n }\n\n accounts = extractAccountsFromSession(session);\n }\n\n const disconnect = async () => {\n session && (await client.disconnect({ reason: { code: 0, message: \"User disconnected\" }, topic: session.topic }));\n };\n\n if (!session) {\n throw new USwapError(\"wallet_walletconnect_connection_not_established\");\n }\n\n return { accounts, client, disconnect, session, signer };\n } catch {\n // Errors are handled by returning undefined\n } finally {\n if (modal) {\n modal.closeModal();\n }\n }\n return undefined;\n}\n",
6
+ "/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport { type EVMChain, USwapError, WalletOption } from \"@tcswap/helpers\";\nimport type { JsonRpcProvider, Provider, TransactionRequest, TransactionResponse } from \"ethers\";\nimport { AbstractSigner } from \"ethers\";\n\nimport { DEFAULT_EIP155_METHODS } from \"./constants\";\nimport { chainToChainId, getAddressByChain } from \"./helpers\";\nimport type { Walletconnect } from \"./index\";\n\ninterface WalletconnectEVMSignerParams {\n chain: EVMChain;\n walletconnect: Walletconnect;\n provider: Provider | JsonRpcProvider;\n}\n\nclass WalletconnectSigner extends AbstractSigner {\n address: string;\n\n private chain: EVMChain;\n private walletconnect: Walletconnect;\n readonly provider: Provider | JsonRpcProvider;\n\n constructor({ chain, provider, walletconnect }: WalletconnectEVMSignerParams) {\n super(provider);\n this.chain = chain;\n this.walletconnect = walletconnect;\n this.provider = provider;\n this.address = \"\";\n }\n\n // biome-ignore lint/suspicious/useAwait: fulfil implementation type\n getAddress = async () => {\n if (!this.walletconnect) {\n throw new USwapError(\"wallet_walletconnect_connection_not_established\");\n }\n if (!this.address) {\n this.address = getAddressByChain(this.chain, this.walletconnect.accounts || []);\n }\n\n return this.address;\n };\n\n signMessage = async (message: string) => {\n // this is probably broken\n const txHash = (await this.walletconnect?.client.request({\n chainId: chainToChainId(this.chain),\n request: { method: DEFAULT_EIP155_METHODS.ETH_SIGN, params: [message] },\n topic: this.walletconnect.session.topic || \"\",\n })) as string;\n\n return txHash.startsWith(\"0x\") ? txHash : `0x${txHash}`;\n };\n\n signTransaction = () => {\n throw new USwapError(\"wallet_walletconnect_method_not_supported\", { method: \"signTransaction\" });\n\n // const baseTx = {\n // from,\n // to,\n // value: BigNumber.from(value || 0).toHexString(),\n // data,\n // };\n\n // const txHash = (await this.walletconnect?.client.request({\n // chainId: chainToChainId(this.chain),\n // topic: this.walletconnect.session.topic,\n // request: {\n // method: DEFAULT_EIP155_METHODS.ETH_SIGN_TRANSACTION,\n // params: [baseTx],\n // },\n // })) as string;\n\n // return txHash.startsWith('0x') ? txHash : `0x${txHash}`;\n };\n\n // ANCHOR (@Towan) - Implement in future\n signTypedData = () => {\n throw new USwapError(\"wallet_walletconnect_method_not_supported\", { method: \"signTypedData\" });\n\n // const { toHexString } = await import('@tcswap/toolboxes/evm');\n\n // const baseTx = {\n // from,\n // to,\n // value: toHexString(value || 0n),\n // data,\n // };\n\n // const txHash = (await this.walletconnect?.client.request({\n // chainId: chainToChainId(this.chain),\n // topic: this.walletconnect.session.topic,\n // request: {\n // method: DEFAULT_EIP155_METHODS.ETH_SIGN_TYPED_DATA,\n // params: [baseTx],\n // },\n // })) as string;\n\n // return txHash.startsWith('0x') ? txHash : `0x${txHash}`;\n };\n\n sendTransaction = async ({ from, to, value, data }: TransactionRequest) => {\n const { toHexString } = await import(\"@tcswap/toolboxes/evm\");\n\n const baseTx = { data, from, to, value: toHexString(BigInt(value || 0)) };\n const response = await this.walletconnect?.client.request({\n chainId: chainToChainId(this.chain),\n request: { method: DEFAULT_EIP155_METHODS.ETH_SEND_TRANSACTION, params: [baseTx] },\n topic: this.walletconnect.session.topic,\n });\n\n return response as TransactionResponse;\n };\n\n connect = (provider: Provider | null) => {\n if (!provider) {\n throw new USwapError({\n errorKey: \"wallet_provider_not_found\",\n info: { chain: this.chain, wallet: WalletOption.WALLETCONNECT },\n });\n }\n\n return new WalletconnectSigner({ chain: this.chain, provider, walletconnect: this.walletconnect });\n };\n}\nexport const getEVMSigner = async ({ chain, walletconnect, provider }: WalletconnectEVMSignerParams) =>\n new WalletconnectSigner({ chain, provider, walletconnect });\n",
7
+ "/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport { Chain, type CosmosChain, type EVMChain, USwapConfig } from \"@tcswap/helpers\";\n\nimport {\n ARBITRUM_ONE_MAINNET_ID,\n AURORA_MAINNET_ID,\n AVALANCHE_MAINNET_ID,\n BASE_MAINNET_ID,\n BERACHAIN_MAINNET_ID,\n BSC_MAINNET_ID,\n COSMOS_HUB_MAINNET_ID,\n ETHEREUM_MAINNET_ID,\n KUJIRA_MAINNET_ID,\n MAYACHAIN_MAINNET_ID,\n MONAD_MAINNET_ID,\n NEAR_MAINNET_ID,\n NEAR_TESTNET_ID,\n OPTIMISM_MAINNET_ID,\n POLYGON_MAINNET_ID,\n THORCHAIN_MAINNET_ID,\n TRON_MAINNET_ID,\n} from \"./constants\";\n\nexport const getAddressByChain = (\n chain: EVMChain | Exclude<CosmosChain, typeof Chain.Noble> | typeof Chain.Near | typeof Chain.Tron,\n accounts: string[],\n) => {\n const account = accounts.find((account) => account.startsWith(chainToChainId(chain))) || \"\";\n const address = account?.split(\":\")?.[2];\n\n return address || \"\";\n};\n\nexport const chainToChainId = (chain: Chain) => {\n switch (chain) {\n case Chain.Avalanche:\n return AVALANCHE_MAINNET_ID;\n case Chain.Aurora:\n return AURORA_MAINNET_ID;\n case Chain.Base:\n return BASE_MAINNET_ID;\n case Chain.BinanceSmartChain:\n return BSC_MAINNET_ID;\n case Chain.Berachain:\n return BERACHAIN_MAINNET_ID;\n case Chain.Monad:\n return MONAD_MAINNET_ID;\n case Chain.Ethereum:\n return ETHEREUM_MAINNET_ID;\n case Chain.THORChain:\n return THORCHAIN_MAINNET_ID;\n case Chain.Arbitrum:\n return ARBITRUM_ONE_MAINNET_ID;\n case Chain.Optimism:\n return OPTIMISM_MAINNET_ID;\n case Chain.Polygon:\n return POLYGON_MAINNET_ID;\n case Chain.Maya:\n return MAYACHAIN_MAINNET_ID;\n case Chain.Cosmos:\n return COSMOS_HUB_MAINNET_ID;\n case Chain.Kujira:\n return KUJIRA_MAINNET_ID;\n case Chain.Near: {\n // Use testnet if stagenet is enabled\n const { isStagenet } = USwapConfig.get(\"envs\");\n return isStagenet ? NEAR_TESTNET_ID : NEAR_MAINNET_ID;\n }\n case Chain.Tron:\n return TRON_MAINNET_ID;\n default:\n return \"\";\n }\n};\n",
8
+ "/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport { USwapError } from \"@tcswap/helpers\";\nimport type { ProposalTypes } from \"@walletconnect/types\";\nimport {\n DEFAULT_COSMOS_METHODS,\n DEFAULT_EIP_155_EVENTS,\n DEFAULT_EIP155_METHODS,\n DEFAULT_NEAR_EVENTS,\n DEFAULT_NEAR_METHODS,\n DEFAULT_POLKADOT_EVENTS,\n DEFAULT_POLKADOT_METHODS,\n DEFAULT_SOLANA_EVENTS,\n DEFAULT_SOLANA_METHODS,\n DEFAULT_TRON_EVENTS,\n DEFAULT_TRON_METHODS,\n} from \"./constants\";\n\nexport const getNamespacesFromChains = (chains: string[]) => {\n const supportedNamespaces: string[] = [];\n for (const chainId of chains) {\n const [namespace] = chainId.split(\":\");\n if (namespace && !supportedNamespaces.includes(namespace)) {\n supportedNamespaces.push(namespace);\n }\n }\n\n return supportedNamespaces;\n};\n\nexport const getSupportedMethodsByNamespace = (namespace: string) => {\n switch (namespace) {\n case \"eip155\":\n return Object.values(DEFAULT_EIP155_METHODS);\n case \"cosmos\":\n return Object.values(DEFAULT_COSMOS_METHODS);\n case \"solana\":\n return Object.values(DEFAULT_SOLANA_METHODS);\n case \"polkadot\":\n return Object.values(DEFAULT_POLKADOT_METHODS);\n case \"near\":\n return Object.values(DEFAULT_NEAR_METHODS);\n case \"tron\":\n return Object.values(DEFAULT_TRON_METHODS);\n default:\n throw new USwapError({ errorKey: \"wallet_walletconnect_namespace_not_supported\", info: { namespace } });\n }\n};\n\nexport const getSupportedEventsByNamespace = (namespace: string) => {\n switch (namespace) {\n case \"eip155\":\n return Object.values(DEFAULT_EIP_155_EVENTS);\n case \"cosmos\":\n return [];\n case \"solana\":\n return Object.values(DEFAULT_SOLANA_EVENTS);\n case \"polkadot\":\n return Object.values(DEFAULT_POLKADOT_EVENTS);\n case \"near\":\n return Object.values(DEFAULT_NEAR_EVENTS);\n case \"tron\":\n return Object.values(DEFAULT_TRON_EVENTS);\n default:\n throw new USwapError({ errorKey: \"wallet_walletconnect_namespace_not_supported\", info: { namespace } });\n }\n};\n\nexport const getRequiredNamespaces = (chains: string[]): ProposalTypes.RequiredNamespaces => {\n const selectedNamespaces = getNamespacesFromChains(chains);\n\n return Object.fromEntries(\n selectedNamespaces.map((namespace) => [\n namespace,\n {\n chains: chains.filter((chain) => chain.startsWith(namespace)),\n events: getSupportedEventsByNamespace(namespace) as any[],\n methods: getSupportedMethodsByNamespace(namespace),\n },\n ]),\n );\n};\n"
9
+ ],
10
+ "mappings": "0TAMA,WACE,2BACA,gBAEA,kBACA,iBACA,kBACA,wBAKF,uBAAS,+BAAc,6BCdvB,qBAAwB,kBAAY,yBAEpC,yBAAS,gBCFT,gBAAS,iBAAwC,yBAsB1C,IAAM,EAAoB,CAC/B,EACA,IACG,CAIH,OAHgB,EAAS,KAAK,CAAC,IAAY,EAAQ,WAAW,EAAe,CAAK,CAAC,CAAC,GAAK,KAChE,MAAM,GAAG,IAAI,IAEpB,IAGP,EAAiB,CAAC,IAAiB,CAC9C,OAAQ,QACD,EAAM,UACT,OAAO,OACJ,EAAM,OACT,OAAO,QACJ,EAAM,KACT,OAAO,OACJ,EAAM,kBACT,OAAO,OACJ,EAAM,UACT,OAAO,QACJ,EAAM,MACT,OAAO,QACJ,EAAM,SACT,OAAO,OACJ,EAAM,UACT,OAAO,OACJ,EAAM,SACT,OAAO,OACJ,EAAM,SACT,OAAO,OACJ,EAAM,QACT,OAAO,OACJ,EAAM,KACT,OAAO,OACJ,EAAM,OACT,OAAO,OACJ,EAAM,OACT,OAAO,OACJ,EAAM,KAAM,CAEf,IAAQ,cAAe,GAAY,IAAI,MAAM,EAC7C,OAAO,EAAa,EAAkB,CACxC,MACK,EAAM,KACT,OAAO,WAEP,MAAO,KDxDb,MAAM,UAA4B,EAAe,CAC/C,QAEQ,MACA,cACC,SAET,WAAW,EAAG,QAAO,WAAU,iBAA+C,CAC5E,MAAM,CAAQ,EACd,KAAK,MAAQ,EACb,KAAK,cAAgB,EACrB,KAAK,SAAW,EAChB,KAAK,QAAU,GAIjB,WAAa,SAAY,CACvB,GAAI,CAAC,KAAK,cACR,MAAM,IAAI,EAAW,iDAAiD,EAExE,GAAI,CAAC,KAAK,QACR,KAAK,QAAU,EAAkB,KAAK,MAAO,KAAK,cAAc,UAAY,CAAC,CAAC,EAGhF,OAAO,KAAK,SAGd,YAAc,MAAO,IAAoB,CAEvC,IAAM,EAAU,MAAM,KAAK,eAAe,OAAO,QAAQ,CACvD,QAAS,EAAe,KAAK,KAAK,EAClC,QAAS,CAAE,kBAAyC,OAAQ,CAAC,CAAO,CAAE,EACtE,MAAO,KAAK,cAAc,QAAQ,OAAS,EAC7C,CAAC,EAED,OAAO,EAAO,WAAW,IAAI,EAAI,EAAS,KAAK,KAGjD,gBAAkB,IAAM,CACtB,MAAM,IAAI,EAAW,4CAA6C,CAAE,OAAQ,iBAAkB,CAAC,GAsBjG,cAAgB,IAAM,CACpB,MAAM,IAAI,EAAW,4CAA6C,CAAE,OAAQ,eAAgB,CAAC,GAuB/F,gBAAkB,OAAS,OAAM,KAAI,QAAO,UAA+B,CACzE,IAAQ,eAAgB,KAAa,iCAE/B,EAAS,CAAE,OAAM,OAAM,KAAI,MAAO,EAAY,OAAO,GAAS,CAAC,CAAC,CAAE,EAOxE,OANiB,MAAM,KAAK,eAAe,OAAO,QAAQ,CACxD,QAAS,EAAe,KAAK,KAAK,EAClC,QAAS,CAAE,6BAAqD,OAAQ,CAAC,CAAM,CAAE,EACjF,MAAO,KAAK,cAAc,QAAQ,KACpC,CAAC,GAKH,QAAU,CAAC,IAA8B,CACvC,GAAI,CAAC,EACH,MAAM,IAAI,EAAW,CACnB,SAAU,4BACV,KAAM,CAAE,MAAO,KAAK,MAAO,OAAQ,GAAa,aAAc,CAChE,CAAC,EAGH,OAAO,IAAI,EAAoB,CAAE,MAAO,KAAK,MAAO,WAAU,cAAe,KAAK,aAAc,CAAC,EAErG,CACO,IAAM,GAAe,OAAS,QAAO,gBAAe,cACzD,IAAI,EAAoB,CAAE,QAAO,WAAU,eAAc,CAAC,EE5H5D,qBAAS,yBAgBF,IAAM,GAA0B,CAAC,IAAqB,CAC3D,IAAM,EAAgC,CAAC,EACvC,QAAW,KAAW,EAAQ,CAC5B,IAAO,GAAa,EAAQ,MAAM,GAAG,EACrC,GAAI,GAAa,CAAC,EAAoB,SAAS,CAAS,EACtD,EAAoB,KAAK,CAAS,EAItC,OAAO,GAGI,GAAiC,CAAC,IAAsB,CACnE,OAAQ,OACD,SACH,OAAO,OAAO,OAAO,CAAsB,MACxC,SACH,OAAO,OAAO,OAAO,CAAsB,MACxC,SACH,OAAO,OAAO,OAAO,EAAsB,MACxC,WACH,OAAO,OAAO,OAAO,EAAwB,MAC1C,OACH,OAAO,OAAO,OAAO,EAAoB,MACtC,OACH,OAAO,OAAO,OAAO,EAAoB,UAEzC,MAAM,IAAI,GAAW,CAAE,SAAU,+CAAgD,KAAM,CAAE,WAAU,CAAE,CAAC,IAI/F,GAAgC,CAAC,IAAsB,CAClE,OAAQ,OACD,SACH,OAAO,OAAO,OAAO,EAAsB,MACxC,SACH,MAAO,CAAC,MACL,SACH,OAAO,OAAO,OAAO,EAAqB,MACvC,WACH,OAAO,OAAO,OAAO,EAAuB,MACzC,OACH,OAAO,OAAO,OAAO,EAAmB,MACrC,OACH,OAAO,OAAO,OAAO,EAAmB,UAExC,MAAM,IAAI,GAAW,CAAE,SAAU,+CAAgD,KAAM,CAAE,WAAU,CAAE,CAAC,IAI/F,GAAwB,CAAC,IAAuD,CAC3F,IAAM,EAAqB,GAAwB,CAAM,EAEzD,OAAO,OAAO,YACZ,EAAmB,IAAI,CAAC,IAAc,CACpC,EACA,CACE,OAAQ,EAAO,OAAO,CAAC,IAAU,EAAM,WAAW,CAAS,CAAC,EAC5D,OAAQ,GAA8B,CAAS,EAC/C,QAAS,GAA+B,CAAS,CACnD,CACF,CAAC,CACH,GH9CK,IAAM,GAAsB,GAAa,CAC9C,QAAS,EAAG,WAAU,kBAAiB,gBACrC,cAAmC,CAAC,EAAiB,EAAgD,CACnG,IAAM,EAAiB,GAAsB,CAAE,SAAQ,kBAAiB,YAAW,CAAC,GAC5E,0BAA2B,GAAY,IAAI,SAAS,EAE5D,GAAI,CAAC,EACH,MAAM,IAAI,EAAW,+CAA+C,EAGtE,IAAM,EAAgB,MAAM,GAAiB,EAAgB,EAAwB,CAAoB,EAEzG,GAAI,CAAC,EACH,MAAM,IAAI,EAAW,iDAAiD,EAGxE,IAAQ,YAAa,EAiBrB,OAfA,MAAM,QAAQ,IACZ,EAAe,IAAI,MAAO,IAAU,CAClC,IAAM,EAAU,EAAkB,EAAO,GAAY,CAAC,CAAC,EACjD,EAAU,MAAM,GAAW,CAAE,UAAS,QAAO,eAAc,CAAC,EAElE,EAAS,IACJ,EACH,UACA,QACA,WAAY,EAAc,WAC1B,WAAY,EAAa,aAC3B,CAAC,EACF,CACH,EAEO,IAEX,KAAM,uBACN,gBAAiB,CACf,EAAM,SACN,EAAM,OACN,EAAM,UACN,EAAM,KACN,EAAM,UACN,EAAM,kBACN,EAAM,OACN,EAAM,SACN,EAAM,OACN,EAAM,KACN,EAAM,MACN,EAAM,KACN,EAAM,SACN,EAAM,QACN,EAAM,UACN,EAAM,KACN,EAAM,MACR,EACA,WAAY,EAAa,aAC3B,CAAC,EAEY,GAAsB,GAAyB,EAAmB,EAG/E,eAAe,EAA0D,EACvE,QACA,gBACA,WAKC,CACD,IAAM,EAAU,GAAe,QAC/B,GAAI,CAAC,EACH,MAAM,IAAI,EAAW,iDAAiD,EAGxE,OAAQ,QACD,EAAM,cACN,EAAM,eACN,EAAM,UACN,EAAM,uBACN,EAAM,cACN,EAAM,WACN,EAAM,cACN,EAAM,aACN,EAAM,OAAQ,CACjB,IAAQ,cAAa,iBAAkB,KAAa,iCAE9C,EAAW,MAAM,EAAY,CAAK,EAClC,EAAS,MAAM,GAAa,CAAE,QAAO,WAAU,eAAc,CAAC,EAGpE,OAFgB,MAAM,EAAc,EAAO,CAAE,WAAU,QAAO,CAAC,CAGjE,MAEK,EAAM,UAAW,CACpB,IAAQ,YAAa,KAAa,8DAC1B,SAAU,KAAa,gDAEzB,EAAkB,KAAa,iCAC/B,EAAe,EAAgB,cAAgB,EAAgB,SAAS,aACxE,EAAoB,EAAgB,mBAAqB,EAAgB,SAAS,kBAElF,GADgB,KAAa,0BACD,aAAe,EAAgB,SAAS,aAGxE,mBACA,gBACA,qBACA,uBACA,aACA,qBACA,qCACE,KAAa,oCACX,EAAU,MAAM,EAAiB,CAAK,EAEtC,EAAM,EAAmB,CAAK,EAE9B,EAAc,CAAC,IACnB,GAAe,OAAO,QAAQ,CAC5B,QAAS,EACT,QAAS,CAAE,0BAAkD,OAAQ,CAAE,UAAS,cAAe,CAAQ,CAAE,EACzG,MAAO,EAAQ,KACjB,CAAC,EAEH,eAAe,CAAiB,EAAG,aAAY,UAAS,IAAwD,CAC9G,IAAM,EAAU,MAAM,EAAQ,WAAW,CAAO,EAChD,GAAI,CAAC,EACH,MAAM,IAAI,EAAW,CAAE,SAAU,wBAAyB,KAAM,CAAE,SAAQ,CAAE,CAAC,EAG/E,GAAI,CAAC,EAAQ,OACX,MAAM,IAAI,EAAW,CAAE,SAAU,wBAAyB,KAAM,CAAE,UAAS,OAAQ,GAAS,MAAO,CAAE,CAAC,EAGxG,IAAQ,iBAAe,WAAW,GAAM,EAElC,EAAO,CAAC,EAAc,IAAK,GAAM,aAAY,OAAM,OAAQ,CAAQ,CAAC,CAAC,EAErE,GAAU,EACd,EACA,EACA,EAAW,QACX,EACA,IAAe,SAAS,EACxB,GAAU,SAAS,GAAK,GAC1B,EAEM,EAAiB,MAAM,EAAY,EAAO,EAE1C,GAAY,MAAM,EAAmB,CACzC,MAAO,EAAM,UACb,KAAM,GAAQ,GACd,KAAM,EAAK,IAAI,CAAiC,CAClD,CAAC,EACK,GAAS,EAAa,EAAQ,MAAM,EACpC,GAAgB,EACpB,CAAC,CAAE,UAAQ,UAAS,CAAC,EACrB,EAAI,OACJ,OAAO,SAAS,EAAI,IAAK,EAAE,EAC3B,OACA,OACA,EAAS,2BACX,EAEM,GAAQ,EAAM,YAAY,CAC9B,iBACA,aACA,WAAY,CACV,EAAW,OAAO,EAAU,YAAc,SAAW,EAAU,UAAY,EAAU,UAAU,SAAS,CAC1G,CACF,CAAC,EACK,GAAU,EAAM,OAAO,EAAK,EAAE,OAAO,EAErC,GAAS,MAAM,GAAU,EAAM,SAAS,EAG9C,OADe,MADK,MAAM,EAAqB,EAAM,GACpB,YAAY,EAAO,GACtC,gBAGhB,MAAO,IACF,EACH,QAAS,CAAC,IAAmC,EAAkB,CAAM,EACrE,SAAU,CAAC,IAAkC,EAAkB,CAAM,CACvE,CACF,MAEK,EAAM,KAAM,CACf,IAAQ,kBAAmB,KAAa,mCAChC,wBAAyB,KAAa,gCAiD9C,OADgB,MAAM,EAAe,CAAE,OA7CxB,CACb,UAAU,EAAG,CACX,OAAO,QAAQ,QAAQ,CAAO,GAEhC,YAAY,EAAG,CAEb,OAAO,QAAQ,OACb,IAAI,EAAW,4CAA6C,CAAE,OAAQ,cAAe,CAAC,CACxF,GAGF,kBAAkB,CAAC,EAAsB,CACvC,OAAO,QAAQ,OACb,IAAI,EAAW,4CAA6C,CAAE,OAAQ,oBAAqB,CAAC,CAC9F,GAGF,iBAAiB,CACf,EACA,EACA,EACA,EACA,EACA,CAEA,OAAO,QAAQ,OACb,IAAI,EAAW,4CAA6C,CAAE,OAAQ,mBAAoB,CAAC,CAC7F,QAGI,gBAAe,CAAC,EAA0B,CAC9C,GAAI,CAAC,EACH,MAAM,IAAI,EAAW,iDAAiD,EAGxE,IAAM,EAAS,MAAM,EAAc,OAAO,QAAQ,CAChD,QAAS,EAAe,EAAM,IAAI,EAClC,QAAS,CAAE,OAAQ,EAAqB,+BAAgC,OAAQ,CAAE,aAAY,CAAE,EAChG,MAAO,EAAQ,KACjB,CAAC,EAED,MAAO,CAAC,IAAI,WAAW,EAAE,EAAG,CAAM,EAEtC,CAE8C,CAAC,CAEjD,MAEK,EAAM,KAAM,CACf,IAAQ,qBAAsB,KAAa,mCACnC,wBAAyB,KAAa,gCAwB9C,OADgB,MAAM,EAAkB,CAAE,OApBf,CACzB,UAAU,EAAG,CACX,OAAO,QAAQ,QAAQ,CAAO,QAG1B,gBAAe,CAAC,EAA8B,CAClD,GAAI,CAAC,EACH,MAAM,IAAI,EAAW,iDAAiD,EASxE,OANiB,MAAM,EAAc,OAAO,QAAQ,CAClD,QAAS,EAAe,EAAM,IAAI,EAClC,QAAS,CAAE,OAAQ,EAAqB,sBAAuB,OAAQ,CAAE,aAAY,CAAE,EACvF,MAAO,EAAQ,KACjB,CAAC,EAIL,CAEiD,CAAC,CAEpD,SAGE,MAAM,IAAI,EAAW,CACnB,SAAU,6BACV,KAAM,CAAE,QAAO,OAAQ,EAAa,aAAc,CACpD,CAAC,GAIP,eAAe,EAAgB,CAC7B,EACA,EACA,EACA,CACA,IAAI,EACA,EACA,EACA,EACJ,GAAI,CACF,IAAM,EAAqB,GAAsB,EAAO,IAAI,CAAc,CAAC,GAEnE,cAAe,KAAa,uCAC5B,sBAAuB,KAAa,gCAEtC,EAAS,MAAM,EAAW,KAAK,CACnC,OAAQ,EACR,SAAU,GAAsB,UAAY,GAC5C,UAAW,EACX,SAAU,KACP,GAAsB,IAC3B,CAAC,EAEK,EAAQ,IAAI,EAAmB,CACnC,OAAQ,EACR,UAAW,EACX,SAAU,KACP,GAAsB,IAC3B,CAAC,EAEK,GAAc,MAAM,EAAO,QAAQ,OAAO,GAAG,GAGnD,GAAI,EACF,MAAM,EAAO,WAAW,CAAE,OAAQ,CAAE,KAAM,EAAG,QAAS,mBAAoB,EAAG,MAAO,EAAW,KAAM,CAAC,EAGxG,IAAQ,MAAK,YAAa,MAAM,EAAO,QAAQ,CAI7C,oBACF,CAAC,EAED,GAAI,EAAK,CAQP,IAAS,EAAT,QAAmC,CAAC,EAA8B,CAChE,IAAM,EAAqB,CAAC,EAE5B,QAAY,EAAY,KAAS,OAAO,QAAQ,EAAQ,UAAU,EAChE,EAAS,KAAK,GAAG,EAAK,QAAQ,EAGhC,OAAO,GAdT,EAAM,UAAU,CAAE,KAAI,CAAC,EAEvB,EAAU,MAAM,EAAS,EAGzB,EAAM,WAAW,EAYjB,EAAW,EAA2B,CAAO,EAG/C,IAAM,EAAa,SAAY,CAC7B,GAAY,MAAM,EAAO,WAAW,CAAE,OAAQ,CAAE,KAAM,EAAG,QAAS,mBAAoB,EAAG,MAAO,EAAQ,KAAM,CAAC,GAGjH,GAAI,CAAC,EACH,MAAM,IAAI,EAAW,iDAAiD,EAGxE,MAAO,CAAE,WAAU,SAAQ,aAAY,UAAS,QAAO,EACvD,KAAM,SAEN,CACA,GAAI,EACF,EAAM,WAAW,EAGrB",
11
+ "debugId": "9DCC6BA7C9BFEB1464756E2164756E21",
12
+ "names": []
13
+ }
@@ -0,0 +1,4 @@
1
+ var L={};G(L,{xamanWallet:()=>T,XAMAN_SUPPORTED_CHAINS:()=>J});module.exports=F(L);var y=require("@tcswap/helpers"),P=require("@tcswap/wallet-core"),k=require("xumm");var M=require("@tcswap/helpers");var C=require("@tcswap/helpers"),h=async(i)=>{if(!i)throw new C.USwapError("wallet_xaman_not_configured");try{let t=await(await i.user)?.account;if(t)return t;throw new C.USwapError("wallet_xaman_auth_failed")}catch(n){throw console.error("Xaman wallet connection failed:",n),new C.USwapError("wallet_xaman_connection_failed")}},K=async(i,n)=>{try{if(!(n.destination&&n.amount&&n.from))throw new C.USwapError("wallet_xaman_connection_failed");let t=(Number.parseFloat(n.amount)*1e6).toString(),N={Account:n.from,Amount:t,Destination:n.destination,TransactionType:"Payment",...n.destinationTag!==void 0&&{DestinationTag:n.destinationTag},...n.memo&&{Memos:[{Memo:{MemoData:Buffer.from(n.memo,"utf8").toString("hex").toUpperCase()}}]}},g=await i.payload?.createAndSubscribe(N,(f)=>{if("signed"in f.data)return f.data;return});if(!g)throw new C.USwapError("wallet_xaman_transaction_failed");let{created:o}=g;if(i.runtime?.xapp)i.xapp?.openSignRequest(o);else if(typeof window<"u"){let f=o.pushed&&o.next?.no_push_msg_received?o.next.no_push_msg_received:o.next?.always;if(f)window.open(f)}let X=await g.resolved;if(!X||typeof X!=="object"||!("signed"in X)||!X.signed)throw new C.USwapError("wallet_xaman_transaction_failed");let W=await i.payload?.get(X.payload_uuidv4);if(!W)throw new C.USwapError("wallet_xaman_monitoring_failed");let _=W.response?.txid||"",A=W.response?.account||"";if(!_)throw new C.USwapError("wallet_xaman_transaction_failed");return{deepLink:o.next?.always||"",payloadId:o.uuid||"",qrCode:o.refs?.qr_png||"",result:{account:A,reason:void 0,success:!0,transactionId:_},websocketUrl:o.refs?.websocket_status||""}}catch(t){if(console.error("Xaman payment creation and subscription failed:",t),t instanceof C.USwapError)throw t;throw new C.USwapError("wallet_xaman_transaction_failed")}};async function z({xumm:i,chain:n,address:t}){switch(n){case M.Chain.Ripple:{let{getRippleToolbox:N}=await import("@tcswap/toolboxes/ripple"),g=await N({}),o=async(X)=>{let{recipient:W,assetValue:_,memo:A}=X,f=await K(i,{amount:_.getValue("string"),destination:W,from:t,memo:A});if(!(f.result.success&&f.result.transactionId))throw new M.USwapError("wallet_xaman_transaction_failed");return f.result.transactionId};return{...g,address:t,createAndSubscribePayment:K,disconnect:i.logout,getAddress:()=>t,transfer:o}}default:throw new M.USwapError("wallet_chain_not_supported",{chain:n,wallet:"Xaman"})}}var T=P.createWallet({connect:({addChain:i,supportedChains:n,walletType:t})=>function(g,o){let X=y.filterSupportedChains({chains:g,supportedChains:n,walletType:t}),{xaman:W}=y.USwapConfig.get("apiKeys"),_=o?.apiKey||W;if(!_)throw new y.USwapError("wallet_missing_api_key",{wallet:"Xaman"});let A=new k.Xumm(_);return new Promise((f,H)=>{A.on("success",async()=>{try{let l=await h(A),q=X.map(async(O)=>{let B=await z({address:l,chain:O,xumm:A});i({...B,address:l,balance:[],chain:O,disconnect:A.logout,walletType:y.WalletOption.XAMAN})});await Promise.all(q),f(!0)}catch(l){H(l)}}),A.on("error",(l)=>{H(l)}),A.authorize()})},name:"connectXaman",supportedChains:[y.Chain.Ripple],walletType:y.WalletOption.XAMAN}),J=P.getWalletSupportedChains(T);
2
+
3
+ //# debugId=7E798D9B0C8F6B2864756E2164756E21
4
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1,12 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/xaman/index.ts", "../src/xaman/helpers.ts", "../src/xaman/walletMethods.ts"],
4
+ "sourcesContent": [
5
+ "/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport { Chain, filterSupportedChains, USwapConfig, USwapError, WalletOption } from \"@tcswap/helpers\";\nimport { createWallet, getWalletSupportedChains } from \"@tcswap/wallet-core\";\nimport { Xumm } from \"xumm\";\nimport { getWalletForChain } from \"./helpers\";\nimport type { XamanConfig } from \"./types\";\nimport { connectXamanWallet as connectXamanWalletMethod } from \"./walletMethods\";\n\nexport const xamanWallet = createWallet({\n connect: ({ addChain, supportedChains: walletSupportedChains, walletType }) =>\n function connectXamanWallet(chains: Chain[], xamanConfigOverwrite?: XamanConfig) {\n const supportedChains = filterSupportedChains({ chains, supportedChains: walletSupportedChains, walletType });\n\n const { xaman: xamanApiKey } = USwapConfig.get(\"apiKeys\");\n const apiKey = xamanConfigOverwrite?.apiKey || xamanApiKey;\n\n if (!apiKey) {\n throw new USwapError(\"wallet_missing_api_key\", { wallet: \"Xaman\" });\n }\n\n const xumm = new Xumm(apiKey);\n\n return new Promise<boolean>((resolve, reject) => {\n xumm.on(\"success\", async () => {\n try {\n const address = await connectXamanWalletMethod(xumm);\n\n const promises = supportedChains.map(async (chain) => {\n const walletMethods = await getWalletForChain({ address, chain, xumm });\n\n addChain({\n ...walletMethods,\n address,\n balance: [],\n chain,\n disconnect: xumm.logout,\n walletType: WalletOption.XAMAN,\n });\n });\n\n await Promise.all(promises);\n resolve(true);\n } catch (error) {\n reject(error);\n }\n });\n\n xumm.on(\"error\", (error) => {\n reject(error);\n });\n\n xumm.authorize();\n });\n },\n name: \"connectXaman\",\n supportedChains: [Chain.Ripple],\n walletType: WalletOption.XAMAN,\n});\n\nexport const XAMAN_SUPPORTED_CHAINS = getWalletSupportedChains(xamanWallet);\nexport type XamanSupportedChain = (typeof XAMAN_SUPPORTED_CHAINS)[number];\n\nexport type { XamanConfig } from \"./types\";\n",
6
+ "/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport { type AssetValue, Chain, USwapError } from \"@tcswap/helpers\";\nimport type { Xumm } from \"xumm\";\nimport { sendXamanTransaction } from \"./walletMethods\";\n\ninterface GetWalletForChainParams {\n chain: Chain;\n address: string;\n xumm: Xumm;\n}\n\nexport async function getWalletForChain({ xumm, chain, address }: GetWalletForChainParams) {\n switch (chain) {\n case Chain.Ripple: {\n const { getRippleToolbox } = await import(\"@tcswap/toolboxes/ripple\");\n\n // const api = apis?.[chain]; // Unused for now\n const toolbox = await getRippleToolbox({});\n\n // Override transfer method to use Xaman transaction flow\n const transfer = async (params: { assetValue: AssetValue; recipient: string; memo?: string }) => {\n const { recipient, assetValue, memo } = params;\n\n // Create and subscribe to payment via Xaman\n const paymentResult = await sendXamanTransaction(xumm, {\n amount: assetValue.getValue(\"string\"),\n destination: recipient,\n from: address,\n memo: memo,\n });\n\n // If not successful or no transaction ID, throw error\n if (!(paymentResult.result.success && paymentResult.result.transactionId)) {\n throw new USwapError(\"wallet_xaman_transaction_failed\");\n }\n\n // Return the transaction ID string\n return paymentResult.result.transactionId;\n };\n\n return {\n ...toolbox,\n address,\n // Expose Xaman-specific methods\n createAndSubscribePayment: sendXamanTransaction,\n disconnect: xumm.logout,\n getAddress: () => address,\n transfer,\n };\n }\n\n default:\n throw new USwapError(\"wallet_chain_not_supported\", { chain, wallet: \"Xaman\" });\n }\n}\n",
7
+ "/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport { USwapError } from \"@tcswap/helpers\";\nimport type { Xumm } from \"xumm\";\nimport type { XamanPaymentParams } from \"./types\";\n\nexport const connectXamanWallet = async (xumm: Xumm) => {\n if (!xumm) {\n throw new USwapError(\"wallet_xaman_not_configured\");\n }\n\n try {\n const user = await xumm.user;\n const account = await user?.account;\n\n if (account) {\n return account;\n }\n\n throw new USwapError(\"wallet_xaman_auth_failed\");\n } catch (error) {\n console.error(\"Xaman wallet connection failed:\", error);\n throw new USwapError(\"wallet_xaman_connection_failed\");\n }\n};\n\nexport const sendXamanTransaction = async (xumm: Xumm, params: XamanPaymentParams) => {\n try {\n // Validate required parameters\n if (!(params.destination && params.amount && params.from)) {\n throw new USwapError(\"wallet_xaman_connection_failed\");\n }\n\n // Convert XRP to drops (1 XRP = 1,000,000 drops)\n const amountInDrops = (Number.parseFloat(params.amount) * 1000000).toString();\n\n // Create transaction object\n const transaction = {\n Account: params.from,\n Amount: amountInDrops,\n Destination: params.destination,\n TransactionType: \"Payment\" as const,\n ...(params.destinationTag !== undefined && { DestinationTag: params.destinationTag }),\n ...(params.memo && {\n Memos: [{ Memo: { MemoData: Buffer.from(params.memo, \"utf8\").toString(\"hex\").toUpperCase() } }],\n }),\n };\n\n // Create and subscribe to payload following the official example\n const subscription = await xumm.payload?.createAndSubscribe(transaction, (event) => {\n if (\"signed\" in event.data) {\n // Return event.data to close subscription and resolve promise\n return event.data; // { signed: true|false, payload_uuidv4: '...' }\n }\n return undefined;\n });\n\n if (!subscription) {\n throw new USwapError(\"wallet_xaman_transaction_failed\");\n }\n\n const { created } = subscription;\n\n // Handle payload presentation based on runtime environment\n if (xumm.runtime?.xapp) {\n xumm.xapp?.openSignRequest(created);\n } else if (typeof window !== \"undefined\") {\n const url =\n created.pushed && created.next?.no_push_msg_received ? created.next.no_push_msg_received : created.next?.always;\n if (url) window.open(url);\n }\n\n // Wait until the user signed/rejected\n const resolved = await subscription.resolved;\n\n if (!resolved || typeof resolved !== \"object\" || !(\"signed\" in resolved) || !resolved.signed) {\n throw new USwapError(\"wallet_xaman_transaction_failed\");\n }\n\n // Fetch the full payload result using the UUID from resolved data\n const payloadDetails = await xumm.payload?.get((resolved as any).payload_uuidv4);\n\n if (!payloadDetails) {\n throw new USwapError(\"wallet_xaman_monitoring_failed\");\n }\n\n // Extract transaction ID from response\n const transactionId = payloadDetails.response?.txid || \"\";\n const account = payloadDetails.response?.account || \"\";\n\n if (!transactionId) {\n throw new USwapError(\"wallet_xaman_transaction_failed\");\n }\n\n // Return comprehensive result\n return {\n deepLink: created.next?.always || \"\",\n // Initial payload info for QR codes, deep links, etc.\n payloadId: created.uuid || \"\",\n qrCode: created.refs?.qr_png || \"\",\n // Final transaction result - SUCCESS with tx hash\n result: { account, reason: undefined, success: true, transactionId },\n websocketUrl: created.refs?.websocket_status || \"\",\n };\n } catch (error) {\n console.error(\"Xaman payment creation and subscription failed:\", error);\n if (error instanceof USwapError) {\n throw error;\n }\n throw new USwapError(\"wallet_xaman_transaction_failed\");\n }\n};\n"
8
+ ],
9
+ "mappings": "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",
10
+ "debugId": "7E798D9B0C8F6B2864756E2164756E21",
11
+ "names": []
12
+ }
@@ -0,0 +1,4 @@
1
+ import{G as T}from"../chunk-7jtd4aht.js";import{Chain as B,filterSupportedChains as F,USwapConfig as G,USwapError as J,WalletOption as h}from"@tcswap/helpers";import{createWallet as L,getWalletSupportedChains as Q}from"@tcswap/wallet-core";import{Xumm as Y}from"xumm";import{Chain as q,USwapError as H}from"@tcswap/helpers";import{USwapError as y}from"@tcswap/helpers";var K=async(i)=>{if(!i)throw new y("wallet_xaman_not_configured");try{let t=await(await i.user)?.account;if(t)return t;throw new y("wallet_xaman_auth_failed")}catch(n){throw console.error("Xaman wallet connection failed:",n),new y("wallet_xaman_connection_failed")}},M=async(i,n)=>{try{if(!(n.destination&&n.amount&&n.from))throw new y("wallet_xaman_connection_failed");let t=(Number.parseFloat(n.amount)*1e6).toString(),l={Account:n.from,Amount:t,Destination:n.destination,TransactionType:"Payment",...n.destinationTag!==void 0&&{DestinationTag:n.destinationTag},...n.memo&&{Memos:[{Memo:{MemoData:Buffer.from(n.memo,"utf8").toString("hex").toUpperCase()}}]}},X=await i.payload?.createAndSubscribe(l,(f)=>{if("signed"in f.data)return f.data;return});if(!X)throw new y("wallet_xaman_transaction_failed");let{created:o}=X;if(i.runtime?.xapp)i.xapp?.openSignRequest(o);else if(typeof window<"u"){let f=o.pushed&&o.next?.no_push_msg_received?o.next.no_push_msg_received:o.next?.always;if(f)window.open(f)}let A=await X.resolved;if(!A||typeof A!=="object"||!("signed"in A)||!A.signed)throw new y("wallet_xaman_transaction_failed");let g=await i.payload?.get(A.payload_uuidv4);if(!g)throw new y("wallet_xaman_monitoring_failed");let W=g.response?.txid||"",C=g.response?.account||"";if(!W)throw new y("wallet_xaman_transaction_failed");return{deepLink:o.next?.always||"",payloadId:o.uuid||"",qrCode:o.refs?.qr_png||"",result:{account:C,reason:void 0,success:!0,transactionId:W},websocketUrl:o.refs?.websocket_status||""}}catch(t){if(console.error("Xaman payment creation and subscription failed:",t),t instanceof y)throw t;throw new y("wallet_xaman_transaction_failed")}};async function O({xumm:i,chain:n,address:t}){switch(n){case q.Ripple:{let{getRippleToolbox:l}=await import("@tcswap/toolboxes/ripple"),X=await l({}),o=async(A)=>{let{recipient:g,assetValue:W,memo:C}=A,f=await M(i,{amount:W.getValue("string"),destination:g,from:t,memo:C});if(!(f.result.success&&f.result.transactionId))throw new H("wallet_xaman_transaction_failed");return f.result.transactionId};return{...X,address:t,createAndSubscribePayment:M,disconnect:i.logout,getAddress:()=>t,transfer:o}}default:throw new H("wallet_chain_not_supported",{chain:n,wallet:"Xaman"})}}var Z=L({connect:({addChain:i,supportedChains:n,walletType:t})=>function(X,o){let A=F({chains:X,supportedChains:n,walletType:t}),{xaman:g}=G.get("apiKeys"),W=o?.apiKey||g;if(!W)throw new J("wallet_missing_api_key",{wallet:"Xaman"});let C=new Y(W);return new Promise((f,N)=>{C.on("success",async()=>{try{let _=await K(C),z=A.map(async(P)=>{let k=await O({address:_,chain:P,xumm:C});i({...k,address:_,balance:[],chain:P,disconnect:C.logout,walletType:h.XAMAN})});await Promise.all(z),f(!0)}catch(_){N(_)}}),C.on("error",(_)=>{N(_)}),C.authorize()})},name:"connectXaman",supportedChains:[B.Ripple],walletType:h.XAMAN}),e=Q(Z);export{Z as xamanWallet,e as XAMAN_SUPPORTED_CHAINS};
2
+
3
+ //# debugId=BD438577523B34D564756E2164756E21
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,12 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/xaman/index.ts", "../src/xaman/helpers.ts", "../src/xaman/walletMethods.ts"],
4
+ "sourcesContent": [
5
+ "/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport { Chain, filterSupportedChains, USwapConfig, USwapError, WalletOption } from \"@tcswap/helpers\";\nimport { createWallet, getWalletSupportedChains } from \"@tcswap/wallet-core\";\nimport { Xumm } from \"xumm\";\nimport { getWalletForChain } from \"./helpers\";\nimport type { XamanConfig } from \"./types\";\nimport { connectXamanWallet as connectXamanWalletMethod } from \"./walletMethods\";\n\nexport const xamanWallet = createWallet({\n connect: ({ addChain, supportedChains: walletSupportedChains, walletType }) =>\n function connectXamanWallet(chains: Chain[], xamanConfigOverwrite?: XamanConfig) {\n const supportedChains = filterSupportedChains({ chains, supportedChains: walletSupportedChains, walletType });\n\n const { xaman: xamanApiKey } = USwapConfig.get(\"apiKeys\");\n const apiKey = xamanConfigOverwrite?.apiKey || xamanApiKey;\n\n if (!apiKey) {\n throw new USwapError(\"wallet_missing_api_key\", { wallet: \"Xaman\" });\n }\n\n const xumm = new Xumm(apiKey);\n\n return new Promise<boolean>((resolve, reject) => {\n xumm.on(\"success\", async () => {\n try {\n const address = await connectXamanWalletMethod(xumm);\n\n const promises = supportedChains.map(async (chain) => {\n const walletMethods = await getWalletForChain({ address, chain, xumm });\n\n addChain({\n ...walletMethods,\n address,\n balance: [],\n chain,\n disconnect: xumm.logout,\n walletType: WalletOption.XAMAN,\n });\n });\n\n await Promise.all(promises);\n resolve(true);\n } catch (error) {\n reject(error);\n }\n });\n\n xumm.on(\"error\", (error) => {\n reject(error);\n });\n\n xumm.authorize();\n });\n },\n name: \"connectXaman\",\n supportedChains: [Chain.Ripple],\n walletType: WalletOption.XAMAN,\n});\n\nexport const XAMAN_SUPPORTED_CHAINS = getWalletSupportedChains(xamanWallet);\nexport type XamanSupportedChain = (typeof XAMAN_SUPPORTED_CHAINS)[number];\n\nexport type { XamanConfig } from \"./types\";\n",
6
+ "/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport { type AssetValue, Chain, USwapError } from \"@tcswap/helpers\";\nimport type { Xumm } from \"xumm\";\nimport { sendXamanTransaction } from \"./walletMethods\";\n\ninterface GetWalletForChainParams {\n chain: Chain;\n address: string;\n xumm: Xumm;\n}\n\nexport async function getWalletForChain({ xumm, chain, address }: GetWalletForChainParams) {\n switch (chain) {\n case Chain.Ripple: {\n const { getRippleToolbox } = await import(\"@tcswap/toolboxes/ripple\");\n\n // const api = apis?.[chain]; // Unused for now\n const toolbox = await getRippleToolbox({});\n\n // Override transfer method to use Xaman transaction flow\n const transfer = async (params: { assetValue: AssetValue; recipient: string; memo?: string }) => {\n const { recipient, assetValue, memo } = params;\n\n // Create and subscribe to payment via Xaman\n const paymentResult = await sendXamanTransaction(xumm, {\n amount: assetValue.getValue(\"string\"),\n destination: recipient,\n from: address,\n memo: memo,\n });\n\n // If not successful or no transaction ID, throw error\n if (!(paymentResult.result.success && paymentResult.result.transactionId)) {\n throw new USwapError(\"wallet_xaman_transaction_failed\");\n }\n\n // Return the transaction ID string\n return paymentResult.result.transactionId;\n };\n\n return {\n ...toolbox,\n address,\n // Expose Xaman-specific methods\n createAndSubscribePayment: sendXamanTransaction,\n disconnect: xumm.logout,\n getAddress: () => address,\n transfer,\n };\n }\n\n default:\n throw new USwapError(\"wallet_chain_not_supported\", { chain, wallet: \"Xaman\" });\n }\n}\n",
7
+ "/**\n * Modifications © 2025 Horizontal Systems.\n */\n\nimport { USwapError } from \"@tcswap/helpers\";\nimport type { Xumm } from \"xumm\";\nimport type { XamanPaymentParams } from \"./types\";\n\nexport const connectXamanWallet = async (xumm: Xumm) => {\n if (!xumm) {\n throw new USwapError(\"wallet_xaman_not_configured\");\n }\n\n try {\n const user = await xumm.user;\n const account = await user?.account;\n\n if (account) {\n return account;\n }\n\n throw new USwapError(\"wallet_xaman_auth_failed\");\n } catch (error) {\n console.error(\"Xaman wallet connection failed:\", error);\n throw new USwapError(\"wallet_xaman_connection_failed\");\n }\n};\n\nexport const sendXamanTransaction = async (xumm: Xumm, params: XamanPaymentParams) => {\n try {\n // Validate required parameters\n if (!(params.destination && params.amount && params.from)) {\n throw new USwapError(\"wallet_xaman_connection_failed\");\n }\n\n // Convert XRP to drops (1 XRP = 1,000,000 drops)\n const amountInDrops = (Number.parseFloat(params.amount) * 1000000).toString();\n\n // Create transaction object\n const transaction = {\n Account: params.from,\n Amount: amountInDrops,\n Destination: params.destination,\n TransactionType: \"Payment\" as const,\n ...(params.destinationTag !== undefined && { DestinationTag: params.destinationTag }),\n ...(params.memo && {\n Memos: [{ Memo: { MemoData: Buffer.from(params.memo, \"utf8\").toString(\"hex\").toUpperCase() } }],\n }),\n };\n\n // Create and subscribe to payload following the official example\n const subscription = await xumm.payload?.createAndSubscribe(transaction, (event) => {\n if (\"signed\" in event.data) {\n // Return event.data to close subscription and resolve promise\n return event.data; // { signed: true|false, payload_uuidv4: '...' }\n }\n return undefined;\n });\n\n if (!subscription) {\n throw new USwapError(\"wallet_xaman_transaction_failed\");\n }\n\n const { created } = subscription;\n\n // Handle payload presentation based on runtime environment\n if (xumm.runtime?.xapp) {\n xumm.xapp?.openSignRequest(created);\n } else if (typeof window !== \"undefined\") {\n const url =\n created.pushed && created.next?.no_push_msg_received ? created.next.no_push_msg_received : created.next?.always;\n if (url) window.open(url);\n }\n\n // Wait until the user signed/rejected\n const resolved = await subscription.resolved;\n\n if (!resolved || typeof resolved !== \"object\" || !(\"signed\" in resolved) || !resolved.signed) {\n throw new USwapError(\"wallet_xaman_transaction_failed\");\n }\n\n // Fetch the full payload result using the UUID from resolved data\n const payloadDetails = await xumm.payload?.get((resolved as any).payload_uuidv4);\n\n if (!payloadDetails) {\n throw new USwapError(\"wallet_xaman_monitoring_failed\");\n }\n\n // Extract transaction ID from response\n const transactionId = payloadDetails.response?.txid || \"\";\n const account = payloadDetails.response?.account || \"\";\n\n if (!transactionId) {\n throw new USwapError(\"wallet_xaman_transaction_failed\");\n }\n\n // Return comprehensive result\n return {\n deepLink: created.next?.always || \"\",\n // Initial payload info for QR codes, deep links, etc.\n payloadId: created.uuid || \"\",\n qrCode: created.refs?.qr_png || \"\",\n // Final transaction result - SUCCESS with tx hash\n result: { account, reason: undefined, success: true, transactionId },\n websocketUrl: created.refs?.websocket_status || \"\",\n };\n } catch (error) {\n console.error(\"Xaman payment creation and subscription failed:\", error);\n if (error instanceof USwapError) {\n throw error;\n }\n throw new USwapError(\"wallet_xaman_transaction_failed\");\n }\n};\n"
8
+ ],
9
+ "mappings": "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",
10
+ "debugId": "BD438577523B34D564756E2164756E21",
11
+ "names": []
12
+ }
package/package.json CHANGED
@@ -11,12 +11,12 @@
11
11
  "@passkeys/react": "~3.0.1",
12
12
  "@radixdlt/babylon-gateway-api-sdk": "~1.10.0",
13
13
  "@radixdlt/radix-dapp-toolkit": "~2.2.0",
14
- "@tcswap/helpers": "4.5.15",
15
- "@tcswap/toolboxes": "4.3.15",
16
- "@tcswap/wallet-core": "4.0.59",
17
- "@tcswap/wallet-extensions": "4.1.16",
18
- "@tcswap/wallet-hardware": "4.2.16",
19
- "@tcswap/wallet-keystore": "4.1.15",
14
+ "@tcswap/helpers": "4.5.16",
15
+ "@tcswap/toolboxes": "4.3.16",
16
+ "@tcswap/wallet-core": "4.0.60",
17
+ "@tcswap/wallet-extensions": "4.1.17",
18
+ "@tcswap/wallet-hardware": "4.2.17",
19
+ "@tcswap/wallet-keystore": "4.1.16",
20
20
  "@walletconnect/modal": "~2.7.0",
21
21
  "@walletconnect/sign-client": "~2.23.0",
22
22
  "bitcoinjs-lib": "~6.1.0",
@@ -54,152 +54,152 @@
54
54
  "exports": {
55
55
  ".": {
56
56
  "bun": "./src/index.ts",
57
- "default": "./dist/src/index.js",
58
- "require": "./dist/src/index.cjs",
57
+ "default": "./dist/index.js",
58
+ "require": "./dist/index.cjs",
59
59
  "types": "./dist/types/index.d.ts"
60
60
  },
61
61
  "./bitget": {
62
62
  "bun": "./src/bitget.ts",
63
- "default": "./dist/src/bitget.js",
64
- "require": "./dist/src/bitget.cjs",
63
+ "default": "./dist/bitget.js",
64
+ "require": "./dist/bitget.cjs",
65
65
  "types": "./dist/types/bitget.d.ts"
66
66
  },
67
67
  "./coinbase": {
68
68
  "bun": "./src/coinbase/index.ts",
69
- "default": "./dist/src/coinbase/index.js",
70
- "require": "./dist/src/coinbase/index.cjs",
69
+ "default": "./dist/coinbase/index.js",
70
+ "require": "./dist/coinbase/index.cjs",
71
71
  "types": "./dist/types/coinbase/index.d.ts"
72
72
  },
73
73
  "./cosmostation": {
74
74
  "bun": "./src/cosmostation.ts",
75
- "default": "./dist/src/cosmostation.js",
76
- "require": "./dist/src/cosmostation.cjs",
75
+ "default": "./dist/cosmostation.js",
76
+ "require": "./dist/cosmostation.cjs",
77
77
  "types": "./dist/types/cosmostation.d.ts"
78
78
  },
79
79
  "./ctrl": {
80
80
  "bun": "./src/ctrl.ts",
81
- "default": "./dist/src/ctrl.js",
82
- "require": "./dist/src/ctrl.cjs",
81
+ "default": "./dist/ctrl.js",
82
+ "require": "./dist/ctrl.cjs",
83
83
  "types": "./dist/types/ctrl.d.ts"
84
84
  },
85
85
  "./evm-extensions": {
86
86
  "bun": "./src/evm-extensions.ts",
87
- "default": "./dist/src/evm-extensions.js",
88
- "require": "./dist/src/evm-extensions.cjs",
87
+ "default": "./dist/evm-extensions.js",
88
+ "require": "./dist/evm-extensions.cjs",
89
89
  "types": "./dist/types/evm-extensions.d.ts"
90
90
  },
91
91
  "./exodus": {
92
92
  "bun": "./src/passkeys/index.ts",
93
- "default": "./dist/src/passkeys/index.js",
94
- "require": "./dist/src/passkeys/index.cjs",
93
+ "default": "./dist/passkeys/index.js",
94
+ "require": "./dist/passkeys/index.cjs",
95
95
  "types": "./dist/types/passkeys/index.d.ts"
96
96
  },
97
97
  "./keepkey": {
98
98
  "bun": "./src/keepkey.ts",
99
- "default": "./dist/src/keepkey.js",
100
- "require": "./dist/src/keepkey.cjs",
99
+ "default": "./dist/keepkey.js",
100
+ "require": "./dist/keepkey.cjs",
101
101
  "types": "./dist/types/keepkey.d.ts"
102
102
  },
103
103
  "./keepkey-bex": {
104
104
  "bun": "./src/keepkey-bex.ts",
105
- "default": "./dist/src/keepkey-bex.js",
106
- "require": "./dist/src/keepkey-bex.cjs",
105
+ "default": "./dist/keepkey-bex.js",
106
+ "require": "./dist/keepkey-bex.cjs",
107
107
  "types": "./dist/types/keepkey-bex.d.ts"
108
108
  },
109
109
  "./keplr": {
110
110
  "bun": "./src/keplr.ts",
111
- "default": "./dist/src/keplr.js",
112
- "require": "./dist/src/keplr.cjs",
111
+ "default": "./dist/keplr.js",
112
+ "require": "./dist/keplr.cjs",
113
113
  "types": "./dist/types/keplr.d.ts"
114
114
  },
115
115
  "./keystore": {
116
116
  "bun": "./src/keystore.ts",
117
- "default": "./dist/src/keystore.js",
118
- "require": "./dist/src/keystore.cjs",
117
+ "default": "./dist/keystore.js",
118
+ "require": "./dist/keystore.cjs",
119
119
  "types": "./dist/types/keystore.d.ts"
120
120
  },
121
121
  "./ledger": {
122
122
  "bun": "./src/ledger.ts",
123
- "default": "./dist/src/ledger.js",
124
- "require": "./dist/src/ledger.cjs",
123
+ "default": "./dist/ledger.js",
124
+ "require": "./dist/ledger.cjs",
125
125
  "types": "./dist/types/ledger.d.ts"
126
126
  },
127
127
  "./near-wallet-selector": {
128
128
  "bun": "./src/near-wallet-selector/index.ts",
129
- "default": "./dist/src/near-wallet-selector/index.js",
130
- "require": "./dist/src/near-wallet-selector/index.cjs",
129
+ "default": "./dist/near-wallet-selector/index.js",
130
+ "require": "./dist/near-wallet-selector/index.cjs",
131
131
  "types": "./dist/types/near-wallet-selector/index.d.ts"
132
132
  },
133
133
  "./okx": {
134
134
  "bun": "./src/okx.ts",
135
- "default": "./dist/src/okx.js",
136
- "require": "./dist/src/okx.cjs",
135
+ "default": "./dist/okx.js",
136
+ "require": "./dist/okx.cjs",
137
137
  "types": "./dist/types/okx.d.ts"
138
138
  },
139
139
  "./onekey": {
140
140
  "bun": "./src/onekey.ts",
141
- "default": "./dist/src/onekey.js",
142
- "require": "./dist/src/onekey.cjs",
141
+ "default": "./dist/onekey.js",
142
+ "require": "./dist/onekey.cjs",
143
143
  "types": "./dist/types/onekey.d.ts"
144
144
  },
145
145
  "./passkeys": {
146
146
  "bun": "./src/passkeys/index.ts",
147
- "default": "./dist/src/passkeys/index.js",
148
- "require": "./dist/src/passkeys/index.cjs",
147
+ "default": "./dist/passkeys/index.js",
148
+ "require": "./dist/passkeys/index.cjs",
149
149
  "types": "./dist/types/passkeys/index.d.ts"
150
150
  },
151
151
  "./phantom": {
152
152
  "bun": "./src/phantom.ts",
153
- "default": "./dist/src/phantom.js",
154
- "require": "./dist/src/phantom.cjs",
153
+ "default": "./dist/phantom.js",
154
+ "require": "./dist/phantom.cjs",
155
155
  "types": "./dist/types/phantom.d.ts"
156
156
  },
157
157
  "./polkadotjs": {
158
158
  "bun": "./src/polkadotjs.ts",
159
- "default": "./dist/src/polkadotjs.js",
160
- "require": "./dist/src/polkadotjs.cjs",
159
+ "default": "./dist/polkadotjs.js",
160
+ "require": "./dist/polkadotjs.cjs",
161
161
  "types": "./dist/types/polkadotjs.d.ts"
162
162
  },
163
163
  "./radix": {
164
164
  "bun": "./src/radix/index.ts",
165
- "default": "./dist/src/radix/index.js",
166
- "require": "./dist/src/radix/index.cjs",
165
+ "default": "./dist/radix/index.js",
166
+ "require": "./dist/radix/index.cjs",
167
167
  "types": "./dist/types/radix/index.d.ts"
168
168
  },
169
169
  "./talisman": {
170
170
  "bun": "./src/talisman.ts",
171
- "default": "./dist/src/talisman.js",
172
- "require": "./dist/src/talisman.cjs",
171
+ "default": "./dist/talisman.js",
172
+ "require": "./dist/talisman.cjs",
173
173
  "types": "./dist/types/talisman.d.ts"
174
174
  },
175
175
  "./trezor": {
176
176
  "bun": "./src/trezor.ts",
177
- "default": "./dist/src/trezor.js",
178
- "require": "./dist/src/trezor.cjs",
177
+ "default": "./dist/trezor.js",
178
+ "require": "./dist/trezor.cjs",
179
179
  "types": "./dist/types/trezor.d.ts"
180
180
  },
181
181
  "./tronlink": {
182
182
  "bun": "./src/tronlink.ts",
183
- "default": "./dist/src/tronlink.js",
184
- "require": "./dist/src/tronlink.cjs",
183
+ "default": "./dist/tronlink.js",
184
+ "require": "./dist/tronlink.cjs",
185
185
  "types": "./dist/types/tronlink.d.ts"
186
186
  },
187
187
  "./vultisig": {
188
188
  "bun": "./src/vultisig.ts",
189
- "default": "./dist/src/vultisig.js",
190
- "require": "./dist/src/vultisig.cjs",
189
+ "default": "./dist/vultisig.js",
190
+ "require": "./dist/vultisig.cjs",
191
191
  "types": "./dist/types/vultisig.d.ts"
192
192
  },
193
193
  "./walletconnect": {
194
194
  "bun": "./src/walletconnect/index.ts",
195
- "default": "./dist/src/walletconnect/index.js",
196
- "require": "./dist/src/walletconnect/index.cjs",
195
+ "default": "./dist/walletconnect/index.js",
196
+ "require": "./dist/walletconnect/index.cjs",
197
197
  "types": "./dist/types/walletconnect/index.d.ts"
198
198
  },
199
199
  "./xaman": {
200
200
  "bun": "./src/xaman/index.ts",
201
- "default": "./dist/src/xaman/index.js",
202
- "require": "./dist/src/xaman/index.cjs",
201
+ "default": "./dist/xaman/index.js",
202
+ "require": "./dist/xaman/index.cjs",
203
203
  "types": "./dist/types/xaman/index.d.ts"
204
204
  }
205
205
  },
@@ -216,5 +216,5 @@
216
216
  "type-check:go": "tsgo"
217
217
  },
218
218
  "type": "module",
219
- "version": "4.3.16"
219
+ "version": "4.3.17"
220
220
  }