@dynamic-labs-sdk/solana 1.28.0 → 1.30.2
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.
- package/dist/{addSolanaWalletStandardExtension-D-_Ha20P.cjs → addSolanaWalletStandardExtension-3dEIBtTw.cjs} +21 -5
- package/dist/addSolanaWalletStandardExtension-3dEIBtTw.cjs.map +1 -0
- package/dist/{addSolanaWalletStandardExtension-B8FTxNmP.esm.js → addSolanaWalletStandardExtension-CShtBr7f.esm.js} +22 -6
- package/dist/addSolanaWalletStandardExtension-CShtBr7f.esm.js.map +1 -0
- package/dist/{addWaasSolanaExtension-DgdUxSRZ.cjs → addWaasSolanaExtension-CgyX6Yak.cjs} +2 -2
- package/dist/{addWaasSolanaExtension-DgdUxSRZ.cjs.map → addWaasSolanaExtension-CgyX6Yak.cjs.map} +1 -1
- package/dist/{addWaasSolanaExtension-ZTPdT3vn.esm.js → addWaasSolanaExtension-DMHD6oa9.esm.js} +2 -2
- package/dist/{addWaasSolanaExtension-ZTPdT3vn.esm.js.map → addWaasSolanaExtension-DMHD6oa9.esm.js.map} +1 -1
- package/dist/assertBufferAvailable-BPIt9Mmr.cjs.map +1 -1
- package/dist/assertBufferAvailable-b4xOlERy.esm.js.map +1 -1
- package/dist/{createWalletProviderFromSolanaStandardWallet-JyBM4x_X.esm.js → createWalletProviderFromSolanaStandardWallet-BnZchM37.esm.js} +2 -2
- package/dist/createWalletProviderFromSolanaStandardWallet-BnZchM37.esm.js.map +1 -0
- package/dist/{createWalletProviderFromSolanaStandardWallet-ClRF5wuk.cjs → createWalletProviderFromSolanaStandardWallet-DAR4Uvz1.cjs} +2 -2
- package/dist/createWalletProviderFromSolanaStandardWallet-DAR4Uvz1.cjs.map +1 -0
- package/dist/exports/index.d.ts +1 -0
- package/dist/exports/index.d.ts.map +1 -1
- package/dist/getSolanaConnection/getSolanaConnection.d.ts.map +1 -1
- package/dist/index.cjs +78 -4
- package/dist/index.cjs.map +1 -1
- package/dist/index.esm.js +80 -7
- package/dist/index.esm.js.map +1 -1
- package/dist/isSolanaGasSponsorshipEnabled/isSolanaGasSponsorshipEnabled.d.ts +1 -0
- package/dist/isSolanaGasSponsorshipEnabled/isSolanaGasSponsorshipEnabled.d.ts.map +1 -1
- package/dist/metamask.cjs +2 -2
- package/dist/metamask.esm.js +2 -2
- package/dist/screenSolanaTransactions/index.d.ts +2 -0
- package/dist/screenSolanaTransactions/index.d.ts.map +1 -0
- package/dist/screenSolanaTransactions/screenSolanaTransactions.d.ts +55 -0
- package/dist/screenSolanaTransactions/screenSolanaTransactions.d.ts.map +1 -0
- package/dist/signAllTransactions/signAllTransactions.d.ts +4 -3
- package/dist/signAllTransactions/signAllTransactions.d.ts.map +1 -1
- package/dist/signAndSendSponsoredTransaction/signAndSendSponsoredTransaction.d.ts +4 -3
- package/dist/signAndSendSponsoredTransaction/signAndSendSponsoredTransaction.d.ts.map +1 -1
- package/dist/signAndSendTransaction/signAndSendTransaction.d.ts +4 -3
- package/dist/signAndSendTransaction/signAndSendTransaction.d.ts.map +1 -1
- package/dist/signTransaction/signTransaction.d.ts +4 -3
- package/dist/signTransaction/signTransaction.d.ts.map +1 -1
- package/dist/{solanaTransferAmount-BvI3znFK.cjs → solanaTransferAmount-CSzJqeoS.cjs} +3 -2
- package/dist/solanaTransferAmount-CSzJqeoS.cjs.map +1 -0
- package/dist/{solanaTransferAmount-BKGenlG4.esm.js → solanaTransferAmount-D7rsMJly.esm.js} +3 -2
- package/dist/solanaTransferAmount-D7rsMJly.esm.js.map +1 -0
- package/dist/tsconfig.lib.tsbuildinfo +1 -1
- package/dist/utils/assertBufferAvailable/assertBufferAvailable.d.ts.map +1 -1
- package/dist/utils/serializeTransactionForScreening/index.d.ts +2 -0
- package/dist/utils/serializeTransactionForScreening/index.d.ts.map +1 -0
- package/dist/utils/serializeTransactionForScreening/serializeTransactionForScreening.d.ts +13 -0
- package/dist/utils/serializeTransactionForScreening/serializeTransactionForScreening.d.ts.map +1 -0
- package/dist/utils/solanaTransferAmount/solanaTransferAmount.d.ts +5 -3
- package/dist/utils/solanaTransferAmount/solanaTransferAmount.d.ts.map +1 -1
- package/dist/waas.cjs +2 -2
- package/dist/waas.esm.js +2 -2
- package/dist/walletConnect/addWalletConnectSolanaExtension/addWalletConnectSolanaExtension.d.ts.map +1 -1
- package/dist/walletConnect/recoverSolanaWalletConnectWalletProviders/recoverSolanaWalletConnectWalletProviders.d.ts.map +1 -1
- package/dist/walletConnect.cjs +1 -1
- package/dist/walletConnect.cjs.map +1 -1
- package/dist/walletConnect.esm.js +1 -1
- package/dist/walletConnect.esm.js.map +1 -1
- package/dist/walletStandard/addSolanaWalletStandardExtension/addSolanaWalletStandardExtension.d.ts +3 -2
- package/dist/walletStandard/addSolanaWalletStandardExtension/addSolanaWalletStandardExtension.d.ts.map +1 -1
- package/dist/walletStandard/utils/getFeaturesForSolanaStandardWallet/getFeaturesForSolanaStandardWallet.d.ts.map +1 -1
- package/dist/walletStandard.cjs +3 -3
- package/dist/walletStandard.esm.js +3 -3
- package/package.json +7 -7
- package/dist/addSolanaWalletStandardExtension-B8FTxNmP.esm.js.map +0 -1
- package/dist/addSolanaWalletStandardExtension-D-_Ha20P.cjs.map +0 -1
- package/dist/createWalletProviderFromSolanaStandardWallet-ClRF5wuk.cjs.map +0 -1
- package/dist/createWalletProviderFromSolanaStandardWallet-JyBM4x_X.esm.js.map +0 -1
- package/dist/solanaTransferAmount-BKGenlG4.esm.js.map +0 -1
- package/dist/solanaTransferAmount-BvI3znFK.cjs.map +0 -1
package/dist/index.esm.js
CHANGED
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
import { a as NotSolanaProviderError, c as isSolanaWalletAccount, d as registerSolanaNetworkProviderBuilder, f as name, i as isSolanaGasSponsorshipEnabled, l as isVersionedTransaction, n as solanaExecuteSwapTransaction, o as isSolanaWalletProvider, p as version, r as signAndSendTransaction, s as solanaConfirmTransaction, t as solanaTransferAmount, u as getSolanaConnection } from "./solanaTransferAmount-
|
|
1
|
+
import { a as NotSolanaProviderError, c as isSolanaWalletAccount, d as registerSolanaNetworkProviderBuilder, f as name, i as isSolanaGasSponsorshipEnabled, l as isVersionedTransaction, n as solanaExecuteSwapTransaction, o as isSolanaWalletProvider, p as version, r as signAndSendTransaction, s as solanaConfirmTransaction, t as solanaTransferAmount, u as getSolanaConnection } from "./solanaTransferAmount-D7rsMJly.esm.js";
|
|
2
2
|
import { t as assertBufferAvailable } from "./assertBufferAvailable-b4xOlERy.esm.js";
|
|
3
|
-
import { n as SponsorTransactionError, t as addWaasSolanaExtension } from "./addWaasSolanaExtension-
|
|
4
|
-
import "./createWalletProviderFromSolanaStandardWallet-
|
|
5
|
-
import { t as addSolanaWalletStandardExtension } from "./addSolanaWalletStandardExtension-
|
|
3
|
+
import { n as SponsorTransactionError, t as addWaasSolanaExtension } from "./addWaasSolanaExtension-DMHD6oa9.esm.js";
|
|
4
|
+
import "./createWalletProviderFromSolanaStandardWallet-BnZchM37.esm.js";
|
|
5
|
+
import { t as addSolanaWalletStandardExtension } from "./addSolanaWalletStandardExtension-CShtBr7f.esm.js";
|
|
6
6
|
import { assertPackageVersion } from "@dynamic-labs-sdk/assert-package-version";
|
|
7
|
-
import { MethodNotImplementedError, WalletProviderPriority, assertDefined, createApiClient, createDeferredPromise, createRuntimeServiceAccessKey, createStorageKeySchema, emitEvent, formatWalletProviderGroupKey, formatWalletProviderKey, getActiveNetworkIdFromLastKnownRegistry, getBuffer, getCore, getDefaultClient, getNetworkProviders, getWalletProviderFromWalletAccount, getWalletProviderRegistry, hasExtension, randomString, registerExtension } from "@dynamic-labs-sdk/client/core";
|
|
8
|
-
import { BaseError, FeeEstimationFailedError, InvalidParamError, SimulationFailedError, getActiveNetworkData, getDefaultClient as getDefaultClient$1, onEvent, onceEvent } from "@dynamic-labs-sdk/client";
|
|
7
|
+
import { MethodNotImplementedError, WalletProviderPriority, assertDefined, bufferToBase64, createApiClient, createDeferredPromise, createRuntimeServiceAccessKey, createStorageKeySchema, emitEvent, formatWalletProviderGroupKey, formatWalletProviderKey, getActiveNetworkIdFromLastKnownRegistry, getBuffer, getCore, getDefaultClient, getNetworkProviders, getWalletProviderFromWalletAccount, getWalletProviderRegistry, hasExtension, randomString, registerExtension } from "@dynamic-labs-sdk/client/core";
|
|
8
|
+
import { BaseError, FeeEstimationFailedError, InvalidParamError, ScreeningNotRequiredError, SimulationFailedError, getActiveNetworkData, getDefaultClient as getDefaultClient$1, onEvent, onceEvent, screenTransaction } from "@dynamic-labs-sdk/client";
|
|
9
9
|
import { Connection, LAMPORTS_PER_SOL, PublicKey, Transaction, VersionedTransaction } from "@solana/web3.js";
|
|
10
10
|
import { WalletProviderEnum } from "@dynamic-labs/sdk-api-core";
|
|
11
11
|
import bs58 from "bs58";
|
|
12
12
|
import * as z from "zod/mini";
|
|
13
13
|
import nacl from "tweetnacl";
|
|
14
|
+
import { isWaasWalletAccount } from "@dynamic-labs-sdk/client/waas";
|
|
14
15
|
|
|
15
16
|
//#region src/addSolanaExtension/addSolanaExtension.ts
|
|
16
17
|
/**
|
|
@@ -1621,6 +1622,78 @@ const addPhantomRedirectSolanaExtension = async ({ disableAutoRedirectCompletion
|
|
|
1621
1622
|
}, client);
|
|
1622
1623
|
};
|
|
1623
1624
|
|
|
1625
|
+
//#endregion
|
|
1626
|
+
//#region src/utils/serializeTransactionForScreening/serializeTransactionForScreening.ts
|
|
1627
|
+
/**
|
|
1628
|
+
* Serializes an unsigned transaction to base64 for sanctions screening.
|
|
1629
|
+
*
|
|
1630
|
+
* Unlike serialization for broadcast, this must not require signatures:
|
|
1631
|
+
* screening runs before the wallet is prompted, so nothing is signed yet.
|
|
1632
|
+
*
|
|
1633
|
+
* @param transaction - The transaction to serialize.
|
|
1634
|
+
* @returns The base64-encoded transaction.
|
|
1635
|
+
* @notInstrumented
|
|
1636
|
+
*/
|
|
1637
|
+
const serializeTransactionForScreening = (transaction) => bufferToBase64(isVersionedTransaction(transaction) ? transaction.serialize() : transaction.serialize({
|
|
1638
|
+
requireAllSignatures: false,
|
|
1639
|
+
verifySignatures: false
|
|
1640
|
+
}));
|
|
1641
|
+
|
|
1642
|
+
//#endregion
|
|
1643
|
+
//#region src/screenSolanaTransactions/screenSolanaTransactions.ts
|
|
1644
|
+
/**
|
|
1645
|
+
* Screens Solana transactions' destinations against the environment's sanctions
|
|
1646
|
+
* providers and returns the verdict.
|
|
1647
|
+
*
|
|
1648
|
+
* Serializes the transactions into the payload the screening API expects, so
|
|
1649
|
+
* you do not need to know its shape, then defers to {@link screenTransaction}.
|
|
1650
|
+
* The batch is screened in a single request and yields a single verdict.
|
|
1651
|
+
*
|
|
1652
|
+
* Like the call it wraps, this imposes no policy: it does not consult project
|
|
1653
|
+
* settings, does not throw on a `block` verdict, and rejects if screening
|
|
1654
|
+
* fails. Gate it with `isExternalWalletScreeningEnabled` and decide for
|
|
1655
|
+
* yourself what a block should do.
|
|
1656
|
+
*
|
|
1657
|
+
* A legacy transaction compiles its message on serialize, so pass transactions
|
|
1658
|
+
* that already carry a recent blockhash and fee payer — the same state they
|
|
1659
|
+
* need in order to be signed.
|
|
1660
|
+
*
|
|
1661
|
+
* @example
|
|
1662
|
+
* ```ts
|
|
1663
|
+
* if (isExternalWalletScreeningEnabled()) {
|
|
1664
|
+
* const { decision } = await screenSolanaTransactions({
|
|
1665
|
+
* transactions: [transaction],
|
|
1666
|
+
* walletAccount,
|
|
1667
|
+
* });
|
|
1668
|
+
*
|
|
1669
|
+
* if (decision === 'block') return;
|
|
1670
|
+
* }
|
|
1671
|
+
*
|
|
1672
|
+
* await signTransaction({ transaction, walletAccount });
|
|
1673
|
+
* ```
|
|
1674
|
+
*
|
|
1675
|
+
* @param params.transactions - The transactions about to be signed.
|
|
1676
|
+
* @param params.walletAccount - The wallet account that would be prompted to sign.
|
|
1677
|
+
* @param [params.senderAddress] - The sender to screen alongside the destinations. Defaults to the wallet account's address.
|
|
1678
|
+
* @param [params.signal] - Cancels the in-flight request, e.g. `AbortSignal.timeout(2000)`.
|
|
1679
|
+
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
1680
|
+
* @returns The screening verdict for the batch, including the addresses that caused a block.
|
|
1681
|
+
* @throws {ScreeningNotRequiredError} If the wallet account is a Dynamic embedded wallet, which signing already screens.
|
|
1682
|
+
* @throws {Error} If a transaction cannot be serialized for screening.
|
|
1683
|
+
* @see screenTransaction
|
|
1684
|
+
* @see isExternalWalletScreeningEnabled
|
|
1685
|
+
* @notInstrumented
|
|
1686
|
+
*/
|
|
1687
|
+
const screenSolanaTransactions = async ({ senderAddress, signal, transactions, walletAccount }, client = getDefaultClient$1()) => {
|
|
1688
|
+
if (isWaasWalletAccount({ walletAccount })) throw new ScreeningNotRequiredError();
|
|
1689
|
+
return screenTransaction({
|
|
1690
|
+
chain: "SOL",
|
|
1691
|
+
context: { svmTransaction: { serializedTransactions: transactions.map(serializeTransactionForScreening) } },
|
|
1692
|
+
senderAddress: senderAddress ?? walletAccount.address,
|
|
1693
|
+
signal
|
|
1694
|
+
}, client);
|
|
1695
|
+
};
|
|
1696
|
+
|
|
1624
1697
|
//#endregion
|
|
1625
1698
|
//#region src/signAllTransactions/signAllTransactions.ts
|
|
1626
1699
|
/**
|
|
@@ -1723,5 +1796,5 @@ const signTransaction = async ({ walletAccount, transaction }, client = getDefau
|
|
|
1723
1796
|
assertPackageVersion(name, version);
|
|
1724
1797
|
|
|
1725
1798
|
//#endregion
|
|
1726
|
-
export { NotSolanaProviderError, SponsorTransactionError, addPhantomRedirectSolanaExtension, addSolanaExtension, calculateSolanaTransactionFee, completePhantomRedirect, detectPhantomRedirect, getSolanaConnection, isSolanaGasSponsorshipEnabled, isSolanaNetworkProvider, isSolanaWalletAccount, signAllTransactions, signAndSendSponsoredTransaction, signAndSendTransaction, signTransaction, simulateSolanaTransaction };
|
|
1799
|
+
export { NotSolanaProviderError, SponsorTransactionError, addPhantomRedirectSolanaExtension, addSolanaExtension, calculateSolanaTransactionFee, completePhantomRedirect, detectPhantomRedirect, getSolanaConnection, isSolanaGasSponsorshipEnabled, isSolanaNetworkProvider, isSolanaWalletAccount, screenSolanaTransactions, signAllTransactions, signAndSendSponsoredTransaction, signAndSendTransaction, signTransaction, simulateSolanaTransaction };
|
|
1727
1800
|
//# sourceMappingURL=index.esm.js.map
|