@dynamic-labs-sdk/tron 1.3.0 → 1.4.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 (26) hide show
  1. package/dist/addTronExtension/addTronExtension.d.ts +4 -1
  2. package/dist/addTronExtension/addTronExtension.d.ts.map +1 -1
  3. package/dist/{addTronWalletAdaptersExtension-Bv-FsxVZ.esm.js → addTronWalletAdaptersExtension-7mKwmTw8.esm.js} +3 -3
  4. package/dist/{addTronWalletAdaptersExtension-Bv-FsxVZ.esm.js.map → addTronWalletAdaptersExtension-7mKwmTw8.esm.js.map} +1 -1
  5. package/dist/{addTronWalletAdaptersExtension-Br5QlcMM.cjs → addTronWalletAdaptersExtension-DzOStiXS.cjs} +3 -3
  6. package/dist/{addTronWalletAdaptersExtension-Br5QlcMM.cjs.map → addTronWalletAdaptersExtension-DzOStiXS.cjs.map} +1 -1
  7. package/dist/addWaasTronExtension-8uFS3DYK.esm.js +111 -0
  8. package/dist/addWaasTronExtension-8uFS3DYK.esm.js.map +1 -0
  9. package/dist/addWaasTronExtension-DDc3HnZB.cjs +116 -0
  10. package/dist/addWaasTronExtension-DDc3HnZB.cjs.map +1 -0
  11. package/dist/index.cjs +8 -3
  12. package/dist/index.cjs.map +1 -1
  13. package/dist/index.esm.js +8 -3
  14. package/dist/index.esm.js.map +1 -1
  15. package/dist/{tronTransferAmount-BkKNm0yq.cjs → tronTransferAmount-CJmhF9gK.cjs} +2 -2
  16. package/dist/{tronTransferAmount-BkKNm0yq.cjs.map → tronTransferAmount-CJmhF9gK.cjs.map} +1 -1
  17. package/dist/{tronTransferAmount-YysbSWMI.esm.js → tronTransferAmount-DegLNA83.esm.js} +2 -2
  18. package/dist/{tronTransferAmount-YysbSWMI.esm.js.map → tronTransferAmount-DegLNA83.esm.js.map} +1 -1
  19. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  20. package/dist/waas.cjs +3 -109
  21. package/dist/waas.cjs.map +1 -1
  22. package/dist/waas.esm.js +2 -108
  23. package/dist/waas.esm.js.map +1 -1
  24. package/dist/walletAdapters.cjs +2 -2
  25. package/dist/walletAdapters.esm.js +2 -2
  26. package/package.json +3 -3
package/dist/waas.cjs CHANGED
@@ -1,116 +1,10 @@
1
- const require_tronTransferAmount = require('./tronTransferAmount-BkKNm0yq.cjs');
1
+ const require_tronTransferAmount = require('./tronTransferAmount-CJmhF9gK.cjs');
2
+ const require_addWaasTronExtension = require('./addWaasTronExtension-DDc3HnZB.cjs');
2
3
  let _dynamic_labs_sdk_assert_package_version = require("@dynamic-labs-sdk/assert-package-version");
3
- let _dynamic_labs_sdk_client_core = require("@dynamic-labs-sdk/client/core");
4
- let tronweb = require("tronweb");
5
- let _dynamic_labs_sdk_client = require("@dynamic-labs-sdk/client");
6
- let _dynamic_labs_sdk_api_core = require("@dynamic-labs/sdk-api-core");
7
- let _dynamic_labs_sdk_client_waas_core = require("@dynamic-labs-sdk/client/waas/core");
8
4
 
9
- //#region src/waas/utils/createWalletProviderForWaasTron/createWalletProviderForWaasTron.ts
10
- const TRON_CHAIN = "TRON";
11
- /** @not-instrumented */
12
- const createWalletProviderForWaasTron = ({ dynamicClient }) => {
13
- const walletProviderType = _dynamic_labs_sdk_api_core.WalletProviderEnum.EmbeddedWallet;
14
- const key = (0, _dynamic_labs_sdk_client_core.formatWalletProviderKey)({
15
- chain: TRON_CHAIN,
16
- displayName: _dynamic_labs_sdk_client_waas_core.DYNAMIC_WAAS_METADATA.displayName,
17
- walletProviderType
18
- });
19
- const waasProvider = (0, _dynamic_labs_sdk_client_waas_core.createWaasProvider)({
20
- chain: TRON_CHAIN,
21
- sdkClient: dynamicClient
22
- });
23
- const getActiveNetworkId = async () => (0, _dynamic_labs_sdk_client_core.getActiveNetworkIdFromLastKnownRegistry)({
24
- client: dynamicClient,
25
- walletProviderKey: key
26
- });
27
- const switchActiveNetwork = async ({ networkId }) => (0, _dynamic_labs_sdk_client_core.switchActiveNetworkInLastKnownRegistry)({
28
- client: dynamicClient,
29
- networkId,
30
- walletProviderKey: key
31
- });
32
- const getConnectedAddresses = async () => {
33
- return { addresses: (0, _dynamic_labs_sdk_client_waas_core.getAllUserWaasAddressesForChain)({ chain: TRON_CHAIN }, dynamicClient) };
34
- };
35
- const signMessage = async ({ message, walletAccount }) => {
36
- (0, _dynamic_labs_sdk_client_core.assertDefined)(walletAccount, "Wallet account is required");
37
- return waasProvider.signMessage({
38
- message,
39
- walletAccount
40
- });
41
- };
42
- const buildTronWebForWalletAccount = async (walletAccount) => {
43
- const activeNetworkData = await (0, _dynamic_labs_sdk_client.getActiveNetworkData)({ walletAccount }, dynamicClient);
44
- (0, _dynamic_labs_sdk_client_core.assertDefined)(activeNetworkData, "No active network data found");
45
- const url = activeNetworkData.networkData?.rpcUrls.http[0];
46
- (0, _dynamic_labs_sdk_client_core.assertDefined)(url, "No RPC URL found for active network");
47
- const tronWeb = new tronweb.TronWeb({ fullHost: url });
48
- tronWeb.setAddress(walletAccount.address);
49
- tronWeb.trx.sign = (async (transaction) => {
50
- (0, _dynamic_labs_sdk_client_core.assertDefined)(transaction?.raw_data_hex, "Tron transaction is missing raw_data_hex");
51
- const { signature } = await waasProvider.signSerializedTransaction({
52
- serializedTransaction: transaction.raw_data_hex,
53
- walletAccount
54
- });
55
- return {
56
- ...transaction,
57
- signature: [signature]
58
- };
59
- });
60
- return tronWeb;
61
- };
62
- const getTronWeb = async ({ walletAccount }) => buildTronWebForWalletAccount(walletAccount);
63
- const destroy = async (args) => waasProvider.destroy(args);
64
- return {
65
- ...waasProvider,
66
- chain: TRON_CHAIN,
67
- confirmTransaction: (args) => require_tronTransferAmount.tronConfirmTransaction(args, dynamicClient),
68
- destroy,
69
- executeSwapTransaction: (args) => require_tronTransferAmount.tronExecuteSwapTransaction(args, dynamicClient),
70
- getActiveNetworkId,
71
- getConnectedAddresses,
72
- getTronWeb,
73
- groupKey: (0, _dynamic_labs_sdk_client_core.formatWalletProviderGroupKey)(_dynamic_labs_sdk_client_waas_core.DYNAMIC_WAAS_METADATA.displayName),
74
- key,
75
- metadata: {
76
- displayName: _dynamic_labs_sdk_client_waas_core.DYNAMIC_WAAS_METADATA.displayName,
77
- icon: _dynamic_labs_sdk_client_waas_core.DYNAMIC_WAAS_METADATA.icon
78
- },
79
- signMessage,
80
- switchActiveNetwork,
81
- transferAmount: (args) => require_tronTransferAmount.tronTransferAmount(args, dynamicClient),
82
- walletProviderType
83
- };
84
- };
85
-
86
- //#endregion
87
- //#region src/waas/addWaasTronExtension/addWaasTronExtension.ts
88
- const WAAS_TRON_EXTENSION_KEY = "waasTron";
89
- /**
90
- * Adds the Dynamic WaaS (Wallet as a Service) Tron extension to the Dynamic client.
91
- *
92
- * This extension enables embedded wallet functionality for the Tron blockchain,
93
- * allowing users to have wallets managed by Dynamic's infrastructure.
94
- *
95
- * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
96
- * * @not-instrumented
97
- */
98
- const addWaasTronExtension = (client = (0, _dynamic_labs_sdk_client_core.getDefaultClient)()) => {
99
- if ((0, _dynamic_labs_sdk_client_core.hasExtension)({ extensionKey: WAAS_TRON_EXTENSION_KEY }, client)) return;
100
- (0, _dynamic_labs_sdk_client_core.registerExtension)({ extensionKey: WAAS_TRON_EXTENSION_KEY }, client);
101
- require_tronTransferAmount.registerTronNetworkProviderBuilder(client);
102
- const walletProviderRegistry = (0, _dynamic_labs_sdk_client_core.getWalletProviderRegistry)(client);
103
- const walletProvider = createWalletProviderForWaasTron({ dynamicClient: client });
104
- walletProviderRegistry.register({
105
- priority: _dynamic_labs_sdk_client_core.WalletProviderPriority.WALLET_SDK,
106
- walletProvider
107
- });
108
- };
109
-
110
- //#endregion
111
5
  //#region src/exports/waas.ts
112
6
  (0, _dynamic_labs_sdk_assert_package_version.assertPackageVersion)(require_tronTransferAmount.name, require_tronTransferAmount.version);
113
7
 
114
8
  //#endregion
115
- exports.addWaasTronExtension = addWaasTronExtension;
9
+ exports.addWaasTronExtension = require_addWaasTronExtension.addWaasTronExtension;
116
10
  //# sourceMappingURL=waas.cjs.map
package/dist/waas.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"waas.cjs","names":["TRON_CHAIN: Chain","WalletProviderEnum","DYNAMIC_WAAS_METADATA","getActiveNetworkId: WaasTronWalletProvider['getActiveNetworkId']","switchActiveNetwork: WaasTronWalletProvider['switchActiveNetwork']","getConnectedAddresses: WaasTronWalletProvider['getConnectedAddresses']","signMessage: WaasTronWalletProvider['signMessage']","TronWeb","getTronWeb: WaasTronWalletProvider['getTronWeb']","destroy: WaasTronWalletProvider['destroy']","tronConfirmTransaction","tronExecuteSwapTransaction","tronTransferAmount","WalletProviderPriority","packageName","packageVersion"],"sources":["../src/waas/utils/createWalletProviderForWaasTron/createWalletProviderForWaasTron.ts","../src/waas/addWaasTronExtension/addWaasTronExtension.ts","../src/exports/waas.ts"],"sourcesContent":["import {\n type Chain,\n type DynamicClient,\n getActiveNetworkData,\n} from '@dynamic-labs-sdk/client';\nimport {\n assertDefined,\n formatWalletProviderGroupKey,\n formatWalletProviderKey,\n getActiveNetworkIdFromLastKnownRegistry,\n switchActiveNetworkInLastKnownRegistry,\n} from '@dynamic-labs-sdk/client/core';\nimport {\n DYNAMIC_WAAS_METADATA,\n createWaasProvider,\n getAllUserWaasAddressesForChain,\n} from '@dynamic-labs-sdk/client/waas/core';\nimport { WalletProviderEnum } from '@dynamic-labs/sdk-api-core';\nimport { TronWeb } from 'tronweb';\n\nimport type { TronWalletAccount } from '../../../TronWalletAccount.types';\nimport { tronConfirmTransaction } from '../../../utils/tronConfirmTransaction';\nimport { tronExecuteSwapTransaction } from '../../../utils/tronExecuteSwapTransaction';\nimport { tronTransferAmount } from '../../../utils/tronTransferAmount';\nimport type { WaasTronWalletProvider } from '../../WaasTronWalletProvider.types';\n\nconst TRON_CHAIN: Chain = 'TRON';\n\ntype UnsignedTronTransaction = {\n raw_data_hex: string;\n signature?: string[];\n txID?: string;\n};\n\ntype CreateWalletProviderForWaasTronParams = {\n dynamicClient: DynamicClient;\n};\n\n/** @not-instrumented */\nexport const createWalletProviderForWaasTron = ({\n dynamicClient,\n}: CreateWalletProviderForWaasTronParams): WaasTronWalletProvider => {\n const walletProviderType = WalletProviderEnum.EmbeddedWallet;\n\n const key = formatWalletProviderKey({\n chain: TRON_CHAIN,\n displayName: DYNAMIC_WAAS_METADATA.displayName,\n walletProviderType,\n });\n\n const waasProvider = createWaasProvider({\n chain: TRON_CHAIN,\n sdkClient: dynamicClient,\n });\n\n const getActiveNetworkId: WaasTronWalletProvider['getActiveNetworkId'] =\n async () =>\n getActiveNetworkIdFromLastKnownRegistry({\n client: dynamicClient,\n walletProviderKey: key,\n });\n\n const switchActiveNetwork: WaasTronWalletProvider['switchActiveNetwork'] =\n async ({ networkId }) =>\n switchActiveNetworkInLastKnownRegistry({\n client: dynamicClient,\n networkId,\n walletProviderKey: key,\n });\n\n const getConnectedAddresses: WaasTronWalletProvider['getConnectedAddresses'] =\n async () => {\n const waasTronAddresses = getAllUserWaasAddressesForChain(\n { chain: TRON_CHAIN },\n dynamicClient\n );\n\n return {\n addresses: waasTronAddresses,\n };\n };\n\n const signMessage: WaasTronWalletProvider['signMessage'] = async ({\n message,\n walletAccount,\n }) => {\n assertDefined(walletAccount, 'Wallet account is required');\n\n return waasProvider.signMessage({\n message,\n walletAccount,\n });\n };\n\n const buildTronWebForWalletAccount = async (\n walletAccount: TronWalletAccount\n ): Promise<TronWeb> => {\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 const tronWeb = new TronWeb({ fullHost: url });\n\n tronWeb.setAddress(walletAccount.address);\n\n tronWeb.trx.sign = (async (transaction: UnsignedTronTransaction) => {\n assertDefined(\n transaction?.raw_data_hex,\n 'Tron transaction is missing raw_data_hex'\n );\n\n const { signature } = await waasProvider.signSerializedTransaction({\n serializedTransaction: transaction.raw_data_hex,\n walletAccount,\n });\n\n return {\n ...transaction,\n signature: [signature],\n };\n }) as unknown as TronWeb['trx']['sign'];\n\n return tronWeb;\n };\n\n const getTronWeb: WaasTronWalletProvider['getTronWeb'] = async ({\n walletAccount,\n }) => buildTronWebForWalletAccount(walletAccount);\n\n const destroy: WaasTronWalletProvider['destroy'] = async (args) =>\n waasProvider.destroy(args);\n\n return {\n ...waasProvider,\n chain: TRON_CHAIN,\n confirmTransaction: (args) => tronConfirmTransaction(args, dynamicClient),\n destroy,\n executeSwapTransaction: (args) =>\n tronExecuteSwapTransaction(args, dynamicClient),\n getActiveNetworkId,\n getConnectedAddresses,\n getTronWeb,\n groupKey: formatWalletProviderGroupKey(DYNAMIC_WAAS_METADATA.displayName),\n key,\n metadata: {\n displayName: DYNAMIC_WAAS_METADATA.displayName,\n icon: DYNAMIC_WAAS_METADATA.icon,\n },\n signMessage,\n switchActiveNetwork,\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';\n\nimport { registerTronNetworkProviderBuilder } from '../../registerTronNetworkProviderBuilder';\nimport { createWalletProviderForWaasTron } from '../utils/createWalletProviderForWaasTron';\n\nexport const WAAS_TRON_EXTENSION_KEY = 'waasTron';\n\n/**\n * Adds the Dynamic WaaS (Wallet as a Service) Tron extension to the Dynamic client.\n *\n * This extension enables embedded wallet functionality for the Tron blockchain,\n * allowing users to have wallets managed by Dynamic's infrastructure.\n *\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * * @not-instrumented\n */\nexport const addWaasTronExtension = (client = getDefaultClient()): void => {\n if (hasExtension({ extensionKey: WAAS_TRON_EXTENSION_KEY }, client)) {\n return;\n }\n\n registerExtension({ extensionKey: WAAS_TRON_EXTENSION_KEY }, client);\n registerTronNetworkProviderBuilder(client);\n\n const walletProviderRegistry = getWalletProviderRegistry(client);\n\n const walletProvider = createWalletProviderForWaasTron({\n dynamicClient: client,\n });\n\n walletProviderRegistry.register({\n priority: WalletProviderPriority.WALLET_SDK,\n walletProvider,\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 { addWaasTronExtension } from '../waas/addWaasTronExtension';\n\nexport type { WaasTronWalletProvider } from '../waas/WaasTronWalletProvider.types';\n"],"mappings":";;;;;;;;;AA0BA,MAAMA,aAAoB;;AAa1B,MAAa,mCAAmC,EAC9C,oBACmE;CACnE,MAAM,qBAAqBC,8CAAmB;CAE9C,MAAM,iEAA8B;EAClC,OAAO;EACP,aAAaC,yDAAsB;EACnC;EACD,CAAC;CAEF,MAAM,0EAAkC;EACtC,OAAO;EACP,WAAW;EACZ,CAAC;CAEF,MAAMC,qBACJ,uFAC0C;EACtC,QAAQ;EACR,mBAAmB;EACpB,CAAC;CAEN,MAAMC,sBACJ,OAAO,EAAE,0FACgC;EACrC,QAAQ;EACR;EACA,mBAAmB;EACpB,CAAC;CAEN,MAAMC,wBACJ,YAAY;AAMV,SAAO,EACL,mFALA,EAAE,OAAO,YAAY,EACrB,cACD,EAIA;;CAGL,MAAMC,cAAqD,OAAO,EAChE,SACA,oBACI;AACJ,mDAAc,eAAe,6BAA6B;AAE1D,SAAO,aAAa,YAAY;GAC9B;GACA;GACD,CAAC;;CAGJ,MAAM,+BAA+B,OACnC,kBACqB;EACrB,MAAM,oBAAoB,yDACxB,EAAE,eAAe,EACjB,cACD;AACD,mDAAc,mBAAmB,+BAA+B;EAEhE,MAAM,MAAM,kBAAkB,aAAa,QAAQ,KAAK;AACxD,mDAAc,KAAK,sCAAsC;EAEzD,MAAM,UAAU,IAAIC,gBAAQ,EAAE,UAAU,KAAK,CAAC;AAE9C,UAAQ,WAAW,cAAc,QAAQ;AAEzC,UAAQ,IAAI,QAAQ,OAAO,gBAAyC;AAClE,oDACE,aAAa,cACb,2CACD;GAED,MAAM,EAAE,cAAc,MAAM,aAAa,0BAA0B;IACjE,uBAAuB,YAAY;IACnC;IACD,CAAC;AAEF,UAAO;IACL,GAAG;IACH,WAAW,CAAC,UAAU;IACvB;;AAGH,SAAO;;CAGT,MAAMC,aAAmD,OAAO,EAC9D,oBACI,6BAA6B,cAAc;CAEjD,MAAMC,UAA6C,OAAO,SACxD,aAAa,QAAQ,KAAK;AAE5B,QAAO;EACL,GAAG;EACH,OAAO;EACP,qBAAqB,SAASC,kDAAuB,MAAM,cAAc;EACzE;EACA,yBAAyB,SACvBC,sDAA2B,MAAM,cAAc;EACjD;EACA;EACA;EACA,0EAAuCT,yDAAsB,YAAY;EACzE;EACA,UAAU;GACR,aAAaA,yDAAsB;GACnC,MAAMA,yDAAsB;GAC7B;EACD;EACA;EACA,iBAAiB,SAASU,8CAAmB,MAAM,cAAc;EACjE;EACD;;;;;AClJH,MAAa,0BAA0B;;;;;;;;;;AAWvC,MAAa,wBAAwB,8DAA2B,KAAW;AACzE,qDAAiB,EAAE,cAAc,yBAAyB,EAAE,OAAO,CACjE;AAGF,sDAAkB,EAAE,cAAc,yBAAyB,EAAE,OAAO;AACpE,+DAAmC,OAAO;CAE1C,MAAM,sFAAmD,OAAO;CAEhE,MAAM,iBAAiB,gCAAgC,EACrD,eAAe,QAChB,CAAC;AAEF,wBAAuB,SAAS;EAC9B,UAAUC,qDAAuB;EACjC;EACD,CAAC;;;;;mECjCiBC,iCAAaC,mCAAe"}
1
+ {"version":3,"file":"waas.cjs","names":["packageName","packageVersion"],"sources":["../src/exports/waas.ts"],"sourcesContent":["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 { addWaasTronExtension } from '../waas/addWaasTronExtension';\n\nexport type { WaasTronWalletProvider } from '../waas/WaasTronWalletProvider.types';\n"],"mappings":";;;;;mEAMqBA,iCAAaC,mCAAe"}
package/dist/waas.esm.js CHANGED
@@ -1,113 +1,7 @@
1
- import { c as name, i as tronConfirmTransaction, l as version, r as tronExecuteSwapTransaction, s as registerTronNetworkProviderBuilder, t as tronTransferAmount } from "./tronTransferAmount-YysbSWMI.esm.js";
1
+ import { c as name, l as version } from "./tronTransferAmount-DegLNA83.esm.js";
2
+ import { t as addWaasTronExtension } from "./addWaasTronExtension-8uFS3DYK.esm.js";
2
3
  import { assertPackageVersion } from "@dynamic-labs-sdk/assert-package-version";
3
- import { WalletProviderPriority, assertDefined, formatWalletProviderGroupKey, formatWalletProviderKey, getActiveNetworkIdFromLastKnownRegistry, getDefaultClient, getWalletProviderRegistry, hasExtension, registerExtension, switchActiveNetworkInLastKnownRegistry } from "@dynamic-labs-sdk/client/core";
4
- import { TronWeb } from "tronweb";
5
- import { getActiveNetworkData } from "@dynamic-labs-sdk/client";
6
- import { WalletProviderEnum } from "@dynamic-labs/sdk-api-core";
7
- import { DYNAMIC_WAAS_METADATA, createWaasProvider, getAllUserWaasAddressesForChain } from "@dynamic-labs-sdk/client/waas/core";
8
4
 
9
- //#region src/waas/utils/createWalletProviderForWaasTron/createWalletProviderForWaasTron.ts
10
- const TRON_CHAIN = "TRON";
11
- /** @not-instrumented */
12
- const createWalletProviderForWaasTron = ({ dynamicClient }) => {
13
- const walletProviderType = WalletProviderEnum.EmbeddedWallet;
14
- const key = formatWalletProviderKey({
15
- chain: TRON_CHAIN,
16
- displayName: DYNAMIC_WAAS_METADATA.displayName,
17
- walletProviderType
18
- });
19
- const waasProvider = createWaasProvider({
20
- chain: TRON_CHAIN,
21
- sdkClient: dynamicClient
22
- });
23
- const getActiveNetworkId = async () => getActiveNetworkIdFromLastKnownRegistry({
24
- client: dynamicClient,
25
- walletProviderKey: key
26
- });
27
- const switchActiveNetwork = async ({ networkId }) => switchActiveNetworkInLastKnownRegistry({
28
- client: dynamicClient,
29
- networkId,
30
- walletProviderKey: key
31
- });
32
- const getConnectedAddresses = async () => {
33
- return { addresses: getAllUserWaasAddressesForChain({ chain: TRON_CHAIN }, dynamicClient) };
34
- };
35
- const signMessage = async ({ message, walletAccount }) => {
36
- assertDefined(walletAccount, "Wallet account is required");
37
- return waasProvider.signMessage({
38
- message,
39
- walletAccount
40
- });
41
- };
42
- const buildTronWebForWalletAccount = async (walletAccount) => {
43
- const activeNetworkData = await getActiveNetworkData({ walletAccount }, dynamicClient);
44
- assertDefined(activeNetworkData, "No active network data found");
45
- const url = activeNetworkData.networkData?.rpcUrls.http[0];
46
- assertDefined(url, "No RPC URL found for active network");
47
- const tronWeb = new TronWeb({ fullHost: url });
48
- tronWeb.setAddress(walletAccount.address);
49
- tronWeb.trx.sign = (async (transaction) => {
50
- assertDefined(transaction?.raw_data_hex, "Tron transaction is missing raw_data_hex");
51
- const { signature } = await waasProvider.signSerializedTransaction({
52
- serializedTransaction: transaction.raw_data_hex,
53
- walletAccount
54
- });
55
- return {
56
- ...transaction,
57
- signature: [signature]
58
- };
59
- });
60
- return tronWeb;
61
- };
62
- const getTronWeb = async ({ walletAccount }) => buildTronWebForWalletAccount(walletAccount);
63
- const destroy = async (args) => waasProvider.destroy(args);
64
- return {
65
- ...waasProvider,
66
- chain: TRON_CHAIN,
67
- confirmTransaction: (args) => tronConfirmTransaction(args, dynamicClient),
68
- destroy,
69
- executeSwapTransaction: (args) => tronExecuteSwapTransaction(args, dynamicClient),
70
- getActiveNetworkId,
71
- getConnectedAddresses,
72
- getTronWeb,
73
- groupKey: formatWalletProviderGroupKey(DYNAMIC_WAAS_METADATA.displayName),
74
- key,
75
- metadata: {
76
- displayName: DYNAMIC_WAAS_METADATA.displayName,
77
- icon: DYNAMIC_WAAS_METADATA.icon
78
- },
79
- signMessage,
80
- switchActiveNetwork,
81
- transferAmount: (args) => tronTransferAmount(args, dynamicClient),
82
- walletProviderType
83
- };
84
- };
85
-
86
- //#endregion
87
- //#region src/waas/addWaasTronExtension/addWaasTronExtension.ts
88
- const WAAS_TRON_EXTENSION_KEY = "waasTron";
89
- /**
90
- * Adds the Dynamic WaaS (Wallet as a Service) Tron extension to the Dynamic client.
91
- *
92
- * This extension enables embedded wallet functionality for the Tron blockchain,
93
- * allowing users to have wallets managed by Dynamic's infrastructure.
94
- *
95
- * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
96
- * * @not-instrumented
97
- */
98
- const addWaasTronExtension = (client = getDefaultClient()) => {
99
- if (hasExtension({ extensionKey: WAAS_TRON_EXTENSION_KEY }, client)) return;
100
- registerExtension({ extensionKey: WAAS_TRON_EXTENSION_KEY }, client);
101
- registerTronNetworkProviderBuilder(client);
102
- const walletProviderRegistry = getWalletProviderRegistry(client);
103
- const walletProvider = createWalletProviderForWaasTron({ dynamicClient: client });
104
- walletProviderRegistry.register({
105
- priority: WalletProviderPriority.WALLET_SDK,
106
- walletProvider
107
- });
108
- };
109
-
110
- //#endregion
111
5
  //#region src/exports/waas.ts
112
6
  assertPackageVersion(name, version);
113
7
 
@@ -1 +1 @@
1
- {"version":3,"file":"waas.esm.js","names":["TRON_CHAIN: Chain","getActiveNetworkId: WaasTronWalletProvider['getActiveNetworkId']","switchActiveNetwork: WaasTronWalletProvider['switchActiveNetwork']","getConnectedAddresses: WaasTronWalletProvider['getConnectedAddresses']","signMessage: WaasTronWalletProvider['signMessage']","getTronWeb: WaasTronWalletProvider['getTronWeb']","destroy: WaasTronWalletProvider['destroy']","packageName","packageVersion"],"sources":["../src/waas/utils/createWalletProviderForWaasTron/createWalletProviderForWaasTron.ts","../src/waas/addWaasTronExtension/addWaasTronExtension.ts","../src/exports/waas.ts"],"sourcesContent":["import {\n type Chain,\n type DynamicClient,\n getActiveNetworkData,\n} from '@dynamic-labs-sdk/client';\nimport {\n assertDefined,\n formatWalletProviderGroupKey,\n formatWalletProviderKey,\n getActiveNetworkIdFromLastKnownRegistry,\n switchActiveNetworkInLastKnownRegistry,\n} from '@dynamic-labs-sdk/client/core';\nimport {\n DYNAMIC_WAAS_METADATA,\n createWaasProvider,\n getAllUserWaasAddressesForChain,\n} from '@dynamic-labs-sdk/client/waas/core';\nimport { WalletProviderEnum } from '@dynamic-labs/sdk-api-core';\nimport { TronWeb } from 'tronweb';\n\nimport type { TronWalletAccount } from '../../../TronWalletAccount.types';\nimport { tronConfirmTransaction } from '../../../utils/tronConfirmTransaction';\nimport { tronExecuteSwapTransaction } from '../../../utils/tronExecuteSwapTransaction';\nimport { tronTransferAmount } from '../../../utils/tronTransferAmount';\nimport type { WaasTronWalletProvider } from '../../WaasTronWalletProvider.types';\n\nconst TRON_CHAIN: Chain = 'TRON';\n\ntype UnsignedTronTransaction = {\n raw_data_hex: string;\n signature?: string[];\n txID?: string;\n};\n\ntype CreateWalletProviderForWaasTronParams = {\n dynamicClient: DynamicClient;\n};\n\n/** @not-instrumented */\nexport const createWalletProviderForWaasTron = ({\n dynamicClient,\n}: CreateWalletProviderForWaasTronParams): WaasTronWalletProvider => {\n const walletProviderType = WalletProviderEnum.EmbeddedWallet;\n\n const key = formatWalletProviderKey({\n chain: TRON_CHAIN,\n displayName: DYNAMIC_WAAS_METADATA.displayName,\n walletProviderType,\n });\n\n const waasProvider = createWaasProvider({\n chain: TRON_CHAIN,\n sdkClient: dynamicClient,\n });\n\n const getActiveNetworkId: WaasTronWalletProvider['getActiveNetworkId'] =\n async () =>\n getActiveNetworkIdFromLastKnownRegistry({\n client: dynamicClient,\n walletProviderKey: key,\n });\n\n const switchActiveNetwork: WaasTronWalletProvider['switchActiveNetwork'] =\n async ({ networkId }) =>\n switchActiveNetworkInLastKnownRegistry({\n client: dynamicClient,\n networkId,\n walletProviderKey: key,\n });\n\n const getConnectedAddresses: WaasTronWalletProvider['getConnectedAddresses'] =\n async () => {\n const waasTronAddresses = getAllUserWaasAddressesForChain(\n { chain: TRON_CHAIN },\n dynamicClient\n );\n\n return {\n addresses: waasTronAddresses,\n };\n };\n\n const signMessage: WaasTronWalletProvider['signMessage'] = async ({\n message,\n walletAccount,\n }) => {\n assertDefined(walletAccount, 'Wallet account is required');\n\n return waasProvider.signMessage({\n message,\n walletAccount,\n });\n };\n\n const buildTronWebForWalletAccount = async (\n walletAccount: TronWalletAccount\n ): Promise<TronWeb> => {\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 const tronWeb = new TronWeb({ fullHost: url });\n\n tronWeb.setAddress(walletAccount.address);\n\n tronWeb.trx.sign = (async (transaction: UnsignedTronTransaction) => {\n assertDefined(\n transaction?.raw_data_hex,\n 'Tron transaction is missing raw_data_hex'\n );\n\n const { signature } = await waasProvider.signSerializedTransaction({\n serializedTransaction: transaction.raw_data_hex,\n walletAccount,\n });\n\n return {\n ...transaction,\n signature: [signature],\n };\n }) as unknown as TronWeb['trx']['sign'];\n\n return tronWeb;\n };\n\n const getTronWeb: WaasTronWalletProvider['getTronWeb'] = async ({\n walletAccount,\n }) => buildTronWebForWalletAccount(walletAccount);\n\n const destroy: WaasTronWalletProvider['destroy'] = async (args) =>\n waasProvider.destroy(args);\n\n return {\n ...waasProvider,\n chain: TRON_CHAIN,\n confirmTransaction: (args) => tronConfirmTransaction(args, dynamicClient),\n destroy,\n executeSwapTransaction: (args) =>\n tronExecuteSwapTransaction(args, dynamicClient),\n getActiveNetworkId,\n getConnectedAddresses,\n getTronWeb,\n groupKey: formatWalletProviderGroupKey(DYNAMIC_WAAS_METADATA.displayName),\n key,\n metadata: {\n displayName: DYNAMIC_WAAS_METADATA.displayName,\n icon: DYNAMIC_WAAS_METADATA.icon,\n },\n signMessage,\n switchActiveNetwork,\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';\n\nimport { registerTronNetworkProviderBuilder } from '../../registerTronNetworkProviderBuilder';\nimport { createWalletProviderForWaasTron } from '../utils/createWalletProviderForWaasTron';\n\nexport const WAAS_TRON_EXTENSION_KEY = 'waasTron';\n\n/**\n * Adds the Dynamic WaaS (Wallet as a Service) Tron extension to the Dynamic client.\n *\n * This extension enables embedded wallet functionality for the Tron blockchain,\n * allowing users to have wallets managed by Dynamic's infrastructure.\n *\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * * @not-instrumented\n */\nexport const addWaasTronExtension = (client = getDefaultClient()): void => {\n if (hasExtension({ extensionKey: WAAS_TRON_EXTENSION_KEY }, client)) {\n return;\n }\n\n registerExtension({ extensionKey: WAAS_TRON_EXTENSION_KEY }, client);\n registerTronNetworkProviderBuilder(client);\n\n const walletProviderRegistry = getWalletProviderRegistry(client);\n\n const walletProvider = createWalletProviderForWaasTron({\n dynamicClient: client,\n });\n\n walletProviderRegistry.register({\n priority: WalletProviderPriority.WALLET_SDK,\n walletProvider,\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 { addWaasTronExtension } from '../waas/addWaasTronExtension';\n\nexport type { WaasTronWalletProvider } from '../waas/WaasTronWalletProvider.types';\n"],"mappings":";;;;;;;;;AA0BA,MAAMA,aAAoB;;AAa1B,MAAa,mCAAmC,EAC9C,oBACmE;CACnE,MAAM,qBAAqB,mBAAmB;CAE9C,MAAM,MAAM,wBAAwB;EAClC,OAAO;EACP,aAAa,sBAAsB;EACnC;EACD,CAAC;CAEF,MAAM,eAAe,mBAAmB;EACtC,OAAO;EACP,WAAW;EACZ,CAAC;CAEF,MAAMC,qBACJ,YACE,wCAAwC;EACtC,QAAQ;EACR,mBAAmB;EACpB,CAAC;CAEN,MAAMC,sBACJ,OAAO,EAAE,gBACP,uCAAuC;EACrC,QAAQ;EACR;EACA,mBAAmB;EACpB,CAAC;CAEN,MAAMC,wBACJ,YAAY;AAMV,SAAO,EACL,WANwB,gCACxB,EAAE,OAAO,YAAY,EACrB,cACD,EAIA;;CAGL,MAAMC,cAAqD,OAAO,EAChE,SACA,oBACI;AACJ,gBAAc,eAAe,6BAA6B;AAE1D,SAAO,aAAa,YAAY;GAC9B;GACA;GACD,CAAC;;CAGJ,MAAM,+BAA+B,OACnC,kBACqB;EACrB,MAAM,oBAAoB,MAAM,qBAC9B,EAAE,eAAe,EACjB,cACD;AACD,gBAAc,mBAAmB,+BAA+B;EAEhE,MAAM,MAAM,kBAAkB,aAAa,QAAQ,KAAK;AACxD,gBAAc,KAAK,sCAAsC;EAEzD,MAAM,UAAU,IAAI,QAAQ,EAAE,UAAU,KAAK,CAAC;AAE9C,UAAQ,WAAW,cAAc,QAAQ;AAEzC,UAAQ,IAAI,QAAQ,OAAO,gBAAyC;AAClE,iBACE,aAAa,cACb,2CACD;GAED,MAAM,EAAE,cAAc,MAAM,aAAa,0BAA0B;IACjE,uBAAuB,YAAY;IACnC;IACD,CAAC;AAEF,UAAO;IACL,GAAG;IACH,WAAW,CAAC,UAAU;IACvB;;AAGH,SAAO;;CAGT,MAAMC,aAAmD,OAAO,EAC9D,oBACI,6BAA6B,cAAc;CAEjD,MAAMC,UAA6C,OAAO,SACxD,aAAa,QAAQ,KAAK;AAE5B,QAAO;EACL,GAAG;EACH,OAAO;EACP,qBAAqB,SAAS,uBAAuB,MAAM,cAAc;EACzE;EACA,yBAAyB,SACvB,2BAA2B,MAAM,cAAc;EACjD;EACA;EACA;EACA,UAAU,6BAA6B,sBAAsB,YAAY;EACzE;EACA,UAAU;GACR,aAAa,sBAAsB;GACnC,MAAM,sBAAsB;GAC7B;EACD;EACA;EACA,iBAAiB,SAAS,mBAAmB,MAAM,cAAc;EACjE;EACD;;;;;AClJH,MAAa,0BAA0B;;;;;;;;;;AAWvC,MAAa,wBAAwB,SAAS,kBAAkB,KAAW;AACzE,KAAI,aAAa,EAAE,cAAc,yBAAyB,EAAE,OAAO,CACjE;AAGF,mBAAkB,EAAE,cAAc,yBAAyB,EAAE,OAAO;AACpE,oCAAmC,OAAO;CAE1C,MAAM,yBAAyB,0BAA0B,OAAO;CAEhE,MAAM,iBAAiB,gCAAgC,EACrD,eAAe,QAChB,CAAC;AAEF,wBAAuB,SAAS;EAC9B,UAAU,uBAAuB;EACjC;EACD,CAAC;;;;;ACjCJ,qBAAqBC,MAAaC,QAAe"}
1
+ {"version":3,"file":"waas.esm.js","names":["packageName","packageVersion"],"sources":["../src/exports/waas.ts"],"sourcesContent":["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 { addWaasTronExtension } from '../waas/addWaasTronExtension';\n\nexport type { WaasTronWalletProvider } from '../waas/WaasTronWalletProvider.types';\n"],"mappings":";;;;;AAMA,qBAAqBA,MAAaC,QAAe"}
@@ -1,5 +1,5 @@
1
- const require_tronTransferAmount = require('./tronTransferAmount-BkKNm0yq.cjs');
2
- const require_addTronWalletAdaptersExtension = require('./addTronWalletAdaptersExtension-Br5QlcMM.cjs');
1
+ const require_tronTransferAmount = require('./tronTransferAmount-CJmhF9gK.cjs');
2
+ const require_addTronWalletAdaptersExtension = require('./addTronWalletAdaptersExtension-DzOStiXS.cjs');
3
3
  let _dynamic_labs_sdk_assert_package_version = require("@dynamic-labs-sdk/assert-package-version");
4
4
 
5
5
  //#region src/exports/walletAdapters.ts
@@ -1,5 +1,5 @@
1
- import { c as name, l as version } from "./tronTransferAmount-YysbSWMI.esm.js";
2
- import { t as addTronWalletAdaptersExtension } from "./addTronWalletAdaptersExtension-Bv-FsxVZ.esm.js";
1
+ import { c as name, l as version } from "./tronTransferAmount-DegLNA83.esm.js";
2
+ import { t as addTronWalletAdaptersExtension } from "./addTronWalletAdaptersExtension-7mKwmTw8.esm.js";
3
3
  import { assertPackageVersion } from "@dynamic-labs-sdk/assert-package-version";
4
4
 
5
5
  //#region src/exports/walletAdapters.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs-sdk/tron",
3
- "version": "1.3.0",
3
+ "version": "1.4.0",
4
4
  "type": "module",
5
5
  "main": "./dist/index.cjs",
6
6
  "module": "./dist/index.esm.js",
@@ -31,8 +31,8 @@
31
31
  "@tronweb3/tronwallet-abstract-adapter": "1.1.10",
32
32
  "@tronweb3/tronwallet-adapters": "1.2.17",
33
33
  "tronweb": "6.1.1",
34
- "@dynamic-labs-sdk/assert-package-version": "1.3.0",
35
- "@dynamic-labs-sdk/client": "1.3.0"
34
+ "@dynamic-labs-sdk/assert-package-version": "1.4.0",
35
+ "@dynamic-labs-sdk/client": "1.4.0"
36
36
  },
37
37
  "devDependencies": {
38
38
  "eventemitter3": "5.0.1",