@dynamic-labs-sdk/solana 0.0.1-alpha.26 → 0.0.1-alpha.6
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/CHANGELOG.md +0 -130
- package/addSolanaWalletStandardExtension.cjs.js +63 -103
- package/addSolanaWalletStandardExtension.esm.js +66 -103
- package/index.cjs.js +8 -34
- package/index.esm.js +9 -34
- package/package.json +4 -5
- package/src/SolanaWalletProvider.types.d.ts +1 -1
- package/src/SolanaWalletProvider.types.d.ts.map +1 -1
- package/src/addSolanaExtension/addSolanaExtension.d.ts +2 -1
- package/src/addSolanaExtension/addSolanaExtension.d.ts.map +1 -1
- package/src/errors/NotSolanaProviderError/NotSolanaProviderError.d.ts.map +1 -1
- package/src/exports/index.d.ts +1 -5
- package/src/exports/index.d.ts.map +1 -1
- package/src/exports/walletStandard.d.ts.map +1 -1
- package/src/getSigner/getSigner.d.ts +1 -5
- package/src/getSigner/getSigner.d.ts.map +1 -1
- package/src/isSolanaWalletAccount/isSolanaWalletAccount.d.ts +1 -2
- package/src/isSolanaWalletAccount/isSolanaWalletAccount.d.ts.map +1 -1
- package/src/isSolanaWalletProvider/isSolanaWalletProvider.d.ts +1 -1
- package/src/isSolanaWalletProvider/isSolanaWalletProvider.d.ts.map +1 -1
- package/src/walletStandard/addSolanaWalletStandardExtension/addSolanaWalletStandardExtension.d.ts +2 -1
- package/src/walletStandard/addSolanaWalletStandardExtension/addSolanaWalletStandardExtension.d.ts.map +1 -1
- package/src/walletStandard/utils/createSolanaSignerFromSolanaStandardWallet/createSolanaSignerFromSolanaStandardWallet.d.ts +1 -7
- package/src/walletStandard/utils/createSolanaSignerFromSolanaStandardWallet/createSolanaSignerFromSolanaStandardWallet.d.ts.map +1 -1
- package/src/walletStandard/utils/createWalletProviderFromSolanaStandardWallet/createWalletProviderFromSolanaStandardWallet.d.ts +3 -5
- package/src/walletStandard/utils/createWalletProviderFromSolanaStandardWallet/createWalletProviderFromSolanaStandardWallet.d.ts.map +1 -1
- package/walletStandard.cjs.js +2 -3
- package/walletStandard.esm.js +1 -5
- package/src/SolanaNetworkProvider.types.d.ts +0 -8
- package/src/SolanaNetworkProvider.types.d.ts.map +0 -1
- package/src/SolanaWalletAccount.types.d.ts +0 -8
- package/src/SolanaWalletAccount.types.d.ts.map +0 -1
- package/src/getSolanaConnection/getSolanaConnection.d.ts +0 -25
- package/src/getSolanaConnection/getSolanaConnection.d.ts.map +0 -1
- package/src/getSolanaConnection/index.d.ts +0 -2
- package/src/getSolanaConnection/index.d.ts.map +0 -1
- package/src/isSolanaNetworkProvider/index.d.ts +0 -2
- package/src/isSolanaNetworkProvider/index.d.ts.map +0 -1
- package/src/isSolanaNetworkProvider/isSolanaNetworkProvider.d.ts +0 -4
- package/src/isSolanaNetworkProvider/isSolanaNetworkProvider.d.ts.map +0 -1
- package/src/registerSolanaNetworkProviderBuilder/index.d.ts +0 -2
- package/src/registerSolanaNetworkProviderBuilder/index.d.ts.map +0 -1
- package/src/registerSolanaNetworkProviderBuilder/registerSolanaNetworkProviderBuilder.d.ts +0 -3
- package/src/registerSolanaNetworkProviderBuilder/registerSolanaNetworkProviderBuilder.d.ts.map +0 -1
- package/src/utils/createSolanaNetworkProvider/createSolanaNetworkProvider.d.ts +0 -4
- package/src/utils/createSolanaNetworkProvider/createSolanaNetworkProvider.d.ts.map +0 -1
- package/src/utils/createSolanaNetworkProvider/index.d.ts +0 -2
- package/src/utils/createSolanaNetworkProvider/index.d.ts.map +0 -1
- package/src/utils/fetchSolBalance/fetchSolBalance.d.ts +0 -5
- package/src/utils/fetchSolBalance/fetchSolBalance.d.ts.map +0 -1
- package/src/utils/fetchSolBalance/index.d.ts +0 -2
- package/src/utils/fetchSolBalance/index.d.ts.map +0 -1
- package/src/walletStandard/utils/createWalletProviderFromSolanaStandardWallet/getActiveNetworkId/getActiveNetworkId.d.ts +0 -5
- package/src/walletStandard/utils/createWalletProviderFromSolanaStandardWallet/getActiveNetworkId/getActiveNetworkId.d.ts.map +0 -1
- package/src/walletStandard/utils/createWalletProviderFromSolanaStandardWallet/getActiveNetworkId/index.d.ts +0 -2
- package/src/walletStandard/utils/createWalletProviderFromSolanaStandardWallet/getActiveNetworkId/index.d.ts.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,133 +1,3 @@
|
|
|
1
|
-
## 0.0.1-alpha.26 (2025-08-27)
|
|
2
|
-
|
|
3
|
-
### 🩹 Fixes
|
|
4
|
-
|
|
5
|
-
- remove version pin on sdk-api-core ([#351](https://github.com/dynamic-labs/dynamic-sdk/pull/351))
|
|
6
|
-
|
|
7
|
-
## 0.0.1-alpha.25 (2025-08-27)
|
|
8
|
-
|
|
9
|
-
### 🚀 Features
|
|
10
|
-
|
|
11
|
-
- add ethereum netowrk providers ([#267](https://github.com/dynamic-labs/dynamic-sdk/pull/267))
|
|
12
|
-
- add solana network provider ([#268](https://github.com/dynamic-labs/dynamic-sdk/pull/268))
|
|
13
|
-
- add proveWalletAccountOwnership function ([#295](https://github.com/dynamic-labs/dynamic-sdk/pull/295))
|
|
14
|
-
- format evm wallet addresses to conform to eip55 ([#300](https://github.com/dynamic-labs/dynamic-sdk/pull/300))
|
|
15
|
-
- add viem public client ([#272](https://github.com/dynamic-labs/dynamic-sdk/pull/272))
|
|
16
|
-
- add getSolanaConnection ([#275](https://github.com/dynamic-labs/dynamic-sdk/pull/275))
|
|
17
|
-
- add dynamic waas evm extension ([#299](https://github.com/dynamic-labs/dynamic-sdk/pull/299))
|
|
18
|
-
- add refreshUser function ([#332](https://github.com/dynamic-labs/dynamic-sdk/pull/332))
|
|
19
|
-
- add get network method ([#321](https://github.com/dynamic-labs/dynamic-sdk/pull/321))
|
|
20
|
-
|
|
21
|
-
### 🩹 Fixes
|
|
22
|
-
|
|
23
|
-
- update default API base URL ([#296](https://github.com/dynamic-labs/dynamic-sdk/pull/296))
|
|
24
|
-
|
|
25
|
-
### 🔧 Refactors
|
|
26
|
-
|
|
27
|
-
- reorganize exports index file ([#303](https://github.com/dynamic-labs/dynamic-sdk/pull/303))
|
|
28
|
-
- rename events folder to clientEvents ([#305](https://github.com/dynamic-labs/dynamic-sdk/pull/305))
|
|
29
|
-
- dry network provider type ([#308](https://github.com/dynamic-labs/dynamic-sdk/pull/308))
|
|
30
|
-
- rename types files to include the features name ([#319](https://github.com/dynamic-labs/dynamic-sdk/pull/319))
|
|
31
|
-
- use evm instead of other terms ([#306](https://github.com/dynamic-labs/dynamic-sdk/pull/306))
|
|
32
|
-
- rename net configuration to net data ([#322](https://github.com/dynamic-labs/dynamic-sdk/pull/322))
|
|
33
|
-
- move waas-utils to client package ([#342](https://github.com/dynamic-labs/dynamic-sdk/pull/342))
|
|
34
|
-
|
|
35
|
-
## 0.0.1-alpha.24 (2025-08-14)
|
|
36
|
-
|
|
37
|
-
This was a version bump only, there were no code changes.
|
|
38
|
-
|
|
39
|
-
## 0.0.1-alpha.23 (2025-08-14)
|
|
40
|
-
|
|
41
|
-
This was a version bump only, there were no code changes.
|
|
42
|
-
|
|
43
|
-
## 0.0.1-alpha.22 (2025-08-13)
|
|
44
|
-
|
|
45
|
-
This was a version bump only, there were no code changes.
|
|
46
|
-
|
|
47
|
-
## 0.0.1-alpha.21 (2025-08-12)
|
|
48
|
-
|
|
49
|
-
### 🚀 Features
|
|
50
|
-
|
|
51
|
-
- add signInWithExternalJwt function ([#263](https://github.com/dynamic-labs/dynamic-sdk/pull/263))
|
|
52
|
-
|
|
53
|
-
### 🩹 Fixes
|
|
54
|
-
|
|
55
|
-
- bind fetch to window ([#265](https://github.com/dynamic-labs/dynamic-sdk/pull/265))
|
|
56
|
-
|
|
57
|
-
## 0.0.1-alpha.20 (2025-08-06)
|
|
58
|
-
|
|
59
|
-
### 🚀 Features
|
|
60
|
-
|
|
61
|
-
- raise an error if different dynamic packages are on different versions ([#253](https://github.com/dynamic-labs/dynamic-sdk/pull/253))
|
|
62
|
-
|
|
63
|
-
## 0.0.1-alpha.19 (2025-07-23)
|
|
64
|
-
|
|
65
|
-
This was a version bump only, there were no code changes.
|
|
66
|
-
|
|
67
|
-
## 0.0.1-alpha.18 (2025-07-22)
|
|
68
|
-
|
|
69
|
-
This was a version bump only, there were no code changes.
|
|
70
|
-
|
|
71
|
-
## 0.0.1-alpha.17 (2025-07-22)
|
|
72
|
-
|
|
73
|
-
This was a version bump only, there were no code changes.
|
|
74
|
-
|
|
75
|
-
## 0.0.1-alpha.16 (2025-07-14)
|
|
76
|
-
|
|
77
|
-
### 🚀 Features
|
|
78
|
-
|
|
79
|
-
- add new getMultichainBalances api method ([#219](https://github.com/dynamic-labs/dynamic-sdk/pull/219))
|
|
80
|
-
- adds authenticated event ([#222](https://github.com/dynamic-labs/dynamic-sdk/pull/222))
|
|
81
|
-
|
|
82
|
-
## 0.0.1-alpha.15 (2025-07-14)
|
|
83
|
-
|
|
84
|
-
### 🚀 Features
|
|
85
|
-
|
|
86
|
-
- **SIN-7:** Add Signin with Passkey ([#201](https://github.com/dynamic-labs/dynamic-sdk/pull/201))
|
|
87
|
-
|
|
88
|
-
## 0.0.1-alpha.14 (2025-07-11)
|
|
89
|
-
|
|
90
|
-
### 🩹 Fixes
|
|
91
|
-
|
|
92
|
-
- import zod mini using namespace ([#214](https://github.com/dynamic-labs/dynamic-sdk/pull/214))
|
|
93
|
-
|
|
94
|
-
## 0.0.1-alpha.13 (2025-07-09)
|
|
95
|
-
|
|
96
|
-
### 🩹 Fixes
|
|
97
|
-
|
|
98
|
-
- convert api headers to get api headers ([#211](https://github.com/dynamic-labs/dynamic-sdk/pull/211))
|
|
99
|
-
|
|
100
|
-
## 0.0.1-alpha.12 (2025-07-09)
|
|
101
|
-
|
|
102
|
-
### 🩹 Fixes
|
|
103
|
-
|
|
104
|
-
- allow the api call to include cookie credentials ([#209](https://github.com/dynamic-labs/dynamic-sdk/pull/209))
|
|
105
|
-
|
|
106
|
-
## 0.0.1-alpha.11 (2025-07-08)
|
|
107
|
-
|
|
108
|
-
This was a version bump only, there were no code changes.
|
|
109
|
-
|
|
110
|
-
## 0.0.1-alpha.10 (2025-07-08)
|
|
111
|
-
|
|
112
|
-
This was a version bump only, there were no code changes.
|
|
113
|
-
|
|
114
|
-
## 0.0.1-alpha.9 (2025-07-08)
|
|
115
|
-
|
|
116
|
-
### 🩹 Fixes
|
|
117
|
-
|
|
118
|
-
- throw when attempting to set undefined prop in storage ([#200](https://github.com/dynamic-labs/dynamic-sdk/pull/200))
|
|
119
|
-
|
|
120
|
-
## 0.0.1-alpha.8 (2025-07-03)
|
|
121
|
-
|
|
122
|
-
This was a version bump only, there were no code changes.
|
|
123
|
-
|
|
124
|
-
## 0.0.1-alpha.7 (2025-07-02)
|
|
125
|
-
|
|
126
|
-
### 🩹 Fixes
|
|
127
|
-
|
|
128
|
-
- **mfa:** make device id optional ([#175](https://github.com/dynamic-labs/dynamic-sdk/pull/175))
|
|
129
|
-
- **mfa:** allow create mfa options to authTotpMfaDevice ([#178](https://github.com/dynamic-labs/dynamic-sdk/pull/178))
|
|
130
|
-
|
|
131
1
|
## 0.0.1-alpha.6 (2025-06-30)
|
|
132
2
|
|
|
133
3
|
### 🚀 Features
|
|
@@ -2,59 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
var core = require('@dynamic-labs-sdk/client/core');
|
|
4
4
|
var app = require('@wallet-standard/app');
|
|
5
|
-
var web3_js = require('@solana/web3.js');
|
|
6
5
|
var client = require('@dynamic-labs-sdk/client');
|
|
7
6
|
var sdkApiCore = require('@dynamic-labs/sdk-api-core');
|
|
8
|
-
|
|
9
|
-
var name = "@dynamic-labs-sdk/solana";
|
|
10
|
-
var version = "0.0.1-alpha.26";
|
|
11
|
-
|
|
12
|
-
function _extends() {
|
|
13
|
-
_extends = Object.assign || function assign(target) {
|
|
14
|
-
for(var i = 1; i < arguments.length; i++){
|
|
15
|
-
var source = arguments[i];
|
|
16
|
-
for(var key in source)if (Object.prototype.hasOwnProperty.call(source, key)) target[key] = source[key];
|
|
17
|
-
}
|
|
18
|
-
return target;
|
|
19
|
-
};
|
|
20
|
-
return _extends.apply(this, arguments);
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
const fetchSolBalance = async ({ address, rpcUrl })=>{
|
|
24
|
-
// Establish a connection to the Solana network using the provided RPC URL.
|
|
25
|
-
const connection = new web3_js.Connection(rpcUrl);
|
|
26
|
-
// Convert the string address into a PublicKey object.
|
|
27
|
-
const publicKey = new web3_js.PublicKey(address);
|
|
28
|
-
// Fetch the balance of the public key. The balance is in lamports.
|
|
29
|
-
const balanceInLamports = await connection.getBalance(publicKey);
|
|
30
|
-
// The getBalance method returns the balance in lamports.
|
|
31
|
-
// 1 SOL = 1,000,000,000 lamports.
|
|
32
|
-
const balanceInSol = balanceInLamports / 1000000000;
|
|
33
|
-
// Return the balance in SOL as a string
|
|
34
|
-
return balanceInSol.toString();
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
const createSolanaNetworkProvider = (networkData)=>_extends({}, core.createBaseNetworkProvider('SOL', networkData), {
|
|
38
|
-
getBalance: async ({ address })=>({
|
|
39
|
-
balance: await fetchSolBalance({
|
|
40
|
-
address,
|
|
41
|
-
rpcUrl: networkData.rpcUrls.http[0]
|
|
42
|
-
})
|
|
43
|
-
})
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
const registerSolanaNetworkProviderBuilder = (client)=>{
|
|
47
|
-
const networkProviderBuilderRegistry = core.getNetworkProviderBuilderRegistry(client);
|
|
48
|
-
/**
|
|
49
|
-
* If the Solana network provider builder is already registered, return.
|
|
50
|
-
*/ if (networkProviderBuilderRegistry.get().get('SOL')) {
|
|
51
|
-
return;
|
|
52
|
-
}
|
|
53
|
-
networkProviderBuilderRegistry.register({
|
|
54
|
-
builder: createSolanaNetworkProvider,
|
|
55
|
-
chain: 'SOL'
|
|
56
|
-
});
|
|
57
|
-
};
|
|
7
|
+
var web3_js = require('@solana/web3.js');
|
|
58
8
|
|
|
59
9
|
const isVersionedTransaction = (transaction)=>!('instructions' in transaction);
|
|
60
10
|
|
|
@@ -62,35 +12,39 @@ const getFeaturesForSolanaStandardWallet = (wallet)=>{
|
|
|
62
12
|
return wallet.features;
|
|
63
13
|
};
|
|
64
14
|
|
|
65
|
-
const createSolanaSignerFromSolanaStandardWallet = (
|
|
66
|
-
const features = getFeaturesForSolanaStandardWallet(
|
|
15
|
+
const createSolanaSignerFromSolanaStandardWallet = (wallet)=>{
|
|
16
|
+
const features = getFeaturesForSolanaStandardWallet(wallet);
|
|
67
17
|
const getPublicKey = ()=>{
|
|
68
|
-
var
|
|
69
|
-
if (!((
|
|
18
|
+
var _wallet_accounts_, _wallet_accounts;
|
|
19
|
+
if (!((_wallet_accounts = wallet.accounts) == null ? void 0 : (_wallet_accounts_ = _wallet_accounts[0]) == null ? void 0 : _wallet_accounts_.publicKey)) {
|
|
70
20
|
return undefined;
|
|
71
21
|
}
|
|
72
|
-
return new web3_js.PublicKey(
|
|
22
|
+
return new web3_js.PublicKey(wallet.accounts[0].publicKey);
|
|
73
23
|
};
|
|
74
24
|
const getChain = ()=>{
|
|
75
|
-
|
|
76
|
-
|
|
25
|
+
// TODO: add support for getting the chain from the provider
|
|
26
|
+
// const currentNetwork = provider.getSelectedNetwork();
|
|
27
|
+
// assertDefined(currentNetwork, 'Network not found');
|
|
28
|
+
// const cluster = currentNetwork.cluster ?? 'mainnet';
|
|
29
|
+
const cluster = 'mainnet';
|
|
30
|
+
return `solana:${cluster}`;
|
|
77
31
|
};
|
|
78
32
|
const isConnected = ()=>{
|
|
79
|
-
var
|
|
80
|
-
return ((
|
|
33
|
+
var _wallet_accounts;
|
|
34
|
+
return ((_wallet_accounts = wallet.accounts) == null ? void 0 : _wallet_accounts.length) > 0;
|
|
81
35
|
};
|
|
82
36
|
const getCurrentAccount = async ()=>{
|
|
83
|
-
var
|
|
37
|
+
var _wallet_accounts;
|
|
84
38
|
if (!isConnected()) {
|
|
85
39
|
await connect();
|
|
86
40
|
}
|
|
87
|
-
const account = (
|
|
41
|
+
const account = (_wallet_accounts = wallet.accounts) == null ? void 0 : _wallet_accounts[0];
|
|
88
42
|
core.assertDefined(account, 'No connected accounts found');
|
|
89
43
|
return account;
|
|
90
44
|
};
|
|
91
45
|
const connect = async ()=>{
|
|
92
46
|
var _features_standardconnect, _result_accounts;
|
|
93
|
-
const autoConnectedAccounts =
|
|
47
|
+
const autoConnectedAccounts = wallet.accounts;
|
|
94
48
|
// some wallets like Farcaster will auto inject the account into the wallet object
|
|
95
49
|
// instead of returning it from the connect method
|
|
96
50
|
// so we need to check for that first
|
|
@@ -232,12 +186,7 @@ const createSolanaSignerFromSolanaStandardWallet = ({ networkProvider, walletSta
|
|
|
232
186
|
};
|
|
233
187
|
};
|
|
234
188
|
|
|
235
|
-
const createWalletProviderFromSolanaStandardWallet = ({
|
|
236
|
-
const key = core.formatWalletProviderKey(walletStandardWallet.name, 'SOL');
|
|
237
|
-
const getActiveNetworkId = async ()=>core.getActiveNetworkIdFromLastKnownRegistry({
|
|
238
|
-
client: dynamicClient,
|
|
239
|
-
walletProviderKey: key
|
|
240
|
-
});
|
|
189
|
+
const createWalletProviderFromSolanaStandardWallet = ({ wallet })=>{
|
|
241
190
|
const connect = async ()=>{
|
|
242
191
|
const signer = await getSigner();
|
|
243
192
|
const result = await signer.connect();
|
|
@@ -257,24 +206,45 @@ const createWalletProviderFromSolanaStandardWallet = ({ dynamicClient, walletSta
|
|
|
257
206
|
await signer.connect();
|
|
258
207
|
}
|
|
259
208
|
return {
|
|
260
|
-
addresses:
|
|
209
|
+
addresses: wallet.accounts.map((account)=>account.address)
|
|
261
210
|
};
|
|
262
211
|
};
|
|
263
212
|
const getSigner = async (walletAccount)=>{
|
|
264
213
|
if (walletAccount) {
|
|
265
|
-
await client.assertWalletAccountSigningAvailability(
|
|
266
|
-
walletAccount
|
|
267
|
-
}, dynamicClient);
|
|
214
|
+
await client.assertWalletAccountSigningAvailability(walletAccount);
|
|
268
215
|
}
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
216
|
+
return createSolanaSignerFromSolanaStandardWallet(wallet);
|
|
217
|
+
};
|
|
218
|
+
const proveOwnership = async (walletAccount)=>{
|
|
219
|
+
var _core_metadata;
|
|
220
|
+
const client = core.getClient(walletAccount);
|
|
221
|
+
const core$1 = core.getCore(client);
|
|
222
|
+
const apiClient = core.createApiClient(client);
|
|
223
|
+
const appUrl = (_core_metadata = core$1.metadata) == null ? void 0 : _core_metadata.url;
|
|
224
|
+
core.assertDefined(appUrl, 'App URL is not set');
|
|
225
|
+
const url = new URL(appUrl);
|
|
226
|
+
const { nonce } = await apiClient.getNonce({
|
|
227
|
+
environmentId: core$1.environmentId
|
|
277
228
|
});
|
|
229
|
+
core.assertDefined(nonce, 'Failed to get nonce');
|
|
230
|
+
const messageToSign = await core.formatSignInMessage({
|
|
231
|
+
address: walletAccount.address,
|
|
232
|
+
blockchainName: 'Solana',
|
|
233
|
+
domain: url.host,
|
|
234
|
+
issuedAt: new Date().toISOString(),
|
|
235
|
+
nonce,
|
|
236
|
+
requestId: core$1.environmentId,
|
|
237
|
+
uri: url.toString()
|
|
238
|
+
});
|
|
239
|
+
const signedMessage = await signMessage({
|
|
240
|
+
message: messageToSign,
|
|
241
|
+
walletAccount
|
|
242
|
+
});
|
|
243
|
+
return {
|
|
244
|
+
chain: sdkApiCore.ChainEnum.Sol,
|
|
245
|
+
messageToSign,
|
|
246
|
+
signedMessage: signedMessage.signature
|
|
247
|
+
};
|
|
278
248
|
};
|
|
279
249
|
const signMessage = async ({ message, walletAccount })=>{
|
|
280
250
|
const signer = await getSigner(walletAccount);
|
|
@@ -289,16 +259,16 @@ const createWalletProviderFromSolanaStandardWallet = ({ dynamicClient, walletSta
|
|
|
289
259
|
chain: 'SOL',
|
|
290
260
|
connect,
|
|
291
261
|
disconnect,
|
|
292
|
-
getActiveNetworkId,
|
|
293
262
|
getConnectedAddresses,
|
|
294
263
|
getSigner,
|
|
295
264
|
getWalletProviderType: ()=>sdkApiCore.WalletProviderEnum.BrowserExtension,
|
|
296
|
-
groupKey: core.formatWalletProviderGroupKey(
|
|
297
|
-
key,
|
|
265
|
+
groupKey: core.formatWalletProviderGroupKey(wallet.name),
|
|
266
|
+
key: core.formatWalletProviderKey(wallet.name, sdkApiCore.ChainEnum.Sol),
|
|
298
267
|
metadata: {
|
|
299
|
-
displayName:
|
|
300
|
-
icon:
|
|
268
|
+
displayName: wallet.name,
|
|
269
|
+
icon: wallet.icon
|
|
301
270
|
},
|
|
271
|
+
proveOwnership,
|
|
302
272
|
signMessage
|
|
303
273
|
};
|
|
304
274
|
};
|
|
@@ -309,23 +279,16 @@ const hasAllRequiredFeatures = (wallet)=>{
|
|
|
309
279
|
};
|
|
310
280
|
|
|
311
281
|
const SOLANA_WALLET_STANDARD_EXTENSION_KEY = 'solanaWalletStandard';
|
|
312
|
-
const addSolanaWalletStandardExtension = (client
|
|
313
|
-
if (core.hasExtension({
|
|
314
|
-
extensionKey: SOLANA_WALLET_STANDARD_EXTENSION_KEY
|
|
315
|
-
}, client)) {
|
|
282
|
+
const addSolanaWalletStandardExtension = (client)=>{
|
|
283
|
+
if (core.hasExtension(client, SOLANA_WALLET_STANDARD_EXTENSION_KEY)) {
|
|
316
284
|
return;
|
|
317
285
|
}
|
|
318
|
-
core.registerExtension({
|
|
319
|
-
extensionKey: SOLANA_WALLET_STANDARD_EXTENSION_KEY
|
|
320
|
-
}, client);
|
|
321
|
-
registerSolanaNetworkProviderBuilder(client);
|
|
322
286
|
const walletProviderRegistry = core.getWalletProviderRegistry(client);
|
|
323
|
-
const
|
|
324
|
-
|
|
325
|
-
const walletProvider = createWalletProviderFromSolanaStandardWallet({
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
});
|
|
287
|
+
const walletStandardWallet = app.getWallets().get().filter(hasAllRequiredFeatures);
|
|
288
|
+
walletStandardWallet.forEach((wallet)=>{
|
|
289
|
+
const walletProvider = core.assignClient(createWalletProviderFromSolanaStandardWallet({
|
|
290
|
+
wallet
|
|
291
|
+
}), client);
|
|
329
292
|
walletProviderRegistry.register({
|
|
330
293
|
priority: core.WalletProviderPriority.WALLET_SELF_ANNOUNCEMENT_STANDARD,
|
|
331
294
|
walletProvider
|
|
@@ -334,6 +297,3 @@ const addSolanaWalletStandardExtension = (client = core.getDefaultClient())=>{
|
|
|
334
297
|
};
|
|
335
298
|
|
|
336
299
|
exports.addSolanaWalletStandardExtension = addSolanaWalletStandardExtension;
|
|
337
|
-
exports.createSolanaNetworkProvider = createSolanaNetworkProvider;
|
|
338
|
-
exports.name = name;
|
|
339
|
-
exports.version = version;
|
|
@@ -1,58 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { MethodNotImplementedError, assertDefined, formatWalletProviderKey, formatWalletProviderGroupKey, bufferToBase64, getClient, getCore, createApiClient, formatSignInMessage, hasExtension, getWalletProviderRegistry, assignClient, WalletProviderPriority } from '@dynamic-labs-sdk/client/core';
|
|
2
2
|
import { getWallets } from '@wallet-standard/app';
|
|
3
|
-
import { Connection, PublicKey, VersionedTransaction, Transaction } from '@solana/web3.js';
|
|
4
3
|
import { assertWalletAccountSigningAvailability } from '@dynamic-labs-sdk/client';
|
|
5
|
-
import { WalletProviderEnum } from '@dynamic-labs/sdk-api-core';
|
|
6
|
-
|
|
7
|
-
var name = "@dynamic-labs-sdk/solana";
|
|
8
|
-
var version = "0.0.1-alpha.26";
|
|
9
|
-
|
|
10
|
-
function _extends() {
|
|
11
|
-
_extends = Object.assign || function assign(target) {
|
|
12
|
-
for(var i = 1; i < arguments.length; i++){
|
|
13
|
-
var source = arguments[i];
|
|
14
|
-
for(var key in source)if (Object.prototype.hasOwnProperty.call(source, key)) target[key] = source[key];
|
|
15
|
-
}
|
|
16
|
-
return target;
|
|
17
|
-
};
|
|
18
|
-
return _extends.apply(this, arguments);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
const fetchSolBalance = async ({ address, rpcUrl })=>{
|
|
22
|
-
// Establish a connection to the Solana network using the provided RPC URL.
|
|
23
|
-
const connection = new Connection(rpcUrl);
|
|
24
|
-
// Convert the string address into a PublicKey object.
|
|
25
|
-
const publicKey = new PublicKey(address);
|
|
26
|
-
// Fetch the balance of the public key. The balance is in lamports.
|
|
27
|
-
const balanceInLamports = await connection.getBalance(publicKey);
|
|
28
|
-
// The getBalance method returns the balance in lamports.
|
|
29
|
-
// 1 SOL = 1,000,000,000 lamports.
|
|
30
|
-
const balanceInSol = balanceInLamports / 1000000000;
|
|
31
|
-
// Return the balance in SOL as a string
|
|
32
|
-
return balanceInSol.toString();
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
const createSolanaNetworkProvider = (networkData)=>_extends({}, createBaseNetworkProvider('SOL', networkData), {
|
|
36
|
-
getBalance: async ({ address })=>({
|
|
37
|
-
balance: await fetchSolBalance({
|
|
38
|
-
address,
|
|
39
|
-
rpcUrl: networkData.rpcUrls.http[0]
|
|
40
|
-
})
|
|
41
|
-
})
|
|
42
|
-
});
|
|
43
|
-
|
|
44
|
-
const registerSolanaNetworkProviderBuilder = (client)=>{
|
|
45
|
-
const networkProviderBuilderRegistry = getNetworkProviderBuilderRegistry(client);
|
|
46
|
-
/**
|
|
47
|
-
* If the Solana network provider builder is already registered, return.
|
|
48
|
-
*/ if (networkProviderBuilderRegistry.get().get('SOL')) {
|
|
49
|
-
return;
|
|
50
|
-
}
|
|
51
|
-
networkProviderBuilderRegistry.register({
|
|
52
|
-
builder: createSolanaNetworkProvider,
|
|
53
|
-
chain: 'SOL'
|
|
54
|
-
});
|
|
55
|
-
};
|
|
4
|
+
import { WalletProviderEnum, ChainEnum } from '@dynamic-labs/sdk-api-core';
|
|
5
|
+
import { VersionedTransaction, Transaction, PublicKey } from '@solana/web3.js';
|
|
56
6
|
|
|
57
7
|
const isVersionedTransaction = (transaction)=>!('instructions' in transaction);
|
|
58
8
|
|
|
@@ -60,35 +10,39 @@ const getFeaturesForSolanaStandardWallet = (wallet)=>{
|
|
|
60
10
|
return wallet.features;
|
|
61
11
|
};
|
|
62
12
|
|
|
63
|
-
const createSolanaSignerFromSolanaStandardWallet = (
|
|
64
|
-
const features = getFeaturesForSolanaStandardWallet(
|
|
13
|
+
const createSolanaSignerFromSolanaStandardWallet = (wallet)=>{
|
|
14
|
+
const features = getFeaturesForSolanaStandardWallet(wallet);
|
|
65
15
|
const getPublicKey = ()=>{
|
|
66
|
-
var
|
|
67
|
-
if (!((
|
|
16
|
+
var _wallet_accounts_, _wallet_accounts;
|
|
17
|
+
if (!((_wallet_accounts = wallet.accounts) == null ? void 0 : (_wallet_accounts_ = _wallet_accounts[0]) == null ? void 0 : _wallet_accounts_.publicKey)) {
|
|
68
18
|
return undefined;
|
|
69
19
|
}
|
|
70
|
-
return new PublicKey(
|
|
20
|
+
return new PublicKey(wallet.accounts[0].publicKey);
|
|
71
21
|
};
|
|
72
22
|
const getChain = ()=>{
|
|
73
|
-
|
|
74
|
-
|
|
23
|
+
// TODO: add support for getting the chain from the provider
|
|
24
|
+
// const currentNetwork = provider.getSelectedNetwork();
|
|
25
|
+
// assertDefined(currentNetwork, 'Network not found');
|
|
26
|
+
// const cluster = currentNetwork.cluster ?? 'mainnet';
|
|
27
|
+
const cluster = 'mainnet';
|
|
28
|
+
return `solana:${cluster}`;
|
|
75
29
|
};
|
|
76
30
|
const isConnected = ()=>{
|
|
77
|
-
var
|
|
78
|
-
return ((
|
|
31
|
+
var _wallet_accounts;
|
|
32
|
+
return ((_wallet_accounts = wallet.accounts) == null ? void 0 : _wallet_accounts.length) > 0;
|
|
79
33
|
};
|
|
80
34
|
const getCurrentAccount = async ()=>{
|
|
81
|
-
var
|
|
35
|
+
var _wallet_accounts;
|
|
82
36
|
if (!isConnected()) {
|
|
83
37
|
await connect();
|
|
84
38
|
}
|
|
85
|
-
const account = (
|
|
39
|
+
const account = (_wallet_accounts = wallet.accounts) == null ? void 0 : _wallet_accounts[0];
|
|
86
40
|
assertDefined(account, 'No connected accounts found');
|
|
87
41
|
return account;
|
|
88
42
|
};
|
|
89
43
|
const connect = async ()=>{
|
|
90
44
|
var _features_standardconnect, _result_accounts;
|
|
91
|
-
const autoConnectedAccounts =
|
|
45
|
+
const autoConnectedAccounts = wallet.accounts;
|
|
92
46
|
// some wallets like Farcaster will auto inject the account into the wallet object
|
|
93
47
|
// instead of returning it from the connect method
|
|
94
48
|
// so we need to check for that first
|
|
@@ -230,12 +184,7 @@ const createSolanaSignerFromSolanaStandardWallet = ({ networkProvider, walletSta
|
|
|
230
184
|
};
|
|
231
185
|
};
|
|
232
186
|
|
|
233
|
-
const createWalletProviderFromSolanaStandardWallet = ({
|
|
234
|
-
const key = formatWalletProviderKey(walletStandardWallet.name, 'SOL');
|
|
235
|
-
const getActiveNetworkId = async ()=>getActiveNetworkIdFromLastKnownRegistry({
|
|
236
|
-
client: dynamicClient,
|
|
237
|
-
walletProviderKey: key
|
|
238
|
-
});
|
|
187
|
+
const createWalletProviderFromSolanaStandardWallet = ({ wallet })=>{
|
|
239
188
|
const connect = async ()=>{
|
|
240
189
|
const signer = await getSigner();
|
|
241
190
|
const result = await signer.connect();
|
|
@@ -255,24 +204,45 @@ const createWalletProviderFromSolanaStandardWallet = ({ dynamicClient, walletSta
|
|
|
255
204
|
await signer.connect();
|
|
256
205
|
}
|
|
257
206
|
return {
|
|
258
|
-
addresses:
|
|
207
|
+
addresses: wallet.accounts.map((account)=>account.address)
|
|
259
208
|
};
|
|
260
209
|
};
|
|
261
210
|
const getSigner = async (walletAccount)=>{
|
|
262
211
|
if (walletAccount) {
|
|
263
|
-
await assertWalletAccountSigningAvailability(
|
|
264
|
-
walletAccount
|
|
265
|
-
}, dynamicClient);
|
|
212
|
+
await assertWalletAccountSigningAvailability(walletAccount);
|
|
266
213
|
}
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
214
|
+
return createSolanaSignerFromSolanaStandardWallet(wallet);
|
|
215
|
+
};
|
|
216
|
+
const proveOwnership = async (walletAccount)=>{
|
|
217
|
+
var _core_metadata;
|
|
218
|
+
const client = getClient(walletAccount);
|
|
219
|
+
const core = getCore(client);
|
|
220
|
+
const apiClient = createApiClient(client);
|
|
221
|
+
const appUrl = (_core_metadata = core.metadata) == null ? void 0 : _core_metadata.url;
|
|
222
|
+
assertDefined(appUrl, 'App URL is not set');
|
|
223
|
+
const url = new URL(appUrl);
|
|
224
|
+
const { nonce } = await apiClient.getNonce({
|
|
225
|
+
environmentId: core.environmentId
|
|
275
226
|
});
|
|
227
|
+
assertDefined(nonce, 'Failed to get nonce');
|
|
228
|
+
const messageToSign = await formatSignInMessage({
|
|
229
|
+
address: walletAccount.address,
|
|
230
|
+
blockchainName: 'Solana',
|
|
231
|
+
domain: url.host,
|
|
232
|
+
issuedAt: new Date().toISOString(),
|
|
233
|
+
nonce,
|
|
234
|
+
requestId: core.environmentId,
|
|
235
|
+
uri: url.toString()
|
|
236
|
+
});
|
|
237
|
+
const signedMessage = await signMessage({
|
|
238
|
+
message: messageToSign,
|
|
239
|
+
walletAccount
|
|
240
|
+
});
|
|
241
|
+
return {
|
|
242
|
+
chain: ChainEnum.Sol,
|
|
243
|
+
messageToSign,
|
|
244
|
+
signedMessage: signedMessage.signature
|
|
245
|
+
};
|
|
276
246
|
};
|
|
277
247
|
const signMessage = async ({ message, walletAccount })=>{
|
|
278
248
|
const signer = await getSigner(walletAccount);
|
|
@@ -287,16 +257,16 @@ const createWalletProviderFromSolanaStandardWallet = ({ dynamicClient, walletSta
|
|
|
287
257
|
chain: 'SOL',
|
|
288
258
|
connect,
|
|
289
259
|
disconnect,
|
|
290
|
-
getActiveNetworkId,
|
|
291
260
|
getConnectedAddresses,
|
|
292
261
|
getSigner,
|
|
293
262
|
getWalletProviderType: ()=>WalletProviderEnum.BrowserExtension,
|
|
294
|
-
groupKey: formatWalletProviderGroupKey(
|
|
295
|
-
key,
|
|
263
|
+
groupKey: formatWalletProviderGroupKey(wallet.name),
|
|
264
|
+
key: formatWalletProviderKey(wallet.name, ChainEnum.Sol),
|
|
296
265
|
metadata: {
|
|
297
|
-
displayName:
|
|
298
|
-
icon:
|
|
266
|
+
displayName: wallet.name,
|
|
267
|
+
icon: wallet.icon
|
|
299
268
|
},
|
|
269
|
+
proveOwnership,
|
|
300
270
|
signMessage
|
|
301
271
|
};
|
|
302
272
|
};
|
|
@@ -307,23 +277,16 @@ const hasAllRequiredFeatures = (wallet)=>{
|
|
|
307
277
|
};
|
|
308
278
|
|
|
309
279
|
const SOLANA_WALLET_STANDARD_EXTENSION_KEY = 'solanaWalletStandard';
|
|
310
|
-
const addSolanaWalletStandardExtension = (client
|
|
311
|
-
if (hasExtension({
|
|
312
|
-
extensionKey: SOLANA_WALLET_STANDARD_EXTENSION_KEY
|
|
313
|
-
}, client)) {
|
|
280
|
+
const addSolanaWalletStandardExtension = (client)=>{
|
|
281
|
+
if (hasExtension(client, SOLANA_WALLET_STANDARD_EXTENSION_KEY)) {
|
|
314
282
|
return;
|
|
315
283
|
}
|
|
316
|
-
registerExtension({
|
|
317
|
-
extensionKey: SOLANA_WALLET_STANDARD_EXTENSION_KEY
|
|
318
|
-
}, client);
|
|
319
|
-
registerSolanaNetworkProviderBuilder(client);
|
|
320
284
|
const walletProviderRegistry = getWalletProviderRegistry(client);
|
|
321
|
-
const
|
|
322
|
-
|
|
323
|
-
const walletProvider = createWalletProviderFromSolanaStandardWallet({
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
});
|
|
285
|
+
const walletStandardWallet = getWallets().get().filter(hasAllRequiredFeatures);
|
|
286
|
+
walletStandardWallet.forEach((wallet)=>{
|
|
287
|
+
const walletProvider = assignClient(createWalletProviderFromSolanaStandardWallet({
|
|
288
|
+
wallet
|
|
289
|
+
}), client);
|
|
327
290
|
walletProviderRegistry.register({
|
|
328
291
|
priority: WalletProviderPriority.WALLET_SELF_ANNOUNCEMENT_STANDARD,
|
|
329
292
|
walletProvider
|
|
@@ -331,4 +294,4 @@ const addSolanaWalletStandardExtension = (client = getDefaultClient())=>{
|
|
|
331
294
|
});
|
|
332
295
|
};
|
|
333
296
|
|
|
334
|
-
export { addSolanaWalletStandardExtension as a
|
|
297
|
+
export { addSolanaWalletStandardExtension as a };
|
package/index.cjs.js
CHANGED
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var assertPackageVersion = require('@dynamic-labs-sdk/assert-package-version');
|
|
4
3
|
var addSolanaWalletStandardExtension = require('./addSolanaWalletStandardExtension.cjs.js');
|
|
5
|
-
var core = require('@dynamic-labs-sdk/client/core');
|
|
6
4
|
var client = require('@dynamic-labs-sdk/client');
|
|
7
|
-
var
|
|
5
|
+
var core = require('@dynamic-labs-sdk/client/core');
|
|
8
6
|
require('@wallet-standard/app');
|
|
9
7
|
require('@dynamic-labs/sdk-api-core');
|
|
8
|
+
require('@solana/web3.js');
|
|
10
9
|
|
|
11
10
|
/**
|
|
12
11
|
* Adds all solana wallets to the client.
|
|
13
12
|
*
|
|
14
13
|
* @param client - The client to add the solana wallets to.
|
|
15
|
-
*/ const addSolanaExtension = (client
|
|
14
|
+
*/ const addSolanaExtension = (client)=>{
|
|
16
15
|
addSolanaWalletStandardExtension.addSolanaWalletStandardExtension(client);
|
|
17
16
|
};
|
|
18
17
|
|
|
@@ -20,7 +19,6 @@ class NotSolanaProviderError extends client.BaseError {
|
|
|
20
19
|
constructor(params){
|
|
21
20
|
super({
|
|
22
21
|
cause: null,
|
|
23
|
-
code: 'not_solana_provider_error',
|
|
24
22
|
docsUrl: null,
|
|
25
23
|
name: 'NotSolanaProviderError',
|
|
26
24
|
shortMessage: 'Provider is not a Solana wallet provider'
|
|
@@ -33,10 +31,8 @@ const isSolanaWalletProvider = (provider)=>{
|
|
|
33
31
|
return provider.chain === 'SOL';
|
|
34
32
|
};
|
|
35
33
|
|
|
36
|
-
const getSigner = async (
|
|
37
|
-
const provider = core.getWalletProviderFromWalletAccount(
|
|
38
|
-
walletAccount
|
|
39
|
-
}, client);
|
|
34
|
+
const getSigner = async (walletAccount)=>{
|
|
35
|
+
const provider = core.getWalletProviderFromWalletAccount(walletAccount);
|
|
40
36
|
if (!isSolanaWalletProvider(provider)) {
|
|
41
37
|
throw new NotSolanaProviderError({
|
|
42
38
|
providerKey: provider.key
|
|
@@ -45,34 +41,12 @@ const getSigner = async ({ walletAccount }, client = core.getDefaultClient())=>{
|
|
|
45
41
|
return provider.getSigner(walletAccount);
|
|
46
42
|
};
|
|
47
43
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
*
|
|
51
|
-
* @example
|
|
52
|
-
* ```ts
|
|
53
|
-
* import { getNetworkProviders } from '@dynamic-labs-sdk/client';
|
|
54
|
-
* import { isSolanaNetworkProvider, getSolanaConnection } from '@dynamic-labs-sdk/solana';
|
|
55
|
-
*
|
|
56
|
-
* const [solanaNetorkProvider] = getNetworkProviders().filter(isSolanaNetworkProvider)
|
|
57
|
-
*
|
|
58
|
-
* const connection = getSolanaConnection({
|
|
59
|
-
* networkProvider: solanaNetorkProvider,
|
|
60
|
-
* });
|
|
61
|
-
* ```
|
|
62
|
-
*/ const getSolanaConnection = ({ networkProvider, commitmentOrConfig })=>{
|
|
63
|
-
return new web3_js.Connection(networkProvider.rpcUrls.http[0], commitmentOrConfig);
|
|
44
|
+
const isSolanaWalletAccount = (walletAccount)=>{
|
|
45
|
+
return walletAccount.chain === 'SOL';
|
|
64
46
|
};
|
|
65
47
|
|
|
66
|
-
const isSolanaNetworkProvider = (networkProvider)=>networkProvider.chain === 'SOL';
|
|
67
|
-
|
|
68
|
-
const isSolanaWalletAccount = (walletAccount)=>walletAccount.chain === 'SOL';
|
|
69
|
-
|
|
70
|
-
assertPackageVersion.assertPackageVersion(addSolanaWalletStandardExtension.name, addSolanaWalletStandardExtension.version);
|
|
71
|
-
|
|
72
|
-
exports.createSolanaNetworkProvider = addSolanaWalletStandardExtension.createSolanaNetworkProvider;
|
|
73
48
|
exports.NotSolanaProviderError = NotSolanaProviderError;
|
|
74
49
|
exports.addSolanaExtension = addSolanaExtension;
|
|
75
50
|
exports.getSigner = getSigner;
|
|
76
|
-
exports.getSolanaConnection = getSolanaConnection;
|
|
77
|
-
exports.isSolanaNetworkProvider = isSolanaNetworkProvider;
|
|
78
51
|
exports.isSolanaWalletAccount = isSolanaWalletAccount;
|
|
52
|
+
exports.isSolanaWalletProvider = isSolanaWalletProvider;
|
package/index.esm.js
CHANGED
|
@@ -1,17 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { a as addSolanaWalletStandardExtension, n as name, v as version } from './addSolanaWalletStandardExtension.esm.js';
|
|
3
|
-
export { c as createSolanaNetworkProvider } from './addSolanaWalletStandardExtension.esm.js';
|
|
4
|
-
import { getDefaultClient, getWalletProviderFromWalletAccount } from '@dynamic-labs-sdk/client/core';
|
|
1
|
+
import { a as addSolanaWalletStandardExtension } from './addSolanaWalletStandardExtension.esm.js';
|
|
5
2
|
import { BaseError } from '@dynamic-labs-sdk/client';
|
|
6
|
-
import {
|
|
3
|
+
import { getWalletProviderFromWalletAccount } from '@dynamic-labs-sdk/client/core';
|
|
7
4
|
import '@wallet-standard/app';
|
|
8
5
|
import '@dynamic-labs/sdk-api-core';
|
|
6
|
+
import '@solana/web3.js';
|
|
9
7
|
|
|
10
8
|
/**
|
|
11
9
|
* Adds all solana wallets to the client.
|
|
12
10
|
*
|
|
13
11
|
* @param client - The client to add the solana wallets to.
|
|
14
|
-
*/ const addSolanaExtension = (client
|
|
12
|
+
*/ const addSolanaExtension = (client)=>{
|
|
15
13
|
addSolanaWalletStandardExtension(client);
|
|
16
14
|
};
|
|
17
15
|
|
|
@@ -19,7 +17,6 @@ class NotSolanaProviderError extends BaseError {
|
|
|
19
17
|
constructor(params){
|
|
20
18
|
super({
|
|
21
19
|
cause: null,
|
|
22
|
-
code: 'not_solana_provider_error',
|
|
23
20
|
docsUrl: null,
|
|
24
21
|
name: 'NotSolanaProviderError',
|
|
25
22
|
shortMessage: 'Provider is not a Solana wallet provider'
|
|
@@ -32,10 +29,8 @@ const isSolanaWalletProvider = (provider)=>{
|
|
|
32
29
|
return provider.chain === 'SOL';
|
|
33
30
|
};
|
|
34
31
|
|
|
35
|
-
const getSigner = async (
|
|
36
|
-
const provider = getWalletProviderFromWalletAccount(
|
|
37
|
-
walletAccount
|
|
38
|
-
}, client);
|
|
32
|
+
const getSigner = async (walletAccount)=>{
|
|
33
|
+
const provider = getWalletProviderFromWalletAccount(walletAccount);
|
|
39
34
|
if (!isSolanaWalletProvider(provider)) {
|
|
40
35
|
throw new NotSolanaProviderError({
|
|
41
36
|
providerKey: provider.key
|
|
@@ -44,28 +39,8 @@ const getSigner = async ({ walletAccount }, client = getDefaultClient())=>{
|
|
|
44
39
|
return provider.getSigner(walletAccount);
|
|
45
40
|
};
|
|
46
41
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
*
|
|
50
|
-
* @example
|
|
51
|
-
* ```ts
|
|
52
|
-
* import { getNetworkProviders } from '@dynamic-labs-sdk/client';
|
|
53
|
-
* import { isSolanaNetworkProvider, getSolanaConnection } from '@dynamic-labs-sdk/solana';
|
|
54
|
-
*
|
|
55
|
-
* const [solanaNetorkProvider] = getNetworkProviders().filter(isSolanaNetworkProvider)
|
|
56
|
-
*
|
|
57
|
-
* const connection = getSolanaConnection({
|
|
58
|
-
* networkProvider: solanaNetorkProvider,
|
|
59
|
-
* });
|
|
60
|
-
* ```
|
|
61
|
-
*/ const getSolanaConnection = ({ networkProvider, commitmentOrConfig })=>{
|
|
62
|
-
return new Connection(networkProvider.rpcUrls.http[0], commitmentOrConfig);
|
|
42
|
+
const isSolanaWalletAccount = (walletAccount)=>{
|
|
43
|
+
return walletAccount.chain === 'SOL';
|
|
63
44
|
};
|
|
64
45
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
const isSolanaWalletAccount = (walletAccount)=>walletAccount.chain === 'SOL';
|
|
68
|
-
|
|
69
|
-
assertPackageVersion(name, version);
|
|
70
|
-
|
|
71
|
-
export { NotSolanaProviderError, addSolanaExtension, getSigner, getSolanaConnection, isSolanaNetworkProvider, isSolanaWalletAccount };
|
|
46
|
+
export { NotSolanaProviderError, addSolanaExtension, getSigner, isSolanaWalletAccount, isSolanaWalletProvider };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs-sdk/solana",
|
|
3
|
-
"version": "0.0.1-alpha.
|
|
3
|
+
"version": "0.0.1-alpha.6",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./index.cjs.js",
|
|
6
6
|
"module": "./index.esm.js",
|
|
@@ -19,14 +19,13 @@
|
|
|
19
19
|
}
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@dynamic-labs-sdk/
|
|
23
|
-
"@dynamic-labs-
|
|
24
|
-
"@dynamic-labs/sdk-api-core": "^0.0.762",
|
|
22
|
+
"@dynamic-labs-sdk/client": "0.0.1-alpha.6",
|
|
23
|
+
"@dynamic-labs/sdk-api-core": "0.0.630",
|
|
25
24
|
"@solana/web3.js": "1.98.1",
|
|
26
25
|
"@wallet-standard/app": "1.0.1",
|
|
27
26
|
"@wallet-standard/base": "1.0.1",
|
|
28
|
-
"@wallet-standard/experimental-features": "0.1.1",
|
|
29
27
|
"@wallet-standard/features": "1.0.3",
|
|
28
|
+
"@wallet-standard/experimental-features": "0.1.1",
|
|
30
29
|
"eventemitter3": "^5.0.1"
|
|
31
30
|
}
|
|
32
31
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import type { WalletAccount } from '@dynamic-labs-sdk/client';
|
|
5
5
|
import type { WalletProvider } from '@dynamic-labs-sdk/client/core';
|
|
6
6
|
import type { SolanaSigner } from './SolanaSigner.types';
|
|
7
|
-
export type SolanaWalletProvider = WalletProvider & {
|
|
7
|
+
export type SolanaWalletProvider = Omit<WalletProvider, 'chain'> & {
|
|
8
8
|
chain: 'SOL';
|
|
9
9
|
getSigner(walletAccount?: WalletAccount): Promise<SolanaSigner>;
|
|
10
10
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolanaWalletProvider.types.d.ts","sourceRoot":"","sources":["../../../../packages/solana/src/SolanaWalletProvider.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,MAAM,MAAM,oBAAoB,GAAG,cAAc,GAAG;
|
|
1
|
+
{"version":3,"file":"SolanaWalletProvider.types.d.ts","sourceRoot":"","sources":["../../../../packages/solana/src/SolanaWalletProvider.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,GAAG;IACjE,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,CAAC,aAAa,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CACjE,CAAC"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import type { DynamicClient } from '@dynamic-labs-sdk/client';
|
|
1
2
|
/**
|
|
2
3
|
* Adds all solana wallets to the client.
|
|
3
4
|
*
|
|
4
5
|
* @param client - The client to add the solana wallets to.
|
|
5
6
|
*/
|
|
6
|
-
export declare const addSolanaExtension: (client
|
|
7
|
+
export declare const addSolanaExtension: (client: DynamicClient) => void;
|
|
7
8
|
//# sourceMappingURL=addSolanaExtension.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addSolanaExtension.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/addSolanaExtension/addSolanaExtension.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"addSolanaExtension.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/addSolanaExtension/addSolanaExtension.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAI9D;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,WAAY,aAAa,KAAG,IAE1D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotSolanaProviderError.d.ts","sourceRoot":"","sources":["../../../../../../packages/solana/src/errors/NotSolanaProviderError/NotSolanaProviderError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD,qBAAa,sBAAuB,SAAQ,SAAS;IACnD,SAAgB,WAAW,EAAE,MAAM,CAAC;gBAExB,MAAM,EAAE;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE;
|
|
1
|
+
{"version":3,"file":"NotSolanaProviderError.d.ts","sourceRoot":"","sources":["../../../../../../packages/solana/src/errors/NotSolanaProviderError/NotSolanaProviderError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD,qBAAa,sBAAuB,SAAQ,SAAS;IACnD,SAAgB,WAAW,EAAE,MAAM,CAAC;gBAExB,MAAM,EAAE;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE;CAU5C"}
|
package/src/exports/index.d.ts
CHANGED
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
export { addSolanaExtension } from '../addSolanaExtension';
|
|
2
2
|
export { NotSolanaProviderError } from '../errors/NotSolanaProviderError';
|
|
3
3
|
export { getSigner } from '../getSigner';
|
|
4
|
-
export { getSolanaConnection } from '../getSolanaConnection';
|
|
5
|
-
export { isSolanaNetworkProvider } from '../isSolanaNetworkProvider';
|
|
6
4
|
export { isSolanaWalletAccount } from '../isSolanaWalletAccount';
|
|
7
|
-
export
|
|
8
|
-
export type { SolanaWalletAccount } from '../SolanaWalletAccount.types';
|
|
9
|
-
export { createSolanaNetworkProvider } from '../utils/createSolanaNetworkProvider';
|
|
5
|
+
export { isSolanaWalletProvider } from '../isSolanaWalletProvider';
|
|
10
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/exports/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/exports/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"walletStandard.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/exports/walletStandard.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"walletStandard.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/exports/walletStandard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,oDAAoD,CAAC"}
|
|
@@ -1,7 +1,3 @@
|
|
|
1
1
|
import type { WalletAccount } from '@dynamic-labs-sdk/client';
|
|
2
|
-
|
|
3
|
-
walletAccount: WalletAccount;
|
|
4
|
-
};
|
|
5
|
-
export declare const getSigner: ({ walletAccount }: GetSignerParams, client?: any) => Promise<any>;
|
|
6
|
-
export {};
|
|
2
|
+
export declare const getSigner: (walletAccount: WalletAccount) => Promise<import("../SolanaSigner.types").SolanaSigner>;
|
|
7
3
|
//# sourceMappingURL=getSigner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getSigner.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/getSigner/getSigner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"getSigner.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/getSigner/getSigner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAM9D,eAAO,MAAM,SAAS,kBAAyB,aAAa,0DAQ3D,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import type { WalletAccount } from '@dynamic-labs-sdk/client';
|
|
2
|
-
|
|
3
|
-
export declare const isSolanaWalletAccount: (walletAccount: WalletAccount) => walletAccount is SolanaWalletAccount;
|
|
2
|
+
export declare const isSolanaWalletAccount: (walletAccount: WalletAccount) => boolean;
|
|
4
3
|
//# sourceMappingURL=isSolanaWalletAccount.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isSolanaWalletAccount.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/isSolanaWalletAccount/isSolanaWalletAccount.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,
|
|
1
|
+
{"version":3,"file":"isSolanaWalletAccount.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/isSolanaWalletAccount/isSolanaWalletAccount.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,eAAO,MAAM,qBAAqB,kBACjB,aAAa,KAC3B,OAEF,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { WalletProvider } from '@dynamic-labs-sdk/client
|
|
1
|
+
import type { WalletProvider } from '@dynamic-labs-sdk/client';
|
|
2
2
|
import type { SolanaWalletProvider } from '../SolanaWalletProvider.types';
|
|
3
3
|
export declare const isSolanaWalletProvider: (provider: WalletProvider) => provider is SolanaWalletProvider;
|
|
4
4
|
//# sourceMappingURL=isSolanaWalletProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isSolanaWalletProvider.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/isSolanaWalletProvider/isSolanaWalletProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"isSolanaWalletProvider.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/isSolanaWalletProvider/isSolanaWalletProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAE1E,eAAO,MAAM,sBAAsB,aACvB,cAAc,KACvB,QAAQ,IAAI,oBAEd,CAAC"}
|
package/src/walletStandard/addSolanaWalletStandardExtension/addSolanaWalletStandardExtension.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { DynamicClient } from '@dynamic-labs-sdk/client';
|
|
1
2
|
export declare const SOLANA_WALLET_STANDARD_EXTENSION_KEY = "solanaWalletStandard";
|
|
2
|
-
export declare const addSolanaWalletStandardExtension: (client
|
|
3
|
+
export declare const addSolanaWalletStandardExtension: (client: DynamicClient) => void;
|
|
3
4
|
//# sourceMappingURL=addSolanaWalletStandardExtension.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addSolanaWalletStandardExtension.d.ts","sourceRoot":"","sources":["../../../../../../packages/solana/src/walletStandard/addSolanaWalletStandardExtension/addSolanaWalletStandardExtension.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"addSolanaWalletStandardExtension.d.ts","sourceRoot":"","sources":["../../../../../../packages/solana/src/walletStandard/addSolanaWalletStandardExtension/addSolanaWalletStandardExtension.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAY9D,eAAO,MAAM,oCAAoC,yBAAyB,CAAC;AAE3E,eAAO,MAAM,gCAAgC,WACnC,aAAa,KACpB,IAwBF,CAAC"}
|
|
@@ -1,10 +1,4 @@
|
|
|
1
1
|
import type { Wallet } from '@wallet-standard/base';
|
|
2
|
-
import type { SolanaNetworkProvider } from '../../../SolanaNetworkProvider.types';
|
|
3
2
|
import type { SolanaSigner } from '../../../SolanaSigner.types';
|
|
4
|
-
|
|
5
|
-
networkProvider: SolanaNetworkProvider;
|
|
6
|
-
walletStandardWallet: Wallet;
|
|
7
|
-
};
|
|
8
|
-
export declare const createSolanaSignerFromSolanaStandardWallet: ({ networkProvider, walletStandardWallet, }: CreateSolanaSignerFromSolanaStandardWalletParams) => SolanaSigner;
|
|
9
|
-
export {};
|
|
3
|
+
export declare const createSolanaSignerFromSolanaStandardWallet: (wallet: Wallet) => SolanaSigner;
|
|
10
4
|
//# sourceMappingURL=createSolanaSignerFromSolanaStandardWallet.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSolanaSignerFromSolanaStandardWallet.d.ts","sourceRoot":"","sources":["../../../../../../../packages/solana/src/walletStandard/utils/createSolanaSignerFromSolanaStandardWallet/createSolanaSignerFromSolanaStandardWallet.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAGpD,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"createSolanaSignerFromSolanaStandardWallet.d.ts","sourceRoot":"","sources":["../../../../../../../packages/solana/src/walletStandard/utils/createSolanaSignerFromSolanaStandardWallet/createSolanaSignerFromSolanaStandardWallet.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAGpD,OAAO,KAAK,EAAgB,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAI9E,eAAO,MAAM,0CAA0C,WAC7C,MAAM,KACb,YA0OF,CAAC"}
|
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type { Wallet as WalletStandardWallet } from '@wallet-standard/base';
|
|
1
|
+
import type { Wallet } from '@wallet-standard/base';
|
|
3
2
|
import type { SolanaWalletProvider } from '../../../SolanaWalletProvider.types';
|
|
4
3
|
type CreateWalletProviderFromSolanaStandardWalletParams = {
|
|
5
|
-
|
|
6
|
-
walletStandardWallet: WalletStandardWallet;
|
|
4
|
+
wallet: Wallet;
|
|
7
5
|
};
|
|
8
|
-
export declare const createWalletProviderFromSolanaStandardWallet: ({
|
|
6
|
+
export declare const createWalletProviderFromSolanaStandardWallet: ({ wallet, }: CreateWalletProviderFromSolanaStandardWalletParams) => SolanaWalletProvider;
|
|
9
7
|
export {};
|
|
10
8
|
//# sourceMappingURL=createWalletProviderFromSolanaStandardWallet.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createWalletProviderFromSolanaStandardWallet.d.ts","sourceRoot":"","sources":["../../../../../../../packages/solana/src/walletStandard/utils/createWalletProviderFromSolanaStandardWallet/createWalletProviderFromSolanaStandardWallet.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"createWalletProviderFromSolanaStandardWallet.d.ts","sourceRoot":"","sources":["../../../../../../../packages/solana/src/walletStandard/utils/createWalletProviderFromSolanaStandardWallet/createWalletProviderFromSolanaStandardWallet.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAGhF,KAAK,kDAAkD,GAAG;IACxD,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,eAAO,MAAM,4CAA4C,gBAEtD,kDAAkD,KAAG,oBA2GvD,CAAC"}
|
package/walletStandard.cjs.js
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var assertPackageVersion = require('@dynamic-labs-sdk/assert-package-version');
|
|
4
3
|
var addSolanaWalletStandardExtension = require('./addSolanaWalletStandardExtension.cjs.js');
|
|
5
4
|
require('@dynamic-labs-sdk/client/core');
|
|
6
5
|
require('@wallet-standard/app');
|
|
7
|
-
require('@solana/web3.js');
|
|
8
6
|
require('@dynamic-labs-sdk/client');
|
|
9
7
|
require('@dynamic-labs/sdk-api-core');
|
|
8
|
+
require('@solana/web3.js');
|
|
9
|
+
|
|
10
10
|
|
|
11
|
-
assertPackageVersion.assertPackageVersion(addSolanaWalletStandardExtension.name, addSolanaWalletStandardExtension.version);
|
|
12
11
|
|
|
13
12
|
exports.addSolanaWalletStandardExtension = addSolanaWalletStandardExtension.addSolanaWalletStandardExtension;
|
package/walletStandard.esm.js
CHANGED
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
import { assertPackageVersion } from '@dynamic-labs-sdk/assert-package-version';
|
|
2
|
-
import { n as name, v as version } from './addSolanaWalletStandardExtension.esm.js';
|
|
3
1
|
export { a as addSolanaWalletStandardExtension } from './addSolanaWalletStandardExtension.esm.js';
|
|
4
2
|
import '@dynamic-labs-sdk/client/core';
|
|
5
3
|
import '@wallet-standard/app';
|
|
6
|
-
import '@solana/web3.js';
|
|
7
4
|
import '@dynamic-labs-sdk/client';
|
|
8
5
|
import '@dynamic-labs/sdk-api-core';
|
|
9
|
-
|
|
10
|
-
assertPackageVersion(name, version);
|
|
6
|
+
import '@solana/web3.js';
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { BaseNetworkProvider } from '@dynamic-labs-sdk/client/core';
|
|
2
|
-
export type SolanaNetworkProvider = BaseNetworkProvider<'SOL'>;
|
|
3
|
-
declare global {
|
|
4
|
-
interface NetworkProviderMap {
|
|
5
|
-
SOL: SolanaNetworkProvider;
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=SolanaNetworkProvider.types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SolanaNetworkProvider.types.d.ts","sourceRoot":"","sources":["../../../../packages/solana/src/SolanaNetworkProvider.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,MAAM,MAAM,qBAAqB,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;AAE/D,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,kBAAkB;QAC1B,GAAG,EAAE,qBAAqB,CAAC;KAC5B;CACF"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { BaseWalletAccount } from '@dynamic-labs-sdk/client/core';
|
|
2
|
-
export type SolanaWalletAccount = BaseWalletAccount<'SOL'>;
|
|
3
|
-
declare global {
|
|
4
|
-
interface WalletAccountMap {
|
|
5
|
-
SOL: SolanaWalletAccount;
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=SolanaWalletAccount.types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SolanaWalletAccount.types.d.ts","sourceRoot":"","sources":["../../../../packages/solana/src/SolanaWalletAccount.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAEvE,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;AAE3D,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,gBAAgB;QACxB,GAAG,EAAE,mBAAmB,CAAC;KAC1B;CACF"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import type { Commitment, ConnectionConfig } from '@solana/web3.js';
|
|
2
|
-
import { Connection } from '@solana/web3.js';
|
|
3
|
-
import type { SolanaNetworkProvider } from '../SolanaNetworkProvider.types';
|
|
4
|
-
type GetSolanaConnectionOptions = {
|
|
5
|
-
commitmentOrConfig?: Commitment | ConnectionConfig;
|
|
6
|
-
networkProvider: SolanaNetworkProvider;
|
|
7
|
-
};
|
|
8
|
-
/**
|
|
9
|
-
* Returns a new Solana connection for the given network provider.
|
|
10
|
-
*
|
|
11
|
-
* @example
|
|
12
|
-
* ```ts
|
|
13
|
-
* import { getNetworkProviders } from '@dynamic-labs-sdk/client';
|
|
14
|
-
* import { isSolanaNetworkProvider, getSolanaConnection } from '@dynamic-labs-sdk/solana';
|
|
15
|
-
*
|
|
16
|
-
* const [solanaNetorkProvider] = getNetworkProviders().filter(isSolanaNetworkProvider)
|
|
17
|
-
*
|
|
18
|
-
* const connection = getSolanaConnection({
|
|
19
|
-
* networkProvider: solanaNetorkProvider,
|
|
20
|
-
* });
|
|
21
|
-
* ```
|
|
22
|
-
*/
|
|
23
|
-
export declare const getSolanaConnection: ({ networkProvider, commitmentOrConfig, }: GetSolanaConnectionOptions) => Connection;
|
|
24
|
-
export {};
|
|
25
|
-
//# sourceMappingURL=getSolanaConnection.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getSolanaConnection.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/getSolanaConnection/getSolanaConnection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAE5E,KAAK,0BAA0B,GAAG;IAChC,kBAAkB,CAAC,EAAE,UAAU,GAAG,gBAAgB,CAAC;IACnD,eAAe,EAAE,qBAAqB,CAAC;CACxC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,mBAAmB,6CAG7B,0BAA0B,eAE5B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/getSolanaConnection/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/isSolanaNetworkProvider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { NetworkProvider } from '@dynamic-labs-sdk/client';
|
|
2
|
-
import type { SolanaNetworkProvider } from '../SolanaNetworkProvider.types';
|
|
3
|
-
export declare const isSolanaNetworkProvider: (networkProvider: NetworkProvider) => networkProvider is SolanaNetworkProvider;
|
|
4
|
-
//# sourceMappingURL=isSolanaNetworkProvider.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"isSolanaNetworkProvider.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/isSolanaNetworkProvider/isSolanaNetworkProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAE5E,eAAO,MAAM,uBAAuB,oBACjB,eAAe,KAC/B,eAAe,IAAI,qBAAwD,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/registerSolanaNetworkProviderBuilder/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oCAAoC,EAAE,MAAM,wCAAwC,CAAC"}
|
package/src/registerSolanaNetworkProviderBuilder/registerSolanaNetworkProviderBuilder.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"registerSolanaNetworkProviderBuilder.d.ts","sourceRoot":"","sources":["../../../../../packages/solana/src/registerSolanaNetworkProviderBuilder/registerSolanaNetworkProviderBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAK9D,eAAO,MAAM,oCAAoC,WACvC,aAAa,KACpB,IAeF,CAAC"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { NetworkData } from '@dynamic-labs-sdk/client';
|
|
2
|
-
import type { SolanaNetworkProvider } from '../../SolanaNetworkProvider.types';
|
|
3
|
-
export declare const createSolanaNetworkProvider: (networkData: NetworkData) => SolanaNetworkProvider;
|
|
4
|
-
//# sourceMappingURL=createSolanaNetworkProvider.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createSolanaNetworkProvider.d.ts","sourceRoot":"","sources":["../../../../../../packages/solana/src/utils/createSolanaNetworkProvider/createSolanaNetworkProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAG/E,eAAO,MAAM,2BAA2B,gBACzB,WAAW,KACvB,qBAQD,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/solana/src/utils/createSolanaNetworkProvider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fetchSolBalance.d.ts","sourceRoot":"","sources":["../../../../../../packages/solana/src/utils/fetchSolBalance/fetchSolBalance.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,yBAGzB;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB,KAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAgBxB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/solana/src/utils/fetchSolBalance/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { SolanaWalletProvider } from '../../../../SolanaWalletProvider.types';
|
|
2
|
-
type GetActiveNetworkId = SolanaWalletProvider['getActiveNetworkId'];
|
|
3
|
-
export declare const getActiveNetworkId: GetActiveNetworkId;
|
|
4
|
-
export {};
|
|
5
|
-
//# sourceMappingURL=getActiveNetworkId.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getActiveNetworkId.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/solana/src/walletStandard/utils/createWalletProviderFromSolanaStandardWallet/getActiveNetworkId/getActiveNetworkId.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAEnF,KAAK,kBAAkB,GAAG,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;AAErE,eAAO,MAAM,kBAAkB,EAAE,kBAEhC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/solana/src/walletStandard/utils/createWalletProviderFromSolanaStandardWallet/getActiveNetworkId/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"}
|