@dynamic-labs-sdk/tron 0.17.3 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/dist/addTronExtension/addTronExtension.d.ts +1 -0
  2. package/dist/addTronExtension/addTronExtension.d.ts.map +1 -1
  3. package/dist/{addTronWalletAdaptersExtension-B8aQwiHS.esm.js → addTronWalletAdaptersExtension-C7bwovzz.esm.js} +12 -2
  4. package/dist/addTronWalletAdaptersExtension-C7bwovzz.esm.js.map +1 -0
  5. package/dist/{addTronWalletAdaptersExtension-BpvmUaz-.cjs.js → addTronWalletAdaptersExtension-D4mFN3HP.cjs.js} +12 -2
  6. package/dist/addTronWalletAdaptersExtension-D4mFN3HP.cjs.js.map +1 -0
  7. package/dist/getTronWeb/getTronWeb.d.ts +1 -0
  8. package/dist/getTronWeb/getTronWeb.d.ts.map +1 -1
  9. package/dist/index.cjs.js +5 -1
  10. package/dist/index.cjs.js.map +1 -1
  11. package/dist/index.esm.js +5 -1
  12. package/dist/index.esm.js.map +1 -1
  13. package/dist/isTronNetworkProvider/isTronNetworkProvider.d.ts +1 -0
  14. package/dist/isTronNetworkProvider/isTronNetworkProvider.d.ts.map +1 -1
  15. package/dist/isTronWalletAccount/isTronWalletAccount.d.ts +1 -0
  16. package/dist/isTronWalletAccount/isTronWalletAccount.d.ts.map +1 -1
  17. package/dist/isTronWalletProvider/isTronWalletProvider.d.ts +1 -0
  18. package/dist/isTronWalletProvider/isTronWalletProvider.d.ts.map +1 -1
  19. package/dist/registerTronNetworkProviderBuilder/registerTronNetworkProviderBuilder.d.ts +1 -0
  20. package/dist/registerTronNetworkProviderBuilder/registerTronNetworkProviderBuilder.d.ts.map +1 -1
  21. package/dist/sendTransaction/sendTransaction.d.ts +1 -0
  22. package/dist/sendTransaction/sendTransaction.d.ts.map +1 -1
  23. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  24. package/dist/utils/convertChainIdToDecimal/convertChainIdToDecimal.d.ts +1 -0
  25. package/dist/utils/convertChainIdToDecimal/convertChainIdToDecimal.d.ts.map +1 -1
  26. package/dist/utils/createTronNetworkProvider/createTronNetworkProvider.d.ts +1 -0
  27. package/dist/utils/createTronNetworkProvider/createTronNetworkProvider.d.ts.map +1 -1
  28. package/dist/utils/fetchTronBalance/fetchTronBalance.d.ts +1 -0
  29. package/dist/utils/fetchTronBalance/fetchTronBalance.d.ts.map +1 -1
  30. package/dist/utils/tronExecuteCheckoutTransaction/tronExecuteCheckoutTransaction.d.ts +1 -0
  31. package/dist/utils/tronExecuteCheckoutTransaction/tronExecuteCheckoutTransaction.d.ts.map +1 -1
  32. package/dist/utils/tronTransferAmount/tronTransferAmount.d.ts +1 -0
  33. package/dist/utils/tronTransferAmount/tronTransferAmount.d.ts.map +1 -1
  34. package/dist/walletAdapters/addTronWalletAdaptersExtension/addTronWalletAdaptersExtension.d.ts +1 -0
  35. package/dist/walletAdapters/addTronWalletAdaptersExtension/addTronWalletAdaptersExtension.d.ts.map +1 -1
  36. package/dist/walletAdapters/utils/createWalletProviderForTronWalletAdapter/createWalletProviderForTronWalletAdapter.d.ts +1 -0
  37. package/dist/walletAdapters/utils/createWalletProviderForTronWalletAdapter/createWalletProviderForTronWalletAdapter.d.ts.map +1 -1
  38. package/dist/walletAdapters.cjs.js +1 -1
  39. package/dist/walletAdapters.esm.js +1 -1
  40. package/package.json +4 -4
  41. package/dist/addTronWalletAdaptersExtension-B8aQwiHS.esm.js.map +0 -1
  42. package/dist/addTronWalletAdaptersExtension-BpvmUaz-.cjs.js.map +0 -1
@@ -4,6 +4,7 @@
4
4
  * This is a convenience function that adds support for Tron wallets.
5
5
  *
6
6
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
7
+ * @not-instrumented
7
8
  */
8
9
  export declare const addTronExtension: (client?: import("@dynamic-labs-sdk/client").DynamicClient) => void;
9
10
  //# sourceMappingURL=addTronExtension.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"addTronExtension.d.ts","sourceRoot":"","sources":["../../src/addTronExtension/addTronExtension.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,iEAAkC,IAE9D,CAAC"}
1
+ {"version":3,"file":"addTronExtension.d.ts","sourceRoot":"","sources":["../../src/addTronExtension/addTronExtension.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,iEAAkC,IAE9D,CAAC"}
@@ -7,7 +7,7 @@ import { WalletReadyState } from "@tronweb3/tronwallet-abstract-adapter";
7
7
 
8
8
  //#region package.json
9
9
  var name = "@dynamic-labs-sdk/tron";
10
- var version = "0.17.3";
10
+ var version = "0.18.0";
11
11
 
12
12
  //#endregion
13
13
  //#region src/utils/constants.ts
@@ -15,6 +15,7 @@ const SUN_PER_TRX = 1e6;
15
15
 
16
16
  //#endregion
17
17
  //#region src/utils/fetchTronBalance/fetchTronBalance.ts
18
+ /** @not-instrumented */
18
19
  const fetchTronBalance = async ({ address, networkData }) => {
19
20
  const balanceInSun = await new TronWeb({ fullHost: networkData.rpcUrls.http[0] }).trx.getBalance(address);
20
21
  return (Number(balanceInSun) / SUN_PER_TRX).toString();
@@ -22,6 +23,7 @@ const fetchTronBalance = async ({ address, networkData }) => {
22
23
 
23
24
  //#endregion
24
25
  //#region src/utils/createTronNetworkProvider/createTronNetworkProvider.ts
26
+ /** @not-instrumented */
25
27
  const createTronNetworkProvider = (networkData) => ({
26
28
  ...createBaseNetworkProvider("TRON", networkData),
27
29
  getBalance: async ({ address }) => ({ balance: await fetchTronBalance({
@@ -32,6 +34,7 @@ const createTronNetworkProvider = (networkData) => ({
32
34
 
33
35
  //#endregion
34
36
  //#region src/registerTronNetworkProviderBuilder/registerTronNetworkProviderBuilder.ts
37
+ /** @not-instrumented */
35
38
  const registerTronNetworkProviderBuilder = (client) => {
36
39
  const networkProviderBuilderRegistry = getNetworkProviderBuilderRegistry(client);
37
40
  if (networkProviderBuilderRegistry.get().get("TRON")) return;
@@ -43,14 +46,17 @@ const registerTronNetworkProviderBuilder = (client) => {
43
46
 
44
47
  //#endregion
45
48
  //#region src/utils/convertChainIdToDecimal/convertChainIdToDecimal.ts
49
+ /** @not-instrumented */
46
50
  const convertChainIdToDecimal = (chainId) => chainId.startsWith("0x") ? parseInt(chainId, 16).toString() : chainId;
47
51
 
48
52
  //#endregion
49
53
  //#region src/isTronWalletAccount/isTronWalletAccount.ts
54
+ /** @not-instrumented */
50
55
  const isTronWalletAccount = (walletAccount) => walletAccount.chain === "TRON";
51
56
 
52
57
  //#endregion
53
58
  //#region src/isTronWalletProvider/isTronWalletProvider.ts
59
+ /** @not-instrumented */
54
60
  const isTronWalletProvider = (provider) => {
55
61
  return provider.chain === "TRON";
56
62
  };
@@ -70,6 +76,7 @@ const isTronWalletProvider = (provider) => {
70
76
  * @param params.onStepChange - Optional callback invoked with `'transaction'` when the signing step begins.
71
77
  * @param client - The Dynamic client instance.
72
78
  * @returns The transaction hash from the broadcast result.
79
+ * @not-instrumented
73
80
  */
74
81
  const tronExecuteCheckoutTransaction = async ({ onStepChange, signingPayload, walletAccount }, client) => {
75
82
  const provider = getWalletProviderFromWalletAccount({ walletAccount }, client);
@@ -108,6 +115,7 @@ const TRX_DECIMALS = 6;
108
115
  * Converts the human-readable amount string to the smallest unit (SUN for TRX,
109
116
  * or the appropriate unit for TRC20 tokens) using string-based arithmetic
110
117
  * to avoid floating-point precision issues.
118
+ * @not-instrumented
111
119
  */
112
120
  const tronTransferAmount = async ({ amount, recipient, token, walletAccount }, client) => {
113
121
  if (!isTronWalletAccount(walletAccount)) throw new InvalidParamError("Wallet account is not a Tron wallet account");
@@ -130,6 +138,7 @@ const tronTransferAmount = async ({ amount, recipient, token, walletAccount }, c
130
138
 
131
139
  //#endregion
132
140
  //#region src/walletAdapters/utils/createWalletProviderForTronWalletAdapter/createWalletProviderForTronWalletAdapter.ts
141
+ /** @not-instrumented */
133
142
  const createWalletProviderForTronWalletAdapter = ({ dynamicClient, adapter }) => {
134
143
  const chain = "TRON";
135
144
  const tronAdapter = adapter;
@@ -200,6 +209,7 @@ const TRON_WALLET_ADAPTERS_EXTENSION_KEY = "tronWalletAdapters";
200
209
  * automatically registering compatible wallets for use with the Dynamic SDK.
201
210
  *
202
211
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
212
+ * @not-instrumented
203
213
  */
204
214
  const addTronWalletAdaptersExtension = (client = getDefaultClient()) => {
205
215
  if (hasExtension({ extensionKey: TRON_WALLET_ADAPTERS_EXTENSION_KEY }, client)) return;
@@ -242,4 +252,4 @@ const addTronWalletAdaptersExtension = (client = getDefaultClient()) => {
242
252
 
243
253
  //#endregion
244
254
  export { name as a, isTronWalletAccount as i, NotTronProviderError as n, version as o, isTronWalletProvider as r, addTronWalletAdaptersExtension as t };
245
- //# sourceMappingURL=addTronWalletAdaptersExtension-B8aQwiHS.esm.js.map
255
+ //# sourceMappingURL=addTronWalletAdaptersExtension-C7bwovzz.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addTronWalletAdaptersExtension-C7bwovzz.esm.js","names":["chain: Chain","metadata: WalletProviderMetadata","connect: TronWalletProvider['connect']","disconnect: TronWalletProvider['disconnect']","getActiveNetworkId: TronWalletProvider['getActiveNetworkId']","getConnectedAddresses: TronWalletProvider['getConnectedAddresses']","signMessage: TronWalletProvider['signMessage']","getTronWeb: TronWalletProvider['getTronWeb']","tronWalletProviders: TronWalletProvider[]"],"sources":["../package.json","../src/utils/constants.ts","../src/utils/fetchTronBalance/fetchTronBalance.ts","../src/utils/createTronNetworkProvider/createTronNetworkProvider.ts","../src/registerTronNetworkProviderBuilder/registerTronNetworkProviderBuilder.ts","../src/utils/convertChainIdToDecimal/convertChainIdToDecimal.ts","../src/isTronWalletAccount/isTronWalletAccount.ts","../src/isTronWalletProvider/isTronWalletProvider.ts","../src/utils/tronExecuteCheckoutTransaction/tronExecuteCheckoutTransaction.ts","../src/errors/NotTronProviderError/NotTronProviderError.ts","../src/utils/tronTransferAmount/tronTransferAmount.ts","../src/walletAdapters/utils/createWalletProviderForTronWalletAdapter/createWalletProviderForTronWalletAdapter.ts","../src/walletAdapters/addTronWalletAdaptersExtension/addTronWalletAdaptersExtension.ts"],"sourcesContent":["","// 1 TRX = 10^6 SUN (similar to wei for Ethereum)\nexport const SUN_PER_TRX = 1e6;\n","import type { NetworkData } from '@dynamic-labs-sdk/client';\nimport { TronWeb } from 'tronweb';\n\nimport { SUN_PER_TRX } from '../constants';\n\ntype FetchTronBalanceParams = {\n address: string;\n networkData: NetworkData;\n};\n\n/** @not-instrumented */\nexport const fetchTronBalance = async ({\n address,\n networkData,\n}: FetchTronBalanceParams): Promise<string | null> => {\n const tronWeb = new TronWeb({\n fullHost: networkData.rpcUrls.http[0],\n });\n\n const balanceInSun = await tronWeb.trx.getBalance(address);\n\n return (Number(balanceInSun) / SUN_PER_TRX).toString();\n};\n","import type { NetworkData } from '@dynamic-labs-sdk/client';\nimport { createBaseNetworkProvider } from '@dynamic-labs-sdk/client/core';\n\nimport type { TronNetworkProvider } from '../../TronNetworkProvider.types';\nimport { fetchTronBalance } from '../fetchTronBalance';\n\n/** @not-instrumented */\nexport const createTronNetworkProvider = (\n networkData: NetworkData\n): TronNetworkProvider => ({\n ...createBaseNetworkProvider('TRON', networkData),\n getBalance: async ({ address }) => ({\n balance: await fetchTronBalance({\n address,\n networkData,\n }),\n }),\n});\n","import type { DynamicClient } from '@dynamic-labs-sdk/client';\nimport { getNetworkProviderBuilderRegistry } from '@dynamic-labs-sdk/client/core';\n\nimport { createTronNetworkProvider } from '../utils/createTronNetworkProvider';\n\n/** @not-instrumented */\nexport const registerTronNetworkProviderBuilder = (\n client: DynamicClient\n): void => {\n const networkProviderBuilderRegistry =\n getNetworkProviderBuilderRegistry(client);\n\n // If the Tron network provider builder is already registered, return.\n if (networkProviderBuilderRegistry.get().get('TRON')) {\n return;\n }\n\n networkProviderBuilderRegistry.register({\n builder: createTronNetworkProvider,\n chain: 'TRON',\n });\n};\n","/** @not-instrumented */\nexport const convertChainIdToDecimal = (chainId: string): string =>\n chainId.startsWith('0x') ? parseInt(chainId, 16).toString() : chainId;\n","import type { WalletAccount } from '@dynamic-labs-sdk/client';\n\nimport type { TronWalletAccount } from '../TronWalletAccount.types';\n\n/** @not-instrumented */\nexport const isTronWalletAccount = (\n walletAccount: WalletAccount\n): walletAccount is TronWalletAccount => walletAccount.chain === 'TRON';\n","import type { WalletProvider } from '@dynamic-labs-sdk/client/core';\n\nimport type { TronWalletProvider } from '../TronWalletProvider.types';\n\n/** @not-instrumented */\nexport const isTronWalletProvider = (\n provider: WalletProvider | TronWalletProvider\n): provider is TronWalletProvider => {\n return provider.chain === 'TRON';\n};\n","import {\n type DynamicClient,\n InvalidParamError,\n} from '@dynamic-labs-sdk/client';\nimport type {\n ExecuteCheckoutTransactionParams,\n ExecuteCheckoutTransactionResult,\n} from '@dynamic-labs-sdk/client/core';\nimport { getWalletProviderFromWalletAccount } from '@dynamic-labs-sdk/client/core';\n\nimport type { TronSigningPayload } from '../../checkoutTransaction.types';\nimport { isTronWalletAccount } from '../../isTronWalletAccount';\nimport { isTronWalletProvider } from '../../isTronWalletProvider';\n\n/**\n * Executes a Tron checkout transaction by deserializing the transaction from\n * the signing payload, signing it with TronWeb, and broadcasting it.\n *\n * 1. Validates that the wallet account is a Tron wallet account\n * 2. Extracts the serialized transaction from the signing payload\n * 3. Parses, signs, and broadcasts via TronWeb\n *\n * @param params.signingPayload - The chain-aware signing payload containing `serializedTransaction`.\n * @param params.walletAccount - The wallet account used to sign and send the transaction.\n * @param params.onStepChange - Optional callback invoked with `'transaction'` when the signing step begins.\n * @param client - The Dynamic client instance.\n * @returns The transaction hash from the broadcast result.\n * @not-instrumented\n */\nexport const tronExecuteCheckoutTransaction = async (\n {\n onStepChange,\n signingPayload,\n walletAccount,\n }: ExecuteCheckoutTransactionParams,\n client: DynamicClient\n): Promise<ExecuteCheckoutTransactionResult> => {\n const provider = getWalletProviderFromWalletAccount(\n { walletAccount },\n client\n );\n\n if (!isTronWalletAccount(walletAccount) || !isTronWalletProvider(provider)) {\n throw new InvalidParamError('Wallet account is not a Tron wallet account');\n }\n\n const tronPayload = signingPayload as TronSigningPayload;\n\n if (!tronPayload.serializedTransaction?.serializedTransaction) {\n throw new InvalidParamError(\n 'Signing payload is missing serialized transaction data'\n );\n }\n\n onStepChange?.('transaction');\n\n const tronWeb = await provider.getTronWeb({ walletAccount });\n\n const unsignedTransaction = JSON.parse(\n tronPayload.serializedTransaction.serializedTransaction\n );\n\n const signedTransaction = await tronWeb.trx.sign(unsignedTransaction);\n const broadcastResult = await tronWeb.trx.sendRawTransaction(\n signedTransaction\n );\n\n return { transactionHash: broadcastResult.txid };\n};\n","import { BaseError } from '@dynamic-labs-sdk/client';\n\nexport class NotTronProviderError extends BaseError {\n public readonly providerKey: string;\n\n constructor(params: { providerKey: string }) {\n super({\n cause: null,\n code: 'not_tron_provider_error',\n docsUrl: null,\n name: 'NotTronProviderError',\n shortMessage: 'Provider is not a Tron wallet provider',\n });\n\n this.providerKey = params.providerKey;\n }\n}\n","import type { DynamicClient } from '@dynamic-labs-sdk/client';\nimport { InvalidParamError } from '@dynamic-labs-sdk/client';\nimport {\n type TransferAmountParams,\n getWalletProviderFromWalletAccount,\n parseAmountToSmallestUnit,\n} from '@dynamic-labs-sdk/client/core';\n\nimport { NotTronProviderError } from '../../errors/NotTronProviderError';\nimport { isTronWalletAccount } from '../../isTronWalletAccount';\nimport { isTronWalletProvider } from '../../isTronWalletProvider';\n\nconst TRX_DECIMALS = 6;\n\n/**\n * Transfers native TRX or TRC20 tokens from one wallet to another.\n *\n * Converts the human-readable amount string to the smallest unit (SUN for TRX,\n * or the appropriate unit for TRC20 tokens) using string-based arithmetic\n * to avoid floating-point precision issues.\n * @not-instrumented\n */\nexport const tronTransferAmount = async (\n { amount, recipient, token, walletAccount }: TransferAmountParams,\n client: DynamicClient\n): Promise<{ transactionHash: string }> => {\n if (!isTronWalletAccount(walletAccount)) {\n throw new InvalidParamError(\n 'Wallet account is not a Tron wallet account'\n );\n }\n\n const provider = getWalletProviderFromWalletAccount(\n { walletAccount },\n client\n );\n\n if (!isTronWalletProvider(provider)) {\n throw new NotTronProviderError({ providerKey: provider.key });\n }\n\n const tronWeb = await provider.getTronWeb({ walletAccount });\n\n if (token?.address) {\n const decimals = token.decimals ?? TRX_DECIMALS;\n const smallestUnitAmount = parseAmountToSmallestUnit({\n amount,\n decimals,\n });\n\n const contract = await tronWeb.contract().at(token.address);\n const result = await contract.transfer(recipient, smallestUnitAmount).send();\n\n return { transactionHash: result };\n }\n\n const sunAmount = parseAmountToSmallestUnit({\n amount,\n decimals: TRX_DECIMALS,\n });\n\n const result = await tronWeb.trx.sendTransaction(\n recipient,\n Number(sunAmount),\n { address: walletAccount.address }\n );\n\n return { transactionHash: result.txid };\n};\n","import {\n type Chain,\n type DynamicClient,\n type WalletProviderMetadata,\n assertWalletAccountSigningAvailability,\n getActiveNetworkData,\n} from '@dynamic-labs-sdk/client';\nimport {\n assertDefined,\n formatWalletProviderGroupKey,\n formatWalletProviderKey,\n} from '@dynamic-labs-sdk/client/core';\nimport { WalletProviderEnum } from '@dynamic-labs/sdk-api-core';\nimport type { Adapter } from '@tronweb3/tronwallet-abstract-adapter';\nimport { WalletReadyState } from '@tronweb3/tronwallet-abstract-adapter';\nimport { TronWeb } from 'tronweb';\n\nimport type {\n TronAdapter,\n TronWalletProvider,\n} from '../../../TronWalletProvider.types';\nimport { convertChainIdToDecimal } from '../../../utils/convertChainIdToDecimal';\nimport { tronExecuteCheckoutTransaction } from '../../../utils/tronExecuteCheckoutTransaction';\nimport { tronTransferAmount } from '../../../utils/tronTransferAmount';\n\ntype CreateWalletProviderForTronWalletAdapterParams = {\n adapter: Adapter;\n dynamicClient: DynamicClient;\n};\n\n/** @not-instrumented */\nexport const createWalletProviderForTronWalletAdapter = ({\n dynamicClient,\n adapter,\n}: CreateWalletProviderForTronWalletAdapterParams):\n | TronWalletProvider\n | undefined => {\n const chain: Chain = 'TRON';\n\n // we have to do this type cast because these adapters have the _wallet property private,\n // but we need to access it to get the TronWeb instance\n const tronAdapter = adapter as unknown as TronAdapter;\n\n // Wallet is not installed\n if (tronAdapter.readyState !== WalletReadyState.Found) {\n return undefined;\n }\n\n const metadata: WalletProviderMetadata = {\n displayName: tronAdapter.name,\n icon: tronAdapter.icon,\n };\n\n const walletProviderType = WalletProviderEnum.BrowserExtension;\n\n const key = formatWalletProviderKey({\n chain,\n displayName: metadata.displayName,\n walletProviderType,\n });\n\n const connect: TronWalletProvider['connect'] = async () => {\n await tronAdapter.connect();\n\n // Some wallets (Trust, Bitget) populate the address asynchronously after connect()\n // Wait briefly for the address to be populated by the wallet\n const startTime = Date.now();\n while (!tronAdapter.address?.length && Date.now() - startTime < 1000) {\n await new Promise((resolve) => setTimeout(resolve, 50));\n }\n\n return {\n addresses: tronAdapter.address ? [{ address: tronAdapter.address }] : [],\n };\n };\n\n const disconnect: TronWalletProvider['disconnect'] = async () => {\n return tronAdapter.disconnect();\n };\n\n const getActiveNetworkId: TronWalletProvider['getActiveNetworkId'] =\n async () => {\n const networkInfo = await tronAdapter.network();\n\n const networkId = convertChainIdToDecimal(networkInfo.chainId);\n\n return { networkId };\n };\n\n const getConnectedAddresses: TronWalletProvider['getConnectedAddresses'] =\n async () => {\n return {\n addresses: tronAdapter.address ? [tronAdapter.address] : [],\n };\n };\n\n const signMessage: TronWalletProvider['signMessage'] = async ({\n message,\n walletAccount,\n }) => {\n assertDefined(walletAccount, 'Wallet account not found');\n\n await assertWalletAccountSigningAvailability(\n { walletAccount },\n dynamicClient\n );\n\n const signedMessage = await tronAdapter.signMessage(message);\n\n return {\n signature: signedMessage,\n };\n };\n\n const getTronWeb: TronWalletProvider['getTronWeb'] = async ({\n walletAccount,\n }) => {\n const tronWeb =\n tronAdapter._wallet?.tronWeb || tronAdapter._wallet?.tron?.tronWeb;\n\n if (tronWeb) {\n return tronWeb;\n }\n\n const activeNetworkData = await getActiveNetworkData(\n { walletAccount },\n dynamicClient\n );\n assertDefined(activeNetworkData, 'No active network data found');\n\n const url = activeNetworkData.networkData?.rpcUrls.http[0];\n assertDefined(url, 'No RPC URL found for active network');\n\n return new TronWeb({ fullHost: url });\n };\n\n return {\n chain,\n connect,\n disconnect,\n executeCheckoutTransaction: (args) =>\n tronExecuteCheckoutTransaction(args, dynamicClient),\n getActiveNetworkId,\n getConnectedAddresses,\n getTronWeb,\n groupKey: formatWalletProviderGroupKey(metadata.displayName),\n key,\n metadata,\n signMessage,\n transferAmount: (args) => tronTransferAmount(args, dynamicClient),\n walletProviderType,\n };\n};\n","import {\n WalletProviderPriority,\n getDefaultClient,\n getWalletProviderRegistry,\n hasExtension,\n registerExtension,\n} from '@dynamic-labs-sdk/client/core';\nimport {\n BitKeepAdapter,\n OkxWalletAdapter,\n TokenPocketAdapter,\n TronLinkAdapter,\n TrustAdapter,\n} from '@tronweb3/tronwallet-adapters';\n\nimport { registerTronNetworkProviderBuilder } from '../../registerTronNetworkProviderBuilder';\nimport type { TronWalletProvider } from '../../TronWalletProvider.types';\nimport { createWalletProviderForTronWalletAdapter } from '../utils/createWalletProviderForTronWalletAdapter';\n\nexport const TRON_WALLET_ADAPTERS_EXTENSION_KEY = 'tronWalletAdapters';\n\n/**\n * Adds the Tron Wallet Adapters extension to the Dynamic client.\n *\n * This extension enables integration with wallets that have related Tron Wallet Adapters ('@tronweb3/tronwallet-adapters'),\n * automatically registering compatible wallets for use with the Dynamic SDK.\n *\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @not-instrumented\n */\nexport const addTronWalletAdaptersExtension = (\n client = getDefaultClient()\n): void => {\n if (\n hasExtension({ extensionKey: TRON_WALLET_ADAPTERS_EXTENSION_KEY }, client)\n ) {\n return;\n }\n\n registerExtension(\n { extensionKey: TRON_WALLET_ADAPTERS_EXTENSION_KEY },\n client\n );\n\n registerTronNetworkProviderBuilder(client);\n\n const walletProviderRegistry = getWalletProviderRegistry(client);\n\n const tronWalletProviders: TronWalletProvider[] = [];\n\n // Create and register OKX wallet provider\n const okxWalletProvider = createWalletProviderForTronWalletAdapter({\n adapter: new OkxWalletAdapter(),\n dynamicClient: client,\n });\n if (okxWalletProvider) {\n tronWalletProviders.push(okxWalletProvider);\n }\n\n // Create and register TronLink wallet provider\n const tronLinkWalletProvider = createWalletProviderForTronWalletAdapter({\n adapter: new TronLinkAdapter(),\n dynamicClient: client,\n });\n if (tronLinkWalletProvider) {\n tronWalletProviders.push(tronLinkWalletProvider);\n }\n\n // Create and register Trust wallet provider\n const trustWalletProvider = createWalletProviderForTronWalletAdapter({\n adapter: new TrustAdapter(),\n dynamicClient: client,\n });\n if (trustWalletProvider) {\n tronWalletProviders.push(trustWalletProvider);\n }\n\n // Create and register TokenPocket wallet provider\n const tokenPocketWalletProvider = createWalletProviderForTronWalletAdapter({\n adapter: new TokenPocketAdapter(),\n dynamicClient: client,\n });\n if (tokenPocketWalletProvider) {\n tronWalletProviders.push(tokenPocketWalletProvider);\n }\n\n // Create and register Bitget wallet provider\n const bitgetWalletProvider = createWalletProviderForTronWalletAdapter({\n adapter: new BitKeepAdapter(),\n dynamicClient: client,\n });\n if (bitgetWalletProvider) {\n tronWalletProviders.push(bitgetWalletProvider);\n }\n\n tronWalletProviders.forEach((walletProvider) => {\n walletProviderRegistry.register({\n priority: WalletProviderPriority.WINDOW_INJECT,\n walletProvider,\n });\n });\n};\n"],"mappings":"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"}
@@ -7,7 +7,7 @@ let _tronweb3_tronwallet_abstract_adapter = require("@tronweb3/tronwallet-abstra
7
7
 
8
8
  //#region package.json
9
9
  var name = "@dynamic-labs-sdk/tron";
10
- var version = "0.17.3";
10
+ var version = "0.18.0";
11
11
 
12
12
  //#endregion
13
13
  //#region src/utils/constants.ts
@@ -15,6 +15,7 @@ const SUN_PER_TRX = 1e6;
15
15
 
16
16
  //#endregion
17
17
  //#region src/utils/fetchTronBalance/fetchTronBalance.ts
18
+ /** @not-instrumented */
18
19
  const fetchTronBalance = async ({ address, networkData }) => {
19
20
  const balanceInSun = await new tronweb.TronWeb({ fullHost: networkData.rpcUrls.http[0] }).trx.getBalance(address);
20
21
  return (Number(balanceInSun) / SUN_PER_TRX).toString();
@@ -22,6 +23,7 @@ const fetchTronBalance = async ({ address, networkData }) => {
22
23
 
23
24
  //#endregion
24
25
  //#region src/utils/createTronNetworkProvider/createTronNetworkProvider.ts
26
+ /** @not-instrumented */
25
27
  const createTronNetworkProvider = (networkData) => ({
26
28
  ...(0, _dynamic_labs_sdk_client_core.createBaseNetworkProvider)("TRON", networkData),
27
29
  getBalance: async ({ address }) => ({ balance: await fetchTronBalance({
@@ -32,6 +34,7 @@ const createTronNetworkProvider = (networkData) => ({
32
34
 
33
35
  //#endregion
34
36
  //#region src/registerTronNetworkProviderBuilder/registerTronNetworkProviderBuilder.ts
37
+ /** @not-instrumented */
35
38
  const registerTronNetworkProviderBuilder = (client) => {
36
39
  const networkProviderBuilderRegistry = (0, _dynamic_labs_sdk_client_core.getNetworkProviderBuilderRegistry)(client);
37
40
  if (networkProviderBuilderRegistry.get().get("TRON")) return;
@@ -43,14 +46,17 @@ const registerTronNetworkProviderBuilder = (client) => {
43
46
 
44
47
  //#endregion
45
48
  //#region src/utils/convertChainIdToDecimal/convertChainIdToDecimal.ts
49
+ /** @not-instrumented */
46
50
  const convertChainIdToDecimal = (chainId) => chainId.startsWith("0x") ? parseInt(chainId, 16).toString() : chainId;
47
51
 
48
52
  //#endregion
49
53
  //#region src/isTronWalletAccount/isTronWalletAccount.ts
54
+ /** @not-instrumented */
50
55
  const isTronWalletAccount = (walletAccount) => walletAccount.chain === "TRON";
51
56
 
52
57
  //#endregion
53
58
  //#region src/isTronWalletProvider/isTronWalletProvider.ts
59
+ /** @not-instrumented */
54
60
  const isTronWalletProvider = (provider) => {
55
61
  return provider.chain === "TRON";
56
62
  };
@@ -70,6 +76,7 @@ const isTronWalletProvider = (provider) => {
70
76
  * @param params.onStepChange - Optional callback invoked with `'transaction'` when the signing step begins.
71
77
  * @param client - The Dynamic client instance.
72
78
  * @returns The transaction hash from the broadcast result.
79
+ * @not-instrumented
73
80
  */
74
81
  const tronExecuteCheckoutTransaction = async ({ onStepChange, signingPayload, walletAccount }, client) => {
75
82
  const provider = (0, _dynamic_labs_sdk_client_core.getWalletProviderFromWalletAccount)({ walletAccount }, client);
@@ -108,6 +115,7 @@ const TRX_DECIMALS = 6;
108
115
  * Converts the human-readable amount string to the smallest unit (SUN for TRX,
109
116
  * or the appropriate unit for TRC20 tokens) using string-based arithmetic
110
117
  * to avoid floating-point precision issues.
118
+ * @not-instrumented
111
119
  */
112
120
  const tronTransferAmount = async ({ amount, recipient, token, walletAccount }, client) => {
113
121
  if (!isTronWalletAccount(walletAccount)) throw new _dynamic_labs_sdk_client.InvalidParamError("Wallet account is not a Tron wallet account");
@@ -130,6 +138,7 @@ const tronTransferAmount = async ({ amount, recipient, token, walletAccount }, c
130
138
 
131
139
  //#endregion
132
140
  //#region src/walletAdapters/utils/createWalletProviderForTronWalletAdapter/createWalletProviderForTronWalletAdapter.ts
141
+ /** @not-instrumented */
133
142
  const createWalletProviderForTronWalletAdapter = ({ dynamicClient, adapter }) => {
134
143
  const chain = "TRON";
135
144
  const tronAdapter = adapter;
@@ -200,6 +209,7 @@ const TRON_WALLET_ADAPTERS_EXTENSION_KEY = "tronWalletAdapters";
200
209
  * automatically registering compatible wallets for use with the Dynamic SDK.
201
210
  *
202
211
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
212
+ * @not-instrumented
203
213
  */
204
214
  const addTronWalletAdaptersExtension = (client = (0, _dynamic_labs_sdk_client_core.getDefaultClient)()) => {
205
215
  if ((0, _dynamic_labs_sdk_client_core.hasExtension)({ extensionKey: TRON_WALLET_ADAPTERS_EXTENSION_KEY }, client)) return;
@@ -277,4 +287,4 @@ Object.defineProperty(exports, 'version', {
277
287
  return version;
278
288
  }
279
289
  });
280
- //# sourceMappingURL=addTronWalletAdaptersExtension-BpvmUaz-.cjs.js.map
290
+ //# sourceMappingURL=addTronWalletAdaptersExtension-D4mFN3HP.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addTronWalletAdaptersExtension-D4mFN3HP.cjs.js","names":["TronWeb","InvalidParamError","BaseError","InvalidParamError","chain: Chain","WalletReadyState","metadata: WalletProviderMetadata","WalletProviderEnum","connect: TronWalletProvider['connect']","disconnect: TronWalletProvider['disconnect']","getActiveNetworkId: TronWalletProvider['getActiveNetworkId']","getConnectedAddresses: TronWalletProvider['getConnectedAddresses']","signMessage: TronWalletProvider['signMessage']","getTronWeb: TronWalletProvider['getTronWeb']","TronWeb","tronWalletProviders: TronWalletProvider[]","OkxWalletAdapter","TronLinkAdapter","TrustAdapter","TokenPocketAdapter","BitKeepAdapter","WalletProviderPriority"],"sources":["../package.json","../src/utils/constants.ts","../src/utils/fetchTronBalance/fetchTronBalance.ts","../src/utils/createTronNetworkProvider/createTronNetworkProvider.ts","../src/registerTronNetworkProviderBuilder/registerTronNetworkProviderBuilder.ts","../src/utils/convertChainIdToDecimal/convertChainIdToDecimal.ts","../src/isTronWalletAccount/isTronWalletAccount.ts","../src/isTronWalletProvider/isTronWalletProvider.ts","../src/utils/tronExecuteCheckoutTransaction/tronExecuteCheckoutTransaction.ts","../src/errors/NotTronProviderError/NotTronProviderError.ts","../src/utils/tronTransferAmount/tronTransferAmount.ts","../src/walletAdapters/utils/createWalletProviderForTronWalletAdapter/createWalletProviderForTronWalletAdapter.ts","../src/walletAdapters/addTronWalletAdaptersExtension/addTronWalletAdaptersExtension.ts"],"sourcesContent":["","// 1 TRX = 10^6 SUN (similar to wei for Ethereum)\nexport const SUN_PER_TRX = 1e6;\n","import type { NetworkData } from '@dynamic-labs-sdk/client';\nimport { TronWeb } from 'tronweb';\n\nimport { SUN_PER_TRX } from '../constants';\n\ntype FetchTronBalanceParams = {\n address: string;\n networkData: NetworkData;\n};\n\n/** @not-instrumented */\nexport const fetchTronBalance = async ({\n address,\n networkData,\n}: FetchTronBalanceParams): Promise<string | null> => {\n const tronWeb = new TronWeb({\n fullHost: networkData.rpcUrls.http[0],\n });\n\n const balanceInSun = await tronWeb.trx.getBalance(address);\n\n return (Number(balanceInSun) / SUN_PER_TRX).toString();\n};\n","import type { NetworkData } from '@dynamic-labs-sdk/client';\nimport { createBaseNetworkProvider } from '@dynamic-labs-sdk/client/core';\n\nimport type { TronNetworkProvider } from '../../TronNetworkProvider.types';\nimport { fetchTronBalance } from '../fetchTronBalance';\n\n/** @not-instrumented */\nexport const createTronNetworkProvider = (\n networkData: NetworkData\n): TronNetworkProvider => ({\n ...createBaseNetworkProvider('TRON', networkData),\n getBalance: async ({ address }) => ({\n balance: await fetchTronBalance({\n address,\n networkData,\n }),\n }),\n});\n","import type { DynamicClient } from '@dynamic-labs-sdk/client';\nimport { getNetworkProviderBuilderRegistry } from '@dynamic-labs-sdk/client/core';\n\nimport { createTronNetworkProvider } from '../utils/createTronNetworkProvider';\n\n/** @not-instrumented */\nexport const registerTronNetworkProviderBuilder = (\n client: DynamicClient\n): void => {\n const networkProviderBuilderRegistry =\n getNetworkProviderBuilderRegistry(client);\n\n // If the Tron network provider builder is already registered, return.\n if (networkProviderBuilderRegistry.get().get('TRON')) {\n return;\n }\n\n networkProviderBuilderRegistry.register({\n builder: createTronNetworkProvider,\n chain: 'TRON',\n });\n};\n","/** @not-instrumented */\nexport const convertChainIdToDecimal = (chainId: string): string =>\n chainId.startsWith('0x') ? parseInt(chainId, 16).toString() : chainId;\n","import type { WalletAccount } from '@dynamic-labs-sdk/client';\n\nimport type { TronWalletAccount } from '../TronWalletAccount.types';\n\n/** @not-instrumented */\nexport const isTronWalletAccount = (\n walletAccount: WalletAccount\n): walletAccount is TronWalletAccount => walletAccount.chain === 'TRON';\n","import type { WalletProvider } from '@dynamic-labs-sdk/client/core';\n\nimport type { TronWalletProvider } from '../TronWalletProvider.types';\n\n/** @not-instrumented */\nexport const isTronWalletProvider = (\n provider: WalletProvider | TronWalletProvider\n): provider is TronWalletProvider => {\n return provider.chain === 'TRON';\n};\n","import {\n type DynamicClient,\n InvalidParamError,\n} from '@dynamic-labs-sdk/client';\nimport type {\n ExecuteCheckoutTransactionParams,\n ExecuteCheckoutTransactionResult,\n} from '@dynamic-labs-sdk/client/core';\nimport { getWalletProviderFromWalletAccount } from '@dynamic-labs-sdk/client/core';\n\nimport type { TronSigningPayload } from '../../checkoutTransaction.types';\nimport { isTronWalletAccount } from '../../isTronWalletAccount';\nimport { isTronWalletProvider } from '../../isTronWalletProvider';\n\n/**\n * Executes a Tron checkout transaction by deserializing the transaction from\n * the signing payload, signing it with TronWeb, and broadcasting it.\n *\n * 1. Validates that the wallet account is a Tron wallet account\n * 2. Extracts the serialized transaction from the signing payload\n * 3. Parses, signs, and broadcasts via TronWeb\n *\n * @param params.signingPayload - The chain-aware signing payload containing `serializedTransaction`.\n * @param params.walletAccount - The wallet account used to sign and send the transaction.\n * @param params.onStepChange - Optional callback invoked with `'transaction'` when the signing step begins.\n * @param client - The Dynamic client instance.\n * @returns The transaction hash from the broadcast result.\n * @not-instrumented\n */\nexport const tronExecuteCheckoutTransaction = async (\n {\n onStepChange,\n signingPayload,\n walletAccount,\n }: ExecuteCheckoutTransactionParams,\n client: DynamicClient\n): Promise<ExecuteCheckoutTransactionResult> => {\n const provider = getWalletProviderFromWalletAccount(\n { walletAccount },\n client\n );\n\n if (!isTronWalletAccount(walletAccount) || !isTronWalletProvider(provider)) {\n throw new InvalidParamError('Wallet account is not a Tron wallet account');\n }\n\n const tronPayload = signingPayload as TronSigningPayload;\n\n if (!tronPayload.serializedTransaction?.serializedTransaction) {\n throw new InvalidParamError(\n 'Signing payload is missing serialized transaction data'\n );\n }\n\n onStepChange?.('transaction');\n\n const tronWeb = await provider.getTronWeb({ walletAccount });\n\n const unsignedTransaction = JSON.parse(\n tronPayload.serializedTransaction.serializedTransaction\n );\n\n const signedTransaction = await tronWeb.trx.sign(unsignedTransaction);\n const broadcastResult = await tronWeb.trx.sendRawTransaction(\n signedTransaction\n );\n\n return { transactionHash: broadcastResult.txid };\n};\n","import { BaseError } from '@dynamic-labs-sdk/client';\n\nexport class NotTronProviderError extends BaseError {\n public readonly providerKey: string;\n\n constructor(params: { providerKey: string }) {\n super({\n cause: null,\n code: 'not_tron_provider_error',\n docsUrl: null,\n name: 'NotTronProviderError',\n shortMessage: 'Provider is not a Tron wallet provider',\n });\n\n this.providerKey = params.providerKey;\n }\n}\n","import type { DynamicClient } from '@dynamic-labs-sdk/client';\nimport { InvalidParamError } from '@dynamic-labs-sdk/client';\nimport {\n type TransferAmountParams,\n getWalletProviderFromWalletAccount,\n parseAmountToSmallestUnit,\n} from '@dynamic-labs-sdk/client/core';\n\nimport { NotTronProviderError } from '../../errors/NotTronProviderError';\nimport { isTronWalletAccount } from '../../isTronWalletAccount';\nimport { isTronWalletProvider } from '../../isTronWalletProvider';\n\nconst TRX_DECIMALS = 6;\n\n/**\n * Transfers native TRX or TRC20 tokens from one wallet to another.\n *\n * Converts the human-readable amount string to the smallest unit (SUN for TRX,\n * or the appropriate unit for TRC20 tokens) using string-based arithmetic\n * to avoid floating-point precision issues.\n * @not-instrumented\n */\nexport const tronTransferAmount = async (\n { amount, recipient, token, walletAccount }: TransferAmountParams,\n client: DynamicClient\n): Promise<{ transactionHash: string }> => {\n if (!isTronWalletAccount(walletAccount)) {\n throw new InvalidParamError(\n 'Wallet account is not a Tron wallet account'\n );\n }\n\n const provider = getWalletProviderFromWalletAccount(\n { walletAccount },\n client\n );\n\n if (!isTronWalletProvider(provider)) {\n throw new NotTronProviderError({ providerKey: provider.key });\n }\n\n const tronWeb = await provider.getTronWeb({ walletAccount });\n\n if (token?.address) {\n const decimals = token.decimals ?? TRX_DECIMALS;\n const smallestUnitAmount = parseAmountToSmallestUnit({\n amount,\n decimals,\n });\n\n const contract = await tronWeb.contract().at(token.address);\n const result = await contract.transfer(recipient, smallestUnitAmount).send();\n\n return { transactionHash: result };\n }\n\n const sunAmount = parseAmountToSmallestUnit({\n amount,\n decimals: TRX_DECIMALS,\n });\n\n const result = await tronWeb.trx.sendTransaction(\n recipient,\n Number(sunAmount),\n { address: walletAccount.address }\n );\n\n return { transactionHash: result.txid };\n};\n","import {\n type Chain,\n type DynamicClient,\n type WalletProviderMetadata,\n assertWalletAccountSigningAvailability,\n getActiveNetworkData,\n} from '@dynamic-labs-sdk/client';\nimport {\n assertDefined,\n formatWalletProviderGroupKey,\n formatWalletProviderKey,\n} from '@dynamic-labs-sdk/client/core';\nimport { WalletProviderEnum } from '@dynamic-labs/sdk-api-core';\nimport type { Adapter } from '@tronweb3/tronwallet-abstract-adapter';\nimport { WalletReadyState } from '@tronweb3/tronwallet-abstract-adapter';\nimport { TronWeb } from 'tronweb';\n\nimport type {\n TronAdapter,\n TronWalletProvider,\n} from '../../../TronWalletProvider.types';\nimport { convertChainIdToDecimal } from '../../../utils/convertChainIdToDecimal';\nimport { tronExecuteCheckoutTransaction } from '../../../utils/tronExecuteCheckoutTransaction';\nimport { tronTransferAmount } from '../../../utils/tronTransferAmount';\n\ntype CreateWalletProviderForTronWalletAdapterParams = {\n adapter: Adapter;\n dynamicClient: DynamicClient;\n};\n\n/** @not-instrumented */\nexport const createWalletProviderForTronWalletAdapter = ({\n dynamicClient,\n adapter,\n}: CreateWalletProviderForTronWalletAdapterParams):\n | TronWalletProvider\n | undefined => {\n const chain: Chain = 'TRON';\n\n // we have to do this type cast because these adapters have the _wallet property private,\n // but we need to access it to get the TronWeb instance\n const tronAdapter = adapter as unknown as TronAdapter;\n\n // Wallet is not installed\n if (tronAdapter.readyState !== WalletReadyState.Found) {\n return undefined;\n }\n\n const metadata: WalletProviderMetadata = {\n displayName: tronAdapter.name,\n icon: tronAdapter.icon,\n };\n\n const walletProviderType = WalletProviderEnum.BrowserExtension;\n\n const key = formatWalletProviderKey({\n chain,\n displayName: metadata.displayName,\n walletProviderType,\n });\n\n const connect: TronWalletProvider['connect'] = async () => {\n await tronAdapter.connect();\n\n // Some wallets (Trust, Bitget) populate the address asynchronously after connect()\n // Wait briefly for the address to be populated by the wallet\n const startTime = Date.now();\n while (!tronAdapter.address?.length && Date.now() - startTime < 1000) {\n await new Promise((resolve) => setTimeout(resolve, 50));\n }\n\n return {\n addresses: tronAdapter.address ? [{ address: tronAdapter.address }] : [],\n };\n };\n\n const disconnect: TronWalletProvider['disconnect'] = async () => {\n return tronAdapter.disconnect();\n };\n\n const getActiveNetworkId: TronWalletProvider['getActiveNetworkId'] =\n async () => {\n const networkInfo = await tronAdapter.network();\n\n const networkId = convertChainIdToDecimal(networkInfo.chainId);\n\n return { networkId };\n };\n\n const getConnectedAddresses: TronWalletProvider['getConnectedAddresses'] =\n async () => {\n return {\n addresses: tronAdapter.address ? [tronAdapter.address] : [],\n };\n };\n\n const signMessage: TronWalletProvider['signMessage'] = async ({\n message,\n walletAccount,\n }) => {\n assertDefined(walletAccount, 'Wallet account not found');\n\n await assertWalletAccountSigningAvailability(\n { walletAccount },\n dynamicClient\n );\n\n const signedMessage = await tronAdapter.signMessage(message);\n\n return {\n signature: signedMessage,\n };\n };\n\n const getTronWeb: TronWalletProvider['getTronWeb'] = async ({\n walletAccount,\n }) => {\n const tronWeb =\n tronAdapter._wallet?.tronWeb || tronAdapter._wallet?.tron?.tronWeb;\n\n if (tronWeb) {\n return tronWeb;\n }\n\n const activeNetworkData = await getActiveNetworkData(\n { walletAccount },\n dynamicClient\n );\n assertDefined(activeNetworkData, 'No active network data found');\n\n const url = activeNetworkData.networkData?.rpcUrls.http[0];\n assertDefined(url, 'No RPC URL found for active network');\n\n return new TronWeb({ fullHost: url });\n };\n\n return {\n chain,\n connect,\n disconnect,\n executeCheckoutTransaction: (args) =>\n tronExecuteCheckoutTransaction(args, dynamicClient),\n getActiveNetworkId,\n getConnectedAddresses,\n getTronWeb,\n groupKey: formatWalletProviderGroupKey(metadata.displayName),\n key,\n metadata,\n signMessage,\n transferAmount: (args) => tronTransferAmount(args, dynamicClient),\n walletProviderType,\n };\n};\n","import {\n WalletProviderPriority,\n getDefaultClient,\n getWalletProviderRegistry,\n hasExtension,\n registerExtension,\n} from '@dynamic-labs-sdk/client/core';\nimport {\n BitKeepAdapter,\n OkxWalletAdapter,\n TokenPocketAdapter,\n TronLinkAdapter,\n TrustAdapter,\n} from '@tronweb3/tronwallet-adapters';\n\nimport { registerTronNetworkProviderBuilder } from '../../registerTronNetworkProviderBuilder';\nimport type { TronWalletProvider } from '../../TronWalletProvider.types';\nimport { createWalletProviderForTronWalletAdapter } from '../utils/createWalletProviderForTronWalletAdapter';\n\nexport const TRON_WALLET_ADAPTERS_EXTENSION_KEY = 'tronWalletAdapters';\n\n/**\n * Adds the Tron Wallet Adapters extension to the Dynamic client.\n *\n * This extension enables integration with wallets that have related Tron Wallet Adapters ('@tronweb3/tronwallet-adapters'),\n * automatically registering compatible wallets for use with the Dynamic SDK.\n *\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @not-instrumented\n */\nexport const addTronWalletAdaptersExtension = (\n client = getDefaultClient()\n): void => {\n if (\n hasExtension({ extensionKey: TRON_WALLET_ADAPTERS_EXTENSION_KEY }, client)\n ) {\n return;\n }\n\n registerExtension(\n { extensionKey: TRON_WALLET_ADAPTERS_EXTENSION_KEY },\n client\n );\n\n registerTronNetworkProviderBuilder(client);\n\n const walletProviderRegistry = getWalletProviderRegistry(client);\n\n const tronWalletProviders: TronWalletProvider[] = [];\n\n // Create and register OKX wallet provider\n const okxWalletProvider = createWalletProviderForTronWalletAdapter({\n adapter: new OkxWalletAdapter(),\n dynamicClient: client,\n });\n if (okxWalletProvider) {\n tronWalletProviders.push(okxWalletProvider);\n }\n\n // Create and register TronLink wallet provider\n const tronLinkWalletProvider = createWalletProviderForTronWalletAdapter({\n adapter: new TronLinkAdapter(),\n dynamicClient: client,\n });\n if (tronLinkWalletProvider) {\n tronWalletProviders.push(tronLinkWalletProvider);\n }\n\n // Create and register Trust wallet provider\n const trustWalletProvider = createWalletProviderForTronWalletAdapter({\n adapter: new TrustAdapter(),\n dynamicClient: client,\n });\n if (trustWalletProvider) {\n tronWalletProviders.push(trustWalletProvider);\n }\n\n // Create and register TokenPocket wallet provider\n const tokenPocketWalletProvider = createWalletProviderForTronWalletAdapter({\n adapter: new TokenPocketAdapter(),\n dynamicClient: client,\n });\n if (tokenPocketWalletProvider) {\n tronWalletProviders.push(tokenPocketWalletProvider);\n }\n\n // Create and register Bitget wallet provider\n const bitgetWalletProvider = createWalletProviderForTronWalletAdapter({\n adapter: new BitKeepAdapter(),\n dynamicClient: client,\n });\n if (bitgetWalletProvider) {\n tronWalletProviders.push(bitgetWalletProvider);\n }\n\n tronWalletProviders.forEach((walletProvider) => {\n walletProviderRegistry.register({\n priority: WalletProviderPriority.WINDOW_INJECT,\n walletProvider,\n });\n });\n};\n"],"mappings":"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"}
@@ -10,6 +10,7 @@ type GetTronWebParams = {
10
10
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
11
11
  * @returns A promise that resolves to a TronWeb instance
12
12
  * @throws NotTronProviderError If the wallet account's provider is not a Tron provider
13
+ * @not-instrumented
13
14
  */
14
15
  export declare const getTronWeb: ({ walletAccount }: GetTronWebParams, client?: import("@dynamic-labs-sdk/client").DynamicClient) => Promise<TronWeb>;
15
16
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"getTronWeb.d.ts","sourceRoot":"","sources":["../../src/getTronWeb/getTronWeb.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,KAAK,gBAAgB,GAAG;IACtB,aAAa,EAAE,iBAAiB,CAAC;CAClC,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,sBACF,gBAAgB,gEAElC,OAAO,CAAC,OAAO,CAajB,CAAC"}
1
+ {"version":3,"file":"getTronWeb.d.ts","sourceRoot":"","sources":["../../src/getTronWeb/getTronWeb.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,KAAK,gBAAgB,GAAG;IACtB,aAAa,EAAE,iBAAiB,CAAC;CAClC,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,UAAU,sBACF,gBAAgB,gEAElC,OAAO,CAAC,OAAO,CAajB,CAAC"}
package/dist/index.cjs.js CHANGED
@@ -1,4 +1,4 @@
1
- const require_addTronWalletAdaptersExtension = require('./addTronWalletAdaptersExtension-BpvmUaz-.cjs.js');
1
+ const require_addTronWalletAdaptersExtension = require('./addTronWalletAdaptersExtension-D4mFN3HP.cjs.js');
2
2
  let _dynamic_labs_sdk_assert_package_version = require("@dynamic-labs-sdk/assert-package-version");
3
3
  let _dynamic_labs_sdk_client_core = require("@dynamic-labs-sdk/client/core");
4
4
  let _dynamic_labs_sdk_client = require("@dynamic-labs-sdk/client");
@@ -10,6 +10,7 @@ let _dynamic_labs_sdk_client = require("@dynamic-labs-sdk/client");
10
10
  * This is a convenience function that adds support for Tron wallets.
11
11
  *
12
12
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
13
+ * @not-instrumented
13
14
  */
14
15
  const addTronExtension = (client = (0, _dynamic_labs_sdk_client_core.getDefaultClient)()) => {
15
16
  require_addTronWalletAdaptersExtension.addTronWalletAdaptersExtension(client);
@@ -24,6 +25,7 @@ const addTronExtension = (client = (0, _dynamic_labs_sdk_client_core.getDefaultC
24
25
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
25
26
  * @returns A promise that resolves to a TronWeb instance
26
27
  * @throws NotTronProviderError If the wallet account's provider is not a Tron provider
28
+ * @not-instrumented
27
29
  */
28
30
  const getTronWeb = async ({ walletAccount }, client = (0, _dynamic_labs_sdk_client_core.getDefaultClient)()) => {
29
31
  const provider = (0, _dynamic_labs_sdk_client_core.getWalletProviderFromWalletAccount)({ walletAccount }, client);
@@ -33,6 +35,7 @@ const getTronWeb = async ({ walletAccount }, client = (0, _dynamic_labs_sdk_clie
33
35
 
34
36
  //#endregion
35
37
  //#region src/isTronNetworkProvider/isTronNetworkProvider.ts
38
+ /** @not-instrumented */
36
39
  const isTronNetworkProvider = (networkProvider) => networkProvider.chain === "TRON";
37
40
 
38
41
  //#endregion
@@ -43,6 +46,7 @@ const isTronNetworkProvider = (networkProvider) => networkProvider.chain === "TR
43
46
  * @param params.walletAccount - The wallet account to sign and send the transaction with
44
47
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
45
48
  * @returns A promise that resolves to the broadcast return of the signed transaction
49
+ * @not-instrumented
46
50
  */
47
51
  const sendTransaction = async ({ walletAccount, transaction }, client = (0, _dynamic_labs_sdk_client.getDefaultClient)()) => {
48
52
  await (0, _dynamic_labs_sdk_client.assertWalletAccountSigningAvailability)({ walletAccount }, client);
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","names":["isTronWalletProvider","NotTronProviderError","isTronWalletProvider","NotTronProviderError","packageName","packageVersion"],"sources":["../src/addTronExtension/addTronExtension.ts","../src/getTronWeb/getTronWeb.ts","../src/isTronNetworkProvider/isTronNetworkProvider.ts","../src/sendTransaction/sendTransaction.ts","../src/exports/index.ts"],"sourcesContent":["import { getDefaultClient } from '@dynamic-labs-sdk/client/core';\n\nimport { addTronWalletAdaptersExtension } from '../walletAdapters/addTronWalletAdaptersExtension';\n\n/**\n * Adds the Tron extension to the Dynamic client.\n *\n * This is a convenience function that adds support for Tron wallets.\n *\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n */\nexport const addTronExtension = (client = getDefaultClient()): void => {\n addTronWalletAdaptersExtension(client);\n};\n","import {\n getDefaultClient,\n getWalletProviderFromWalletAccount,\n} from '@dynamic-labs-sdk/client/core';\nimport type { TronWeb } from 'tronweb';\n\nimport { NotTronProviderError } from '../errors/NotTronProviderError';\nimport { isTronWalletProvider } from '../isTronWalletProvider';\nimport type { TronWalletAccount } from '../TronWalletAccount.types';\n\ntype GetTronWebParams = {\n walletAccount: TronWalletAccount;\n};\n\n/**\n * Retrieves a TronWeb from a wallet account.\n *\n * @param params.walletAccount - The wallet account to get the TronWeb for.\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns A promise that resolves to a TronWeb instance\n * @throws NotTronProviderError If the wallet account's provider is not a Tron provider\n */\nexport const getTronWeb = async (\n { walletAccount }: GetTronWebParams,\n client = getDefaultClient()\n): Promise<TronWeb> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isTronWalletProvider(provider)) {\n throw new NotTronProviderError({ providerKey: provider.key });\n }\n\n return provider.getTronWeb({ walletAccount });\n};\n","import type { NetworkProvider } from '@dynamic-labs-sdk/client';\n\nimport type { TronNetworkProvider } from '../TronNetworkProvider.types';\n\nexport const isTronNetworkProvider = (\n networkProvider: NetworkProvider\n): networkProvider is TronNetworkProvider => networkProvider.chain === 'TRON';\n","import {\n assertWalletAccountSigningAvailability,\n getDefaultClient,\n} from '@dynamic-labs-sdk/client';\nimport { getWalletProviderFromWalletAccount } from '@dynamic-labs-sdk/client/core';\n\nimport { NotTronProviderError } from '../errors/NotTronProviderError';\nimport { isTronWalletProvider } from '../isTronWalletProvider';\nimport type { TronWalletAccount } from '../TronWalletAccount.types';\nimport type { TronBroadcastReturnSignedTransaction } from '../TronWalletProvider.types';\n\ntype SendTransactionParams = {\n transaction: {\n amount: number;\n to: string;\n };\n walletAccount: TronWalletAccount;\n};\n\n/**\n * Sends a Tron transaction\n * @param params.transaction - The transaction to send\n * @param params.walletAccount - The wallet account to sign and send the transaction with\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns A promise that resolves to the broadcast return of the signed transaction\n */\nexport const sendTransaction = async (\n { walletAccount, transaction }: SendTransactionParams,\n client = getDefaultClient()\n): Promise<TronBroadcastReturnSignedTransaction> => {\n await assertWalletAccountSigningAvailability({ walletAccount }, client);\n\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isTronWalletProvider(provider)) {\n throw new NotTronProviderError({ providerKey: provider.key });\n }\n\n const tronWeb = await provider.getTronWeb({ walletAccount });\n\n const { amount, to } = transaction;\n const amountInSun = tronWeb.toSun(amount);\n\n return tronWeb.trx.sendTransaction(to, Number(amountInSun), {\n address: walletAccount.address,\n });\n};\n","import { assertPackageVersion } from '@dynamic-labs-sdk/assert-package-version';\n\nimport {\n name as packageName,\n version as packageVersion,\n} from '../../package.json';\nassertPackageVersion(packageName, packageVersion);\n\nexport { addTronExtension } from '../addTronExtension';\nexport { getTronWeb } from '../getTronWeb';\nexport { isTronNetworkProvider } from '../isTronNetworkProvider';\nexport { isTronWalletAccount } from '../isTronWalletAccount';\nexport { sendTransaction } from '../sendTransaction';\nexport type { TronNetworkProvider } from '../TronNetworkProvider.types';\nexport type { TronWalletAccount } from '../TronWalletAccount.types';\nexport type {\n TronBroadcastReturnSignedTransaction,\n TronWeb,\n} from '../TronWalletProvider.types';\n"],"mappings":";;;;;;;;;;;;;AAWA,MAAa,oBAAoB,8DAA2B,KAAW;AACrE,uEAA+B,OAAO;;;;;;;;;;;;;ACUxC,MAAa,aAAa,OACxB,EAAE,iBACF,8DAA2B,KACN;CACrB,MAAM,iFACJ,EACE,eACD,EACD,OACD;AAED,KAAI,CAACA,4DAAqB,SAAS,CACjC,OAAM,IAAIC,4DAAqB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG/D,QAAO,SAAS,WAAW,EAAE,eAAe,CAAC;;;;;ACjC/C,MAAa,yBACX,oBAC2C,gBAAgB,UAAU;;;;;;;;;;;ACoBvE,MAAa,kBAAkB,OAC7B,EAAE,eAAe,eACjB,yDAA2B,KACuB;AAClD,4EAA6C,EAAE,eAAe,EAAE,OAAO;CAEvE,MAAM,iFACJ,EACE,eACD,EACD,OACD;AAED,KAAI,CAACC,4DAAqB,SAAS,CACjC,OAAM,IAAIC,4DAAqB,EAAE,aAAa,SAAS,KAAK,CAAC;CAG/D,MAAM,UAAU,MAAM,SAAS,WAAW,EAAE,eAAe,CAAC;CAE5D,MAAM,EAAE,QAAQ,OAAO;CACvB,MAAM,cAAc,QAAQ,MAAM,OAAO;AAEzC,QAAO,QAAQ,IAAI,gBAAgB,IAAI,OAAO,YAAY,EAAE,EAC1D,SAAS,cAAc,SACxB,CAAC;;;;;mEC5CiBC,6CAAaC,+CAAe"}
1
+ {"version":3,"file":"index.cjs.js","names":["isTronWalletProvider","NotTronProviderError","isTronWalletProvider","NotTronProviderError","packageName","packageVersion"],"sources":["../src/addTronExtension/addTronExtension.ts","../src/getTronWeb/getTronWeb.ts","../src/isTronNetworkProvider/isTronNetworkProvider.ts","../src/sendTransaction/sendTransaction.ts","../src/exports/index.ts"],"sourcesContent":["import { getDefaultClient } from '@dynamic-labs-sdk/client/core';\n\nimport { addTronWalletAdaptersExtension } from '../walletAdapters/addTronWalletAdaptersExtension';\n\n/**\n * Adds the Tron extension to the Dynamic client.\n *\n * This is a convenience function that adds support for Tron wallets.\n *\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @not-instrumented\n */\nexport const addTronExtension = (client = getDefaultClient()): void => {\n addTronWalletAdaptersExtension(client);\n};\n","import {\n getDefaultClient,\n getWalletProviderFromWalletAccount,\n} from '@dynamic-labs-sdk/client/core';\nimport type { TronWeb } from 'tronweb';\n\nimport { NotTronProviderError } from '../errors/NotTronProviderError';\nimport { isTronWalletProvider } from '../isTronWalletProvider';\nimport type { TronWalletAccount } from '../TronWalletAccount.types';\n\ntype GetTronWebParams = {\n walletAccount: TronWalletAccount;\n};\n\n/**\n * Retrieves a TronWeb from a wallet account.\n *\n * @param params.walletAccount - The wallet account to get the TronWeb for.\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns A promise that resolves to a TronWeb instance\n * @throws NotTronProviderError If the wallet account's provider is not a Tron provider\n * @not-instrumented\n */\nexport const getTronWeb = async (\n { walletAccount }: GetTronWebParams,\n client = getDefaultClient()\n): Promise<TronWeb> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isTronWalletProvider(provider)) {\n throw new NotTronProviderError({ providerKey: provider.key });\n }\n\n return provider.getTronWeb({ walletAccount });\n};\n","import type { NetworkProvider } from '@dynamic-labs-sdk/client';\n\nimport type { TronNetworkProvider } from '../TronNetworkProvider.types';\n\n/** @not-instrumented */\nexport const isTronNetworkProvider = (\n networkProvider: NetworkProvider\n): networkProvider is TronNetworkProvider => networkProvider.chain === 'TRON';\n","import {\n assertWalletAccountSigningAvailability,\n getDefaultClient,\n} from '@dynamic-labs-sdk/client';\nimport { getWalletProviderFromWalletAccount } from '@dynamic-labs-sdk/client/core';\n\nimport { NotTronProviderError } from '../errors/NotTronProviderError';\nimport { isTronWalletProvider } from '../isTronWalletProvider';\nimport type { TronWalletAccount } from '../TronWalletAccount.types';\nimport type { TronBroadcastReturnSignedTransaction } from '../TronWalletProvider.types';\n\ntype SendTransactionParams = {\n transaction: {\n amount: number;\n to: string;\n };\n walletAccount: TronWalletAccount;\n};\n\n/**\n * Sends a Tron transaction\n * @param params.transaction - The transaction to send\n * @param params.walletAccount - The wallet account to sign and send the transaction with\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns A promise that resolves to the broadcast return of the signed transaction\n * @not-instrumented\n */\nexport const sendTransaction = async (\n { walletAccount, transaction }: SendTransactionParams,\n client = getDefaultClient()\n): Promise<TronBroadcastReturnSignedTransaction> => {\n await assertWalletAccountSigningAvailability({ walletAccount }, client);\n\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isTronWalletProvider(provider)) {\n throw new NotTronProviderError({ providerKey: provider.key });\n }\n\n const tronWeb = await provider.getTronWeb({ walletAccount });\n\n const { amount, to } = transaction;\n const amountInSun = tronWeb.toSun(amount);\n\n return tronWeb.trx.sendTransaction(to, Number(amountInSun), {\n address: walletAccount.address,\n });\n};\n","import { assertPackageVersion } from '@dynamic-labs-sdk/assert-package-version';\n\nimport {\n name as packageName,\n version as packageVersion,\n} from '../../package.json';\nassertPackageVersion(packageName, packageVersion);\n\nexport { addTronExtension } from '../addTronExtension';\nexport { getTronWeb } from '../getTronWeb';\nexport { isTronNetworkProvider } from '../isTronNetworkProvider';\nexport { isTronWalletAccount } from '../isTronWalletAccount';\nexport { sendTransaction } from '../sendTransaction';\nexport type { TronNetworkProvider } from '../TronNetworkProvider.types';\nexport type { TronWalletAccount } from '../TronWalletAccount.types';\nexport type {\n TronBroadcastReturnSignedTransaction,\n TronWeb,\n} from '../TronWalletProvider.types';\n"],"mappings":";;;;;;;;;;;;;;AAYA,MAAa,oBAAoB,8DAA2B,KAAW;AACrE,uEAA+B,OAAO;;;;;;;;;;;;;;ACUxC,MAAa,aAAa,OACxB,EAAE,iBACF,8DAA2B,KACN;CACrB,MAAM,iFACJ,EACE,eACD,EACD,OACD;AAED,KAAI,CAACA,4DAAqB,SAAS,CACjC,OAAM,IAAIC,4DAAqB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG/D,QAAO,SAAS,WAAW,EAAE,eAAe,CAAC;;;;;;ACjC/C,MAAa,yBACX,oBAC2C,gBAAgB,UAAU;;;;;;;;;;;;ACoBvE,MAAa,kBAAkB,OAC7B,EAAE,eAAe,eACjB,yDAA2B,KACuB;AAClD,4EAA6C,EAAE,eAAe,EAAE,OAAO;CAEvE,MAAM,iFACJ,EACE,eACD,EACD,OACD;AAED,KAAI,CAACC,4DAAqB,SAAS,CACjC,OAAM,IAAIC,4DAAqB,EAAE,aAAa,SAAS,KAAK,CAAC;CAG/D,MAAM,UAAU,MAAM,SAAS,WAAW,EAAE,eAAe,CAAC;CAE5D,MAAM,EAAE,QAAQ,OAAO;CACvB,MAAM,cAAc,QAAQ,MAAM,OAAO;AAEzC,QAAO,QAAQ,IAAI,gBAAgB,IAAI,OAAO,YAAY,EAAE,EAC1D,SAAS,cAAc,SACxB,CAAC;;;;;mEC7CiBC,6CAAaC,+CAAe"}
package/dist/index.esm.js CHANGED
@@ -1,4 +1,4 @@
1
- import { a as name, i as isTronWalletAccount, n as NotTronProviderError, o as version, r as isTronWalletProvider, t as addTronWalletAdaptersExtension } from "./addTronWalletAdaptersExtension-B8aQwiHS.esm.js";
1
+ import { a as name, i as isTronWalletAccount, n as NotTronProviderError, o as version, r as isTronWalletProvider, t as addTronWalletAdaptersExtension } from "./addTronWalletAdaptersExtension-C7bwovzz.esm.js";
2
2
  import { assertPackageVersion } from "@dynamic-labs-sdk/assert-package-version";
3
3
  import { getDefaultClient, getWalletProviderFromWalletAccount } from "@dynamic-labs-sdk/client/core";
4
4
  import { assertWalletAccountSigningAvailability, getDefaultClient as getDefaultClient$1 } from "@dynamic-labs-sdk/client";
@@ -10,6 +10,7 @@ import { assertWalletAccountSigningAvailability, getDefaultClient as getDefaultC
10
10
  * This is a convenience function that adds support for Tron wallets.
11
11
  *
12
12
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
13
+ * @not-instrumented
13
14
  */
14
15
  const addTronExtension = (client = getDefaultClient()) => {
15
16
  addTronWalletAdaptersExtension(client);
@@ -24,6 +25,7 @@ const addTronExtension = (client = getDefaultClient()) => {
24
25
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
25
26
  * @returns A promise that resolves to a TronWeb instance
26
27
  * @throws NotTronProviderError If the wallet account's provider is not a Tron provider
28
+ * @not-instrumented
27
29
  */
28
30
  const getTronWeb = async ({ walletAccount }, client = getDefaultClient()) => {
29
31
  const provider = getWalletProviderFromWalletAccount({ walletAccount }, client);
@@ -33,6 +35,7 @@ const getTronWeb = async ({ walletAccount }, client = getDefaultClient()) => {
33
35
 
34
36
  //#endregion
35
37
  //#region src/isTronNetworkProvider/isTronNetworkProvider.ts
38
+ /** @not-instrumented */
36
39
  const isTronNetworkProvider = (networkProvider) => networkProvider.chain === "TRON";
37
40
 
38
41
  //#endregion
@@ -43,6 +46,7 @@ const isTronNetworkProvider = (networkProvider) => networkProvider.chain === "TR
43
46
  * @param params.walletAccount - The wallet account to sign and send the transaction with
44
47
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
45
48
  * @returns A promise that resolves to the broadcast return of the signed transaction
49
+ * @not-instrumented
46
50
  */
47
51
  const sendTransaction = async ({ walletAccount, transaction }, client = getDefaultClient$1()) => {
48
52
  await assertWalletAccountSigningAvailability({ walletAccount }, client);
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","names":["getDefaultClient","packageName","packageVersion"],"sources":["../src/addTronExtension/addTronExtension.ts","../src/getTronWeb/getTronWeb.ts","../src/isTronNetworkProvider/isTronNetworkProvider.ts","../src/sendTransaction/sendTransaction.ts","../src/exports/index.ts"],"sourcesContent":["import { getDefaultClient } from '@dynamic-labs-sdk/client/core';\n\nimport { addTronWalletAdaptersExtension } from '../walletAdapters/addTronWalletAdaptersExtension';\n\n/**\n * Adds the Tron extension to the Dynamic client.\n *\n * This is a convenience function that adds support for Tron wallets.\n *\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n */\nexport const addTronExtension = (client = getDefaultClient()): void => {\n addTronWalletAdaptersExtension(client);\n};\n","import {\n getDefaultClient,\n getWalletProviderFromWalletAccount,\n} from '@dynamic-labs-sdk/client/core';\nimport type { TronWeb } from 'tronweb';\n\nimport { NotTronProviderError } from '../errors/NotTronProviderError';\nimport { isTronWalletProvider } from '../isTronWalletProvider';\nimport type { TronWalletAccount } from '../TronWalletAccount.types';\n\ntype GetTronWebParams = {\n walletAccount: TronWalletAccount;\n};\n\n/**\n * Retrieves a TronWeb from a wallet account.\n *\n * @param params.walletAccount - The wallet account to get the TronWeb for.\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns A promise that resolves to a TronWeb instance\n * @throws NotTronProviderError If the wallet account's provider is not a Tron provider\n */\nexport const getTronWeb = async (\n { walletAccount }: GetTronWebParams,\n client = getDefaultClient()\n): Promise<TronWeb> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isTronWalletProvider(provider)) {\n throw new NotTronProviderError({ providerKey: provider.key });\n }\n\n return provider.getTronWeb({ walletAccount });\n};\n","import type { NetworkProvider } from '@dynamic-labs-sdk/client';\n\nimport type { TronNetworkProvider } from '../TronNetworkProvider.types';\n\nexport const isTronNetworkProvider = (\n networkProvider: NetworkProvider\n): networkProvider is TronNetworkProvider => networkProvider.chain === 'TRON';\n","import {\n assertWalletAccountSigningAvailability,\n getDefaultClient,\n} from '@dynamic-labs-sdk/client';\nimport { getWalletProviderFromWalletAccount } from '@dynamic-labs-sdk/client/core';\n\nimport { NotTronProviderError } from '../errors/NotTronProviderError';\nimport { isTronWalletProvider } from '../isTronWalletProvider';\nimport type { TronWalletAccount } from '../TronWalletAccount.types';\nimport type { TronBroadcastReturnSignedTransaction } from '../TronWalletProvider.types';\n\ntype SendTransactionParams = {\n transaction: {\n amount: number;\n to: string;\n };\n walletAccount: TronWalletAccount;\n};\n\n/**\n * Sends a Tron transaction\n * @param params.transaction - The transaction to send\n * @param params.walletAccount - The wallet account to sign and send the transaction with\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns A promise that resolves to the broadcast return of the signed transaction\n */\nexport const sendTransaction = async (\n { walletAccount, transaction }: SendTransactionParams,\n client = getDefaultClient()\n): Promise<TronBroadcastReturnSignedTransaction> => {\n await assertWalletAccountSigningAvailability({ walletAccount }, client);\n\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isTronWalletProvider(provider)) {\n throw new NotTronProviderError({ providerKey: provider.key });\n }\n\n const tronWeb = await provider.getTronWeb({ walletAccount });\n\n const { amount, to } = transaction;\n const amountInSun = tronWeb.toSun(amount);\n\n return tronWeb.trx.sendTransaction(to, Number(amountInSun), {\n address: walletAccount.address,\n });\n};\n","import { assertPackageVersion } from '@dynamic-labs-sdk/assert-package-version';\n\nimport {\n name as packageName,\n version as packageVersion,\n} from '../../package.json';\nassertPackageVersion(packageName, packageVersion);\n\nexport { addTronExtension } from '../addTronExtension';\nexport { getTronWeb } from '../getTronWeb';\nexport { isTronNetworkProvider } from '../isTronNetworkProvider';\nexport { isTronWalletAccount } from '../isTronWalletAccount';\nexport { sendTransaction } from '../sendTransaction';\nexport type { TronNetworkProvider } from '../TronNetworkProvider.types';\nexport type { TronWalletAccount } from '../TronWalletAccount.types';\nexport type {\n TronBroadcastReturnSignedTransaction,\n TronWeb,\n} from '../TronWalletProvider.types';\n"],"mappings":";;;;;;;;;;;;;AAWA,MAAa,oBAAoB,SAAS,kBAAkB,KAAW;AACrE,gCAA+B,OAAO;;;;;;;;;;;;;ACUxC,MAAa,aAAa,OACxB,EAAE,iBACF,SAAS,kBAAkB,KACN;CACrB,MAAM,WAAW,mCACf,EACE,eACD,EACD,OACD;AAED,KAAI,CAAC,qBAAqB,SAAS,CACjC,OAAM,IAAI,qBAAqB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG/D,QAAO,SAAS,WAAW,EAAE,eAAe,CAAC;;;;;ACjC/C,MAAa,yBACX,oBAC2C,gBAAgB,UAAU;;;;;;;;;;;ACoBvE,MAAa,kBAAkB,OAC7B,EAAE,eAAe,eACjB,SAASA,oBAAkB,KACuB;AAClD,OAAM,uCAAuC,EAAE,eAAe,EAAE,OAAO;CAEvE,MAAM,WAAW,mCACf,EACE,eACD,EACD,OACD;AAED,KAAI,CAAC,qBAAqB,SAAS,CACjC,OAAM,IAAI,qBAAqB,EAAE,aAAa,SAAS,KAAK,CAAC;CAG/D,MAAM,UAAU,MAAM,SAAS,WAAW,EAAE,eAAe,CAAC;CAE5D,MAAM,EAAE,QAAQ,OAAO;CACvB,MAAM,cAAc,QAAQ,MAAM,OAAO;AAEzC,QAAO,QAAQ,IAAI,gBAAgB,IAAI,OAAO,YAAY,EAAE,EAC1D,SAAS,cAAc,SACxB,CAAC;;;;;AC5CJ,qBAAqBC,MAAaC,QAAe"}
1
+ {"version":3,"file":"index.esm.js","names":["getDefaultClient","packageName","packageVersion"],"sources":["../src/addTronExtension/addTronExtension.ts","../src/getTronWeb/getTronWeb.ts","../src/isTronNetworkProvider/isTronNetworkProvider.ts","../src/sendTransaction/sendTransaction.ts","../src/exports/index.ts"],"sourcesContent":["import { getDefaultClient } from '@dynamic-labs-sdk/client/core';\n\nimport { addTronWalletAdaptersExtension } from '../walletAdapters/addTronWalletAdaptersExtension';\n\n/**\n * Adds the Tron extension to the Dynamic client.\n *\n * This is a convenience function that adds support for Tron wallets.\n *\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @not-instrumented\n */\nexport const addTronExtension = (client = getDefaultClient()): void => {\n addTronWalletAdaptersExtension(client);\n};\n","import {\n getDefaultClient,\n getWalletProviderFromWalletAccount,\n} from '@dynamic-labs-sdk/client/core';\nimport type { TronWeb } from 'tronweb';\n\nimport { NotTronProviderError } from '../errors/NotTronProviderError';\nimport { isTronWalletProvider } from '../isTronWalletProvider';\nimport type { TronWalletAccount } from '../TronWalletAccount.types';\n\ntype GetTronWebParams = {\n walletAccount: TronWalletAccount;\n};\n\n/**\n * Retrieves a TronWeb from a wallet account.\n *\n * @param params.walletAccount - The wallet account to get the TronWeb for.\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns A promise that resolves to a TronWeb instance\n * @throws NotTronProviderError If the wallet account's provider is not a Tron provider\n * @not-instrumented\n */\nexport const getTronWeb = async (\n { walletAccount }: GetTronWebParams,\n client = getDefaultClient()\n): Promise<TronWeb> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isTronWalletProvider(provider)) {\n throw new NotTronProviderError({ providerKey: provider.key });\n }\n\n return provider.getTronWeb({ walletAccount });\n};\n","import type { NetworkProvider } from '@dynamic-labs-sdk/client';\n\nimport type { TronNetworkProvider } from '../TronNetworkProvider.types';\n\n/** @not-instrumented */\nexport const isTronNetworkProvider = (\n networkProvider: NetworkProvider\n): networkProvider is TronNetworkProvider => networkProvider.chain === 'TRON';\n","import {\n assertWalletAccountSigningAvailability,\n getDefaultClient,\n} from '@dynamic-labs-sdk/client';\nimport { getWalletProviderFromWalletAccount } from '@dynamic-labs-sdk/client/core';\n\nimport { NotTronProviderError } from '../errors/NotTronProviderError';\nimport { isTronWalletProvider } from '../isTronWalletProvider';\nimport type { TronWalletAccount } from '../TronWalletAccount.types';\nimport type { TronBroadcastReturnSignedTransaction } from '../TronWalletProvider.types';\n\ntype SendTransactionParams = {\n transaction: {\n amount: number;\n to: string;\n };\n walletAccount: TronWalletAccount;\n};\n\n/**\n * Sends a Tron transaction\n * @param params.transaction - The transaction to send\n * @param params.walletAccount - The wallet account to sign and send the transaction with\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns A promise that resolves to the broadcast return of the signed transaction\n * @not-instrumented\n */\nexport const sendTransaction = async (\n { walletAccount, transaction }: SendTransactionParams,\n client = getDefaultClient()\n): Promise<TronBroadcastReturnSignedTransaction> => {\n await assertWalletAccountSigningAvailability({ walletAccount }, client);\n\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isTronWalletProvider(provider)) {\n throw new NotTronProviderError({ providerKey: provider.key });\n }\n\n const tronWeb = await provider.getTronWeb({ walletAccount });\n\n const { amount, to } = transaction;\n const amountInSun = tronWeb.toSun(amount);\n\n return tronWeb.trx.sendTransaction(to, Number(amountInSun), {\n address: walletAccount.address,\n });\n};\n","import { assertPackageVersion } from '@dynamic-labs-sdk/assert-package-version';\n\nimport {\n name as packageName,\n version as packageVersion,\n} from '../../package.json';\nassertPackageVersion(packageName, packageVersion);\n\nexport { addTronExtension } from '../addTronExtension';\nexport { getTronWeb } from '../getTronWeb';\nexport { isTronNetworkProvider } from '../isTronNetworkProvider';\nexport { isTronWalletAccount } from '../isTronWalletAccount';\nexport { sendTransaction } from '../sendTransaction';\nexport type { TronNetworkProvider } from '../TronNetworkProvider.types';\nexport type { TronWalletAccount } from '../TronWalletAccount.types';\nexport type {\n TronBroadcastReturnSignedTransaction,\n TronWeb,\n} from '../TronWalletProvider.types';\n"],"mappings":";;;;;;;;;;;;;;AAYA,MAAa,oBAAoB,SAAS,kBAAkB,KAAW;AACrE,gCAA+B,OAAO;;;;;;;;;;;;;;ACUxC,MAAa,aAAa,OACxB,EAAE,iBACF,SAAS,kBAAkB,KACN;CACrB,MAAM,WAAW,mCACf,EACE,eACD,EACD,OACD;AAED,KAAI,CAAC,qBAAqB,SAAS,CACjC,OAAM,IAAI,qBAAqB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG/D,QAAO,SAAS,WAAW,EAAE,eAAe,CAAC;;;;;;ACjC/C,MAAa,yBACX,oBAC2C,gBAAgB,UAAU;;;;;;;;;;;;ACoBvE,MAAa,kBAAkB,OAC7B,EAAE,eAAe,eACjB,SAASA,oBAAkB,KACuB;AAClD,OAAM,uCAAuC,EAAE,eAAe,EAAE,OAAO;CAEvE,MAAM,WAAW,mCACf,EACE,eACD,EACD,OACD;AAED,KAAI,CAAC,qBAAqB,SAAS,CACjC,OAAM,IAAI,qBAAqB,EAAE,aAAa,SAAS,KAAK,CAAC;CAG/D,MAAM,UAAU,MAAM,SAAS,WAAW,EAAE,eAAe,CAAC;CAE5D,MAAM,EAAE,QAAQ,OAAO;CACvB,MAAM,cAAc,QAAQ,MAAM,OAAO;AAEzC,QAAO,QAAQ,IAAI,gBAAgB,IAAI,OAAO,YAAY,EAAE,EAC1D,SAAS,cAAc,SACxB,CAAC;;;;;AC7CJ,qBAAqBC,MAAaC,QAAe"}
@@ -1,4 +1,5 @@
1
1
  import type { NetworkProvider } from '@dynamic-labs-sdk/client';
2
2
  import type { TronNetworkProvider } from '../TronNetworkProvider.types';
3
+ /** @not-instrumented */
3
4
  export declare const isTronNetworkProvider: (networkProvider: NetworkProvider) => networkProvider is TronNetworkProvider;
4
5
  //# sourceMappingURL=isTronNetworkProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"isTronNetworkProvider.d.ts","sourceRoot":"","sources":["../../src/isTronNetworkProvider/isTronNetworkProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAExE,eAAO,MAAM,qBAAqB,oBACf,eAAe,KAC/B,eAAe,IAAI,mBAAuD,CAAC"}
1
+ {"version":3,"file":"isTronNetworkProvider.d.ts","sourceRoot":"","sources":["../../src/isTronNetworkProvider/isTronNetworkProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAExE,wBAAwB;AACxB,eAAO,MAAM,qBAAqB,oBACf,eAAe,KAC/B,eAAe,IAAI,mBAAuD,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { WalletAccount } from '@dynamic-labs-sdk/client';
2
2
  import type { TronWalletAccount } from '../TronWalletAccount.types';
3
+ /** @not-instrumented */
3
4
  export declare const isTronWalletAccount: (walletAccount: WalletAccount) => walletAccount is TronWalletAccount;
4
5
  //# sourceMappingURL=isTronWalletAccount.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"isTronWalletAccount.d.ts","sourceRoot":"","sources":["../../src/isTronWalletAccount/isTronWalletAccount.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,eAAO,MAAM,mBAAmB,kBACf,aAAa,KAC3B,aAAa,IAAI,iBAAmD,CAAC"}
1
+ {"version":3,"file":"isTronWalletAccount.d.ts","sourceRoot":"","sources":["../../src/isTronWalletAccount/isTronWalletAccount.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,wBAAwB;AACxB,eAAO,MAAM,mBAAmB,kBACf,aAAa,KAC3B,aAAa,IAAI,iBAAmD,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { WalletProvider } from '@dynamic-labs-sdk/client/core';
2
2
  import type { TronWalletProvider } from '../TronWalletProvider.types';
3
+ /** @not-instrumented */
3
4
  export declare const isTronWalletProvider: (provider: WalletProvider | TronWalletProvider) => provider is TronWalletProvider;
4
5
  //# sourceMappingURL=isTronWalletProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"isTronWalletProvider.d.ts","sourceRoot":"","sources":["../../src/isTronWalletProvider/isTronWalletProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEtE,eAAO,MAAM,oBAAoB,aACrB,cAAc,GAAG,kBAAkB,KAC5C,QAAQ,IAAI,kBAEd,CAAC"}
1
+ {"version":3,"file":"isTronWalletProvider.d.ts","sourceRoot":"","sources":["../../src/isTronWalletProvider/isTronWalletProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEtE,wBAAwB;AACxB,eAAO,MAAM,oBAAoB,aACrB,cAAc,GAAG,kBAAkB,KAC5C,QAAQ,IAAI,kBAEd,CAAC"}
@@ -1,3 +1,4 @@
1
1
  import type { DynamicClient } from '@dynamic-labs-sdk/client';
2
+ /** @not-instrumented */
2
3
  export declare const registerTronNetworkProviderBuilder: (client: DynamicClient) => void;
3
4
  //# sourceMappingURL=registerTronNetworkProviderBuilder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registerTronNetworkProviderBuilder.d.ts","sourceRoot":"","sources":["../../src/registerTronNetworkProviderBuilder/registerTronNetworkProviderBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAK9D,eAAO,MAAM,kCAAkC,WACrC,aAAa,KACpB,IAaF,CAAC"}
1
+ {"version":3,"file":"registerTronNetworkProviderBuilder.d.ts","sourceRoot":"","sources":["../../src/registerTronNetworkProviderBuilder/registerTronNetworkProviderBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAK9D,wBAAwB;AACxB,eAAO,MAAM,kCAAkC,WACrC,aAAa,KACpB,IAaF,CAAC"}
@@ -13,6 +13,7 @@ type SendTransactionParams = {
13
13
  * @param params.walletAccount - The wallet account to sign and send the transaction with
14
14
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
15
15
  * @returns A promise that resolves to the broadcast return of the signed transaction
16
+ * @not-instrumented
16
17
  */
17
18
  export declare const sendTransaction: ({ walletAccount, transaction }: SendTransactionParams, client?: import("@dynamic-labs-sdk/client").DynamicClient) => Promise<TronBroadcastReturnSignedTransaction>;
18
19
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"sendTransaction.d.ts","sourceRoot":"","sources":["../../src/sendTransaction/sendTransaction.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,6BAA6B,CAAC;AAExF,KAAK,qBAAqB,GAAG;IAC3B,WAAW,EAAE;QACX,MAAM,EAAE,MAAM,CAAC;QACf,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,aAAa,EAAE,iBAAiB,CAAC;CAClC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,mCACM,qBAAqB,gEAEpD,OAAO,CAAC,oCAAoC,CAsB9C,CAAC"}
1
+ {"version":3,"file":"sendTransaction.d.ts","sourceRoot":"","sources":["../../src/sendTransaction/sendTransaction.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,6BAA6B,CAAC;AAExF,KAAK,qBAAqB,GAAG;IAC3B,WAAW,EAAE;QACX,MAAM,EAAE,MAAM,CAAC;QACf,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,aAAa,EAAE,iBAAiB,CAAC;CAClC,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,mCACM,qBAAqB,gEAEpD,OAAO,CAAC,oCAAoC,CAsB9C,CAAC"}