@dynamic-labs/wallet-connector-core 5.11.0 → 5.12.1
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 +18 -0
- package/package.cjs +1 -1
- package/package.js +1 -1
- package/package.json +11 -11
- package/src/Wallet/Wallet.cjs +2 -1
- package/src/Wallet/Wallet.d.ts +4 -1
- package/src/Wallet/Wallet.js +2 -1
- package/src/WalletConnectorBase/WalletConnectorBase.d.ts +2 -0
- package/src/interfaces/IDynamicWaasConnector.d.ts +6 -4
- package/src/utils/walletConnectDeepLinks/walletConnectDeepLinks.cjs +5 -12
- package/src/utils/walletConnectDeepLinks/walletConnectDeepLinks.js +5 -12
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,22 @@
|
|
|
1
1
|
|
|
2
|
+
### [5.12.1](https://github.com/dynamic-labs/dynamic-auth/compare/v5.12.0...v5.12.1) (2026-10-20)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Bug Fixes
|
|
6
|
+
|
|
7
|
+
* rabby not using native rabby:// scheme when redirecting on android devices [main] ([#12541](https://github.com/dynamic-labs/dynamic-auth/issues/12541)) ([923a372](https://github.com/dynamic-labs/dynamic-auth/commit/923a3724eae5e82ef896de78641320b7320933df))
|
|
8
|
+
* **sui,ton:** sign serialized Sui txs without parsing; native TON balance for jetton sends ([#12503](https://github.com/dynamic-labs/dynamic-auth/issues/12503)) ([6a5bfd6](https://github.com/dynamic-labs/dynamic-auth/commit/6a5bfd6bd0118b8ed7ce079159c10ac47cade337))
|
|
9
|
+
|
|
10
|
+
## [5.12.0](https://github.com/dynamic-labs/dynamic-auth/compare/v5.11.0...v5.12.0) (2026-10-16)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Features
|
|
14
|
+
|
|
15
|
+
* **embedded-wallet-solana:** add getSolanaSponsorAddress ([#12517](https://github.com/dynamic-labs/dynamic-auth/issues/12517)) ([b95c550](https://github.com/dynamic-labs/dynamic-auth/commit/b95c550e3dab783b7ff0b019051a17b22ea44f97))
|
|
16
|
+
* **embedded-wallet:** show chain and wallet in private key export modal ([#12507](https://github.com/dynamic-labs/dynamic-auth/issues/12507)) ([4bfb6d6](https://github.com/dynamic-labs/dynamic-auth/commit/4bfb6d6168aac3f800792fde933e0597f288058f))
|
|
17
|
+
* **sdk-react-core:** send OTP purpose from step-up flows ([#12511](https://github.com/dynamic-labs/dynamic-auth/issues/12511)) ([0d2d8a3](https://github.com/dynamic-labs/dynamic-auth/commit/0d2d8a31058b3e75c71af7a34f459e2a3ddf383b)), closes [#12898](https://github.com/dynamic-labs/dynamic-auth/issues/12898) [#816](https://github.com/dynamic-labs/dynamic-auth/issues/816) [#203](https://github.com/dynamic-labs/dynamic-auth/issues/203) [#12512](https://github.com/dynamic-labs/dynamic-auth/issues/12512)
|
|
18
|
+
* **wallet-connect:** back WalletConnect storage with native secure storage on mobile ([#12515](https://github.com/dynamic-labs/dynamic-auth/issues/12515)) ([7b57903](https://github.com/dynamic-labs/dynamic-auth/commit/7b5790325fce707d73d591483a0130b960ed055c))
|
|
19
|
+
|
|
2
20
|
## [5.11.0](https://github.com/dynamic-labs/dynamic-auth/compare/v5.10.0...v5.11.0) (2026-10-14)
|
|
3
21
|
|
|
4
22
|
|
package/package.cjs
CHANGED
package/package.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/wallet-connector-core",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.12.1",
|
|
4
4
|
"description": "Core package for utilities and types for handling multiple wallet/chain support Dynamic SDK",
|
|
5
5
|
"author": "Dynamic Labs, Inc.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -18,17 +18,17 @@
|
|
|
18
18
|
},
|
|
19
19
|
"homepage": "https://www.dynamic.xyz/",
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@dynamic-labs-sdk/client": "1.
|
|
22
|
-
"@dynamic-labs/sdk-api-core": "0.
|
|
23
|
-
"@dynamic-labs-wallet/browser-wallet-client": "1.1.
|
|
24
|
-
"@dynamic-labs-wallet/core": "1.1.
|
|
21
|
+
"@dynamic-labs-sdk/client": "1.41.0",
|
|
22
|
+
"@dynamic-labs/sdk-api-core": "0.104.0",
|
|
23
|
+
"@dynamic-labs-wallet/browser-wallet-client": "1.1.43",
|
|
24
|
+
"@dynamic-labs-wallet/core": "1.1.43",
|
|
25
25
|
"@dynamic-labs-wallet/forward-mpc-client": "1.0.2",
|
|
26
|
-
"@dynamic-labs/assert-package-version": "5.
|
|
27
|
-
"@dynamic-labs/logger": "5.
|
|
28
|
-
"@dynamic-labs/rpc-providers": "5.
|
|
29
|
-
"@dynamic-labs/types": "5.
|
|
30
|
-
"@dynamic-labs/utils": "5.
|
|
31
|
-
"@dynamic-labs/wallet-book": "5.
|
|
26
|
+
"@dynamic-labs/assert-package-version": "5.12.1",
|
|
27
|
+
"@dynamic-labs/logger": "5.12.1",
|
|
28
|
+
"@dynamic-labs/rpc-providers": "5.12.1",
|
|
29
|
+
"@dynamic-labs/types": "5.12.1",
|
|
30
|
+
"@dynamic-labs/utils": "5.12.1",
|
|
31
|
+
"@dynamic-labs/wallet-book": "5.12.1",
|
|
32
32
|
"eventemitter3": "5.0.1"
|
|
33
33
|
},
|
|
34
34
|
"peerDependencies": {}
|
package/src/Wallet/Wallet.cjs
CHANGED
|
@@ -85,11 +85,12 @@ class Wallet extends types.BaseWallet {
|
|
|
85
85
|
* @returns A promise that resolves to the signature of the message as a string,
|
|
86
86
|
* or undefined if the message cannot be signed.
|
|
87
87
|
*/
|
|
88
|
-
signMessage(messageToSign) {
|
|
88
|
+
signMessage(messageToSign, options) {
|
|
89
89
|
return _tslib.__awaiter(this, void 0, void 0, function* () {
|
|
90
90
|
yield this.sync();
|
|
91
91
|
return this._connector.signMessage(messageToSign, {
|
|
92
92
|
address: this.address,
|
|
93
|
+
approvalQuorum: options === null || options === void 0 ? void 0 : options.approvalQuorum,
|
|
93
94
|
});
|
|
94
95
|
});
|
|
95
96
|
}
|
package/src/Wallet/Wallet.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ApprovalQuorumRequestContext } from '@dynamic-labs-wallet/core';
|
|
1
2
|
import type { BaseWalletProps } from '@dynamic-labs/types';
|
|
2
3
|
import { BaseWallet } from '@dynamic-labs/types';
|
|
3
4
|
import { InternalWalletConnector, NameServiceData, WalletConnector } from '../WalletConnectorBase';
|
|
@@ -55,7 +56,9 @@ export declare abstract class Wallet<T extends InternalWalletConnector = Interna
|
|
|
55
56
|
* @returns A promise that resolves to the signature of the message as a string,
|
|
56
57
|
* or undefined if the message cannot be signed.
|
|
57
58
|
*/
|
|
58
|
-
signMessage(messageToSign: string
|
|
59
|
+
signMessage(messageToSign: string, options?: {
|
|
60
|
+
approvalQuorum?: ApprovalQuorumRequestContext;
|
|
61
|
+
}): Promise<string | undefined>;
|
|
59
62
|
/**
|
|
60
63
|
* Switches the network that the wallet is connected to.
|
|
61
64
|
* @param networkChainId - The chain id of the network to switch to.
|
package/src/Wallet/Wallet.js
CHANGED
|
@@ -81,11 +81,12 @@ class Wallet extends BaseWallet {
|
|
|
81
81
|
* @returns A promise that resolves to the signature of the message as a string,
|
|
82
82
|
* or undefined if the message cannot be signed.
|
|
83
83
|
*/
|
|
84
|
-
signMessage(messageToSign) {
|
|
84
|
+
signMessage(messageToSign, options) {
|
|
85
85
|
return __awaiter(this, void 0, void 0, function* () {
|
|
86
86
|
yield this.sync();
|
|
87
87
|
return this._connector.signMessage(messageToSign, {
|
|
88
88
|
address: this.address,
|
|
89
|
+
approvalQuorum: options === null || options === void 0 ? void 0 : options.approvalQuorum,
|
|
89
90
|
});
|
|
90
91
|
});
|
|
91
92
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import EventEmitter from 'eventemitter3';
|
|
2
|
+
import type { ApprovalQuorumRequestContext } from '@dynamic-labs-wallet/core';
|
|
2
3
|
import type { LogoutReason } from '@dynamic-labs-sdk/client';
|
|
3
4
|
import { IChainRpcProviders } from '@dynamic-labs/rpc-providers';
|
|
4
5
|
import type { JwtVerifiedCredential, WalletAdditionalAddress } from '@dynamic-labs/sdk-api-core';
|
|
@@ -313,6 +314,7 @@ export declare abstract class WalletConnectorBase<C extends WalletConstructor<an
|
|
|
313
314
|
*/
|
|
314
315
|
signMessage(messageToSign: string, options?: {
|
|
315
316
|
address?: string;
|
|
317
|
+
approvalQuorum?: ApprovalQuorumRequestContext;
|
|
316
318
|
}): Promise<string | undefined>;
|
|
317
319
|
/**
|
|
318
320
|
* Returns the array of block explorer URLs available for the current network
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BitcoinConfig, GetWalletResponse, WalletRecoveryState } from '@dynamic-labs-wallet/browser-wallet-client';
|
|
2
|
-
import type { BusinessAccountActionRequired, BusinessAccountIntent } from '@dynamic-labs-wallet/core';
|
|
2
|
+
import type { ApprovalQuorumRequestContext, BusinessAccountActionRequired, BusinessAccountIntent } from '@dynamic-labs-wallet/core';
|
|
3
3
|
import { MFAAction, SignMessageContext, TokenScope, WaasPolicyRule } from '@dynamic-labs/sdk-api-core';
|
|
4
4
|
import { WalletConnectorBase } from '..';
|
|
5
5
|
interface GetMfaTokenFunction {
|
|
@@ -198,8 +198,9 @@ export interface IDynamicWaasConnector extends WalletConnectorBase {
|
|
|
198
198
|
cloudProviderAccessToken?: string;
|
|
199
199
|
mfaToken?: string;
|
|
200
200
|
}): Promise<void>;
|
|
201
|
-
signRawMessage({ accountAddress, context, message, password, }: {
|
|
201
|
+
signRawMessage({ accountAddress, approvalQuorum, context, message, password, }: {
|
|
202
202
|
accountAddress: string;
|
|
203
|
+
approvalQuorum?: ApprovalQuorumRequestContext;
|
|
203
204
|
context?: SignMessageContext;
|
|
204
205
|
message: string;
|
|
205
206
|
password?: string;
|
|
@@ -208,11 +209,12 @@ export interface IDynamicWaasConnector extends WalletConnectorBase {
|
|
|
208
209
|
accountAddress: string;
|
|
209
210
|
password?: string;
|
|
210
211
|
}): Promise<void>;
|
|
211
|
-
signMessageWithContext({ message, context, }: {
|
|
212
|
+
signMessageWithContext({ message, approvalQuorum, context, }: {
|
|
212
213
|
message: string | {
|
|
213
214
|
raw: string;
|
|
214
215
|
};
|
|
215
|
-
|
|
216
|
+
approvalQuorum?: ApprovalQuorumRequestContext;
|
|
217
|
+
context?: SignMessageContext;
|
|
216
218
|
}): Promise<string>;
|
|
217
219
|
/**
|
|
218
220
|
* @param forceRebuild when true, drop the cached client and rebuild it with
|
|
@@ -6,14 +6,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
6
6
|
var utils = require('@dynamic-labs/utils');
|
|
7
7
|
|
|
8
8
|
const getConnectionDeepLink = (uri, deepLinks, preference, redirectUrl) => {
|
|
9
|
-
// on android, the connection deeplink is simply the uri
|
|
10
|
-
// see: https://docs.walletconnect.com/mobile-linking#for-android
|
|
11
|
-
if (utils.isAndroid()) {
|
|
12
|
-
return uri;
|
|
13
|
-
}
|
|
14
9
|
const deepLink = getRegularDeepLink(uri, deepLinks, preference);
|
|
15
10
|
if (!deepLink) {
|
|
16
|
-
return
|
|
11
|
+
return uri;
|
|
17
12
|
}
|
|
18
13
|
const deepLinkUrl = new URL(deepLink);
|
|
19
14
|
const deepLinkParams = new URLSearchParams(deepLinkUrl.search);
|
|
@@ -26,11 +21,6 @@ const getConnectionDeepLink = (uri, deepLinks, preference, redirectUrl) => {
|
|
|
26
21
|
};
|
|
27
22
|
const getRegularDeepLink = (uri, deepLinks, preference) => {
|
|
28
23
|
var _a, _b, _c, _d;
|
|
29
|
-
if (utils.isAndroid()) {
|
|
30
|
-
// on android, the deeplink is simply the uri, without the query params
|
|
31
|
-
// see: https://docs.walletconnect.com/mobile-linking#for-android
|
|
32
|
-
return uri.split('?')[0];
|
|
33
|
-
}
|
|
34
24
|
const index = utils.isMobile() ? 'mobile' : 'desktop';
|
|
35
25
|
let origin;
|
|
36
26
|
if (preference === 'native') {
|
|
@@ -49,7 +39,10 @@ const getDeepLink = ({ mode, uri = '', deepLinks, preference, redirectUrl, }) =>
|
|
|
49
39
|
case 'connection':
|
|
50
40
|
return getConnectionDeepLink(uri, deepLinks, preference, redirectUrl);
|
|
51
41
|
case 'regular':
|
|
52
|
-
return getRegularDeepLink(uri, deepLinks, preference)
|
|
42
|
+
return (getRegularDeepLink(uri, deepLinks, preference) ||
|
|
43
|
+
// on android, without a wallet scheme, the deeplink is the uri without the query params
|
|
44
|
+
// see: https://docs.walletconnect.com/mobile-linking#for-android
|
|
45
|
+
(utils.isAndroid() ? uri.split('?')[0] : ''));
|
|
53
46
|
}
|
|
54
47
|
};
|
|
55
48
|
|
|
@@ -2,14 +2,9 @@
|
|
|
2
2
|
import { isAndroid, isMobile } from '@dynamic-labs/utils';
|
|
3
3
|
|
|
4
4
|
const getConnectionDeepLink = (uri, deepLinks, preference, redirectUrl) => {
|
|
5
|
-
// on android, the connection deeplink is simply the uri
|
|
6
|
-
// see: https://docs.walletconnect.com/mobile-linking#for-android
|
|
7
|
-
if (isAndroid()) {
|
|
8
|
-
return uri;
|
|
9
|
-
}
|
|
10
5
|
const deepLink = getRegularDeepLink(uri, deepLinks, preference);
|
|
11
6
|
if (!deepLink) {
|
|
12
|
-
return
|
|
7
|
+
return uri;
|
|
13
8
|
}
|
|
14
9
|
const deepLinkUrl = new URL(deepLink);
|
|
15
10
|
const deepLinkParams = new URLSearchParams(deepLinkUrl.search);
|
|
@@ -22,11 +17,6 @@ const getConnectionDeepLink = (uri, deepLinks, preference, redirectUrl) => {
|
|
|
22
17
|
};
|
|
23
18
|
const getRegularDeepLink = (uri, deepLinks, preference) => {
|
|
24
19
|
var _a, _b, _c, _d;
|
|
25
|
-
if (isAndroid()) {
|
|
26
|
-
// on android, the deeplink is simply the uri, without the query params
|
|
27
|
-
// see: https://docs.walletconnect.com/mobile-linking#for-android
|
|
28
|
-
return uri.split('?')[0];
|
|
29
|
-
}
|
|
30
20
|
const index = isMobile() ? 'mobile' : 'desktop';
|
|
31
21
|
let origin;
|
|
32
22
|
if (preference === 'native') {
|
|
@@ -45,7 +35,10 @@ const getDeepLink = ({ mode, uri = '', deepLinks, preference, redirectUrl, }) =>
|
|
|
45
35
|
case 'connection':
|
|
46
36
|
return getConnectionDeepLink(uri, deepLinks, preference, redirectUrl);
|
|
47
37
|
case 'regular':
|
|
48
|
-
return getRegularDeepLink(uri, deepLinks, preference)
|
|
38
|
+
return (getRegularDeepLink(uri, deepLinks, preference) ||
|
|
39
|
+
// on android, without a wallet scheme, the deeplink is the uri without the query params
|
|
40
|
+
// see: https://docs.walletconnect.com/mobile-linking#for-android
|
|
41
|
+
(isAndroid() ? uri.split('?')[0] : ''));
|
|
49
42
|
}
|
|
50
43
|
};
|
|
51
44
|
|