@dynamic-labs/embedded-wallet-evm 3.9.9 → 3.9.10
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 +8 -0
- package/package.cjs +1 -1
- package/package.js +1 -1
- package/package.json +9 -9
- package/src/TurnkeyEVMWalletConnectors.cjs +10 -2
- package/src/TurnkeyEVMWalletConnectors.js +10 -2
- package/src/lib/TurnkeyEVMWalletConnector/TurnkeyEVMWalletConnector.cjs +5 -15
- package/src/lib/TurnkeyEVMWalletConnector/TurnkeyEVMWalletConnector.d.ts +2 -2
- package/src/lib/TurnkeyEVMWalletConnector/TurnkeyEVMWalletConnector.js +6 -16
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
|
|
2
|
+
### [3.9.10](https://github.com/dynamic-labs/DynamicAuth/compare/v3.9.9...v3.9.10) (2025-01-16)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Features
|
|
6
|
+
|
|
7
|
+
* add EthereumWalletConnectorsWithConfig ([#7796](https://github.com/dynamic-labs/DynamicAuth/issues/7796)) ([#7819](https://github.com/dynamic-labs/DynamicAuth/issues/7819)) ([510f9ac](https://github.com/dynamic-labs/DynamicAuth/commit/510f9acbd7ffa7fa767d45de22c95e03186d542d))
|
|
8
|
+
* add new super event that aggregates all user wallet events ([#7823](https://github.com/dynamic-labs/DynamicAuth/issues/7823)) ([ffe4fe7](https://github.com/dynamic-labs/DynamicAuth/commit/ffe4fe7c4ff4d0f12dee588fce84983c7b567d5e)), closes [#7797](https://github.com/dynamic-labs/DynamicAuth/issues/7797) [#7798](https://github.com/dynamic-labs/DynamicAuth/issues/7798)
|
|
9
|
+
|
|
2
10
|
### [3.9.9](https://github.com/dynamic-labs/DynamicAuth/compare/v3.9.8...v3.9.9) (2025-01-15)
|
|
3
11
|
|
|
4
12
|
|
package/package.cjs
CHANGED
package/package.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/embedded-wallet-evm",
|
|
3
|
-
"version": "3.9.
|
|
3
|
+
"version": "3.9.10",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/dynamic-labs/dynamic-auth.git",
|
|
@@ -32,14 +32,14 @@
|
|
|
32
32
|
"@turnkey/iframe-stamper": "2.0.0",
|
|
33
33
|
"@turnkey/viem": "0.4.26",
|
|
34
34
|
"@turnkey/webauthn-stamper": "0.5.0",
|
|
35
|
-
"@dynamic-labs/assert-package-version": "3.9.
|
|
36
|
-
"@dynamic-labs/embedded-wallet": "3.9.
|
|
37
|
-
"@dynamic-labs/ethereum-core": "3.9.
|
|
38
|
-
"@dynamic-labs/types": "3.9.
|
|
39
|
-
"@dynamic-labs/utils": "3.9.
|
|
40
|
-
"@dynamic-labs/wallet-book": "3.9.
|
|
41
|
-
"@dynamic-labs/wallet-connector-core": "3.9.
|
|
42
|
-
"@dynamic-labs/webauthn": "3.9.
|
|
35
|
+
"@dynamic-labs/assert-package-version": "3.9.10",
|
|
36
|
+
"@dynamic-labs/embedded-wallet": "3.9.10",
|
|
37
|
+
"@dynamic-labs/ethereum-core": "3.9.10",
|
|
38
|
+
"@dynamic-labs/types": "3.9.10",
|
|
39
|
+
"@dynamic-labs/utils": "3.9.10",
|
|
40
|
+
"@dynamic-labs/wallet-book": "3.9.10",
|
|
41
|
+
"@dynamic-labs/wallet-connector-core": "3.9.10",
|
|
42
|
+
"@dynamic-labs/webauthn": "3.9.10"
|
|
43
43
|
},
|
|
44
44
|
"peerDependencies": {
|
|
45
45
|
"viem": "^2.7.12"
|
|
@@ -10,8 +10,16 @@ const TurnkeyEVMWalletConnectors = (props) => {
|
|
|
10
10
|
var _a;
|
|
11
11
|
if ((_a = props.apiProviders) === null || _a === void 0 ? void 0 : _a.turnkey) {
|
|
12
12
|
return [
|
|
13
|
-
TurnkeyEVMWalletConnector.TurnkeyEVMWalletConnector
|
|
14
|
-
|
|
13
|
+
class extends TurnkeyEVMWalletConnector.TurnkeyEVMWalletConnector {
|
|
14
|
+
constructor(innerProps) {
|
|
15
|
+
super(embeddedWallet.TurnkeyWalletConnectorInfo.TurnkeyHD, Object.assign(Object.assign({}, props), innerProps));
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
class extends TurnkeyEVMWalletConnector.TurnkeyEVMWalletConnector {
|
|
19
|
+
constructor(innerProps) {
|
|
20
|
+
super(embeddedWallet.TurnkeyWalletConnectorInfo.Turnkey, Object.assign(Object.assign({}, props), innerProps));
|
|
21
|
+
}
|
|
22
|
+
},
|
|
15
23
|
];
|
|
16
24
|
}
|
|
17
25
|
return [];
|
|
@@ -6,8 +6,16 @@ const TurnkeyEVMWalletConnectors = (props) => {
|
|
|
6
6
|
var _a;
|
|
7
7
|
if ((_a = props.apiProviders) === null || _a === void 0 ? void 0 : _a.turnkey) {
|
|
8
8
|
return [
|
|
9
|
-
TurnkeyEVMWalletConnector
|
|
10
|
-
|
|
9
|
+
class extends TurnkeyEVMWalletConnector {
|
|
10
|
+
constructor(innerProps) {
|
|
11
|
+
super(TurnkeyWalletConnectorInfo.TurnkeyHD, Object.assign(Object.assign({}, props), innerProps));
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
class extends TurnkeyEVMWalletConnector {
|
|
15
|
+
constructor(innerProps) {
|
|
16
|
+
super(TurnkeyWalletConnectorInfo.Turnkey, Object.assign(Object.assign({}, props), innerProps));
|
|
17
|
+
}
|
|
18
|
+
},
|
|
11
19
|
];
|
|
12
20
|
}
|
|
13
21
|
return [];
|
|
@@ -18,7 +18,7 @@ var embeddedWallet = require('@dynamic-labs/embedded-wallet');
|
|
|
18
18
|
|
|
19
19
|
class TurnkeyEVMWalletConnector extends embeddedWallet.TurnkeyWalletConnectorBase {
|
|
20
20
|
constructor(nameAndKey, props) {
|
|
21
|
-
var _a;
|
|
21
|
+
var _a, _b;
|
|
22
22
|
super(nameAndKey, props);
|
|
23
23
|
this.walletFallback = {
|
|
24
24
|
brand: {
|
|
@@ -32,7 +32,7 @@ class TurnkeyEVMWalletConnector extends embeddedWallet.TurnkeyWalletConnectorBas
|
|
|
32
32
|
this.connectedChain = 'EVM';
|
|
33
33
|
this.supportedChains = ['ETH', 'EVM'];
|
|
34
34
|
this.verifiedCredentialChain = 'eip155';
|
|
35
|
-
this.stampCreateWalletAccountRequest = (
|
|
35
|
+
this.stampCreateWalletAccountRequest = (_c) => _tslib.__awaiter(this, [_c], void 0, function* ({ request, }) {
|
|
36
36
|
yield this.createOrRestoreSession();
|
|
37
37
|
const turnkeyClient = this.getTurnkeyClient();
|
|
38
38
|
return turnkeyClient.stampCreateWalletAccounts(request);
|
|
@@ -42,7 +42,7 @@ class TurnkeyEVMWalletConnector extends embeddedWallet.TurnkeyWalletConnectorBas
|
|
|
42
42
|
this._turnkeyAccount = undefined;
|
|
43
43
|
this._selectedChainId = this.getLastUsedChainId();
|
|
44
44
|
this.chainRpcProviders = props.chainRpcProviders;
|
|
45
|
-
(_a = this.chainRpcProviders) === null || _a === void 0 ? void 0 : _a.registerEvmProviders();
|
|
45
|
+
(_a = this.chainRpcProviders) === null || _a === void 0 ? void 0 : _a.registerEvmProviders((_b = props.providersConfig) !== null && _b !== void 0 ? _b : {});
|
|
46
46
|
this.__turnkeyClient = this.getTurnkeyClient();
|
|
47
47
|
}
|
|
48
48
|
getLastUsedChainId() {
|
|
@@ -108,22 +108,12 @@ class TurnkeyEVMWalletConnector extends embeddedWallet.TurnkeyWalletConnectorBas
|
|
|
108
108
|
}
|
|
109
109
|
});
|
|
110
110
|
}
|
|
111
|
-
getRpcUrl() {
|
|
112
|
-
const chain = this._selectedChainId;
|
|
113
|
-
return walletConnectorCore.getRpcUrlForChain({
|
|
114
|
-
chainId: chain,
|
|
115
|
-
networks: this.evmNetworks,
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
111
|
getBalance(address) {
|
|
119
112
|
return _tslib.__awaiter(this, void 0, void 0, function* () {
|
|
120
|
-
const
|
|
121
|
-
if (!
|
|
113
|
+
const client = yield this.getPublicClient();
|
|
114
|
+
if (!client) {
|
|
122
115
|
return undefined;
|
|
123
116
|
}
|
|
124
|
-
const client = viem.createPublicClient({
|
|
125
|
-
transport: viem.http(rpcUrl),
|
|
126
|
-
});
|
|
127
117
|
const balance = yield client.getBalance({
|
|
128
118
|
address: address,
|
|
129
119
|
});
|
|
@@ -2,7 +2,7 @@ import { TurnkeyClient, TurnkeyApiTypes } from '@turnkey/http';
|
|
|
2
2
|
import { Account, LocalAccount, PublicClient, Transport, Chain as ViemChain, WalletClient } from 'viem';
|
|
3
3
|
import { JwtVerifiedCredential } from '@dynamic-labs/sdk-api-core';
|
|
4
4
|
import { EvmNetwork, GenericNetwork, IUITransaction, WalletUiUtils } from '@dynamic-labs/types';
|
|
5
|
-
import { IChainRpcProviders, EthereumWallet } from '@dynamic-labs/ethereum-core';
|
|
5
|
+
import { IChainRpcProviders, EthereumWallet, RegisterEvmProvidersConfig } from '@dynamic-labs/ethereum-core';
|
|
6
6
|
import { WalletBookSchema } from '@dynamic-labs/wallet-book';
|
|
7
7
|
import type { Chain, ISendBalanceWalletConnector, InternalWalletConnector } from '@dynamic-labs/wallet-connector-core';
|
|
8
8
|
import { TurnkeyWalletConnectorNameAndKey, TurnkeyWalletConnectorBase } from '@dynamic-labs/embedded-wallet';
|
|
@@ -12,6 +12,7 @@ export type TurnkeyEVMConnectorProps = {
|
|
|
12
12
|
evmNetworks: GenericNetwork[];
|
|
13
13
|
appName?: string;
|
|
14
14
|
chainRpcProviders: IChainRpcProviders;
|
|
15
|
+
providersConfig?: RegisterEvmProvidersConfig;
|
|
15
16
|
};
|
|
16
17
|
export declare class TurnkeyEVMWalletConnector extends TurnkeyWalletConnectorBase implements ISendBalanceWalletConnector {
|
|
17
18
|
walletFallback: {
|
|
@@ -40,7 +41,6 @@ export declare class TurnkeyEVMWalletConnector extends TurnkeyWalletConnectorBas
|
|
|
40
41
|
}): Promise<void>;
|
|
41
42
|
setVerifiedCredentials(verifiedCredentials: JwtVerifiedCredential[]): void;
|
|
42
43
|
validateActiveWallet(expectedAddress: string): Promise<void>;
|
|
43
|
-
getRpcUrl(): string | undefined;
|
|
44
44
|
getBalance(address: string): Promise<string | undefined>;
|
|
45
45
|
signMessage(messageToSign: string): Promise<string | undefined>;
|
|
46
46
|
getPublicClient(): Promise<void | PublicClient<Transport, ViemChain> | undefined>;
|
|
@@ -5,7 +5,7 @@ import { TurnkeyClient } from '@turnkey/http';
|
|
|
5
5
|
import { IframeStamper } from '@turnkey/iframe-stamper';
|
|
6
6
|
import { createAccount } from '@turnkey/viem';
|
|
7
7
|
import { WebauthnStamper } from '@turnkey/webauthn-stamper';
|
|
8
|
-
import { http,
|
|
8
|
+
import { http, formatEther } from 'viem';
|
|
9
9
|
import { toAccount } from 'viem/accounts';
|
|
10
10
|
import { parseEvmNetworks, getTLD, PlatformService, DynamicError } from '@dynamic-labs/utils';
|
|
11
11
|
import { EthereumWallet, createWalletClientWithUiConfirmation, getOrMapViemChain, createViemUiTransaction } from '@dynamic-labs/ethereum-core';
|
|
@@ -14,7 +14,7 @@ import { TurnkeyWalletConnectorBase, findTurnkeyVerifiedCredentialsWithSmartWall
|
|
|
14
14
|
|
|
15
15
|
class TurnkeyEVMWalletConnector extends TurnkeyWalletConnectorBase {
|
|
16
16
|
constructor(nameAndKey, props) {
|
|
17
|
-
var _a;
|
|
17
|
+
var _a, _b;
|
|
18
18
|
super(nameAndKey, props);
|
|
19
19
|
this.walletFallback = {
|
|
20
20
|
brand: {
|
|
@@ -28,7 +28,7 @@ class TurnkeyEVMWalletConnector extends TurnkeyWalletConnectorBase {
|
|
|
28
28
|
this.connectedChain = 'EVM';
|
|
29
29
|
this.supportedChains = ['ETH', 'EVM'];
|
|
30
30
|
this.verifiedCredentialChain = 'eip155';
|
|
31
|
-
this.stampCreateWalletAccountRequest = (
|
|
31
|
+
this.stampCreateWalletAccountRequest = (_c) => __awaiter(this, [_c], void 0, function* ({ request, }) {
|
|
32
32
|
yield this.createOrRestoreSession();
|
|
33
33
|
const turnkeyClient = this.getTurnkeyClient();
|
|
34
34
|
return turnkeyClient.stampCreateWalletAccounts(request);
|
|
@@ -38,7 +38,7 @@ class TurnkeyEVMWalletConnector extends TurnkeyWalletConnectorBase {
|
|
|
38
38
|
this._turnkeyAccount = undefined;
|
|
39
39
|
this._selectedChainId = this.getLastUsedChainId();
|
|
40
40
|
this.chainRpcProviders = props.chainRpcProviders;
|
|
41
|
-
(_a = this.chainRpcProviders) === null || _a === void 0 ? void 0 : _a.registerEvmProviders();
|
|
41
|
+
(_a = this.chainRpcProviders) === null || _a === void 0 ? void 0 : _a.registerEvmProviders((_b = props.providersConfig) !== null && _b !== void 0 ? _b : {});
|
|
42
42
|
this.__turnkeyClient = this.getTurnkeyClient();
|
|
43
43
|
}
|
|
44
44
|
getLastUsedChainId() {
|
|
@@ -104,22 +104,12 @@ class TurnkeyEVMWalletConnector extends TurnkeyWalletConnectorBase {
|
|
|
104
104
|
}
|
|
105
105
|
});
|
|
106
106
|
}
|
|
107
|
-
getRpcUrl() {
|
|
108
|
-
const chain = this._selectedChainId;
|
|
109
|
-
return getRpcUrlForChain({
|
|
110
|
-
chainId: chain,
|
|
111
|
-
networks: this.evmNetworks,
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
107
|
getBalance(address) {
|
|
115
108
|
return __awaiter(this, void 0, void 0, function* () {
|
|
116
|
-
const
|
|
117
|
-
if (!
|
|
109
|
+
const client = yield this.getPublicClient();
|
|
110
|
+
if (!client) {
|
|
118
111
|
return undefined;
|
|
119
112
|
}
|
|
120
|
-
const client = createPublicClient({
|
|
121
|
-
transport: http(rpcUrl),
|
|
122
|
-
});
|
|
123
113
|
const balance = yield client.getBalance({
|
|
124
114
|
address: address,
|
|
125
115
|
});
|