@dynamic-labs-sdk/sui 1.12.2 → 1.13.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 (53) hide show
  1. package/dist/addSuiExtension/addSuiExtension.d.ts +1 -1
  2. package/dist/{addSuiWalletStandardExtension-Bd6qAv2w.esm.js → addSuiWalletStandardExtension-CSbMnuRm.esm.js} +4 -4
  3. package/dist/{addSuiWalletStandardExtension-B1kd13ya.cjs.map → addSuiWalletStandardExtension-CSbMnuRm.esm.js.map} +1 -1
  4. package/dist/{addSuiWalletStandardExtension-B1kd13ya.cjs → addSuiWalletStandardExtension-Ennk6yId.cjs} +4 -4
  5. package/dist/addSuiWalletStandardExtension-Ennk6yId.cjs.map +1 -0
  6. package/dist/{addWaasSuiExtension-BuK78pPD.cjs → addWaasSuiExtension-B7LbC8iV.cjs} +4 -4
  7. package/dist/addWaasSuiExtension-B7LbC8iV.cjs.map +1 -0
  8. package/dist/{addWaasSuiExtension-BIhBCVDZ.esm.js → addWaasSuiExtension-VjrKKMIn.esm.js} +4 -4
  9. package/dist/addWaasSuiExtension-VjrKKMIn.esm.js.map +1 -0
  10. package/dist/getSuiClient/getSuiClient.d.ts +1 -1
  11. package/dist/index.cjs +9 -9
  12. package/dist/index.cjs.map +1 -1
  13. package/dist/index.esm.js +9 -9
  14. package/dist/index.esm.js.map +1 -1
  15. package/dist/isSuiNetworkProvider/isSuiNetworkProvider.d.ts +1 -1
  16. package/dist/isSuiWalletAccount/isSuiWalletAccount.d.ts +1 -1
  17. package/dist/isSuiWalletProvider/isSuiWalletProvider.d.ts +1 -1
  18. package/dist/isSuiWalletProvider/isSuiWalletProvider.d.ts.map +1 -1
  19. package/dist/registerSuiNetworkProviderBuilder/registerSuiNetworkProviderBuilder.d.ts +1 -1
  20. package/dist/registerSuiNetworkProviderBuilder/registerSuiNetworkProviderBuilder.d.ts.map +1 -1
  21. package/dist/signAndExecuteTransaction/signAndExecuteTransaction.d.ts +1 -1
  22. package/dist/signAndExecuteTransactionBlock/signAndExecuteTransactionBlock.d.ts +1 -1
  23. package/dist/signTransaction/signTransaction.d.ts +1 -1
  24. package/dist/signTransactionBlock/signTransactionBlock.d.ts +1 -1
  25. package/dist/{suiTransferAmount-U0bmbruo.esm.js → suiTransferAmount-COvuGOUR.esm.js} +12 -12
  26. package/dist/suiTransferAmount-COvuGOUR.esm.js.map +1 -0
  27. package/dist/{suiTransferAmount-BB39PARg.cjs → suiTransferAmount-DpSplM7t.cjs} +12 -12
  28. package/dist/suiTransferAmount-DpSplM7t.cjs.map +1 -0
  29. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  30. package/dist/utils/createSuiNetworkProvider/createSuiNetworkProvider.d.ts +1 -1
  31. package/dist/utils/createSuiNetworkProvider/createSuiNetworkProvider.d.ts.map +1 -1
  32. package/dist/utils/fetchSuiBalance/fetchSuiBalance.d.ts +1 -1
  33. package/dist/utils/fetchSuiBalance/fetchSuiBalance.d.ts.map +1 -1
  34. package/dist/utils/getSuiTransactionHistory/getSuiTransactionHistory.d.ts +1 -1
  35. package/dist/utils/suiConfirmTransaction/suiConfirmTransaction.d.ts +1 -1
  36. package/dist/utils/suiExecuteSwapTransaction/suiExecuteSwapTransaction.d.ts +1 -1
  37. package/dist/utils/suiTransferAmount/suiTransferAmount.d.ts +1 -1
  38. package/dist/waas/addWaasSuiExtension/addWaasSuiExtension.d.ts +1 -1
  39. package/dist/waas/utils/createWalletProviderForWaasSui/createWalletProviderForWaasSui.d.ts +1 -1
  40. package/dist/waas/utils/createWalletProviderForWaasSui/createWalletProviderForWaasSui.d.ts.map +1 -1
  41. package/dist/waas.cjs +2 -2
  42. package/dist/waas.esm.js +2 -2
  43. package/dist/walletStandard/addSuiWalletStandardExtension/addSuiWalletStandardExtension.d.ts +1 -1
  44. package/dist/walletStandard/utils/createWalletProviderFromSuiStandardWallet/createWalletProviderFromSuiStandardWallet.d.ts +1 -1
  45. package/dist/walletStandard/utils/createWalletProviderFromSuiStandardWallet/createWalletProviderFromSuiStandardWallet.d.ts.map +1 -1
  46. package/dist/walletStandard.cjs +2 -2
  47. package/dist/walletStandard.esm.js +2 -2
  48. package/package.json +3 -3
  49. package/dist/addSuiWalletStandardExtension-Bd6qAv2w.esm.js.map +0 -1
  50. package/dist/addWaasSuiExtension-BIhBCVDZ.esm.js.map +0 -1
  51. package/dist/addWaasSuiExtension-BuK78pPD.cjs.map +0 -1
  52. package/dist/suiTransferAmount-BB39PARg.cjs.map +0 -1
  53. package/dist/suiTransferAmount-U0bmbruo.esm.js.map +0 -1
@@ -6,7 +6,7 @@
6
6
  * including standard wallets and embedded wallets managed by Dynamic's infrastructure.
7
7
  *
8
8
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
9
- * @not-instrumented
9
+ * @notInstrumented
10
10
  */
11
11
  export declare const addSuiExtension: (client?: import("@dynamic-labs-sdk/client").DynamicClient) => void;
12
12
  //# sourceMappingURL=addSuiExtension.d.ts.map
@@ -1,4 +1,4 @@
1
- import { i as suiConfirmTransaction, l as registerSuiNetworkProviderBuilder, r as suiExecuteSwapTransaction, t as suiTransferAmount } from "./suiTransferAmount-U0bmbruo.esm.js";
1
+ import { i as suiConfirmTransaction, l as registerSuiNetworkProviderBuilder, r as suiExecuteSwapTransaction, t as suiTransferAmount } from "./suiTransferAmount-COvuGOUR.esm.js";
2
2
  import { WalletProviderPriority, assertDefined, createWalletProviderEventEmitter, formatWalletProviderGroupKey, formatWalletProviderKey, getActiveNetworkIdFromLastKnownRegistry, getDefaultClient, getWalletProviderRegistry, hasExtension, registerExtension, switchActiveNetworkInLastKnownRegistry } from "@dynamic-labs-sdk/client/core";
3
3
  import { SuiClient } from "@mysten/sui/client";
4
4
  import { assertWalletAccountSigningAvailability, getActiveNetworkData } from "@dynamic-labs-sdk/client";
@@ -6,7 +6,7 @@ import { WalletProviderEnum } from "@dynamic-labs/sdk-api-core";
6
6
  import { getWallets, isWalletWithRequiredFeatureSet } from "@mysten/wallet-standard";
7
7
 
8
8
  //#region src/walletStandard/utils/createWalletProviderFromSuiStandardWallet/createWalletProviderFromSuiStandardWallet.ts
9
- /** @not-instrumented */
9
+ /** @notInstrumented */
10
10
  const createWalletProviderFromSuiStandardWallet = ({ dynamicClient, walletStandardWallet }) => {
11
11
  const features = walletStandardWallet.features;
12
12
  const walletProviderType = WalletProviderEnum.BrowserExtension;
@@ -176,7 +176,7 @@ const SUI_WALLET_STANDARD_EXTENSION_KEY = "suiWalletStandard";
176
176
  * automatically detecting and registering compatible wallets for use with the Dynamic SDK.
177
177
  *
178
178
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
179
- * @not-instrumented
179
+ * @notInstrumented
180
180
  */
181
181
  const addSuiWalletStandardExtension = (client = getDefaultClient()) => {
182
182
  if (hasExtension({ extensionKey: SUI_WALLET_STANDARD_EXTENSION_KEY }, client)) return;
@@ -201,4 +201,4 @@ const addSuiWalletStandardExtension = (client = getDefaultClient()) => {
201
201
 
202
202
  //#endregion
203
203
  export { addSuiWalletStandardExtension as t };
204
- //# sourceMappingURL=addSuiWalletStandardExtension-Bd6qAv2w.esm.js.map
204
+ //# sourceMappingURL=addSuiWalletStandardExtension-CSbMnuRm.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"addSuiWalletStandardExtension-B1kd13ya.cjs","names":["WalletProviderEnum","connect: SuiWalletProvider['connect']","getActiveNetworkId: SuiWalletProvider['getActiveNetworkId']","getSuiClient: SuiWalletProvider['getSuiClient']","SuiClient","getConnectedAddresses: SuiWalletProvider['getConnectedAddresses']","signAndExecuteTransaction: SuiWalletProvider['signAndExecuteTransaction']","signAndExecuteTransactionBlock: SuiWalletProvider['signAndExecuteTransactionBlock']","signMessage: SuiWalletProvider['signMessage']","signTransaction: SuiWalletProvider['signTransaction']","signTransactionBlock: SuiWalletProvider['signTransactionBlock']","switchActiveNetwork: SuiWalletProvider['switchActiveNetwork']","destroy: SuiWalletProvider['destroy']","suiConfirmTransaction","suiExecuteSwapTransaction","suiTransferAmount","WalletProviderPriority"],"sources":["../src/walletStandard/utils/createWalletProviderFromSuiStandardWallet/createWalletProviderFromSuiStandardWallet.ts","../src/walletStandard/addSuiWalletStandardExtension/addSuiWalletStandardExtension.ts"],"sourcesContent":["import {\n type DynamicClient,\n assertWalletAccountSigningAvailability,\n getActiveNetworkData,\n} from '@dynamic-labs-sdk/client';\nimport {\n assertDefined,\n createWalletProviderEventEmitter,\n formatWalletProviderGroupKey,\n formatWalletProviderKey,\n getActiveNetworkIdFromLastKnownRegistry,\n switchActiveNetworkInLastKnownRegistry,\n} from '@dynamic-labs-sdk/client/core';\nimport { WalletProviderEnum } from '@dynamic-labs/sdk-api-core';\nimport { SuiClient } from '@mysten/sui/client';\nimport type {\n StandardEventsChangeProperties,\n SuiWalletFeatures,\n WalletWithFeatures,\n} from '@mysten/wallet-standard';\n\nimport type { SuiWalletProvider } from '../../../SuiWalletProvider.types';\nimport { suiConfirmTransaction } from '../../../utils/suiConfirmTransaction';\nimport { suiExecuteSwapTransaction } from '../../../utils/suiExecuteSwapTransaction';\nimport { suiTransferAmount } from '../../../utils/suiTransferAmount';\n\ntype CreateWalletProviderFromSuiStandardWalletParams = {\n dynamicClient: DynamicClient;\n walletStandardWallet: WalletWithFeatures<SuiWalletFeatures>;\n};\n\n/** @not-instrumented */\nexport const createWalletProviderFromSuiStandardWallet = ({\n dynamicClient,\n walletStandardWallet,\n}: CreateWalletProviderFromSuiStandardWalletParams): SuiWalletProvider => {\n const features = walletStandardWallet.features;\n\n const walletProviderType = WalletProviderEnum.BrowserExtension;\n\n const key = formatWalletProviderKey({\n chain: 'SUI',\n displayName: walletStandardWallet.name,\n walletProviderType,\n });\n\n const runConnectFeature = async ({\n silent = false,\n }: {\n silent?: boolean;\n } = {}) => {\n const connectMethod = features['standard:connect']?.connect;\n\n assertDefined(connectMethod, 'connect method not found in wallet features');\n\n const result = await connectMethod({ silent });\n\n return {\n addresses: result.accounts?.map((account) => ({\n address: account.address,\n publicKey: account.publicKey?.toString(),\n })),\n };\n };\n\n const connect: SuiWalletProvider['connect'] = async () => {\n const autoConnectedAccounts = walletStandardWallet.accounts;\n\n if (autoConnectedAccounts?.length && autoConnectedAccounts[0].address) {\n return {\n addresses: [\n {\n address: autoConnectedAccounts[0].address,\n publicKey: autoConnectedAccounts[0].publicKey?.toString(),\n },\n ],\n };\n }\n\n return runConnectFeature();\n };\n\n const disconnectFeature = features['standard:disconnect']?.disconnect;\n\n const getActiveNetworkId: SuiWalletProvider['getActiveNetworkId'] =\n async () =>\n getActiveNetworkIdFromLastKnownRegistry({\n client: dynamicClient,\n walletProviderKey: key,\n });\n\n const getCurrentAccount = async () => {\n if (!isConnected()) {\n await runConnectFeature({ silent: true });\n }\n\n const account = walletStandardWallet.accounts?.[0];\n\n assertDefined(account, 'No connected accounts found');\n\n return account;\n };\n\n const getSuiClient: SuiWalletProvider['getSuiClient'] = async ({\n walletAccount,\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 const client = new SuiClient({ url });\n return client;\n };\n\n const isConnected = (): boolean => {\n return walletStandardWallet.accounts?.length > 0;\n };\n\n const getConnectedAddresses: SuiWalletProvider['getConnectedAddresses'] =\n async () => {\n if (!isConnected()) {\n await runConnectFeature({ silent: true });\n }\n\n return {\n addresses: walletStandardWallet.accounts.map(\n (account) => account.address\n ),\n };\n };\n\n const signAndExecuteTransaction: SuiWalletProvider['signAndExecuteTransaction'] =\n async ({ transaction, walletAccount }) => {\n await assertWalletAccountSigningAvailability(\n {\n walletAccount,\n },\n dynamicClient\n );\n\n const signAndExecuteTransactionMethod =\n features['sui:signAndExecuteTransaction']?.signAndExecuteTransaction;\n\n assertDefined(\n signAndExecuteTransactionMethod,\n 'signAndExecuteTransaction method not found in wallet features'\n );\n\n const account = await getCurrentAccount();\n\n return signAndExecuteTransactionMethod({\n account,\n chain: account.chains[0],\n transaction,\n });\n };\n\n /* This method is deprecated, but still required by some wallets for backwards compatibility. */\n const signAndExecuteTransactionBlock: SuiWalletProvider['signAndExecuteTransactionBlock'] =\n async ({ options, requestType, transactionBlock, walletAccount }) => {\n await assertWalletAccountSigningAvailability(\n {\n walletAccount,\n },\n dynamicClient\n );\n\n const signAndExecuteTransactionBlockMethod =\n features['sui:signAndExecuteTransactionBlock']\n ?.signAndExecuteTransactionBlock;\n\n assertDefined(\n signAndExecuteTransactionBlockMethod,\n 'signAndExecuteTransactionBlock method not found in wallet features'\n );\n\n const account = await getCurrentAccount();\n\n return signAndExecuteTransactionBlockMethod({\n account,\n chain: account.chains[0],\n options,\n requestType,\n transactionBlock,\n });\n };\n\n const signMessage: SuiWalletProvider['signMessage'] = async ({\n message,\n walletAccount,\n }) => {\n const signMessageMethod =\n features['sui:signPersonalMessage']?.signPersonalMessage;\n\n assertDefined(\n signMessageMethod,\n 'signPersonalMessage method not found in wallet features'\n );\n\n assertDefined(walletAccount, 'Wallet account not found');\n\n await assertWalletAccountSigningAvailability(\n {\n walletAccount,\n },\n dynamicClient\n );\n\n const encodedMessage = new TextEncoder().encode(message);\n\n const account = await getCurrentAccount();\n\n const { signature } = await signMessageMethod({\n account,\n message: encodedMessage,\n });\n\n return { signature };\n };\n\n const signTransaction: SuiWalletProvider['signTransaction'] = async ({\n transaction,\n walletAccount,\n }) => {\n const signTransactionMethod =\n features['sui:signTransaction']?.signTransaction;\n\n assertDefined(\n signTransactionMethod,\n 'signTransaction method not found in wallet features'\n );\n\n await assertWalletAccountSigningAvailability(\n { walletAccount },\n dynamicClient\n );\n\n const account = await getCurrentAccount();\n\n return signTransactionMethod({\n account,\n chain: account.chains[0],\n transaction,\n });\n };\n\n /* This method is deprecated, but still required by some wallets for backwards compatibility. */\n const signTransactionBlock: SuiWalletProvider['signTransactionBlock'] =\n async ({ transactionBlock, walletAccount }) => {\n const signTransactionBlockMethod =\n features['sui:signTransactionBlock']?.signTransactionBlock;\n\n assertDefined(\n signTransactionBlockMethod,\n 'signTransactionBlock method not found in wallet features'\n );\n\n await assertWalletAccountSigningAvailability(\n { walletAccount },\n dynamicClient\n );\n\n const account = await getCurrentAccount();\n\n return signTransactionBlockMethod({\n account,\n chain: account.chains[0],\n transactionBlock,\n });\n };\n\n const switchActiveNetwork: SuiWalletProvider['switchActiveNetwork'] = async ({\n networkId,\n }) =>\n switchActiveNetworkInLastKnownRegistry({\n client: dynamicClient,\n networkId,\n walletProviderKey: key,\n });\n\n const { getEventEmitter, cleanupEventEmitter } =\n createWalletProviderEventEmitter<VoidFunction>({\n removeEventListeners: ({ setupReturnValue }) => {\n assertDefined(setupReturnValue, 'Setup return value not defined');\n\n setupReturnValue();\n },\n\n setupEventListeners: ({ handleAccountsChanged }) => {\n const eventsFeature = features['standard:events'];\n\n return eventsFeature.on(\n 'change',\n ({ accounts }: StandardEventsChangeProperties) => {\n handleAccountsChanged({\n addresses: accounts?.map((account) => account.address) ?? [],\n });\n }\n );\n },\n\n supportedEvents: ['accountsChanged'],\n });\n\n const destroy: SuiWalletProvider['destroy'] = async () => {\n cleanupEventEmitter();\n try {\n await disconnectFeature?.();\n } catch {\n // Best-effort: wallet may already be disconnected\n }\n };\n\n const walletProvider: SuiWalletProvider = {\n chain: 'SUI',\n confirmTransaction: (args) => suiConfirmTransaction(args, dynamicClient),\n connect,\n destroy,\n get events() {\n return getEventEmitter();\n },\n executeSwapTransaction: (args) =>\n suiExecuteSwapTransaction(args, dynamicClient),\n getActiveNetworkId,\n getConnectedAddresses,\n getSuiClient,\n groupKey: formatWalletProviderGroupKey(walletStandardWallet.name),\n key,\n metadata: {\n displayName: walletStandardWallet.name,\n icon: walletStandardWallet.icon,\n },\n signAndExecuteTransaction,\n signAndExecuteTransactionBlock,\n signMessage,\n signTransaction,\n signTransactionBlock,\n switchActiveNetwork,\n transferAmount: (args) => suiTransferAmount(args, dynamicClient),\n walletProviderType,\n };\n\n return walletProvider;\n};\n","import {\n WalletProviderPriority,\n getDefaultClient,\n getWalletProviderRegistry,\n hasExtension,\n registerExtension,\n} from '@dynamic-labs-sdk/client/core';\nimport type {\n SuiWalletFeatures,\n WalletWithFeatures,\n} from '@mysten/wallet-standard';\nimport {\n getWallets,\n isWalletWithRequiredFeatureSet,\n} from '@mysten/wallet-standard';\n\nimport { registerSuiNetworkProviderBuilder } from '../../registerSuiNetworkProviderBuilder';\nimport { createWalletProviderFromSuiStandardWallet } from '../utils/createWalletProviderFromSuiStandardWallet';\n\nexport const SUI_WALLET_STANDARD_EXTENSION_KEY = 'suiWalletStandard';\n\n/**\n * Adds the Sui Wallet Standard extension to the Dynamic client.\n *\n * This extension enables integration with wallets that implement the Sui Wallet Standard,\n * automatically detecting and 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 addSuiWalletStandardExtension = (\n client = getDefaultClient()\n): void => {\n if (\n hasExtension({ extensionKey: SUI_WALLET_STANDARD_EXTENSION_KEY }, client)\n ) {\n return;\n }\n\n registerExtension(\n { extensionKey: SUI_WALLET_STANDARD_EXTENSION_KEY },\n client\n );\n\n registerSuiNetworkProviderBuilder(client);\n\n const walletProviderRegistry = getWalletProviderRegistry(client);\n\n const walletStandardWallets = getWallets()\n .get()\n .filter((wallet) =>\n isWalletWithRequiredFeatureSet(wallet, [\n 'standard:events',\n 'standard:connect',\n 'sui:signPersonalMessage',\n ])\n ) as WalletWithFeatures<SuiWalletFeatures>[];\n\n walletStandardWallets.forEach((walletStandardWallet) => {\n const walletProvider = createWalletProviderFromSuiStandardWallet({\n dynamicClient: client,\n walletStandardWallet,\n });\n\n walletProviderRegistry.register({\n priority: WalletProviderPriority.WALLET_SELF_ANNOUNCEMENT_STANDARD,\n walletProvider,\n });\n });\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"addSuiWalletStandardExtension-CSbMnuRm.esm.js","names":["connect: SuiWalletProvider['connect']","getActiveNetworkId: SuiWalletProvider['getActiveNetworkId']","getSuiClient: SuiWalletProvider['getSuiClient']","getConnectedAddresses: SuiWalletProvider['getConnectedAddresses']","signAndExecuteTransaction: SuiWalletProvider['signAndExecuteTransaction']","signAndExecuteTransactionBlock: SuiWalletProvider['signAndExecuteTransactionBlock']","signMessage: SuiWalletProvider['signMessage']","signTransaction: SuiWalletProvider['signTransaction']","signTransactionBlock: SuiWalletProvider['signTransactionBlock']","switchActiveNetwork: SuiWalletProvider['switchActiveNetwork']","destroy: SuiWalletProvider['destroy']"],"sources":["../src/walletStandard/utils/createWalletProviderFromSuiStandardWallet/createWalletProviderFromSuiStandardWallet.ts","../src/walletStandard/addSuiWalletStandardExtension/addSuiWalletStandardExtension.ts"],"sourcesContent":["import {\n type DynamicClient,\n assertWalletAccountSigningAvailability,\n getActiveNetworkData,\n} from '@dynamic-labs-sdk/client';\nimport {\n assertDefined,\n createWalletProviderEventEmitter,\n formatWalletProviderGroupKey,\n formatWalletProviderKey,\n getActiveNetworkIdFromLastKnownRegistry,\n switchActiveNetworkInLastKnownRegistry,\n} from '@dynamic-labs-sdk/client/core';\nimport { WalletProviderEnum } from '@dynamic-labs/sdk-api-core';\nimport { SuiClient } from '@mysten/sui/client';\nimport type {\n StandardEventsChangeProperties,\n SuiWalletFeatures,\n WalletWithFeatures,\n} from '@mysten/wallet-standard';\n\nimport type { SuiWalletProvider } from '../../../SuiWalletProvider.types';\nimport { suiConfirmTransaction } from '../../../utils/suiConfirmTransaction';\nimport { suiExecuteSwapTransaction } from '../../../utils/suiExecuteSwapTransaction';\nimport { suiTransferAmount } from '../../../utils/suiTransferAmount';\n\ntype CreateWalletProviderFromSuiStandardWalletParams = {\n dynamicClient: DynamicClient;\n walletStandardWallet: WalletWithFeatures<SuiWalletFeatures>;\n};\n\n/** @notInstrumented */\nexport const createWalletProviderFromSuiStandardWallet = ({\n dynamicClient,\n walletStandardWallet,\n}: CreateWalletProviderFromSuiStandardWalletParams): SuiWalletProvider => {\n const features = walletStandardWallet.features;\n\n const walletProviderType = WalletProviderEnum.BrowserExtension;\n\n const key = formatWalletProviderKey({\n chain: 'SUI',\n displayName: walletStandardWallet.name,\n walletProviderType,\n });\n\n const runConnectFeature = async ({\n silent = false,\n }: {\n silent?: boolean;\n } = {}) => {\n const connectMethod = features['standard:connect']?.connect;\n\n assertDefined(connectMethod, 'connect method not found in wallet features');\n\n const result = await connectMethod({ silent });\n\n return {\n addresses: result.accounts?.map((account) => ({\n address: account.address,\n publicKey: account.publicKey?.toString(),\n })),\n };\n };\n\n const connect: SuiWalletProvider['connect'] = async () => {\n const autoConnectedAccounts = walletStandardWallet.accounts;\n\n if (autoConnectedAccounts?.length && autoConnectedAccounts[0].address) {\n return {\n addresses: [\n {\n address: autoConnectedAccounts[0].address,\n publicKey: autoConnectedAccounts[0].publicKey?.toString(),\n },\n ],\n };\n }\n\n return runConnectFeature();\n };\n\n const disconnectFeature = features['standard:disconnect']?.disconnect;\n\n const getActiveNetworkId: SuiWalletProvider['getActiveNetworkId'] =\n async () =>\n getActiveNetworkIdFromLastKnownRegistry({\n client: dynamicClient,\n walletProviderKey: key,\n });\n\n const getCurrentAccount = async () => {\n if (!isConnected()) {\n await runConnectFeature({ silent: true });\n }\n\n const account = walletStandardWallet.accounts?.[0];\n\n assertDefined(account, 'No connected accounts found');\n\n return account;\n };\n\n const getSuiClient: SuiWalletProvider['getSuiClient'] = async ({\n walletAccount,\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 const client = new SuiClient({ url });\n return client;\n };\n\n const isConnected = (): boolean => {\n return walletStandardWallet.accounts?.length > 0;\n };\n\n const getConnectedAddresses: SuiWalletProvider['getConnectedAddresses'] =\n async () => {\n if (!isConnected()) {\n await runConnectFeature({ silent: true });\n }\n\n return {\n addresses: walletStandardWallet.accounts.map(\n (account) => account.address\n ),\n };\n };\n\n const signAndExecuteTransaction: SuiWalletProvider['signAndExecuteTransaction'] =\n async ({ transaction, walletAccount }) => {\n await assertWalletAccountSigningAvailability(\n {\n walletAccount,\n },\n dynamicClient\n );\n\n const signAndExecuteTransactionMethod =\n features['sui:signAndExecuteTransaction']?.signAndExecuteTransaction;\n\n assertDefined(\n signAndExecuteTransactionMethod,\n 'signAndExecuteTransaction method not found in wallet features'\n );\n\n const account = await getCurrentAccount();\n\n return signAndExecuteTransactionMethod({\n account,\n chain: account.chains[0],\n transaction,\n });\n };\n\n /* This method is deprecated, but still required by some wallets for backwards compatibility. */\n const signAndExecuteTransactionBlock: SuiWalletProvider['signAndExecuteTransactionBlock'] =\n async ({ options, requestType, transactionBlock, walletAccount }) => {\n await assertWalletAccountSigningAvailability(\n {\n walletAccount,\n },\n dynamicClient\n );\n\n const signAndExecuteTransactionBlockMethod =\n features['sui:signAndExecuteTransactionBlock']\n ?.signAndExecuteTransactionBlock;\n\n assertDefined(\n signAndExecuteTransactionBlockMethod,\n 'signAndExecuteTransactionBlock method not found in wallet features'\n );\n\n const account = await getCurrentAccount();\n\n return signAndExecuteTransactionBlockMethod({\n account,\n chain: account.chains[0],\n options,\n requestType,\n transactionBlock,\n });\n };\n\n const signMessage: SuiWalletProvider['signMessage'] = async ({\n message,\n walletAccount,\n }) => {\n const signMessageMethod =\n features['sui:signPersonalMessage']?.signPersonalMessage;\n\n assertDefined(\n signMessageMethod,\n 'signPersonalMessage method not found in wallet features'\n );\n\n assertDefined(walletAccount, 'Wallet account not found');\n\n await assertWalletAccountSigningAvailability(\n {\n walletAccount,\n },\n dynamicClient\n );\n\n const encodedMessage = new TextEncoder().encode(message);\n\n const account = await getCurrentAccount();\n\n const { signature } = await signMessageMethod({\n account,\n message: encodedMessage,\n });\n\n return { signature };\n };\n\n const signTransaction: SuiWalletProvider['signTransaction'] = async ({\n transaction,\n walletAccount,\n }) => {\n const signTransactionMethod =\n features['sui:signTransaction']?.signTransaction;\n\n assertDefined(\n signTransactionMethod,\n 'signTransaction method not found in wallet features'\n );\n\n await assertWalletAccountSigningAvailability(\n { walletAccount },\n dynamicClient\n );\n\n const account = await getCurrentAccount();\n\n return signTransactionMethod({\n account,\n chain: account.chains[0],\n transaction,\n });\n };\n\n /* This method is deprecated, but still required by some wallets for backwards compatibility. */\n const signTransactionBlock: SuiWalletProvider['signTransactionBlock'] =\n async ({ transactionBlock, walletAccount }) => {\n const signTransactionBlockMethod =\n features['sui:signTransactionBlock']?.signTransactionBlock;\n\n assertDefined(\n signTransactionBlockMethod,\n 'signTransactionBlock method not found in wallet features'\n );\n\n await assertWalletAccountSigningAvailability(\n { walletAccount },\n dynamicClient\n );\n\n const account = await getCurrentAccount();\n\n return signTransactionBlockMethod({\n account,\n chain: account.chains[0],\n transactionBlock,\n });\n };\n\n const switchActiveNetwork: SuiWalletProvider['switchActiveNetwork'] = async ({\n networkId,\n }) =>\n switchActiveNetworkInLastKnownRegistry({\n client: dynamicClient,\n networkId,\n walletProviderKey: key,\n });\n\n const { getEventEmitter, cleanupEventEmitter } =\n createWalletProviderEventEmitter<VoidFunction>({\n removeEventListeners: ({ setupReturnValue }) => {\n assertDefined(setupReturnValue, 'Setup return value not defined');\n\n setupReturnValue();\n },\n\n setupEventListeners: ({ handleAccountsChanged }) => {\n const eventsFeature = features['standard:events'];\n\n return eventsFeature.on(\n 'change',\n ({ accounts }: StandardEventsChangeProperties) => {\n handleAccountsChanged({\n addresses: accounts?.map((account) => account.address) ?? [],\n });\n }\n );\n },\n\n supportedEvents: ['accountsChanged'],\n });\n\n const destroy: SuiWalletProvider['destroy'] = async () => {\n cleanupEventEmitter();\n try {\n await disconnectFeature?.();\n } catch {\n // Best-effort: wallet may already be disconnected\n }\n };\n\n const walletProvider: SuiWalletProvider = {\n chain: 'SUI',\n confirmTransaction: (args) => suiConfirmTransaction(args, dynamicClient),\n connect,\n destroy,\n get events() {\n return getEventEmitter();\n },\n executeSwapTransaction: (args) =>\n suiExecuteSwapTransaction(args, dynamicClient),\n getActiveNetworkId,\n getConnectedAddresses,\n getSuiClient,\n groupKey: formatWalletProviderGroupKey(walletStandardWallet.name),\n key,\n metadata: {\n displayName: walletStandardWallet.name,\n icon: walletStandardWallet.icon,\n },\n signAndExecuteTransaction,\n signAndExecuteTransactionBlock,\n signMessage,\n signTransaction,\n signTransactionBlock,\n switchActiveNetwork,\n transferAmount: (args) => suiTransferAmount(args, dynamicClient),\n walletProviderType,\n };\n\n return walletProvider;\n};\n","import {\n WalletProviderPriority,\n getDefaultClient,\n getWalletProviderRegistry,\n hasExtension,\n registerExtension,\n} from '@dynamic-labs-sdk/client/core';\nimport type {\n SuiWalletFeatures,\n WalletWithFeatures,\n} from '@mysten/wallet-standard';\nimport {\n getWallets,\n isWalletWithRequiredFeatureSet,\n} from '@mysten/wallet-standard';\n\nimport { registerSuiNetworkProviderBuilder } from '../../registerSuiNetworkProviderBuilder';\nimport { createWalletProviderFromSuiStandardWallet } from '../utils/createWalletProviderFromSuiStandardWallet';\n\nexport const SUI_WALLET_STANDARD_EXTENSION_KEY = 'suiWalletStandard';\n\n/**\n * Adds the Sui Wallet Standard extension to the Dynamic client.\n *\n * This extension enables integration with wallets that implement the Sui Wallet Standard,\n * automatically detecting and 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 * @notInstrumented\n */\nexport const addSuiWalletStandardExtension = (\n client = getDefaultClient()\n): void => {\n if (\n hasExtension({ extensionKey: SUI_WALLET_STANDARD_EXTENSION_KEY }, client)\n ) {\n return;\n }\n\n registerExtension(\n { extensionKey: SUI_WALLET_STANDARD_EXTENSION_KEY },\n client\n );\n\n registerSuiNetworkProviderBuilder(client);\n\n const walletProviderRegistry = getWalletProviderRegistry(client);\n\n const walletStandardWallets = getWallets()\n .get()\n .filter((wallet) =>\n isWalletWithRequiredFeatureSet(wallet, [\n 'standard:events',\n 'standard:connect',\n 'sui:signPersonalMessage',\n ])\n ) as WalletWithFeatures<SuiWalletFeatures>[];\n\n walletStandardWallets.forEach((walletStandardWallet) => {\n const walletProvider = createWalletProviderFromSuiStandardWallet({\n dynamicClient: client,\n walletStandardWallet,\n });\n\n walletProviderRegistry.register({\n priority: WalletProviderPriority.WALLET_SELF_ANNOUNCEMENT_STANDARD,\n walletProvider,\n });\n });\n};\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- const require_suiTransferAmount = require('./suiTransferAmount-BB39PARg.cjs');
1
+ const require_suiTransferAmount = require('./suiTransferAmount-DpSplM7t.cjs');
2
2
  let _dynamic_labs_sdk_client_core = require("@dynamic-labs-sdk/client/core");
3
3
  let _mysten_sui_client = require("@mysten/sui/client");
4
4
  let _dynamic_labs_sdk_client = require("@dynamic-labs-sdk/client");
@@ -6,7 +6,7 @@ let _dynamic_labs_sdk_api_core = require("@dynamic-labs/sdk-api-core");
6
6
  let _mysten_wallet_standard = require("@mysten/wallet-standard");
7
7
 
8
8
  //#region src/walletStandard/utils/createWalletProviderFromSuiStandardWallet/createWalletProviderFromSuiStandardWallet.ts
9
- /** @not-instrumented */
9
+ /** @notInstrumented */
10
10
  const createWalletProviderFromSuiStandardWallet = ({ dynamicClient, walletStandardWallet }) => {
11
11
  const features = walletStandardWallet.features;
12
12
  const walletProviderType = _dynamic_labs_sdk_api_core.WalletProviderEnum.BrowserExtension;
@@ -176,7 +176,7 @@ const SUI_WALLET_STANDARD_EXTENSION_KEY = "suiWalletStandard";
176
176
  * automatically detecting and registering compatible wallets for use with the Dynamic SDK.
177
177
  *
178
178
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
179
- * @not-instrumented
179
+ * @notInstrumented
180
180
  */
181
181
  const addSuiWalletStandardExtension = (client = (0, _dynamic_labs_sdk_client_core.getDefaultClient)()) => {
182
182
  if ((0, _dynamic_labs_sdk_client_core.hasExtension)({ extensionKey: SUI_WALLET_STANDARD_EXTENSION_KEY }, client)) return;
@@ -206,4 +206,4 @@ Object.defineProperty(exports, 'addSuiWalletStandardExtension', {
206
206
  return addSuiWalletStandardExtension;
207
207
  }
208
208
  });
209
- //# sourceMappingURL=addSuiWalletStandardExtension-B1kd13ya.cjs.map
209
+ //# sourceMappingURL=addSuiWalletStandardExtension-Ennk6yId.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addSuiWalletStandardExtension-Ennk6yId.cjs","names":["WalletProviderEnum","connect: SuiWalletProvider['connect']","getActiveNetworkId: SuiWalletProvider['getActiveNetworkId']","getSuiClient: SuiWalletProvider['getSuiClient']","SuiClient","getConnectedAddresses: SuiWalletProvider['getConnectedAddresses']","signAndExecuteTransaction: SuiWalletProvider['signAndExecuteTransaction']","signAndExecuteTransactionBlock: SuiWalletProvider['signAndExecuteTransactionBlock']","signMessage: SuiWalletProvider['signMessage']","signTransaction: SuiWalletProvider['signTransaction']","signTransactionBlock: SuiWalletProvider['signTransactionBlock']","switchActiveNetwork: SuiWalletProvider['switchActiveNetwork']","destroy: SuiWalletProvider['destroy']","suiConfirmTransaction","suiExecuteSwapTransaction","suiTransferAmount","WalletProviderPriority"],"sources":["../src/walletStandard/utils/createWalletProviderFromSuiStandardWallet/createWalletProviderFromSuiStandardWallet.ts","../src/walletStandard/addSuiWalletStandardExtension/addSuiWalletStandardExtension.ts"],"sourcesContent":["import {\n type DynamicClient,\n assertWalletAccountSigningAvailability,\n getActiveNetworkData,\n} from '@dynamic-labs-sdk/client';\nimport {\n assertDefined,\n createWalletProviderEventEmitter,\n formatWalletProviderGroupKey,\n formatWalletProviderKey,\n getActiveNetworkIdFromLastKnownRegistry,\n switchActiveNetworkInLastKnownRegistry,\n} from '@dynamic-labs-sdk/client/core';\nimport { WalletProviderEnum } from '@dynamic-labs/sdk-api-core';\nimport { SuiClient } from '@mysten/sui/client';\nimport type {\n StandardEventsChangeProperties,\n SuiWalletFeatures,\n WalletWithFeatures,\n} from '@mysten/wallet-standard';\n\nimport type { SuiWalletProvider } from '../../../SuiWalletProvider.types';\nimport { suiConfirmTransaction } from '../../../utils/suiConfirmTransaction';\nimport { suiExecuteSwapTransaction } from '../../../utils/suiExecuteSwapTransaction';\nimport { suiTransferAmount } from '../../../utils/suiTransferAmount';\n\ntype CreateWalletProviderFromSuiStandardWalletParams = {\n dynamicClient: DynamicClient;\n walletStandardWallet: WalletWithFeatures<SuiWalletFeatures>;\n};\n\n/** @notInstrumented */\nexport const createWalletProviderFromSuiStandardWallet = ({\n dynamicClient,\n walletStandardWallet,\n}: CreateWalletProviderFromSuiStandardWalletParams): SuiWalletProvider => {\n const features = walletStandardWallet.features;\n\n const walletProviderType = WalletProviderEnum.BrowserExtension;\n\n const key = formatWalletProviderKey({\n chain: 'SUI',\n displayName: walletStandardWallet.name,\n walletProviderType,\n });\n\n const runConnectFeature = async ({\n silent = false,\n }: {\n silent?: boolean;\n } = {}) => {\n const connectMethod = features['standard:connect']?.connect;\n\n assertDefined(connectMethod, 'connect method not found in wallet features');\n\n const result = await connectMethod({ silent });\n\n return {\n addresses: result.accounts?.map((account) => ({\n address: account.address,\n publicKey: account.publicKey?.toString(),\n })),\n };\n };\n\n const connect: SuiWalletProvider['connect'] = async () => {\n const autoConnectedAccounts = walletStandardWallet.accounts;\n\n if (autoConnectedAccounts?.length && autoConnectedAccounts[0].address) {\n return {\n addresses: [\n {\n address: autoConnectedAccounts[0].address,\n publicKey: autoConnectedAccounts[0].publicKey?.toString(),\n },\n ],\n };\n }\n\n return runConnectFeature();\n };\n\n const disconnectFeature = features['standard:disconnect']?.disconnect;\n\n const getActiveNetworkId: SuiWalletProvider['getActiveNetworkId'] =\n async () =>\n getActiveNetworkIdFromLastKnownRegistry({\n client: dynamicClient,\n walletProviderKey: key,\n });\n\n const getCurrentAccount = async () => {\n if (!isConnected()) {\n await runConnectFeature({ silent: true });\n }\n\n const account = walletStandardWallet.accounts?.[0];\n\n assertDefined(account, 'No connected accounts found');\n\n return account;\n };\n\n const getSuiClient: SuiWalletProvider['getSuiClient'] = async ({\n walletAccount,\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 const client = new SuiClient({ url });\n return client;\n };\n\n const isConnected = (): boolean => {\n return walletStandardWallet.accounts?.length > 0;\n };\n\n const getConnectedAddresses: SuiWalletProvider['getConnectedAddresses'] =\n async () => {\n if (!isConnected()) {\n await runConnectFeature({ silent: true });\n }\n\n return {\n addresses: walletStandardWallet.accounts.map(\n (account) => account.address\n ),\n };\n };\n\n const signAndExecuteTransaction: SuiWalletProvider['signAndExecuteTransaction'] =\n async ({ transaction, walletAccount }) => {\n await assertWalletAccountSigningAvailability(\n {\n walletAccount,\n },\n dynamicClient\n );\n\n const signAndExecuteTransactionMethod =\n features['sui:signAndExecuteTransaction']?.signAndExecuteTransaction;\n\n assertDefined(\n signAndExecuteTransactionMethod,\n 'signAndExecuteTransaction method not found in wallet features'\n );\n\n const account = await getCurrentAccount();\n\n return signAndExecuteTransactionMethod({\n account,\n chain: account.chains[0],\n transaction,\n });\n };\n\n /* This method is deprecated, but still required by some wallets for backwards compatibility. */\n const signAndExecuteTransactionBlock: SuiWalletProvider['signAndExecuteTransactionBlock'] =\n async ({ options, requestType, transactionBlock, walletAccount }) => {\n await assertWalletAccountSigningAvailability(\n {\n walletAccount,\n },\n dynamicClient\n );\n\n const signAndExecuteTransactionBlockMethod =\n features['sui:signAndExecuteTransactionBlock']\n ?.signAndExecuteTransactionBlock;\n\n assertDefined(\n signAndExecuteTransactionBlockMethod,\n 'signAndExecuteTransactionBlock method not found in wallet features'\n );\n\n const account = await getCurrentAccount();\n\n return signAndExecuteTransactionBlockMethod({\n account,\n chain: account.chains[0],\n options,\n requestType,\n transactionBlock,\n });\n };\n\n const signMessage: SuiWalletProvider['signMessage'] = async ({\n message,\n walletAccount,\n }) => {\n const signMessageMethod =\n features['sui:signPersonalMessage']?.signPersonalMessage;\n\n assertDefined(\n signMessageMethod,\n 'signPersonalMessage method not found in wallet features'\n );\n\n assertDefined(walletAccount, 'Wallet account not found');\n\n await assertWalletAccountSigningAvailability(\n {\n walletAccount,\n },\n dynamicClient\n );\n\n const encodedMessage = new TextEncoder().encode(message);\n\n const account = await getCurrentAccount();\n\n const { signature } = await signMessageMethod({\n account,\n message: encodedMessage,\n });\n\n return { signature };\n };\n\n const signTransaction: SuiWalletProvider['signTransaction'] = async ({\n transaction,\n walletAccount,\n }) => {\n const signTransactionMethod =\n features['sui:signTransaction']?.signTransaction;\n\n assertDefined(\n signTransactionMethod,\n 'signTransaction method not found in wallet features'\n );\n\n await assertWalletAccountSigningAvailability(\n { walletAccount },\n dynamicClient\n );\n\n const account = await getCurrentAccount();\n\n return signTransactionMethod({\n account,\n chain: account.chains[0],\n transaction,\n });\n };\n\n /* This method is deprecated, but still required by some wallets for backwards compatibility. */\n const signTransactionBlock: SuiWalletProvider['signTransactionBlock'] =\n async ({ transactionBlock, walletAccount }) => {\n const signTransactionBlockMethod =\n features['sui:signTransactionBlock']?.signTransactionBlock;\n\n assertDefined(\n signTransactionBlockMethod,\n 'signTransactionBlock method not found in wallet features'\n );\n\n await assertWalletAccountSigningAvailability(\n { walletAccount },\n dynamicClient\n );\n\n const account = await getCurrentAccount();\n\n return signTransactionBlockMethod({\n account,\n chain: account.chains[0],\n transactionBlock,\n });\n };\n\n const switchActiveNetwork: SuiWalletProvider['switchActiveNetwork'] = async ({\n networkId,\n }) =>\n switchActiveNetworkInLastKnownRegistry({\n client: dynamicClient,\n networkId,\n walletProviderKey: key,\n });\n\n const { getEventEmitter, cleanupEventEmitter } =\n createWalletProviderEventEmitter<VoidFunction>({\n removeEventListeners: ({ setupReturnValue }) => {\n assertDefined(setupReturnValue, 'Setup return value not defined');\n\n setupReturnValue();\n },\n\n setupEventListeners: ({ handleAccountsChanged }) => {\n const eventsFeature = features['standard:events'];\n\n return eventsFeature.on(\n 'change',\n ({ accounts }: StandardEventsChangeProperties) => {\n handleAccountsChanged({\n addresses: accounts?.map((account) => account.address) ?? [],\n });\n }\n );\n },\n\n supportedEvents: ['accountsChanged'],\n });\n\n const destroy: SuiWalletProvider['destroy'] = async () => {\n cleanupEventEmitter();\n try {\n await disconnectFeature?.();\n } catch {\n // Best-effort: wallet may already be disconnected\n }\n };\n\n const walletProvider: SuiWalletProvider = {\n chain: 'SUI',\n confirmTransaction: (args) => suiConfirmTransaction(args, dynamicClient),\n connect,\n destroy,\n get events() {\n return getEventEmitter();\n },\n executeSwapTransaction: (args) =>\n suiExecuteSwapTransaction(args, dynamicClient),\n getActiveNetworkId,\n getConnectedAddresses,\n getSuiClient,\n groupKey: formatWalletProviderGroupKey(walletStandardWallet.name),\n key,\n metadata: {\n displayName: walletStandardWallet.name,\n icon: walletStandardWallet.icon,\n },\n signAndExecuteTransaction,\n signAndExecuteTransactionBlock,\n signMessage,\n signTransaction,\n signTransactionBlock,\n switchActiveNetwork,\n transferAmount: (args) => suiTransferAmount(args, dynamicClient),\n walletProviderType,\n };\n\n return walletProvider;\n};\n","import {\n WalletProviderPriority,\n getDefaultClient,\n getWalletProviderRegistry,\n hasExtension,\n registerExtension,\n} from '@dynamic-labs-sdk/client/core';\nimport type {\n SuiWalletFeatures,\n WalletWithFeatures,\n} from '@mysten/wallet-standard';\nimport {\n getWallets,\n isWalletWithRequiredFeatureSet,\n} from '@mysten/wallet-standard';\n\nimport { registerSuiNetworkProviderBuilder } from '../../registerSuiNetworkProviderBuilder';\nimport { createWalletProviderFromSuiStandardWallet } from '../utils/createWalletProviderFromSuiStandardWallet';\n\nexport const SUI_WALLET_STANDARD_EXTENSION_KEY = 'suiWalletStandard';\n\n/**\n * Adds the Sui Wallet Standard extension to the Dynamic client.\n *\n * This extension enables integration with wallets that implement the Sui Wallet Standard,\n * automatically detecting and 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 * @notInstrumented\n */\nexport const addSuiWalletStandardExtension = (\n client = getDefaultClient()\n): void => {\n if (\n hasExtension({ extensionKey: SUI_WALLET_STANDARD_EXTENSION_KEY }, client)\n ) {\n return;\n }\n\n registerExtension(\n { extensionKey: SUI_WALLET_STANDARD_EXTENSION_KEY },\n client\n );\n\n registerSuiNetworkProviderBuilder(client);\n\n const walletProviderRegistry = getWalletProviderRegistry(client);\n\n const walletStandardWallets = getWallets()\n .get()\n .filter((wallet) =>\n isWalletWithRequiredFeatureSet(wallet, [\n 'standard:events',\n 'standard:connect',\n 'sui:signPersonalMessage',\n ])\n ) as WalletWithFeatures<SuiWalletFeatures>[];\n\n walletStandardWallets.forEach((walletStandardWallet) => {\n const walletProvider = createWalletProviderFromSuiStandardWallet({\n dynamicClient: client,\n walletStandardWallet,\n });\n\n walletProviderRegistry.register({\n priority: WalletProviderPriority.WALLET_SELF_ANNOUNCEMENT_STANDARD,\n walletProvider,\n });\n });\n};\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- const require_suiTransferAmount = require('./suiTransferAmount-BB39PARg.cjs');
1
+ const require_suiTransferAmount = require('./suiTransferAmount-DpSplM7t.cjs');
2
2
  let _dynamic_labs_sdk_client_core = require("@dynamic-labs-sdk/client/core");
3
3
  let _mysten_sui_client = require("@mysten/sui/client");
4
4
  let _dynamic_labs_sdk_client = require("@dynamic-labs-sdk/client");
@@ -6,7 +6,7 @@ let _dynamic_labs_sdk_client_waas_core = require("@dynamic-labs-sdk/client/waas/
6
6
  let _dynamic_labs_sdk_api_core = require("@dynamic-labs/sdk-api-core");
7
7
 
8
8
  //#region src/waas/utils/createWalletProviderForWaasSui/createWalletProviderForWaasSui.ts
9
- /** @not-instrumented */
9
+ /** @notInstrumented */
10
10
  const createWalletProviderForWaasSui = (sdkClient) => {
11
11
  const chain = "SUI";
12
12
  const walletProviderType = _dynamic_labs_sdk_api_core.WalletProviderEnum.EmbeddedWallet;
@@ -108,7 +108,7 @@ const WAAS_SUI_EXTENSION_KEY = "waasSui";
108
108
  * allowing users to have wallets managed by Dynamic's infrastructure.
109
109
  *
110
110
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
111
- * @not-instrumented
111
+ * @notInstrumented
112
112
  */
113
113
  const addWaasSuiExtension = (client = (0, _dynamic_labs_sdk_client_core.getDefaultClient)()) => {
114
114
  if ((0, _dynamic_labs_sdk_client_core.hasExtension)({ extensionKey: WAAS_SUI_EXTENSION_KEY }, client)) return;
@@ -129,4 +129,4 @@ Object.defineProperty(exports, 'addWaasSuiExtension', {
129
129
  return addWaasSuiExtension;
130
130
  }
131
131
  });
132
- //# sourceMappingURL=addWaasSuiExtension-BuK78pPD.cjs.map
132
+ //# sourceMappingURL=addWaasSuiExtension-B7LbC8iV.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addWaasSuiExtension-B7LbC8iV.cjs","names":["chain: Chain","WalletProviderEnum","DYNAMIC_WAAS_METADATA","getActiveNetworkId: WaasSuiWalletProvider['getActiveNetworkId']","getSuiClient: WaasSuiWalletProvider['getSuiClient']","SuiClient","switchActiveNetwork: WaasSuiWalletProvider['switchActiveNetwork']","getConnectedAddresses: WaasSuiWalletProvider['getConnectedAddresses']","signAndExecuteTransaction: WaasSuiWalletProvider['signAndExecuteTransaction']","signTransaction: WaasSuiWalletProvider['signTransaction']","signMessage: WaasSuiWalletProvider['signMessage']","suiConfirmTransaction","suiExecuteSwapTransaction","suiTransferAmount","WalletProviderPriority"],"sources":["../src/waas/utils/createWalletProviderForWaasSui/createWalletProviderForWaasSui.ts","../src/waas/addWaasSuiExtension/addWaasSuiExtension.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 getBuffer,\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 { SuiClient } from '@mysten/sui/client';\n\nimport { suiConfirmTransaction } from '../../../utils/suiConfirmTransaction';\nimport { suiExecuteSwapTransaction } from '../../../utils/suiExecuteSwapTransaction';\nimport { suiTransferAmount } from '../../../utils/suiTransferAmount/suiTransferAmount';\nimport type { WaasSuiWalletProvider } from '../../WaasSuiWalletProvider.types';\n\n/** @notInstrumented */\nexport const createWalletProviderForWaasSui = (\n sdkClient: DynamicClient\n): WaasSuiWalletProvider => {\n const chain: Chain = 'SUI';\n\n const walletProviderType = WalletProviderEnum.EmbeddedWallet;\n\n const key = formatWalletProviderKey({\n chain,\n displayName: DYNAMIC_WAAS_METADATA.displayName,\n walletProviderType,\n });\n\n const waasProvider = createWaasProvider({ chain, sdkClient });\n\n const getActiveNetworkId: WaasSuiWalletProvider['getActiveNetworkId'] =\n async () =>\n getActiveNetworkIdFromLastKnownRegistry({\n client: sdkClient,\n walletProviderKey: key,\n });\n\n const getSuiClient: WaasSuiWalletProvider['getSuiClient'] = async ({\n walletAccount,\n }) => {\n const activeNetworkData = await getActiveNetworkData(\n { walletAccount },\n sdkClient\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 SuiClient({ url });\n };\n\n const switchActiveNetwork: WaasSuiWalletProvider['switchActiveNetwork'] =\n async ({ networkId }) =>\n switchActiveNetworkInLastKnownRegistry({\n client: sdkClient,\n networkId,\n walletProviderKey: key,\n });\n\n const getConnectedAddresses: WaasSuiWalletProvider['getConnectedAddresses'] =\n async () => {\n const waasSolanaAddresses = getAllUserWaasAddressesForChain(\n { chain },\n sdkClient\n );\n\n return {\n addresses: waasSolanaAddresses,\n };\n };\n\n const signAndExecuteTransaction: WaasSuiWalletProvider['signAndExecuteTransaction'] =\n async ({ transaction, walletAccount }) => {\n const { bytes, signature } = await signTransaction({\n transaction,\n walletAccount,\n });\n\n const suiClient = await getSuiClient({ walletAccount });\n\n const response = await suiClient.executeTransactionBlock({\n signature,\n transactionBlock: bytes,\n });\n\n return {\n ...response,\n bytes,\n effects: response.effects?.toString() ?? '',\n signature,\n };\n };\n\n const signTransaction: WaasSuiWalletProvider['signTransaction'] = async ({\n transaction,\n walletAccount,\n }) => {\n const suiClient = await getSuiClient({ walletAccount });\n const txBytes = await transaction.build({ client: suiClient });\n const txBytesBase64 = getBuffer().from(txBytes).toString('base64');\n const txString = getBuffer().from(txBytes).toString('hex');\n\n const { signature } = await waasProvider.signSerializedTransaction({\n serializedTransaction: txString,\n walletAccount,\n });\n\n return { bytes: txBytesBase64, signature };\n };\n\n const signMessage: WaasSuiWalletProvider['signMessage'] = async ({\n message,\n walletAccount,\n }) => {\n assertDefined(walletAccount, 'Wallet account is required');\n\n return waasProvider.signMessage({ message, walletAccount });\n };\n\n return {\n ...waasProvider,\n chain,\n confirmTransaction: (args) => suiConfirmTransaction(args, sdkClient),\n executeSwapTransaction: (args) =>\n suiExecuteSwapTransaction(args, sdkClient),\n getActiveNetworkId,\n getConnectedAddresses,\n getSuiClient,\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 signAndExecuteTransaction,\n signMessage,\n signTransaction,\n switchActiveNetwork,\n transferAmount: (args) => suiTransferAmount(args, sdkClient),\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 { registerSuiNetworkProviderBuilder } from '../../registerSuiNetworkProviderBuilder';\nimport { createWalletProviderForWaasSui } from '../utils/createWalletProviderForWaasSui';\n\nexport const WAAS_SUI_EXTENSION_KEY = 'waasSui';\n\n/**\n * Adds the Dynamic WaaS (Wallet as a Service) Sui extension to the Dynamic client.\n *\n * This extension enables embedded wallet functionality for Sui 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 * @notInstrumented\n */\nexport const addWaasSuiExtension = (client = getDefaultClient()): void => {\n if (hasExtension({ extensionKey: WAAS_SUI_EXTENSION_KEY }, client)) {\n return;\n }\n\n registerExtension({ extensionKey: WAAS_SUI_EXTENSION_KEY }, client);\n registerSuiNetworkProviderBuilder(client);\n\n const walletProviderRegistry = getWalletProviderRegistry(client);\n\n const walletProvider = createWalletProviderForWaasSui(client);\n\n walletProviderRegistry.register({\n priority: WalletProviderPriority.WALLET_SDK,\n walletProvider,\n });\n};\n"],"mappings":";;;;;;;;;AA2BA,MAAa,kCACX,cAC0B;CAC1B,MAAMA,QAAe;CAErB,MAAM,qBAAqBC,8CAAmB;CAE9C,MAAM,iEAA8B;EAClC;EACA,aAAaC,yDAAsB;EACnC;EACD,CAAC;CAEF,MAAM,0EAAkC;EAAE;EAAO;EAAW,CAAC;CAE7D,MAAMC,qBACJ,uFAC0C;EACtC,QAAQ;EACR,mBAAmB;EACpB,CAAC;CAEN,MAAMC,eAAsD,OAAO,EACjE,oBACI;EACJ,MAAM,oBAAoB,yDACxB,EAAE,eAAe,EACjB,UACD;AACD,mDAAc,mBAAmB,+BAA+B;EAEhE,MAAM,MAAM,kBAAkB,aAAa,QAAQ,KAAK;AACxD,mDAAc,KAAK,sCAAsC;AAEzD,SAAO,IAAIC,6BAAU,EAAE,KAAK,CAAC;;CAG/B,MAAMC,sBACJ,OAAO,EAAE,0FACgC;EACrC,QAAQ;EACR;EACA,mBAAmB;EACpB,CAAC;CAEN,MAAMC,wBACJ,YAAY;AAMV,SAAO,EACL,mFALA,EAAE,OAAO,EACT,UACD,EAIA;;CAGL,MAAMC,4BACJ,OAAO,EAAE,aAAa,oBAAoB;EACxC,MAAM,EAAE,OAAO,cAAc,MAAM,gBAAgB;GACjD;GACA;GACD,CAAC;EAIF,MAAM,WAAW,OAFC,MAAM,aAAa,EAAE,eAAe,CAAC,EAEtB,wBAAwB;GACvD;GACA,kBAAkB;GACnB,CAAC;AAEF,SAAO;GACL,GAAG;GACH;GACA,SAAS,SAAS,SAAS,UAAU,IAAI;GACzC;GACD;;CAGL,MAAMC,kBAA4D,OAAO,EACvE,aACA,oBACI;EACJ,MAAM,YAAY,MAAM,aAAa,EAAE,eAAe,CAAC;EACvD,MAAM,UAAU,MAAM,YAAY,MAAM,EAAE,QAAQ,WAAW,CAAC;EAC9D,MAAM,8DAA2B,CAAC,KAAK,QAAQ,CAAC,SAAS,SAAS;EAClE,MAAM,yDAAsB,CAAC,KAAK,QAAQ,CAAC,SAAS,MAAM;EAE1D,MAAM,EAAE,cAAc,MAAM,aAAa,0BAA0B;GACjE,uBAAuB;GACvB;GACD,CAAC;AAEF,SAAO;GAAE,OAAO;GAAe;GAAW;;CAG5C,MAAMC,cAAoD,OAAO,EAC/D,SACA,oBACI;AACJ,mDAAc,eAAe,6BAA6B;AAE1D,SAAO,aAAa,YAAY;GAAE;GAAS;GAAe,CAAC;;AAG7D,QAAO;EACL,GAAG;EACH;EACA,qBAAqB,SAASC,gDAAsB,MAAM,UAAU;EACpE,yBAAyB,SACvBC,oDAA0B,MAAM,UAAU;EAC5C;EACA;EACA;EACA,0EAAuCV,yDAAsB,YAAY;EACzE;EACA,UAAU;GACR,aAAaA,yDAAsB;GACnC,MAAMA,yDAAsB;GAC7B;EACD;EACA;EACA;EACA;EACA,iBAAiB,SAASW,4CAAkB,MAAM,UAAU;EAC5D;EACD;;;;;AC9IH,MAAa,yBAAyB;;;;;;;;;;AAWtC,MAAa,uBAAuB,8DAA2B,KAAW;AACxE,qDAAiB,EAAE,cAAc,wBAAwB,EAAE,OAAO,CAChE;AAGF,sDAAkB,EAAE,cAAc,wBAAwB,EAAE,OAAO;AACnE,6DAAkC,OAAO;CAEzC,MAAM,sFAAmD,OAAO;CAEhE,MAAM,iBAAiB,+BAA+B,OAAO;AAE7D,wBAAuB,SAAS;EAC9B,UAAUC,qDAAuB;EACjC;EACD,CAAC"}
@@ -1,4 +1,4 @@
1
- import { i as suiConfirmTransaction, l as registerSuiNetworkProviderBuilder, r as suiExecuteSwapTransaction, t as suiTransferAmount } from "./suiTransferAmount-U0bmbruo.esm.js";
1
+ import { i as suiConfirmTransaction, l as registerSuiNetworkProviderBuilder, r as suiExecuteSwapTransaction, t as suiTransferAmount } from "./suiTransferAmount-COvuGOUR.esm.js";
2
2
  import { WalletProviderPriority, assertDefined, formatWalletProviderGroupKey, formatWalletProviderKey, getActiveNetworkIdFromLastKnownRegistry, getBuffer, getDefaultClient, getWalletProviderRegistry, hasExtension, registerExtension, switchActiveNetworkInLastKnownRegistry } from "@dynamic-labs-sdk/client/core";
3
3
  import { SuiClient } from "@mysten/sui/client";
4
4
  import { getActiveNetworkData } from "@dynamic-labs-sdk/client";
@@ -6,7 +6,7 @@ import { DYNAMIC_WAAS_METADATA, createWaasProvider, getAllUserWaasAddressesForCh
6
6
  import { WalletProviderEnum } from "@dynamic-labs/sdk-api-core";
7
7
 
8
8
  //#region src/waas/utils/createWalletProviderForWaasSui/createWalletProviderForWaasSui.ts
9
- /** @not-instrumented */
9
+ /** @notInstrumented */
10
10
  const createWalletProviderForWaasSui = (sdkClient) => {
11
11
  const chain = "SUI";
12
12
  const walletProviderType = WalletProviderEnum.EmbeddedWallet;
@@ -108,7 +108,7 @@ const WAAS_SUI_EXTENSION_KEY = "waasSui";
108
108
  * allowing users to have wallets managed by Dynamic's infrastructure.
109
109
  *
110
110
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
111
- * @not-instrumented
111
+ * @notInstrumented
112
112
  */
113
113
  const addWaasSuiExtension = (client = getDefaultClient()) => {
114
114
  if (hasExtension({ extensionKey: WAAS_SUI_EXTENSION_KEY }, client)) return;
@@ -124,4 +124,4 @@ const addWaasSuiExtension = (client = getDefaultClient()) => {
124
124
 
125
125
  //#endregion
126
126
  export { addWaasSuiExtension as t };
127
- //# sourceMappingURL=addWaasSuiExtension-BIhBCVDZ.esm.js.map
127
+ //# sourceMappingURL=addWaasSuiExtension-VjrKKMIn.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addWaasSuiExtension-VjrKKMIn.esm.js","names":["chain: Chain","getActiveNetworkId: WaasSuiWalletProvider['getActiveNetworkId']","getSuiClient: WaasSuiWalletProvider['getSuiClient']","switchActiveNetwork: WaasSuiWalletProvider['switchActiveNetwork']","getConnectedAddresses: WaasSuiWalletProvider['getConnectedAddresses']","signAndExecuteTransaction: WaasSuiWalletProvider['signAndExecuteTransaction']","signTransaction: WaasSuiWalletProvider['signTransaction']","signMessage: WaasSuiWalletProvider['signMessage']"],"sources":["../src/waas/utils/createWalletProviderForWaasSui/createWalletProviderForWaasSui.ts","../src/waas/addWaasSuiExtension/addWaasSuiExtension.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 getBuffer,\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 { SuiClient } from '@mysten/sui/client';\n\nimport { suiConfirmTransaction } from '../../../utils/suiConfirmTransaction';\nimport { suiExecuteSwapTransaction } from '../../../utils/suiExecuteSwapTransaction';\nimport { suiTransferAmount } from '../../../utils/suiTransferAmount/suiTransferAmount';\nimport type { WaasSuiWalletProvider } from '../../WaasSuiWalletProvider.types';\n\n/** @notInstrumented */\nexport const createWalletProviderForWaasSui = (\n sdkClient: DynamicClient\n): WaasSuiWalletProvider => {\n const chain: Chain = 'SUI';\n\n const walletProviderType = WalletProviderEnum.EmbeddedWallet;\n\n const key = formatWalletProviderKey({\n chain,\n displayName: DYNAMIC_WAAS_METADATA.displayName,\n walletProviderType,\n });\n\n const waasProvider = createWaasProvider({ chain, sdkClient });\n\n const getActiveNetworkId: WaasSuiWalletProvider['getActiveNetworkId'] =\n async () =>\n getActiveNetworkIdFromLastKnownRegistry({\n client: sdkClient,\n walletProviderKey: key,\n });\n\n const getSuiClient: WaasSuiWalletProvider['getSuiClient'] = async ({\n walletAccount,\n }) => {\n const activeNetworkData = await getActiveNetworkData(\n { walletAccount },\n sdkClient\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 SuiClient({ url });\n };\n\n const switchActiveNetwork: WaasSuiWalletProvider['switchActiveNetwork'] =\n async ({ networkId }) =>\n switchActiveNetworkInLastKnownRegistry({\n client: sdkClient,\n networkId,\n walletProviderKey: key,\n });\n\n const getConnectedAddresses: WaasSuiWalletProvider['getConnectedAddresses'] =\n async () => {\n const waasSolanaAddresses = getAllUserWaasAddressesForChain(\n { chain },\n sdkClient\n );\n\n return {\n addresses: waasSolanaAddresses,\n };\n };\n\n const signAndExecuteTransaction: WaasSuiWalletProvider['signAndExecuteTransaction'] =\n async ({ transaction, walletAccount }) => {\n const { bytes, signature } = await signTransaction({\n transaction,\n walletAccount,\n });\n\n const suiClient = await getSuiClient({ walletAccount });\n\n const response = await suiClient.executeTransactionBlock({\n signature,\n transactionBlock: bytes,\n });\n\n return {\n ...response,\n bytes,\n effects: response.effects?.toString() ?? '',\n signature,\n };\n };\n\n const signTransaction: WaasSuiWalletProvider['signTransaction'] = async ({\n transaction,\n walletAccount,\n }) => {\n const suiClient = await getSuiClient({ walletAccount });\n const txBytes = await transaction.build({ client: suiClient });\n const txBytesBase64 = getBuffer().from(txBytes).toString('base64');\n const txString = getBuffer().from(txBytes).toString('hex');\n\n const { signature } = await waasProvider.signSerializedTransaction({\n serializedTransaction: txString,\n walletAccount,\n });\n\n return { bytes: txBytesBase64, signature };\n };\n\n const signMessage: WaasSuiWalletProvider['signMessage'] = async ({\n message,\n walletAccount,\n }) => {\n assertDefined(walletAccount, 'Wallet account is required');\n\n return waasProvider.signMessage({ message, walletAccount });\n };\n\n return {\n ...waasProvider,\n chain,\n confirmTransaction: (args) => suiConfirmTransaction(args, sdkClient),\n executeSwapTransaction: (args) =>\n suiExecuteSwapTransaction(args, sdkClient),\n getActiveNetworkId,\n getConnectedAddresses,\n getSuiClient,\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 signAndExecuteTransaction,\n signMessage,\n signTransaction,\n switchActiveNetwork,\n transferAmount: (args) => suiTransferAmount(args, sdkClient),\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 { registerSuiNetworkProviderBuilder } from '../../registerSuiNetworkProviderBuilder';\nimport { createWalletProviderForWaasSui } from '../utils/createWalletProviderForWaasSui';\n\nexport const WAAS_SUI_EXTENSION_KEY = 'waasSui';\n\n/**\n * Adds the Dynamic WaaS (Wallet as a Service) Sui extension to the Dynamic client.\n *\n * This extension enables embedded wallet functionality for Sui 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 * @notInstrumented\n */\nexport const addWaasSuiExtension = (client = getDefaultClient()): void => {\n if (hasExtension({ extensionKey: WAAS_SUI_EXTENSION_KEY }, client)) {\n return;\n }\n\n registerExtension({ extensionKey: WAAS_SUI_EXTENSION_KEY }, client);\n registerSuiNetworkProviderBuilder(client);\n\n const walletProviderRegistry = getWalletProviderRegistry(client);\n\n const walletProvider = createWalletProviderForWaasSui(client);\n\n walletProviderRegistry.register({\n priority: WalletProviderPriority.WALLET_SDK,\n walletProvider,\n });\n};\n"],"mappings":";;;;;;;;;AA2BA,MAAa,kCACX,cAC0B;CAC1B,MAAMA,QAAe;CAErB,MAAM,qBAAqB,mBAAmB;CAE9C,MAAM,MAAM,wBAAwB;EAClC;EACA,aAAa,sBAAsB;EACnC;EACD,CAAC;CAEF,MAAM,eAAe,mBAAmB;EAAE;EAAO;EAAW,CAAC;CAE7D,MAAMC,qBACJ,YACE,wCAAwC;EACtC,QAAQ;EACR,mBAAmB;EACpB,CAAC;CAEN,MAAMC,eAAsD,OAAO,EACjE,oBACI;EACJ,MAAM,oBAAoB,MAAM,qBAC9B,EAAE,eAAe,EACjB,UACD;AACD,gBAAc,mBAAmB,+BAA+B;EAEhE,MAAM,MAAM,kBAAkB,aAAa,QAAQ,KAAK;AACxD,gBAAc,KAAK,sCAAsC;AAEzD,SAAO,IAAI,UAAU,EAAE,KAAK,CAAC;;CAG/B,MAAMC,sBACJ,OAAO,EAAE,gBACP,uCAAuC;EACrC,QAAQ;EACR;EACA,mBAAmB;EACpB,CAAC;CAEN,MAAMC,wBACJ,YAAY;AAMV,SAAO,EACL,WAN0B,gCAC1B,EAAE,OAAO,EACT,UACD,EAIA;;CAGL,MAAMC,4BACJ,OAAO,EAAE,aAAa,oBAAoB;EACxC,MAAM,EAAE,OAAO,cAAc,MAAM,gBAAgB;GACjD;GACA;GACD,CAAC;EAIF,MAAM,WAAW,OAFC,MAAM,aAAa,EAAE,eAAe,CAAC,EAEtB,wBAAwB;GACvD;GACA,kBAAkB;GACnB,CAAC;AAEF,SAAO;GACL,GAAG;GACH;GACA,SAAS,SAAS,SAAS,UAAU,IAAI;GACzC;GACD;;CAGL,MAAMC,kBAA4D,OAAO,EACvE,aACA,oBACI;EACJ,MAAM,YAAY,MAAM,aAAa,EAAE,eAAe,CAAC;EACvD,MAAM,UAAU,MAAM,YAAY,MAAM,EAAE,QAAQ,WAAW,CAAC;EAC9D,MAAM,gBAAgB,WAAW,CAAC,KAAK,QAAQ,CAAC,SAAS,SAAS;EAClE,MAAM,WAAW,WAAW,CAAC,KAAK,QAAQ,CAAC,SAAS,MAAM;EAE1D,MAAM,EAAE,cAAc,MAAM,aAAa,0BAA0B;GACjE,uBAAuB;GACvB;GACD,CAAC;AAEF,SAAO;GAAE,OAAO;GAAe;GAAW;;CAG5C,MAAMC,cAAoD,OAAO,EAC/D,SACA,oBACI;AACJ,gBAAc,eAAe,6BAA6B;AAE1D,SAAO,aAAa,YAAY;GAAE;GAAS;GAAe,CAAC;;AAG7D,QAAO;EACL,GAAG;EACH;EACA,qBAAqB,SAAS,sBAAsB,MAAM,UAAU;EACpE,yBAAyB,SACvB,0BAA0B,MAAM,UAAU;EAC5C;EACA;EACA;EACA,UAAU,6BAA6B,sBAAsB,YAAY;EACzE;EACA,UAAU;GACR,aAAa,sBAAsB;GACnC,MAAM,sBAAsB;GAC7B;EACD;EACA;EACA;EACA;EACA,iBAAiB,SAAS,kBAAkB,MAAM,UAAU;EAC5D;EACD;;;;;AC9IH,MAAa,yBAAyB;;;;;;;;;;AAWtC,MAAa,uBAAuB,SAAS,kBAAkB,KAAW;AACxE,KAAI,aAAa,EAAE,cAAc,wBAAwB,EAAE,OAAO,CAChE;AAGF,mBAAkB,EAAE,cAAc,wBAAwB,EAAE,OAAO;AACnE,mCAAkC,OAAO;CAEzC,MAAM,yBAAyB,0BAA0B,OAAO;CAEhE,MAAM,iBAAiB,+BAA+B,OAAO;AAE7D,wBAAuB,SAAS;EAC9B,UAAU,uBAAuB;EACjC;EACD,CAAC"}
@@ -9,7 +9,7 @@ type GetSuiClientParams = {
9
9
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
10
10
  * @returns A promise that resolves to a SuiClient instance
11
11
  * @throws NotSuiProviderError If the wallet account's provider is not a SUI provider
12
- * @not-instrumented
12
+ * @notInstrumented
13
13
  */
14
14
  export declare const getSuiClient: ({ walletAccount }: GetSuiClientParams, client?: import("@dynamic-labs-sdk/client").DynamicClient) => Promise<import("@mysten/sui/client").SuiClient>;
15
15
  export {};
package/dist/index.cjs CHANGED
@@ -1,6 +1,6 @@
1
- const require_suiTransferAmount = require('./suiTransferAmount-BB39PARg.cjs');
2
- const require_addWaasSuiExtension = require('./addWaasSuiExtension-BuK78pPD.cjs');
3
- const require_addSuiWalletStandardExtension = require('./addSuiWalletStandardExtension-B1kd13ya.cjs');
1
+ const require_suiTransferAmount = require('./suiTransferAmount-DpSplM7t.cjs');
2
+ const require_addWaasSuiExtension = require('./addWaasSuiExtension-B7LbC8iV.cjs');
3
+ const require_addSuiWalletStandardExtension = require('./addSuiWalletStandardExtension-Ennk6yId.cjs');
4
4
  let _dynamic_labs_sdk_assert_package_version = require("@dynamic-labs-sdk/assert-package-version");
5
5
  let _dynamic_labs_sdk_client_core = require("@dynamic-labs-sdk/client/core");
6
6
  let _dynamic_labs_sdk_client = require("@dynamic-labs-sdk/client");
@@ -14,7 +14,7 @@ let _dynamic_labs_sdk_client = require("@dynamic-labs-sdk/client");
14
14
  * including standard wallets and embedded wallets managed by Dynamic's infrastructure.
15
15
  *
16
16
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
17
- * @not-instrumented
17
+ * @notInstrumented
18
18
  */
19
19
  const addSuiExtension = (client = (0, _dynamic_labs_sdk_client_core.getDefaultClient)()) => {
20
20
  require_addSuiWalletStandardExtension.addSuiWalletStandardExtension(client);
@@ -33,7 +33,7 @@ const addSuiExtension = (client = (0, _dynamic_labs_sdk_client_core.getDefaultCl
33
33
  * @param [params.offset] - Pagination cursor from a previous response's nextOffset.
34
34
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
35
35
  * @returns A promise that resolves to the transaction history for the given SUI wallet account.
36
- * @not-instrumented
36
+ * @notInstrumented
37
37
  */
38
38
  const getSuiTransactionHistory = async ({ walletAccount, networkId, limit, offset }, client = (0, _dynamic_labs_sdk_client_core.getDefaultClient)()) => {
39
39
  if (!require_suiTransferAmount.isSuiWalletAccount(walletAccount)) throw new _dynamic_labs_sdk_client.InvalidParamError("Wallet account is not a SUI wallet account");
@@ -53,7 +53,7 @@ const getSuiTransactionHistory = async ({ walletAccount, networkId, limit, offse
53
53
  *
54
54
  * @param networkProvider - The network provider to check.
55
55
  * @returns True if the network provider is a Sui network provider, false otherwise.
56
- * @not-instrumented
56
+ * @notInstrumented
57
57
  */
58
58
  const isSuiNetworkProvider = (networkProvider) => networkProvider.chain === "SUI";
59
59
 
@@ -71,7 +71,7 @@ const isSuiNetworkProvider = (networkProvider) => networkProvider.chain === "SUI
71
71
  * @param [params.requestType] - The request type to use for the transaction execution
72
72
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
73
73
  * @returns An object containing signature result
74
- * @not-instrumented
74
+ * @notInstrumented
75
75
  */
76
76
  const signAndExecuteTransactionBlock = async ({ walletAccount, transactionBlock, options, requestType }, client = (0, _dynamic_labs_sdk_client.getDefaultClient)()) => {
77
77
  const provider = (0, _dynamic_labs_sdk_client_core.getWalletProviderFromWalletAccount)({ walletAccount }, client);
@@ -94,7 +94,7 @@ const signAndExecuteTransactionBlock = async ({ walletAccount, transactionBlock,
94
94
  * @param params.walletAccount - The wallet account to sign the transaction with
95
95
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
96
96
  * @returns An object containing the signature and transaction bytes
97
- * @not-instrumented
97
+ * @notInstrumented
98
98
  */
99
99
  const signTransaction = async ({ walletAccount, transaction }, client = (0, _dynamic_labs_sdk_client.getDefaultClient)()) => {
100
100
  const provider = (0, _dynamic_labs_sdk_client_core.getWalletProviderFromWalletAccount)({ walletAccount }, client);
@@ -116,7 +116,7 @@ const signTransaction = async ({ walletAccount, transaction }, client = (0, _dyn
116
116
  * @param params.walletAccount - The wallet account to sign the transaction with
117
117
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
118
118
  * @returns An object containing the signature and transaction block bytes
119
- * @not-instrumented
119
+ * @notInstrumented
120
120
  */
121
121
  const signTransactionBlock = async ({ walletAccount, transactionBlock }, client = (0, _dynamic_labs_sdk_client.getDefaultClient)()) => {
122
122
  const provider = (0, _dynamic_labs_sdk_client_core.getWalletProviderFromWalletAccount)({ walletAccount }, client);
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":["isSuiWalletAccount","InvalidParamError","isSuiWalletProvider","NotSuiProviderError","MethodNotImplementedError","isSuiWalletProvider","NotSuiProviderError","isSuiWalletProvider","NotSuiProviderError","MethodNotImplementedError","packageName","packageVersion"],"sources":["../src/addSuiExtension/addSuiExtension.ts","../src/utils/getSuiTransactionHistory/getSuiTransactionHistory.ts","../src/isSuiNetworkProvider/isSuiNetworkProvider.ts","../src/signAndExecuteTransactionBlock/signAndExecuteTransactionBlock.ts","../src/signTransaction/signTransaction.ts","../src/signTransactionBlock/signTransactionBlock.ts","../src/exports/index.ts"],"sourcesContent":["import { getDefaultClient } from '@dynamic-labs-sdk/client/core';\n\nimport { addWaasSuiExtension } from '../waas/addWaasSuiExtension';\nimport { addSuiWalletStandardExtension } from '../walletStandard/addSuiWalletStandardExtension';\n\n/**\n * Adds the Sui extension to the Dynamic client.\n *\n * This is a convenience function that adds both the Sui Wallet Standard extension\n * and the Dynamic WaaS Sui extension, enabling support for all Sui wallet types\n * including standard wallets and embedded 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 addSuiExtension = (client = getDefaultClient()): void => {\n addSuiWalletStandardExtension(client);\n addWaasSuiExtension(client);\n};\n","import {\n type DynamicClient,\n type GetTransactionHistoryResponse,\n InvalidParamError,\n getTransactionHistory,\n} from '@dynamic-labs-sdk/client';\nimport { getDefaultClient } from '@dynamic-labs-sdk/client/core';\n\nimport { isSuiWalletAccount } from '../../isSuiWalletAccount';\nimport type { SuiWalletAccount } from '../../SuiWalletAccount.types';\n\nexport type GetSuiTransactionHistoryParams = {\n limit?: number;\n networkId: number;\n offset?: string;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * Retrieves transaction history for a SUI wallet account.\n * Delegates to the Dynamic backend API; returns a normalized WalletTransactionsResponse.\n *\n * @param params.walletAccount - The SUI wallet account to query.\n * @param params.networkId - The SUI network ID (501=mainnet, 502=testnet, 503=devnet).\n * @param [params.limit] - Max transactions to return.\n * @param [params.offset] - Pagination cursor from a previous response's nextOffset.\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns A promise that resolves to the transaction history for the given SUI wallet account.\n * @not-instrumented\n */\nexport const getSuiTransactionHistory = async (\n { walletAccount, networkId, limit, offset }: GetSuiTransactionHistoryParams,\n client: DynamicClient = getDefaultClient(),\n): Promise<GetTransactionHistoryResponse> => {\n if (!isSuiWalletAccount(walletAccount)) {\n throw new InvalidParamError('Wallet account is not a SUI wallet account');\n }\n\n return getTransactionHistory(\n { address: walletAccount.address, chain: 'SUI', limit, networkId, offset },\n client,\n );\n};\n","import type { NetworkProvider } from '@dynamic-labs-sdk/client';\n\nimport type { SuiNetworkProvider } from '../SuiNetworkProvider.types';\n\n/**\n * Type guard function to check if a network provider is a Sui network provider.\n *\n * @param networkProvider - The network provider to check.\n * @returns True if the network provider is a Sui network provider, false otherwise.\n * @not-instrumented\n */\nexport const isSuiNetworkProvider = (\n networkProvider: NetworkProvider\n): networkProvider is SuiNetworkProvider => networkProvider.chain === 'SUI';\n","import { getDefaultClient } from '@dynamic-labs-sdk/client';\nimport {\n MethodNotImplementedError,\n getWalletProviderFromWalletAccount,\n} from '@dynamic-labs-sdk/client/core';\nimport type { Transaction } from '@mysten/sui/transactions';\n\nimport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nimport { isSuiWalletProvider } from '../isSuiWalletProvider';\nimport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nimport type {\n SuiExecuteTransactionRequestType,\n SuiSignAndExecuteTransactionBlockResult,\n SuiTransactionBlockResponseOptions,\n} from '../SuiWalletProvider.types';\n\ntype SignAndExecuteTransactionBlockParams = {\n options?: SuiTransactionBlockResponseOptions;\n requestType?: SuiExecuteTransactionRequestType;\n transactionBlock: Transaction;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * @deprecated Use signAndExecuteTransaction instead\n *\n * Signs and executes a Sui transaction block\n *\n * @param params.transactionBlock - The transaction block to sign and execute\n * @param params.walletAccount - The wallet account to sign the transaction with\n * @param [params.options] - The fields to return in the execution response (e.g., transaction, effects, events, etc).\n * By default, only the transaction digest will be returned.\n * @param [params.requestType] - The request type to use for the transaction execution\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns An object containing signature result\n * @not-instrumented\n */\nexport const signAndExecuteTransactionBlock = async (\n {\n walletAccount,\n transactionBlock,\n options,\n requestType,\n }: SignAndExecuteTransactionBlockParams,\n client = getDefaultClient()\n): Promise<SuiSignAndExecuteTransactionBlockResult> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isSuiWalletProvider(provider)) {\n throw new NotSuiProviderError({ providerKey: provider.key });\n }\n\n if (!provider.signAndExecuteTransactionBlock) {\n throw new MethodNotImplementedError('signAndExecuteTransactionBlock');\n }\n\n transactionBlock.setSender(walletAccount.address);\n\n return provider.signAndExecuteTransactionBlock({\n options,\n requestType,\n transactionBlock,\n walletAccount,\n });\n};\n","import { getDefaultClient } from '@dynamic-labs-sdk/client';\nimport { getWalletProviderFromWalletAccount } from '@dynamic-labs-sdk/client/core';\nimport type { Transaction } from '@mysten/sui/transactions';\n\nimport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nimport { isSuiWalletProvider } from '../isSuiWalletProvider';\nimport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nimport type { SuiSignTransactionResult } from '../SuiWalletProvider.types';\n\ntype SignTransactionParams = {\n transaction: Transaction;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * Signs a Sui transaction\n * @param params.transaction - The transaction to sign\n * @param params.walletAccount - The wallet account to sign the transaction with\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns An object containing the signature and transaction bytes\n * @not-instrumented\n */\nexport const signTransaction = async (\n { walletAccount, transaction }: SignTransactionParams,\n client = getDefaultClient()\n): Promise<SuiSignTransactionResult> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isSuiWalletProvider(provider)) {\n throw new NotSuiProviderError({ providerKey: provider.key });\n }\n\n return provider.signTransaction({ transaction, walletAccount });\n};\n","import { getDefaultClient } from '@dynamic-labs-sdk/client';\nimport {\n MethodNotImplementedError,\n getWalletProviderFromWalletAccount,\n} from '@dynamic-labs-sdk/client/core';\nimport type { Transaction } from '@mysten/sui/transactions';\n\nimport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nimport { isSuiWalletProvider } from '../isSuiWalletProvider';\nimport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nimport type { SuiSignTransactionBlockResult } from '../SuiWalletProvider.types';\n\ntype SignTransactionBlockParams = {\n transactionBlock: Transaction;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * @deprecated Use signTransaction instead\n *\n * Signs a Sui transaction block\n *\n * @param params.transactionBlock - The transaction block to sign\n * @param params.walletAccount - The wallet account to sign the transaction with\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns An object containing the signature and transaction block bytes\n * @not-instrumented\n */\nexport const signTransactionBlock = async (\n { walletAccount, transactionBlock }: SignTransactionBlockParams,\n client = getDefaultClient()\n): Promise<SuiSignTransactionBlockResult> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isSuiWalletProvider(provider)) {\n throw new NotSuiProviderError({ providerKey: provider.key });\n }\n\n if (!provider.signTransactionBlock) {\n throw new MethodNotImplementedError('signTransactionBlock');\n }\n\n return provider.signTransactionBlock({ transactionBlock, walletAccount });\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 { addSuiExtension } from '../addSuiExtension';\nexport { getSuiTransactionHistory } from '../utils/getSuiTransactionHistory';\nexport type { GetSuiTransactionHistoryParams } from '../utils/getSuiTransactionHistory';\nexport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nexport { getSuiClient } from '../getSuiClient';\nexport { isSuiNetworkProvider } from '../isSuiNetworkProvider';\nexport { isSuiWalletAccount } from '../isSuiWalletAccount';\nexport { signAndExecuteTransaction } from '../signAndExecuteTransaction';\nexport { signAndExecuteTransactionBlock } from '../signAndExecuteTransactionBlock';\nexport { signTransaction } from '../signTransaction';\nexport { signTransactionBlock } from '../signTransactionBlock';\nexport type { SuiNetworkProvider } from '../SuiNetworkProvider.types';\nexport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nexport type {\n SuiClient,\n SuiExecuteTransactionRequestType,\n SuiSignAndExecuteTransactionBlockResult,\n SuiSignAndExecuteTransactionResult,\n SuiSignTransactionBlockResult,\n SuiSignTransactionResult,\n SuiTransactionBlockResponseOptions,\n} from '../SuiWalletProvider.types';\n"],"mappings":";;;;;;;;;;;;;;;;;;AAeA,MAAa,mBAAmB,8DAA2B,KAAW;AACpE,qEAA8B,OAAO;AACrC,iDAAoB,OAAO;;;;;;;;;;;;;;;;;ACa7B,MAAa,2BAA2B,OACtC,EAAE,eAAe,WAAW,OAAO,UACnC,8DAA0C,KACC;AAC3C,KAAI,CAACA,6CAAmB,cAAc,CACpC,OAAM,IAAIC,2CAAkB,6CAA6C;AAG3E,4DACE;EAAE,SAAS,cAAc;EAAS,OAAO;EAAO;EAAO;EAAW;EAAQ,EAC1E,OACD;;;;;;;;;;;;AC9BH,MAAa,wBACX,oBAC0C,gBAAgB,UAAU;;;;;;;;;;;;;;;;;;ACwBtE,MAAa,iCAAiC,OAC5C,EACE,eACA,kBACA,SACA,eAEF,yDAA2B,KAC0B;CACrD,MAAM,iFACJ,EACE,eACD,EACD,OACD;AAED,KAAI,CAACC,8CAAoB,SAAS,CAChC,OAAM,IAAIC,8CAAoB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG9D,KAAI,CAAC,SAAS,+BACZ,OAAM,IAAIC,wDAA0B,iCAAiC;AAGvE,kBAAiB,UAAU,cAAc,QAAQ;AAEjD,QAAO,SAAS,+BAA+B;EAC7C;EACA;EACA;EACA;EACD,CAAC;;;;;;;;;;;;;AC9CJ,MAAa,kBAAkB,OAC7B,EAAE,eAAe,eACjB,yDAA2B,KACW;CACtC,MAAM,iFACJ,EACE,eACD,EACD,OACD;AAED,KAAI,CAACC,8CAAoB,SAAS,CAChC,OAAM,IAAIC,8CAAoB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG9D,QAAO,SAAS,gBAAgB;EAAE;EAAa;EAAe,CAAC;;;;;;;;;;;;;;;;ACTjE,MAAa,uBAAuB,OAClC,EAAE,eAAe,oBACjB,yDAA2B,KACgB;CAC3C,MAAM,iFACJ,EACE,eACD,EACD,OACD;AAED,KAAI,CAACC,8CAAoB,SAAS,CAChC,OAAM,IAAIC,8CAAoB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG9D,KAAI,CAAC,SAAS,qBACZ,OAAM,IAAIC,wDAA0B,uBAAuB;AAG7D,QAAO,SAAS,qBAAqB;EAAE;EAAkB;EAAe,CAAC;;;;;mECzCtDC,gCAAaC,kCAAe"}
1
+ {"version":3,"file":"index.cjs","names":["isSuiWalletAccount","InvalidParamError","isSuiWalletProvider","NotSuiProviderError","MethodNotImplementedError","isSuiWalletProvider","NotSuiProviderError","isSuiWalletProvider","NotSuiProviderError","MethodNotImplementedError","packageName","packageVersion"],"sources":["../src/addSuiExtension/addSuiExtension.ts","../src/utils/getSuiTransactionHistory/getSuiTransactionHistory.ts","../src/isSuiNetworkProvider/isSuiNetworkProvider.ts","../src/signAndExecuteTransactionBlock/signAndExecuteTransactionBlock.ts","../src/signTransaction/signTransaction.ts","../src/signTransactionBlock/signTransactionBlock.ts","../src/exports/index.ts"],"sourcesContent":["import { getDefaultClient } from '@dynamic-labs-sdk/client/core';\n\nimport { addWaasSuiExtension } from '../waas/addWaasSuiExtension';\nimport { addSuiWalletStandardExtension } from '../walletStandard/addSuiWalletStandardExtension';\n\n/**\n * Adds the Sui extension to the Dynamic client.\n *\n * This is a convenience function that adds both the Sui Wallet Standard extension\n * and the Dynamic WaaS Sui extension, enabling support for all Sui wallet types\n * including standard wallets and embedded wallets managed by Dynamic's infrastructure.\n *\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @notInstrumented\n */\nexport const addSuiExtension = (client = getDefaultClient()): void => {\n addSuiWalletStandardExtension(client);\n addWaasSuiExtension(client);\n};\n","import {\n type DynamicClient,\n type GetTransactionHistoryResponse,\n InvalidParamError,\n getTransactionHistory,\n} from '@dynamic-labs-sdk/client';\nimport { getDefaultClient } from '@dynamic-labs-sdk/client/core';\n\nimport { isSuiWalletAccount } from '../../isSuiWalletAccount';\nimport type { SuiWalletAccount } from '../../SuiWalletAccount.types';\n\nexport type GetSuiTransactionHistoryParams = {\n limit?: number;\n networkId: number;\n offset?: string;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * Retrieves transaction history for a SUI wallet account.\n * Delegates to the Dynamic backend API; returns a normalized WalletTransactionsResponse.\n *\n * @param params.walletAccount - The SUI wallet account to query.\n * @param params.networkId - The SUI network ID (501=mainnet, 502=testnet, 503=devnet).\n * @param [params.limit] - Max transactions to return.\n * @param [params.offset] - Pagination cursor from a previous response's nextOffset.\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns A promise that resolves to the transaction history for the given SUI wallet account.\n * @notInstrumented\n */\nexport const getSuiTransactionHistory = async (\n { walletAccount, networkId, limit, offset }: GetSuiTransactionHistoryParams,\n client: DynamicClient = getDefaultClient(),\n): Promise<GetTransactionHistoryResponse> => {\n if (!isSuiWalletAccount(walletAccount)) {\n throw new InvalidParamError('Wallet account is not a SUI wallet account');\n }\n\n return getTransactionHistory(\n { address: walletAccount.address, chain: 'SUI', limit, networkId, offset },\n client,\n );\n};\n","import type { NetworkProvider } from '@dynamic-labs-sdk/client';\n\nimport type { SuiNetworkProvider } from '../SuiNetworkProvider.types';\n\n/**\n * Type guard function to check if a network provider is a Sui network provider.\n *\n * @param networkProvider - The network provider to check.\n * @returns True if the network provider is a Sui network provider, false otherwise.\n * @notInstrumented\n */\nexport const isSuiNetworkProvider = (\n networkProvider: NetworkProvider\n): networkProvider is SuiNetworkProvider => networkProvider.chain === 'SUI';\n","import { getDefaultClient } from '@dynamic-labs-sdk/client';\nimport {\n MethodNotImplementedError,\n getWalletProviderFromWalletAccount,\n} from '@dynamic-labs-sdk/client/core';\nimport type { Transaction } from '@mysten/sui/transactions';\n\nimport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nimport { isSuiWalletProvider } from '../isSuiWalletProvider';\nimport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nimport type {\n SuiExecuteTransactionRequestType,\n SuiSignAndExecuteTransactionBlockResult,\n SuiTransactionBlockResponseOptions,\n} from '../SuiWalletProvider.types';\n\ntype SignAndExecuteTransactionBlockParams = {\n options?: SuiTransactionBlockResponseOptions;\n requestType?: SuiExecuteTransactionRequestType;\n transactionBlock: Transaction;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * @deprecated Use signAndExecuteTransaction instead\n *\n * Signs and executes a Sui transaction block\n *\n * @param params.transactionBlock - The transaction block to sign and execute\n * @param params.walletAccount - The wallet account to sign the transaction with\n * @param [params.options] - The fields to return in the execution response (e.g., transaction, effects, events, etc).\n * By default, only the transaction digest will be returned.\n * @param [params.requestType] - The request type to use for the transaction execution\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns An object containing signature result\n * @notInstrumented\n */\nexport const signAndExecuteTransactionBlock = async (\n {\n walletAccount,\n transactionBlock,\n options,\n requestType,\n }: SignAndExecuteTransactionBlockParams,\n client = getDefaultClient()\n): Promise<SuiSignAndExecuteTransactionBlockResult> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isSuiWalletProvider(provider)) {\n throw new NotSuiProviderError({ providerKey: provider.key });\n }\n\n if (!provider.signAndExecuteTransactionBlock) {\n throw new MethodNotImplementedError('signAndExecuteTransactionBlock');\n }\n\n transactionBlock.setSender(walletAccount.address);\n\n return provider.signAndExecuteTransactionBlock({\n options,\n requestType,\n transactionBlock,\n walletAccount,\n });\n};\n","import { getDefaultClient } from '@dynamic-labs-sdk/client';\nimport { getWalletProviderFromWalletAccount } from '@dynamic-labs-sdk/client/core';\nimport type { Transaction } from '@mysten/sui/transactions';\n\nimport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nimport { isSuiWalletProvider } from '../isSuiWalletProvider';\nimport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nimport type { SuiSignTransactionResult } from '../SuiWalletProvider.types';\n\ntype SignTransactionParams = {\n transaction: Transaction;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * Signs a Sui transaction\n * @param params.transaction - The transaction to sign\n * @param params.walletAccount - The wallet account to sign the transaction with\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns An object containing the signature and transaction bytes\n * @notInstrumented\n */\nexport const signTransaction = async (\n { walletAccount, transaction }: SignTransactionParams,\n client = getDefaultClient()\n): Promise<SuiSignTransactionResult> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isSuiWalletProvider(provider)) {\n throw new NotSuiProviderError({ providerKey: provider.key });\n }\n\n return provider.signTransaction({ transaction, walletAccount });\n};\n","import { getDefaultClient } from '@dynamic-labs-sdk/client';\nimport {\n MethodNotImplementedError,\n getWalletProviderFromWalletAccount,\n} from '@dynamic-labs-sdk/client/core';\nimport type { Transaction } from '@mysten/sui/transactions';\n\nimport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nimport { isSuiWalletProvider } from '../isSuiWalletProvider';\nimport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nimport type { SuiSignTransactionBlockResult } from '../SuiWalletProvider.types';\n\ntype SignTransactionBlockParams = {\n transactionBlock: Transaction;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * @deprecated Use signTransaction instead\n *\n * Signs a Sui transaction block\n *\n * @param params.transactionBlock - The transaction block to sign\n * @param params.walletAccount - The wallet account to sign the transaction with\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns An object containing the signature and transaction block bytes\n * @notInstrumented\n */\nexport const signTransactionBlock = async (\n { walletAccount, transactionBlock }: SignTransactionBlockParams,\n client = getDefaultClient()\n): Promise<SuiSignTransactionBlockResult> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isSuiWalletProvider(provider)) {\n throw new NotSuiProviderError({ providerKey: provider.key });\n }\n\n if (!provider.signTransactionBlock) {\n throw new MethodNotImplementedError('signTransactionBlock');\n }\n\n return provider.signTransactionBlock({ transactionBlock, walletAccount });\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 { addSuiExtension } from '../addSuiExtension';\nexport { getSuiTransactionHistory } from '../utils/getSuiTransactionHistory';\nexport type { GetSuiTransactionHistoryParams } from '../utils/getSuiTransactionHistory';\nexport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nexport { getSuiClient } from '../getSuiClient';\nexport { isSuiNetworkProvider } from '../isSuiNetworkProvider';\nexport { isSuiWalletAccount } from '../isSuiWalletAccount';\nexport { signAndExecuteTransaction } from '../signAndExecuteTransaction';\nexport { signAndExecuteTransactionBlock } from '../signAndExecuteTransactionBlock';\nexport { signTransaction } from '../signTransaction';\nexport { signTransactionBlock } from '../signTransactionBlock';\nexport type { SuiNetworkProvider } from '../SuiNetworkProvider.types';\nexport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nexport type {\n SuiClient,\n SuiExecuteTransactionRequestType,\n SuiSignAndExecuteTransactionBlockResult,\n SuiSignAndExecuteTransactionResult,\n SuiSignTransactionBlockResult,\n SuiSignTransactionResult,\n SuiTransactionBlockResponseOptions,\n} from '../SuiWalletProvider.types';\n"],"mappings":";;;;;;;;;;;;;;;;;;AAeA,MAAa,mBAAmB,8DAA2B,KAAW;AACpE,qEAA8B,OAAO;AACrC,iDAAoB,OAAO;;;;;;;;;;;;;;;;;ACa7B,MAAa,2BAA2B,OACtC,EAAE,eAAe,WAAW,OAAO,UACnC,8DAA0C,KACC;AAC3C,KAAI,CAACA,6CAAmB,cAAc,CACpC,OAAM,IAAIC,2CAAkB,6CAA6C;AAG3E,4DACE;EAAE,SAAS,cAAc;EAAS,OAAO;EAAO;EAAO;EAAW;EAAQ,EAC1E,OACD;;;;;;;;;;;;AC9BH,MAAa,wBACX,oBAC0C,gBAAgB,UAAU;;;;;;;;;;;;;;;;;;ACwBtE,MAAa,iCAAiC,OAC5C,EACE,eACA,kBACA,SACA,eAEF,yDAA2B,KAC0B;CACrD,MAAM,iFACJ,EACE,eACD,EACD,OACD;AAED,KAAI,CAACC,8CAAoB,SAAS,CAChC,OAAM,IAAIC,8CAAoB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG9D,KAAI,CAAC,SAAS,+BACZ,OAAM,IAAIC,wDAA0B,iCAAiC;AAGvE,kBAAiB,UAAU,cAAc,QAAQ;AAEjD,QAAO,SAAS,+BAA+B;EAC7C;EACA;EACA;EACA;EACD,CAAC;;;;;;;;;;;;;AC9CJ,MAAa,kBAAkB,OAC7B,EAAE,eAAe,eACjB,yDAA2B,KACW;CACtC,MAAM,iFACJ,EACE,eACD,EACD,OACD;AAED,KAAI,CAACC,8CAAoB,SAAS,CAChC,OAAM,IAAIC,8CAAoB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG9D,QAAO,SAAS,gBAAgB;EAAE;EAAa;EAAe,CAAC;;;;;;;;;;;;;;;;ACTjE,MAAa,uBAAuB,OAClC,EAAE,eAAe,oBACjB,yDAA2B,KACgB;CAC3C,MAAM,iFACJ,EACE,eACD,EACD,OACD;AAED,KAAI,CAACC,8CAAoB,SAAS,CAChC,OAAM,IAAIC,8CAAoB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG9D,KAAI,CAAC,SAAS,qBACZ,OAAM,IAAIC,wDAA0B,uBAAuB;AAG7D,QAAO,SAAS,qBAAqB;EAAE;EAAkB;EAAe,CAAC;;;;;mECzCtDC,gCAAaC,kCAAe"}
package/dist/index.esm.js CHANGED
@@ -1,6 +1,6 @@
1
- import { a as isSuiWalletAccount, c as NotSuiProviderError, d as version, n as signAndExecuteTransaction, o as getSuiClient, s as isSuiWalletProvider, u as name } from "./suiTransferAmount-U0bmbruo.esm.js";
2
- import { t as addWaasSuiExtension } from "./addWaasSuiExtension-BIhBCVDZ.esm.js";
3
- import { t as addSuiWalletStandardExtension } from "./addSuiWalletStandardExtension-Bd6qAv2w.esm.js";
1
+ import { a as isSuiWalletAccount, c as NotSuiProviderError, d as version, n as signAndExecuteTransaction, o as getSuiClient, s as isSuiWalletProvider, u as name } from "./suiTransferAmount-COvuGOUR.esm.js";
2
+ import { t as addWaasSuiExtension } from "./addWaasSuiExtension-VjrKKMIn.esm.js";
3
+ import { t as addSuiWalletStandardExtension } from "./addSuiWalletStandardExtension-CSbMnuRm.esm.js";
4
4
  import { assertPackageVersion } from "@dynamic-labs-sdk/assert-package-version";
5
5
  import { MethodNotImplementedError, getDefaultClient, getWalletProviderFromWalletAccount } from "@dynamic-labs-sdk/client/core";
6
6
  import { InvalidParamError, getDefaultClient as getDefaultClient$1, getTransactionHistory } from "@dynamic-labs-sdk/client";
@@ -14,7 +14,7 @@ import { InvalidParamError, getDefaultClient as getDefaultClient$1, getTransacti
14
14
  * including standard wallets and embedded wallets managed by Dynamic's infrastructure.
15
15
  *
16
16
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
17
- * @not-instrumented
17
+ * @notInstrumented
18
18
  */
19
19
  const addSuiExtension = (client = getDefaultClient()) => {
20
20
  addSuiWalletStandardExtension(client);
@@ -33,7 +33,7 @@ const addSuiExtension = (client = getDefaultClient()) => {
33
33
  * @param [params.offset] - Pagination cursor from a previous response's nextOffset.
34
34
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
35
35
  * @returns A promise that resolves to the transaction history for the given SUI wallet account.
36
- * @not-instrumented
36
+ * @notInstrumented
37
37
  */
38
38
  const getSuiTransactionHistory = async ({ walletAccount, networkId, limit, offset }, client = getDefaultClient()) => {
39
39
  if (!isSuiWalletAccount(walletAccount)) throw new InvalidParamError("Wallet account is not a SUI wallet account");
@@ -53,7 +53,7 @@ const getSuiTransactionHistory = async ({ walletAccount, networkId, limit, offse
53
53
  *
54
54
  * @param networkProvider - The network provider to check.
55
55
  * @returns True if the network provider is a Sui network provider, false otherwise.
56
- * @not-instrumented
56
+ * @notInstrumented
57
57
  */
58
58
  const isSuiNetworkProvider = (networkProvider) => networkProvider.chain === "SUI";
59
59
 
@@ -71,7 +71,7 @@ const isSuiNetworkProvider = (networkProvider) => networkProvider.chain === "SUI
71
71
  * @param [params.requestType] - The request type to use for the transaction execution
72
72
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
73
73
  * @returns An object containing signature result
74
- * @not-instrumented
74
+ * @notInstrumented
75
75
  */
76
76
  const signAndExecuteTransactionBlock = async ({ walletAccount, transactionBlock, options, requestType }, client = getDefaultClient$1()) => {
77
77
  const provider = getWalletProviderFromWalletAccount({ walletAccount }, client);
@@ -94,7 +94,7 @@ const signAndExecuteTransactionBlock = async ({ walletAccount, transactionBlock,
94
94
  * @param params.walletAccount - The wallet account to sign the transaction with
95
95
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
96
96
  * @returns An object containing the signature and transaction bytes
97
- * @not-instrumented
97
+ * @notInstrumented
98
98
  */
99
99
  const signTransaction = async ({ walletAccount, transaction }, client = getDefaultClient$1()) => {
100
100
  const provider = getWalletProviderFromWalletAccount({ walletAccount }, client);
@@ -116,7 +116,7 @@ const signTransaction = async ({ walletAccount, transaction }, client = getDefau
116
116
  * @param params.walletAccount - The wallet account to sign the transaction with
117
117
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
118
118
  * @returns An object containing the signature and transaction block bytes
119
- * @not-instrumented
119
+ * @notInstrumented
120
120
  */
121
121
  const signTransactionBlock = async ({ walletAccount, transactionBlock }, client = getDefaultClient$1()) => {
122
122
  const provider = getWalletProviderFromWalletAccount({ walletAccount }, client);
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","names":["getDefaultClient","getDefaultClient","getDefaultClient","packageName","packageVersion"],"sources":["../src/addSuiExtension/addSuiExtension.ts","../src/utils/getSuiTransactionHistory/getSuiTransactionHistory.ts","../src/isSuiNetworkProvider/isSuiNetworkProvider.ts","../src/signAndExecuteTransactionBlock/signAndExecuteTransactionBlock.ts","../src/signTransaction/signTransaction.ts","../src/signTransactionBlock/signTransactionBlock.ts","../src/exports/index.ts"],"sourcesContent":["import { getDefaultClient } from '@dynamic-labs-sdk/client/core';\n\nimport { addWaasSuiExtension } from '../waas/addWaasSuiExtension';\nimport { addSuiWalletStandardExtension } from '../walletStandard/addSuiWalletStandardExtension';\n\n/**\n * Adds the Sui extension to the Dynamic client.\n *\n * This is a convenience function that adds both the Sui Wallet Standard extension\n * and the Dynamic WaaS Sui extension, enabling support for all Sui wallet types\n * including standard wallets and embedded 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 addSuiExtension = (client = getDefaultClient()): void => {\n addSuiWalletStandardExtension(client);\n addWaasSuiExtension(client);\n};\n","import {\n type DynamicClient,\n type GetTransactionHistoryResponse,\n InvalidParamError,\n getTransactionHistory,\n} from '@dynamic-labs-sdk/client';\nimport { getDefaultClient } from '@dynamic-labs-sdk/client/core';\n\nimport { isSuiWalletAccount } from '../../isSuiWalletAccount';\nimport type { SuiWalletAccount } from '../../SuiWalletAccount.types';\n\nexport type GetSuiTransactionHistoryParams = {\n limit?: number;\n networkId: number;\n offset?: string;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * Retrieves transaction history for a SUI wallet account.\n * Delegates to the Dynamic backend API; returns a normalized WalletTransactionsResponse.\n *\n * @param params.walletAccount - The SUI wallet account to query.\n * @param params.networkId - The SUI network ID (501=mainnet, 502=testnet, 503=devnet).\n * @param [params.limit] - Max transactions to return.\n * @param [params.offset] - Pagination cursor from a previous response's nextOffset.\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns A promise that resolves to the transaction history for the given SUI wallet account.\n * @not-instrumented\n */\nexport const getSuiTransactionHistory = async (\n { walletAccount, networkId, limit, offset }: GetSuiTransactionHistoryParams,\n client: DynamicClient = getDefaultClient(),\n): Promise<GetTransactionHistoryResponse> => {\n if (!isSuiWalletAccount(walletAccount)) {\n throw new InvalidParamError('Wallet account is not a SUI wallet account');\n }\n\n return getTransactionHistory(\n { address: walletAccount.address, chain: 'SUI', limit, networkId, offset },\n client,\n );\n};\n","import type { NetworkProvider } from '@dynamic-labs-sdk/client';\n\nimport type { SuiNetworkProvider } from '../SuiNetworkProvider.types';\n\n/**\n * Type guard function to check if a network provider is a Sui network provider.\n *\n * @param networkProvider - The network provider to check.\n * @returns True if the network provider is a Sui network provider, false otherwise.\n * @not-instrumented\n */\nexport const isSuiNetworkProvider = (\n networkProvider: NetworkProvider\n): networkProvider is SuiNetworkProvider => networkProvider.chain === 'SUI';\n","import { getDefaultClient } from '@dynamic-labs-sdk/client';\nimport {\n MethodNotImplementedError,\n getWalletProviderFromWalletAccount,\n} from '@dynamic-labs-sdk/client/core';\nimport type { Transaction } from '@mysten/sui/transactions';\n\nimport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nimport { isSuiWalletProvider } from '../isSuiWalletProvider';\nimport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nimport type {\n SuiExecuteTransactionRequestType,\n SuiSignAndExecuteTransactionBlockResult,\n SuiTransactionBlockResponseOptions,\n} from '../SuiWalletProvider.types';\n\ntype SignAndExecuteTransactionBlockParams = {\n options?: SuiTransactionBlockResponseOptions;\n requestType?: SuiExecuteTransactionRequestType;\n transactionBlock: Transaction;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * @deprecated Use signAndExecuteTransaction instead\n *\n * Signs and executes a Sui transaction block\n *\n * @param params.transactionBlock - The transaction block to sign and execute\n * @param params.walletAccount - The wallet account to sign the transaction with\n * @param [params.options] - The fields to return in the execution response (e.g., transaction, effects, events, etc).\n * By default, only the transaction digest will be returned.\n * @param [params.requestType] - The request type to use for the transaction execution\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns An object containing signature result\n * @not-instrumented\n */\nexport const signAndExecuteTransactionBlock = async (\n {\n walletAccount,\n transactionBlock,\n options,\n requestType,\n }: SignAndExecuteTransactionBlockParams,\n client = getDefaultClient()\n): Promise<SuiSignAndExecuteTransactionBlockResult> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isSuiWalletProvider(provider)) {\n throw new NotSuiProviderError({ providerKey: provider.key });\n }\n\n if (!provider.signAndExecuteTransactionBlock) {\n throw new MethodNotImplementedError('signAndExecuteTransactionBlock');\n }\n\n transactionBlock.setSender(walletAccount.address);\n\n return provider.signAndExecuteTransactionBlock({\n options,\n requestType,\n transactionBlock,\n walletAccount,\n });\n};\n","import { getDefaultClient } from '@dynamic-labs-sdk/client';\nimport { getWalletProviderFromWalletAccount } from '@dynamic-labs-sdk/client/core';\nimport type { Transaction } from '@mysten/sui/transactions';\n\nimport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nimport { isSuiWalletProvider } from '../isSuiWalletProvider';\nimport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nimport type { SuiSignTransactionResult } from '../SuiWalletProvider.types';\n\ntype SignTransactionParams = {\n transaction: Transaction;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * Signs a Sui transaction\n * @param params.transaction - The transaction to sign\n * @param params.walletAccount - The wallet account to sign the transaction with\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns An object containing the signature and transaction bytes\n * @not-instrumented\n */\nexport const signTransaction = async (\n { walletAccount, transaction }: SignTransactionParams,\n client = getDefaultClient()\n): Promise<SuiSignTransactionResult> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isSuiWalletProvider(provider)) {\n throw new NotSuiProviderError({ providerKey: provider.key });\n }\n\n return provider.signTransaction({ transaction, walletAccount });\n};\n","import { getDefaultClient } from '@dynamic-labs-sdk/client';\nimport {\n MethodNotImplementedError,\n getWalletProviderFromWalletAccount,\n} from '@dynamic-labs-sdk/client/core';\nimport type { Transaction } from '@mysten/sui/transactions';\n\nimport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nimport { isSuiWalletProvider } from '../isSuiWalletProvider';\nimport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nimport type { SuiSignTransactionBlockResult } from '../SuiWalletProvider.types';\n\ntype SignTransactionBlockParams = {\n transactionBlock: Transaction;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * @deprecated Use signTransaction instead\n *\n * Signs a Sui transaction block\n *\n * @param params.transactionBlock - The transaction block to sign\n * @param params.walletAccount - The wallet account to sign the transaction with\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns An object containing the signature and transaction block bytes\n * @not-instrumented\n */\nexport const signTransactionBlock = async (\n { walletAccount, transactionBlock }: SignTransactionBlockParams,\n client = getDefaultClient()\n): Promise<SuiSignTransactionBlockResult> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isSuiWalletProvider(provider)) {\n throw new NotSuiProviderError({ providerKey: provider.key });\n }\n\n if (!provider.signTransactionBlock) {\n throw new MethodNotImplementedError('signTransactionBlock');\n }\n\n return provider.signTransactionBlock({ transactionBlock, walletAccount });\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 { addSuiExtension } from '../addSuiExtension';\nexport { getSuiTransactionHistory } from '../utils/getSuiTransactionHistory';\nexport type { GetSuiTransactionHistoryParams } from '../utils/getSuiTransactionHistory';\nexport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nexport { getSuiClient } from '../getSuiClient';\nexport { isSuiNetworkProvider } from '../isSuiNetworkProvider';\nexport { isSuiWalletAccount } from '../isSuiWalletAccount';\nexport { signAndExecuteTransaction } from '../signAndExecuteTransaction';\nexport { signAndExecuteTransactionBlock } from '../signAndExecuteTransactionBlock';\nexport { signTransaction } from '../signTransaction';\nexport { signTransactionBlock } from '../signTransactionBlock';\nexport type { SuiNetworkProvider } from '../SuiNetworkProvider.types';\nexport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nexport type {\n SuiClient,\n SuiExecuteTransactionRequestType,\n SuiSignAndExecuteTransactionBlockResult,\n SuiSignAndExecuteTransactionResult,\n SuiSignTransactionBlockResult,\n SuiSignTransactionResult,\n SuiTransactionBlockResponseOptions,\n} from '../SuiWalletProvider.types';\n"],"mappings":";;;;;;;;;;;;;;;;;;AAeA,MAAa,mBAAmB,SAAS,kBAAkB,KAAW;AACpE,+BAA8B,OAAO;AACrC,qBAAoB,OAAO;;;;;;;;;;;;;;;;;ACa7B,MAAa,2BAA2B,OACtC,EAAE,eAAe,WAAW,OAAO,UACnC,SAAwB,kBAAkB,KACC;AAC3C,KAAI,CAAC,mBAAmB,cAAc,CACpC,OAAM,IAAI,kBAAkB,6CAA6C;AAG3E,QAAO,sBACL;EAAE,SAAS,cAAc;EAAS,OAAO;EAAO;EAAO;EAAW;EAAQ,EAC1E,OACD;;;;;;;;;;;;AC9BH,MAAa,wBACX,oBAC0C,gBAAgB,UAAU;;;;;;;;;;;;;;;;;;ACwBtE,MAAa,iCAAiC,OAC5C,EACE,eACA,kBACA,SACA,eAEF,SAASA,oBAAkB,KAC0B;CACrD,MAAM,WAAW,mCACf,EACE,eACD,EACD,OACD;AAED,KAAI,CAAC,oBAAoB,SAAS,CAChC,OAAM,IAAI,oBAAoB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG9D,KAAI,CAAC,SAAS,+BACZ,OAAM,IAAI,0BAA0B,iCAAiC;AAGvE,kBAAiB,UAAU,cAAc,QAAQ;AAEjD,QAAO,SAAS,+BAA+B;EAC7C;EACA;EACA;EACA;EACD,CAAC;;;;;;;;;;;;;AC9CJ,MAAa,kBAAkB,OAC7B,EAAE,eAAe,eACjB,SAASC,oBAAkB,KACW;CACtC,MAAM,WAAW,mCACf,EACE,eACD,EACD,OACD;AAED,KAAI,CAAC,oBAAoB,SAAS,CAChC,OAAM,IAAI,oBAAoB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG9D,QAAO,SAAS,gBAAgB;EAAE;EAAa;EAAe,CAAC;;;;;;;;;;;;;;;;ACTjE,MAAa,uBAAuB,OAClC,EAAE,eAAe,oBACjB,SAASC,oBAAkB,KACgB;CAC3C,MAAM,WAAW,mCACf,EACE,eACD,EACD,OACD;AAED,KAAI,CAAC,oBAAoB,SAAS,CAChC,OAAM,IAAI,oBAAoB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG9D,KAAI,CAAC,SAAS,qBACZ,OAAM,IAAI,0BAA0B,uBAAuB;AAG7D,QAAO,SAAS,qBAAqB;EAAE;EAAkB;EAAe,CAAC;;;;;ACzC3E,qBAAqBC,MAAaC,QAAe"}
1
+ {"version":3,"file":"index.esm.js","names":["getDefaultClient","getDefaultClient","getDefaultClient","packageName","packageVersion"],"sources":["../src/addSuiExtension/addSuiExtension.ts","../src/utils/getSuiTransactionHistory/getSuiTransactionHistory.ts","../src/isSuiNetworkProvider/isSuiNetworkProvider.ts","../src/signAndExecuteTransactionBlock/signAndExecuteTransactionBlock.ts","../src/signTransaction/signTransaction.ts","../src/signTransactionBlock/signTransactionBlock.ts","../src/exports/index.ts"],"sourcesContent":["import { getDefaultClient } from '@dynamic-labs-sdk/client/core';\n\nimport { addWaasSuiExtension } from '../waas/addWaasSuiExtension';\nimport { addSuiWalletStandardExtension } from '../walletStandard/addSuiWalletStandardExtension';\n\n/**\n * Adds the Sui extension to the Dynamic client.\n *\n * This is a convenience function that adds both the Sui Wallet Standard extension\n * and the Dynamic WaaS Sui extension, enabling support for all Sui wallet types\n * including standard wallets and embedded wallets managed by Dynamic's infrastructure.\n *\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @notInstrumented\n */\nexport const addSuiExtension = (client = getDefaultClient()): void => {\n addSuiWalletStandardExtension(client);\n addWaasSuiExtension(client);\n};\n","import {\n type DynamicClient,\n type GetTransactionHistoryResponse,\n InvalidParamError,\n getTransactionHistory,\n} from '@dynamic-labs-sdk/client';\nimport { getDefaultClient } from '@dynamic-labs-sdk/client/core';\n\nimport { isSuiWalletAccount } from '../../isSuiWalletAccount';\nimport type { SuiWalletAccount } from '../../SuiWalletAccount.types';\n\nexport type GetSuiTransactionHistoryParams = {\n limit?: number;\n networkId: number;\n offset?: string;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * Retrieves transaction history for a SUI wallet account.\n * Delegates to the Dynamic backend API; returns a normalized WalletTransactionsResponse.\n *\n * @param params.walletAccount - The SUI wallet account to query.\n * @param params.networkId - The SUI network ID (501=mainnet, 502=testnet, 503=devnet).\n * @param [params.limit] - Max transactions to return.\n * @param [params.offset] - Pagination cursor from a previous response's nextOffset.\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns A promise that resolves to the transaction history for the given SUI wallet account.\n * @notInstrumented\n */\nexport const getSuiTransactionHistory = async (\n { walletAccount, networkId, limit, offset }: GetSuiTransactionHistoryParams,\n client: DynamicClient = getDefaultClient(),\n): Promise<GetTransactionHistoryResponse> => {\n if (!isSuiWalletAccount(walletAccount)) {\n throw new InvalidParamError('Wallet account is not a SUI wallet account');\n }\n\n return getTransactionHistory(\n { address: walletAccount.address, chain: 'SUI', limit, networkId, offset },\n client,\n );\n};\n","import type { NetworkProvider } from '@dynamic-labs-sdk/client';\n\nimport type { SuiNetworkProvider } from '../SuiNetworkProvider.types';\n\n/**\n * Type guard function to check if a network provider is a Sui network provider.\n *\n * @param networkProvider - The network provider to check.\n * @returns True if the network provider is a Sui network provider, false otherwise.\n * @notInstrumented\n */\nexport const isSuiNetworkProvider = (\n networkProvider: NetworkProvider\n): networkProvider is SuiNetworkProvider => networkProvider.chain === 'SUI';\n","import { getDefaultClient } from '@dynamic-labs-sdk/client';\nimport {\n MethodNotImplementedError,\n getWalletProviderFromWalletAccount,\n} from '@dynamic-labs-sdk/client/core';\nimport type { Transaction } from '@mysten/sui/transactions';\n\nimport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nimport { isSuiWalletProvider } from '../isSuiWalletProvider';\nimport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nimport type {\n SuiExecuteTransactionRequestType,\n SuiSignAndExecuteTransactionBlockResult,\n SuiTransactionBlockResponseOptions,\n} from '../SuiWalletProvider.types';\n\ntype SignAndExecuteTransactionBlockParams = {\n options?: SuiTransactionBlockResponseOptions;\n requestType?: SuiExecuteTransactionRequestType;\n transactionBlock: Transaction;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * @deprecated Use signAndExecuteTransaction instead\n *\n * Signs and executes a Sui transaction block\n *\n * @param params.transactionBlock - The transaction block to sign and execute\n * @param params.walletAccount - The wallet account to sign the transaction with\n * @param [params.options] - The fields to return in the execution response (e.g., transaction, effects, events, etc).\n * By default, only the transaction digest will be returned.\n * @param [params.requestType] - The request type to use for the transaction execution\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns An object containing signature result\n * @notInstrumented\n */\nexport const signAndExecuteTransactionBlock = async (\n {\n walletAccount,\n transactionBlock,\n options,\n requestType,\n }: SignAndExecuteTransactionBlockParams,\n client = getDefaultClient()\n): Promise<SuiSignAndExecuteTransactionBlockResult> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isSuiWalletProvider(provider)) {\n throw new NotSuiProviderError({ providerKey: provider.key });\n }\n\n if (!provider.signAndExecuteTransactionBlock) {\n throw new MethodNotImplementedError('signAndExecuteTransactionBlock');\n }\n\n transactionBlock.setSender(walletAccount.address);\n\n return provider.signAndExecuteTransactionBlock({\n options,\n requestType,\n transactionBlock,\n walletAccount,\n });\n};\n","import { getDefaultClient } from '@dynamic-labs-sdk/client';\nimport { getWalletProviderFromWalletAccount } from '@dynamic-labs-sdk/client/core';\nimport type { Transaction } from '@mysten/sui/transactions';\n\nimport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nimport { isSuiWalletProvider } from '../isSuiWalletProvider';\nimport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nimport type { SuiSignTransactionResult } from '../SuiWalletProvider.types';\n\ntype SignTransactionParams = {\n transaction: Transaction;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * Signs a Sui transaction\n * @param params.transaction - The transaction to sign\n * @param params.walletAccount - The wallet account to sign the transaction with\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns An object containing the signature and transaction bytes\n * @notInstrumented\n */\nexport const signTransaction = async (\n { walletAccount, transaction }: SignTransactionParams,\n client = getDefaultClient()\n): Promise<SuiSignTransactionResult> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isSuiWalletProvider(provider)) {\n throw new NotSuiProviderError({ providerKey: provider.key });\n }\n\n return provider.signTransaction({ transaction, walletAccount });\n};\n","import { getDefaultClient } from '@dynamic-labs-sdk/client';\nimport {\n MethodNotImplementedError,\n getWalletProviderFromWalletAccount,\n} from '@dynamic-labs-sdk/client/core';\nimport type { Transaction } from '@mysten/sui/transactions';\n\nimport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nimport { isSuiWalletProvider } from '../isSuiWalletProvider';\nimport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nimport type { SuiSignTransactionBlockResult } from '../SuiWalletProvider.types';\n\ntype SignTransactionBlockParams = {\n transactionBlock: Transaction;\n walletAccount: SuiWalletAccount;\n};\n\n/**\n * @deprecated Use signTransaction instead\n *\n * Signs a Sui transaction block\n *\n * @param params.transactionBlock - The transaction block to sign\n * @param params.walletAccount - The wallet account to sign the transaction with\n * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.\n * @returns An object containing the signature and transaction block bytes\n * @notInstrumented\n */\nexport const signTransactionBlock = async (\n { walletAccount, transactionBlock }: SignTransactionBlockParams,\n client = getDefaultClient()\n): Promise<SuiSignTransactionBlockResult> => {\n const provider = getWalletProviderFromWalletAccount(\n {\n walletAccount,\n },\n client\n );\n\n if (!isSuiWalletProvider(provider)) {\n throw new NotSuiProviderError({ providerKey: provider.key });\n }\n\n if (!provider.signTransactionBlock) {\n throw new MethodNotImplementedError('signTransactionBlock');\n }\n\n return provider.signTransactionBlock({ transactionBlock, walletAccount });\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 { addSuiExtension } from '../addSuiExtension';\nexport { getSuiTransactionHistory } from '../utils/getSuiTransactionHistory';\nexport type { GetSuiTransactionHistoryParams } from '../utils/getSuiTransactionHistory';\nexport { NotSuiProviderError } from '../errors/NotSuiProviderError';\nexport { getSuiClient } from '../getSuiClient';\nexport { isSuiNetworkProvider } from '../isSuiNetworkProvider';\nexport { isSuiWalletAccount } from '../isSuiWalletAccount';\nexport { signAndExecuteTransaction } from '../signAndExecuteTransaction';\nexport { signAndExecuteTransactionBlock } from '../signAndExecuteTransactionBlock';\nexport { signTransaction } from '../signTransaction';\nexport { signTransactionBlock } from '../signTransactionBlock';\nexport type { SuiNetworkProvider } from '../SuiNetworkProvider.types';\nexport type { SuiWalletAccount } from '../SuiWalletAccount.types';\nexport type {\n SuiClient,\n SuiExecuteTransactionRequestType,\n SuiSignAndExecuteTransactionBlockResult,\n SuiSignAndExecuteTransactionResult,\n SuiSignTransactionBlockResult,\n SuiSignTransactionResult,\n SuiTransactionBlockResponseOptions,\n} from '../SuiWalletProvider.types';\n"],"mappings":";;;;;;;;;;;;;;;;;;AAeA,MAAa,mBAAmB,SAAS,kBAAkB,KAAW;AACpE,+BAA8B,OAAO;AACrC,qBAAoB,OAAO;;;;;;;;;;;;;;;;;ACa7B,MAAa,2BAA2B,OACtC,EAAE,eAAe,WAAW,OAAO,UACnC,SAAwB,kBAAkB,KACC;AAC3C,KAAI,CAAC,mBAAmB,cAAc,CACpC,OAAM,IAAI,kBAAkB,6CAA6C;AAG3E,QAAO,sBACL;EAAE,SAAS,cAAc;EAAS,OAAO;EAAO;EAAO;EAAW;EAAQ,EAC1E,OACD;;;;;;;;;;;;AC9BH,MAAa,wBACX,oBAC0C,gBAAgB,UAAU;;;;;;;;;;;;;;;;;;ACwBtE,MAAa,iCAAiC,OAC5C,EACE,eACA,kBACA,SACA,eAEF,SAASA,oBAAkB,KAC0B;CACrD,MAAM,WAAW,mCACf,EACE,eACD,EACD,OACD;AAED,KAAI,CAAC,oBAAoB,SAAS,CAChC,OAAM,IAAI,oBAAoB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG9D,KAAI,CAAC,SAAS,+BACZ,OAAM,IAAI,0BAA0B,iCAAiC;AAGvE,kBAAiB,UAAU,cAAc,QAAQ;AAEjD,QAAO,SAAS,+BAA+B;EAC7C;EACA;EACA;EACA;EACD,CAAC;;;;;;;;;;;;;AC9CJ,MAAa,kBAAkB,OAC7B,EAAE,eAAe,eACjB,SAASC,oBAAkB,KACW;CACtC,MAAM,WAAW,mCACf,EACE,eACD,EACD,OACD;AAED,KAAI,CAAC,oBAAoB,SAAS,CAChC,OAAM,IAAI,oBAAoB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG9D,QAAO,SAAS,gBAAgB;EAAE;EAAa;EAAe,CAAC;;;;;;;;;;;;;;;;ACTjE,MAAa,uBAAuB,OAClC,EAAE,eAAe,oBACjB,SAASC,oBAAkB,KACgB;CAC3C,MAAM,WAAW,mCACf,EACE,eACD,EACD,OACD;AAED,KAAI,CAAC,oBAAoB,SAAS,CAChC,OAAM,IAAI,oBAAoB,EAAE,aAAa,SAAS,KAAK,CAAC;AAG9D,KAAI,CAAC,SAAS,qBACZ,OAAM,IAAI,0BAA0B,uBAAuB;AAG7D,QAAO,SAAS,qBAAqB;EAAE;EAAkB;EAAe,CAAC;;;;;ACzC3E,qBAAqBC,MAAaC,QAAe"}
@@ -5,7 +5,7 @@ import type { SuiNetworkProvider } from '../SuiNetworkProvider.types';
5
5
  *
6
6
  * @param networkProvider - The network provider to check.
7
7
  * @returns True if the network provider is a Sui network provider, false otherwise.
8
- * @not-instrumented
8
+ * @notInstrumented
9
9
  */
10
10
  export declare const isSuiNetworkProvider: (networkProvider: NetworkProvider) => networkProvider is SuiNetworkProvider;
11
11
  //# sourceMappingURL=isSuiNetworkProvider.d.ts.map
@@ -5,7 +5,7 @@ import type { SuiWalletAccount } from '../SuiWalletAccount.types';
5
5
  *
6
6
  * @param walletAccount - The wallet account to check.
7
7
  * @returns True if the wallet account is a Sui wallet account, false otherwise.
8
- * @not-instrumented
8
+ * @notInstrumented
9
9
  */
10
10
  export declare const isSuiWalletAccount: (walletAccount: WalletAccount) => walletAccount is SuiWalletAccount;
11
11
  //# sourceMappingURL=isSuiWalletAccount.d.ts.map
@@ -1,5 +1,5 @@
1
1
  import type { WalletProvider } from '@dynamic-labs-sdk/client/core';
2
2
  import type { SuiWalletProvider } from '../SuiWalletProvider.types';
3
- /** @not-instrumented */
3
+ /** @notInstrumented */
4
4
  export declare const isSuiWalletProvider: (provider: WalletProvider) => provider is SuiWalletProvider;
5
5
  //# sourceMappingURL=isSuiWalletProvider.d.ts.map