@dynamic-labs/solana 4.88.4 → 4.88.5
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 +9 -0
- package/package.cjs +1 -1
- package/package.js +1 -1
- package/package.json +13 -13
- package/src/index.cjs +1 -0
- package/src/index.js +1 -0
- package/src/injected/fetchInjectedWalletConnectors.cjs +24 -1
- package/src/injected/fetchInjectedWalletConnectors.js +24 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
|
|
2
|
+
### [4.88.5](https://github.com/dynamic-labs/dynamic-auth/compare/v4.88.4...v4.88.5) (2026-06-11)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Bug Fixes
|
|
6
|
+
|
|
7
|
+
* **fix(webview):** fix issue where stepupauth is enabled and after it's completed the export private key window doesn't show up automatically
|
|
8
|
+
* **fix(global-wallet):** correctly sign ethereum messages ([#11548](https://github.com/dynamic-labs/dynamic-auth/issues/11548))
|
|
9
|
+
|
|
10
|
+
|
|
2
11
|
### [4.88.4](https://github.com/dynamic-labs/dynamic-auth/compare/v4.88.3...v4.88.4) (2026-06-10)
|
|
3
12
|
|
|
4
13
|
|
package/package.cjs
CHANGED
package/package.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/solana",
|
|
3
|
-
"version": "4.88.
|
|
3
|
+
"version": "4.88.5",
|
|
4
4
|
"description": "A React SDK for implementing wallet web3 authentication and authorization to your website.",
|
|
5
5
|
"author": "Dynamic Labs, Inc.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
},
|
|
19
19
|
"homepage": "https://www.dynamic.xyz/",
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@dynamic-labs/wallet-connect": "4.88.
|
|
22
|
-
"@dynamic-labs-connectors/metamask-solana": "4.6.
|
|
21
|
+
"@dynamic-labs/wallet-connect": "4.88.5",
|
|
22
|
+
"@dynamic-labs-connectors/metamask-solana": "4.6.8",
|
|
23
23
|
"@solana/web3.js": "1.98.1",
|
|
24
24
|
"@wallet-standard/app": "1.0.1",
|
|
25
25
|
"@wallet-standard/base": "1.0.1",
|
|
@@ -30,17 +30,17 @@
|
|
|
30
30
|
"@walletconnect/sign-client": "2.21.5",
|
|
31
31
|
"@walletconnect/utils": "2.21.5",
|
|
32
32
|
"@walletconnect/types": "2.21.5",
|
|
33
|
-
"@dynamic-labs/assert-package-version": "4.88.
|
|
34
|
-
"@dynamic-labs/embedded-wallet-solana": "4.88.
|
|
35
|
-
"@dynamic-labs/logger": "4.88.
|
|
36
|
-
"@dynamic-labs/rpc-providers": "4.88.
|
|
33
|
+
"@dynamic-labs/assert-package-version": "4.88.5",
|
|
34
|
+
"@dynamic-labs/embedded-wallet-solana": "4.88.5",
|
|
35
|
+
"@dynamic-labs/logger": "4.88.5",
|
|
36
|
+
"@dynamic-labs/rpc-providers": "4.88.5",
|
|
37
37
|
"@dynamic-labs/sdk-api-core": "0.0.1015",
|
|
38
|
-
"@dynamic-labs/solana-core": "4.88.
|
|
39
|
-
"@dynamic-labs/types": "4.88.
|
|
40
|
-
"@dynamic-labs/utils": "4.88.
|
|
41
|
-
"@dynamic-labs/waas-svm": "4.88.
|
|
42
|
-
"@dynamic-labs/wallet-book": "4.88.
|
|
43
|
-
"@dynamic-labs/wallet-connector-core": "4.88.
|
|
38
|
+
"@dynamic-labs/solana-core": "4.88.5",
|
|
39
|
+
"@dynamic-labs/types": "4.88.5",
|
|
40
|
+
"@dynamic-labs/utils": "4.88.5",
|
|
41
|
+
"@dynamic-labs/waas-svm": "4.88.5",
|
|
42
|
+
"@dynamic-labs/wallet-book": "4.88.5",
|
|
43
|
+
"@dynamic-labs/wallet-connector-core": "4.88.5",
|
|
44
44
|
"eventemitter3": "5.0.1"
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {}
|
package/src/index.cjs
CHANGED
|
@@ -17,6 +17,7 @@ require('@dynamic-labs/wallet-book');
|
|
|
17
17
|
require('@dynamic-labs/wallet-connector-core');
|
|
18
18
|
require('@dynamic-labs/utils');
|
|
19
19
|
require('./CoinbaseSolana/CoinbaseSolana.cjs');
|
|
20
|
+
require('./Phantom/Phantom.cjs');
|
|
20
21
|
require('./Solflare/Solflare.cjs');
|
|
21
22
|
require('./utils/logger.cjs');
|
|
22
23
|
var createSolanaSignerFromWalletStandard = require('./injected/walletStandard/createSolanaSignerFromWalletStandard/createSolanaSignerFromWalletStandard.cjs');
|
package/src/index.js
CHANGED
|
@@ -13,6 +13,7 @@ import '@dynamic-labs/wallet-book';
|
|
|
13
13
|
import '@dynamic-labs/wallet-connector-core';
|
|
14
14
|
import '@dynamic-labs/utils';
|
|
15
15
|
import './CoinbaseSolana/CoinbaseSolana.js';
|
|
16
|
+
import './Phantom/Phantom.js';
|
|
16
17
|
import './Solflare/Solflare.js';
|
|
17
18
|
import './utils/logger.js';
|
|
18
19
|
export { createSolanaSignerFromWalletStandard } from './injected/walletStandard/createSolanaSignerFromWalletStandard/createSolanaSignerFromWalletStandard.js';
|
|
@@ -7,6 +7,7 @@ var walletBook = require('@dynamic-labs/wallet-book');
|
|
|
7
7
|
var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
|
|
8
8
|
var utils = require('@dynamic-labs/utils');
|
|
9
9
|
var CoinbaseSolana = require('../CoinbaseSolana/CoinbaseSolana.cjs');
|
|
10
|
+
var Phantom = require('../Phantom/Phantom.cjs');
|
|
10
11
|
var Solflare = require('../Solflare/Solflare.cjs');
|
|
11
12
|
var logger = require('../utils/logger.cjs');
|
|
12
13
|
var getConnectorConstructorInjectedWallet = require('../utils/getConnectorConstructorInjectedWallet/getConnectorConstructorInjectedWallet.cjs');
|
|
@@ -39,6 +40,18 @@ const walletsWithCustomConnectors = [
|
|
|
39
40
|
'solflare',
|
|
40
41
|
'metamasksol',
|
|
41
42
|
];
|
|
43
|
+
// Maps the wallet-standard name each override wallet registers with to its
|
|
44
|
+
// custom connector. Wallets in this map are rejected by
|
|
45
|
+
// shouldAddWalletStandardConnector, so when one registers late (e.g. on
|
|
46
|
+
// prerendered pages where extensions inject after the SDK snapshot) its
|
|
47
|
+
// connector entry would otherwise keep a stale isInstalledOnBrowser=false
|
|
48
|
+
// forever; re-emitting the override constructor refreshes it.
|
|
49
|
+
const injectedWalletOverridesByWalletStandardName = {
|
|
50
|
+
Backpack: BackpackSol.BackpackSol,
|
|
51
|
+
'Coinbase Wallet': CoinbaseSolana.CoinbaseSolana,
|
|
52
|
+
Phantom: Phantom.Phantom,
|
|
53
|
+
Solflare: Solflare.Solflare,
|
|
54
|
+
};
|
|
42
55
|
const shouldAddWalletStandardConnector = (wallet, walletBook, authMode) => {
|
|
43
56
|
var _a;
|
|
44
57
|
const { name } = wallet;
|
|
@@ -96,6 +109,15 @@ const setupSolanaWalletStandardDiscovery = (walletBook, authMode) => {
|
|
|
96
109
|
if (discoveredWallets.has(wallet.name)) {
|
|
97
110
|
return;
|
|
98
111
|
}
|
|
112
|
+
const overrideConstructor = injectedWalletOverridesByWalletStandardName[wallet.name];
|
|
113
|
+
if (overrideConstructor) {
|
|
114
|
+
discoveredWallets.add(wallet.name);
|
|
115
|
+
logger.logger.logVerboseTroubleshootingMessage('[SOL fetchInjectedWalletConnectors] Emitting providerInjected for late-registered custom connector wallet', wallet.name);
|
|
116
|
+
walletConnectorCore.walletConnectorEvents.emit('providerInjected', {
|
|
117
|
+
injectedConnectorConstructor: overrideConstructor,
|
|
118
|
+
});
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
99
121
|
if (!shouldAddWalletStandardConnector(wallet, walletBook, authMode)) {
|
|
100
122
|
return;
|
|
101
123
|
}
|
|
@@ -107,7 +129,8 @@ const setupSolanaWalletStandardDiscovery = (walletBook, authMode) => {
|
|
|
107
129
|
// fetchInjectedWalletConnectors, so seed them as discovered (no emit needed);
|
|
108
130
|
// the listener and poll then only fire for wallets that appear afterwards.
|
|
109
131
|
initialWallets.forEach((wallet) => {
|
|
110
|
-
if (
|
|
132
|
+
if (injectedWalletOverridesByWalletStandardName[wallet.name] ||
|
|
133
|
+
shouldAddWalletStandardConnector(wallet, walletBook, authMode)) {
|
|
111
134
|
discoveredWallets.add(wallet.name);
|
|
112
135
|
}
|
|
113
136
|
});
|
|
@@ -3,6 +3,7 @@ import { findWalletBookWalletByNameAndChain } from '@dynamic-labs/wallet-book';
|
|
|
3
3
|
import { getWalletMetadataFromWalletBook, walletConnectorEvents } from '@dynamic-labs/wallet-connector-core';
|
|
4
4
|
import { sanitizeName } from '@dynamic-labs/utils';
|
|
5
5
|
import { CoinbaseSolana } from '../CoinbaseSolana/CoinbaseSolana.js';
|
|
6
|
+
import { Phantom } from '../Phantom/Phantom.js';
|
|
6
7
|
import { Solflare } from '../Solflare/Solflare.js';
|
|
7
8
|
import { logger } from '../utils/logger.js';
|
|
8
9
|
import { getConnectorConstructorInjectedWallet } from '../utils/getConnectorConstructorInjectedWallet/getConnectorConstructorInjectedWallet.js';
|
|
@@ -35,6 +36,18 @@ const walletsWithCustomConnectors = [
|
|
|
35
36
|
'solflare',
|
|
36
37
|
'metamasksol',
|
|
37
38
|
];
|
|
39
|
+
// Maps the wallet-standard name each override wallet registers with to its
|
|
40
|
+
// custom connector. Wallets in this map are rejected by
|
|
41
|
+
// shouldAddWalletStandardConnector, so when one registers late (e.g. on
|
|
42
|
+
// prerendered pages where extensions inject after the SDK snapshot) its
|
|
43
|
+
// connector entry would otherwise keep a stale isInstalledOnBrowser=false
|
|
44
|
+
// forever; re-emitting the override constructor refreshes it.
|
|
45
|
+
const injectedWalletOverridesByWalletStandardName = {
|
|
46
|
+
Backpack: BackpackSol,
|
|
47
|
+
'Coinbase Wallet': CoinbaseSolana,
|
|
48
|
+
Phantom: Phantom,
|
|
49
|
+
Solflare: Solflare,
|
|
50
|
+
};
|
|
38
51
|
const shouldAddWalletStandardConnector = (wallet, walletBook, authMode) => {
|
|
39
52
|
var _a;
|
|
40
53
|
const { name } = wallet;
|
|
@@ -92,6 +105,15 @@ const setupSolanaWalletStandardDiscovery = (walletBook, authMode) => {
|
|
|
92
105
|
if (discoveredWallets.has(wallet.name)) {
|
|
93
106
|
return;
|
|
94
107
|
}
|
|
108
|
+
const overrideConstructor = injectedWalletOverridesByWalletStandardName[wallet.name];
|
|
109
|
+
if (overrideConstructor) {
|
|
110
|
+
discoveredWallets.add(wallet.name);
|
|
111
|
+
logger.logVerboseTroubleshootingMessage('[SOL fetchInjectedWalletConnectors] Emitting providerInjected for late-registered custom connector wallet', wallet.name);
|
|
112
|
+
walletConnectorEvents.emit('providerInjected', {
|
|
113
|
+
injectedConnectorConstructor: overrideConstructor,
|
|
114
|
+
});
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
95
117
|
if (!shouldAddWalletStandardConnector(wallet, walletBook, authMode)) {
|
|
96
118
|
return;
|
|
97
119
|
}
|
|
@@ -103,7 +125,8 @@ const setupSolanaWalletStandardDiscovery = (walletBook, authMode) => {
|
|
|
103
125
|
// fetchInjectedWalletConnectors, so seed them as discovered (no emit needed);
|
|
104
126
|
// the listener and poll then only fire for wallets that appear afterwards.
|
|
105
127
|
initialWallets.forEach((wallet) => {
|
|
106
|
-
if (
|
|
128
|
+
if (injectedWalletOverridesByWalletStandardName[wallet.name] ||
|
|
129
|
+
shouldAddWalletStandardConnector(wallet, walletBook, authMode)) {
|
|
107
130
|
discoveredWallets.add(wallet.name);
|
|
108
131
|
}
|
|
109
132
|
});
|