@dynamic-labs/ethereum-aa 4.18.0 → 4.18.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,4 +1,24 @@
1
1
 
2
+ ### [4.18.2](https://github.com/dynamic-labs/dynamic-auth/compare/v4.18.1...v4.18.2) (2025-05-09)
3
+
4
+
5
+ ### Bug Fixes
6
+
7
+ * use more robust signerRefId for linked embedded wallet check ([#8681](https://github.com/dynamic-labs/dynamic-auth/issues/8681)) ([30cbc24](https://github.com/dynamic-labs/dynamic-auth/commit/30cbc24a3b388710c40b82979b2579620db1e5db))
8
+
9
+ ### [4.18.1](https://github.com/dynamic-labs/dynamic-auth/compare/v4.18.0...v4.18.1) (2025-05-09)
10
+
11
+
12
+ ### Features
13
+
14
+ * allow setting zerodev bundler provider from dashboard ([#8548](https://github.com/dynamic-labs/dynamic-auth/issues/8548)) ([d226733](https://github.com/dynamic-labs/dynamic-auth/commit/d2267334db3d9d742833437c81a382742c8d6a74))
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * correctly show back button on connect with qr view ([#8668](https://github.com/dynamic-labs/dynamic-auth/issues/8668)) ([3cff309](https://github.com/dynamic-labs/dynamic-auth/commit/3cff309fa35d7201d0c098b793334908716bc0db))
20
+ * display correct app origin when signing message with global wallet ([#8677](https://github.com/dynamic-labs/dynamic-auth/issues/8677)) ([a70eeb3](https://github.com/dynamic-labs/dynamic-auth/commit/a70eeb3ea28a5ad749cb5c14a0d3c49318099712))
21
+
2
22
  ## [4.18.0](https://github.com/dynamic-labs/dynamic-auth/compare/v4.17.0...v4.18.0) (2025-05-07)
3
23
 
4
24
 
package/package.cjs CHANGED
@@ -3,6 +3,6 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var version = "4.18.0";
6
+ var version = "4.18.2";
7
7
 
8
8
  exports.version = version;
package/package.js CHANGED
@@ -1,4 +1,4 @@
1
1
  'use client'
2
- var version = "4.18.0";
2
+ var version = "4.18.2";
3
3
 
4
4
  export { version };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs/ethereum-aa",
3
- "version": "4.18.0",
3
+ "version": "4.18.2",
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,18 +18,18 @@
18
18
  },
19
19
  "homepage": "https://www.dynamic.xyz/",
20
20
  "dependencies": {
21
- "@dynamic-labs/sdk-api-core": "0.0.660",
21
+ "@dynamic-labs/sdk-api-core": "0.0.663",
22
22
  "@zerodev/ecdsa-validator": "5.4.8",
23
23
  "@zerodev/multi-chain-ecdsa-validator": "5.4.5",
24
24
  "@zerodev/sdk": "5.4.34",
25
- "@dynamic-labs/assert-package-version": "4.18.0",
26
- "@dynamic-labs/ethereum-aa-core": "4.18.0",
27
- "@dynamic-labs/ethereum-core": "4.18.0",
28
- "@dynamic-labs/logger": "4.18.0",
29
- "@dynamic-labs/types": "4.18.0",
30
- "@dynamic-labs/utils": "4.18.0",
31
- "@dynamic-labs/wallet-book": "4.18.0",
32
- "@dynamic-labs/wallet-connector-core": "4.18.0"
25
+ "@dynamic-labs/assert-package-version": "4.18.2",
26
+ "@dynamic-labs/ethereum-aa-core": "4.18.2",
27
+ "@dynamic-labs/ethereum-core": "4.18.2",
28
+ "@dynamic-labs/logger": "4.18.2",
29
+ "@dynamic-labs/types": "4.18.2",
30
+ "@dynamic-labs/utils": "4.18.2",
31
+ "@dynamic-labs/wallet-book": "4.18.2",
32
+ "@dynamic-labs/wallet-connector-core": "4.18.2"
33
33
  },
34
34
  "peerDependencies": {
35
35
  "viem": "^2.21.60"
@@ -4,14 +4,14 @@
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
6
  var _tslib = require('../_virtual/_tslib.cjs');
7
+ var constants$1 = require('@zerodev/sdk/constants');
7
8
  var viem = require('viem');
8
9
  var accounts = require('viem/accounts');
9
- var constants$1 = require('@zerodev/sdk/constants');
10
+ var ethereumAaCore = require('@dynamic-labs/ethereum-aa-core');
10
11
  var ethereumCore = require('@dynamic-labs/ethereum-core');
11
12
  var sdkApiCore = require('@dynamic-labs/sdk-api-core');
12
- var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
13
13
  var utils = require('@dynamic-labs/utils');
14
- var ethereumAaCore = require('@dynamic-labs/ethereum-aa-core');
14
+ var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
15
15
  var constants = require('./constants.cjs');
16
16
  var logger = require('./utils/logger.cjs');
17
17
  var createEcdsaKernelAccountClient = require('./utils/createEcdsaKernelAccountClient.cjs');
@@ -22,7 +22,7 @@ var hasSmartAccount = require('./utils/hasSmartAccount.cjs');
22
22
 
23
23
  class ZeroDevConnector extends ethereumAaCore.AccountAbstractionBaseConnector {
24
24
  constructor(opts) {
25
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
25
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
26
26
  super(opts);
27
27
  // provider map maintains the kernel clients per chain
28
28
  this.providerMap = {};
@@ -58,12 +58,20 @@ class ZeroDevConnector extends ethereumAaCore.AccountAbstractionBaseConnector {
58
58
  this.is7702EnabledOnDashboard =
59
59
  (_c = (_b = opts.apiProviders.zerodev) === null || _b === void 0 ? void 0 : _b.enableEIP7702) !== null && _c !== void 0 ? _c : false;
60
60
  this.entryPoint = getEntryPoint.getEntryPoint((_d = opts.apiProviders.zerodev) === null || _d === void 0 ? void 0 : _d.entryPointVersion);
61
- this.kernelVersion = getKernelVersion.getKernelVersion((_e = opts.apiProviders.zerodev) === null || _e === void 0 ? void 0 : _e.kernelVersion, this.entryPoint);
61
+ this.bundlerProvider =
62
+ (_g = (_f = (_e = opts.apiProviders.zerodev) === null || _e === void 0 ? void 0 : _e.zerodevBundlerProvider) !== null && _f !== void 0 ? _f : ZeroDevConnector.bundlerProviderDefault) !== null && _g !== void 0 ? _g : sdkApiCore.ZerodevBundlerProvider.Gelato;
63
+ this.bundlerRpc =
64
+ (_j = (_h = opts.apiProviders.zerodev) === null || _h === void 0 ? void 0 : _h.zerodevBundlerRpcUrl) !== null && _j !== void 0 ? _j : ZeroDevConnector.bundlerRpcDefault;
65
+ this.paymasterRpc =
66
+ (_l = (_k = opts.apiProviders.zerodev) === null || _k === void 0 ? void 0 : _k.zerodevPaymasterRpcUrl) !== null && _l !== void 0 ? _l : ZeroDevConnector.paymasterRpcDefault;
67
+ this.kernelDelegationAddress =
68
+ (_o = (_m = opts.apiProviders.zerodev) === null || _m === void 0 ? void 0 : _m.zerodevKernelDelegationAddress) !== null && _o !== void 0 ? _o : ZeroDevConnector.kernelDelegationAddressDefault;
69
+ this.kernelVersion = getKernelVersion.getKernelVersion((_p = opts.apiProviders.zerodev) === null || _p === void 0 ? void 0 : _p.kernelVersion, this.entryPoint);
62
70
  this.enableKernelV3Migration =
63
- (_g = (_f = opts.apiProviders.zerodev) === null || _f === void 0 ? void 0 : _f.enableKernelV3Migration) !== null && _g !== void 0 ? _g : false;
71
+ (_r = (_q = opts.apiProviders.zerodev) === null || _q === void 0 ? void 0 : _q.enableKernelV3Migration) !== null && _r !== void 0 ? _r : false;
64
72
  // this is the list of providers from the api that are used for multi-chain account abstraction
65
73
  this.providersFromApi =
66
- ((_h = opts.apiProviders.zerodev) === null || _h === void 0 ? void 0 : _h.multichainAccountAbstractionProviders) || [];
74
+ ((_s = opts.apiProviders.zerodev) === null || _s === void 0 ? void 0 : _s.multichainAccountAbstractionProviders) || [];
67
75
  const enabledZerodevNetworks = this.providersFromApi.map((provider) => provider.chain);
68
76
  this.evmNetworks = utils.parseEvmNetworks(opts.evmNetworks).filter((network) => enabledZerodevNetworks.includes(network.chainId.toString()));
69
77
  const [defaultProvider] = this.providersFromApi;
@@ -72,7 +80,7 @@ class ZeroDevConnector extends ethereumAaCore.AccountAbstractionBaseConnector {
72
80
  throw new Error('Missing ZeroDev project ID provided. Add your ZeroDev project id to your project configuration via the Dynamic Labs dashboard.');
73
81
  }
74
82
  this.defaultChainId = defaultProvider === null || defaultProvider === void 0 ? void 0 : defaultProvider.chain;
75
- this.ecdsaProviderType = (_j = opts.apiProviders.zerodev) === null || _j === void 0 ? void 0 : _j.ecdsaProviderType;
83
+ this.ecdsaProviderType = (_t = opts.apiProviders.zerodev) === null || _t === void 0 ? void 0 : _t.ecdsaProviderType;
76
84
  }
77
85
  confirmTransactionStatus() {
78
86
  throw new Error('confirmTransactionStatus not implemented in ZeroDevConnector');
@@ -288,15 +296,15 @@ class ZeroDevConnector extends ethereumAaCore.AccountAbstractionBaseConnector {
288
296
  const publicClientRpc = (_b = network === null || network === void 0 ? void 0 : network.privateCustomerRpcUrls) === null || _b === void 0 ? void 0 : _b[0];
289
297
  let kernelClient;
290
298
  const params = {
291
- bundlerRpc: ZeroDevConnector.bundlerRpc,
299
+ bundlerRpc: this.bundlerRpc,
292
300
  chain,
293
301
  enableKernelV3Migration: this.enableKernelV3Migration,
294
302
  entryPoint: this.entryPoint,
295
303
  kernelVersion: this.kernelVersion,
296
304
  paymaster,
297
- paymasterRpc: ZeroDevConnector.paymasterRpc,
305
+ paymasterRpc: this.paymasterRpc,
298
306
  projectId,
299
- provider: ZeroDevConnector.bundlerProvider,
307
+ provider: this.bundlerProvider,
300
308
  publicClientRpc,
301
309
  signer,
302
310
  };
@@ -1,15 +1,14 @@
1
1
  import { KernelAccountClient } from '@zerodev/sdk/clients';
2
- import { SmartAccount, EntryPointVersion } from 'viem/account-abstraction';
2
+ import { EntryPointType, KERNEL_VERSION_TYPE } from '@zerodev/sdk/types';
3
3
  import { Account, Client, PublicClient, RpcSchema, Transport, WalletClient } from 'viem';
4
+ import { EntryPointVersion, SmartAccount } from 'viem/account-abstraction';
4
5
  import { type Chain as ViemChain } from 'viem/chains';
5
- import { EntryPointType, KERNEL_VERSION_TYPE } from '@zerodev/sdk/types';
6
+ import { AccountAbstractionBaseConnector, AccountAbstractionConnectorProps } from '@dynamic-labs/ethereum-aa-core';
6
7
  import { EthereumWallet, RegisterEvmProvidersConfig } from '@dynamic-labs/ethereum-core';
7
- import { EcdsaValidatorOptions, Provider, ProviderEntryPointVersionEnum, ProviderEnum, ProviderKernelVersionEnum, ProviderMultichainAccountAbstractionProviders, SmartWalletProperties, JwtVerifiedCredential } from '@dynamic-labs/sdk-api-core';
8
- import { Chain, InternalWalletConnector, IZeroDevConnector } from '@dynamic-labs/wallet-connector-core';
9
- import { WalletBookSchema } from '@dynamic-labs/wallet-book';
8
+ import { EcdsaValidatorOptions, JwtVerifiedCredential, Provider, ProviderEntryPointVersionEnum, ProviderEnum, ProviderKernelVersionEnum, ProviderMultichainAccountAbstractionProviders, SmartWalletProperties, ZerodevBundlerProvider } from '@dynamic-labs/sdk-api-core';
10
9
  import { GenericNetwork, TransactionReceipt, WalletUiUtils } from '@dynamic-labs/types';
11
- import { AccountAbstractionBaseConnector, AccountAbstractionConnectorProps } from '@dynamic-labs/ethereum-aa-core';
12
- import { BundlerProvider } from './utils';
10
+ import { WalletBookSchema } from '@dynamic-labs/wallet-book';
11
+ import { Chain, InternalWalletConnector, IZeroDevConnector } from '@dynamic-labs/wallet-connector-core';
13
12
  type ZeroDevConnectorProps = AccountAbstractionConnectorProps & {
14
13
  apiProviders: {
15
14
  [key in ProviderEnum]?: Provider;
@@ -17,7 +16,7 @@ type ZeroDevConnectorProps = AccountAbstractionConnectorProps & {
17
16
  evmNetworks: GenericNetwork[];
18
17
  walletBook: WalletBookSchema;
19
18
  walletUiUtils: WalletUiUtils<InternalWalletConnector>;
20
- bundlerProvider: BundlerProvider | undefined;
19
+ bundlerProvider: ZerodevBundlerProvider | undefined;
21
20
  enableEIP7702?: boolean;
22
21
  providersConfig?: RegisterEvmProvidersConfig;
23
22
  };
@@ -39,10 +38,14 @@ export declare class ZeroDevConnector extends AccountAbstractionBaseConnector im
39
38
  ecdsaProviderType: string | undefined;
40
39
  defaultChainId: string | undefined;
41
40
  providersFromApi: ProviderMultichainAccountAbstractionProviders[];
42
- static bundlerProvider: BundlerProvider | undefined;
43
- static bundlerRpc: string | undefined;
44
- static paymasterRpc: string | undefined;
45
- static kernelDelegationAddress: `0x${string}` | undefined;
41
+ bundlerProvider: ZerodevBundlerProvider;
42
+ bundlerRpc: string | undefined;
43
+ paymasterRpc: string | undefined;
44
+ kernelDelegationAddress: `0x${string}` | undefined;
45
+ static bundlerProviderDefault: ZerodevBundlerProvider | undefined;
46
+ static bundlerRpcDefault: string | undefined;
47
+ static paymasterRpcDefault: string | undefined;
48
+ static kernelDelegationAddressDefault: `0x${string}` | undefined;
46
49
  /**
47
50
  * Deferred promise that resolves when the ZeroDev provider is set.
48
51
  * This is used to make sure that the provider is set before any other method is called.
@@ -1,13 +1,13 @@
1
1
  'use client'
2
2
  import { __awaiter, __rest } from '../_virtual/_tslib.js';
3
+ import { KERNEL_V3_3, getEntryPoint as getEntryPoint$1 } from '@zerodev/sdk/constants';
3
4
  import { publicActions, custom, createWalletClient, toHex, formatEther } from 'viem';
4
5
  import { toAccount } from 'viem/accounts';
5
- import { KERNEL_V3_3, getEntryPoint as getEntryPoint$1 } from '@zerodev/sdk/constants';
6
+ import { AccountAbstractionBaseConnector } from '@dynamic-labs/ethereum-aa-core';
6
7
  import { EthereumWallet, isEthWalletConnector, chainsMap, confirmationTransport, unFormatTransaction } from '@dynamic-labs/ethereum-core';
7
- import { WalletProviderEnum } from '@dynamic-labs/sdk-api-core';
8
- import { eventListenerHandlers, getWalletProvider } from '@dynamic-labs/wallet-connector-core';
8
+ import { ZerodevBundlerProvider, WalletProviderEnum } from '@dynamic-labs/sdk-api-core';
9
9
  import { parseEvmNetworks, StorageService, DynamicError, DeferredPromise, parseChainId, wrapMethodWithCallback, TransactionGasCannotBeSponsoredError, InsufficientFundsError } from '@dynamic-labs/utils';
10
- import { AccountAbstractionBaseConnector } from '@dynamic-labs/ethereum-aa-core';
10
+ import { eventListenerHandlers, getWalletProvider } from '@dynamic-labs/wallet-connector-core';
11
11
  import { ZERO_DEV_LAST_USED_CHAIN_ID_KEY } from './constants.js';
12
12
  import { logger } from './utils/logger.js';
13
13
  import { createEcdsaKernelAccountClientWith7702, createEcdsaKernelAccountClient } from './utils/createEcdsaKernelAccountClient.js';
@@ -18,7 +18,7 @@ import { hasSmartAccount } from './utils/hasSmartAccount.js';
18
18
 
19
19
  class ZeroDevConnector extends AccountAbstractionBaseConnector {
20
20
  constructor(opts) {
21
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
21
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
22
22
  super(opts);
23
23
  // provider map maintains the kernel clients per chain
24
24
  this.providerMap = {};
@@ -54,12 +54,20 @@ class ZeroDevConnector extends AccountAbstractionBaseConnector {
54
54
  this.is7702EnabledOnDashboard =
55
55
  (_c = (_b = opts.apiProviders.zerodev) === null || _b === void 0 ? void 0 : _b.enableEIP7702) !== null && _c !== void 0 ? _c : false;
56
56
  this.entryPoint = getEntryPoint((_d = opts.apiProviders.zerodev) === null || _d === void 0 ? void 0 : _d.entryPointVersion);
57
- this.kernelVersion = getKernelVersion((_e = opts.apiProviders.zerodev) === null || _e === void 0 ? void 0 : _e.kernelVersion, this.entryPoint);
57
+ this.bundlerProvider =
58
+ (_g = (_f = (_e = opts.apiProviders.zerodev) === null || _e === void 0 ? void 0 : _e.zerodevBundlerProvider) !== null && _f !== void 0 ? _f : ZeroDevConnector.bundlerProviderDefault) !== null && _g !== void 0 ? _g : ZerodevBundlerProvider.Gelato;
59
+ this.bundlerRpc =
60
+ (_j = (_h = opts.apiProviders.zerodev) === null || _h === void 0 ? void 0 : _h.zerodevBundlerRpcUrl) !== null && _j !== void 0 ? _j : ZeroDevConnector.bundlerRpcDefault;
61
+ this.paymasterRpc =
62
+ (_l = (_k = opts.apiProviders.zerodev) === null || _k === void 0 ? void 0 : _k.zerodevPaymasterRpcUrl) !== null && _l !== void 0 ? _l : ZeroDevConnector.paymasterRpcDefault;
63
+ this.kernelDelegationAddress =
64
+ (_o = (_m = opts.apiProviders.zerodev) === null || _m === void 0 ? void 0 : _m.zerodevKernelDelegationAddress) !== null && _o !== void 0 ? _o : ZeroDevConnector.kernelDelegationAddressDefault;
65
+ this.kernelVersion = getKernelVersion((_p = opts.apiProviders.zerodev) === null || _p === void 0 ? void 0 : _p.kernelVersion, this.entryPoint);
58
66
  this.enableKernelV3Migration =
59
- (_g = (_f = opts.apiProviders.zerodev) === null || _f === void 0 ? void 0 : _f.enableKernelV3Migration) !== null && _g !== void 0 ? _g : false;
67
+ (_r = (_q = opts.apiProviders.zerodev) === null || _q === void 0 ? void 0 : _q.enableKernelV3Migration) !== null && _r !== void 0 ? _r : false;
60
68
  // this is the list of providers from the api that are used for multi-chain account abstraction
61
69
  this.providersFromApi =
62
- ((_h = opts.apiProviders.zerodev) === null || _h === void 0 ? void 0 : _h.multichainAccountAbstractionProviders) || [];
70
+ ((_s = opts.apiProviders.zerodev) === null || _s === void 0 ? void 0 : _s.multichainAccountAbstractionProviders) || [];
63
71
  const enabledZerodevNetworks = this.providersFromApi.map((provider) => provider.chain);
64
72
  this.evmNetworks = parseEvmNetworks(opts.evmNetworks).filter((network) => enabledZerodevNetworks.includes(network.chainId.toString()));
65
73
  const [defaultProvider] = this.providersFromApi;
@@ -68,7 +76,7 @@ class ZeroDevConnector extends AccountAbstractionBaseConnector {
68
76
  throw new Error('Missing ZeroDev project ID provided. Add your ZeroDev project id to your project configuration via the Dynamic Labs dashboard.');
69
77
  }
70
78
  this.defaultChainId = defaultProvider === null || defaultProvider === void 0 ? void 0 : defaultProvider.chain;
71
- this.ecdsaProviderType = (_j = opts.apiProviders.zerodev) === null || _j === void 0 ? void 0 : _j.ecdsaProviderType;
79
+ this.ecdsaProviderType = (_t = opts.apiProviders.zerodev) === null || _t === void 0 ? void 0 : _t.ecdsaProviderType;
72
80
  }
73
81
  confirmTransactionStatus() {
74
82
  throw new Error('confirmTransactionStatus not implemented in ZeroDevConnector');
@@ -284,15 +292,15 @@ class ZeroDevConnector extends AccountAbstractionBaseConnector {
284
292
  const publicClientRpc = (_b = network === null || network === void 0 ? void 0 : network.privateCustomerRpcUrls) === null || _b === void 0 ? void 0 : _b[0];
285
293
  let kernelClient;
286
294
  const params = {
287
- bundlerRpc: ZeroDevConnector.bundlerRpc,
295
+ bundlerRpc: this.bundlerRpc,
288
296
  chain,
289
297
  enableKernelV3Migration: this.enableKernelV3Migration,
290
298
  entryPoint: this.entryPoint,
291
299
  kernelVersion: this.kernelVersion,
292
300
  paymaster,
293
- paymasterRpc: ZeroDevConnector.paymasterRpc,
301
+ paymasterRpc: this.paymasterRpc,
294
302
  projectId,
295
- provider: ZeroDevConnector.bundlerProvider,
303
+ provider: this.bundlerProvider,
296
304
  publicClientRpc,
297
305
  signer,
298
306
  };
package/src/index.cjs CHANGED
@@ -14,11 +14,15 @@ var getKernelVersion = require('./utils/getKernelVersion.cjs');
14
14
  var isZeroDevConnector = require('./utils/isZeroDevConnector.cjs');
15
15
 
16
16
  assertPackageVersion.assertPackageVersion('@dynamic-labs/ethereum-aa', _package.version);
17
+ /**
18
+ * Allows defining default values for zerodev configs.
19
+ * Values configured in the dashboard will take precedence over these values.
20
+ */
17
21
  const ZeroDevSmartWalletConnectorsWithConfig = ({ bundlerProvider, bundlerRpc, paymasterRpc, kernelDelegationAddress, } = {}) => {
18
- ZeroDevConnector.ZeroDevConnector.bundlerProvider = bundlerProvider;
19
- ZeroDevConnector.ZeroDevConnector.bundlerRpc = bundlerRpc;
20
- ZeroDevConnector.ZeroDevConnector.paymasterRpc = paymasterRpc;
21
- ZeroDevConnector.ZeroDevConnector.kernelDelegationAddress = kernelDelegationAddress;
22
+ ZeroDevConnector.ZeroDevConnector.bundlerProviderDefault = bundlerProvider;
23
+ ZeroDevConnector.ZeroDevConnector.bundlerRpcDefault = bundlerRpc;
24
+ ZeroDevConnector.ZeroDevConnector.paymasterRpcDefault = paymasterRpc;
25
+ ZeroDevConnector.ZeroDevConnector.kernelDelegationAddressDefault = kernelDelegationAddress;
22
26
  return ZeroDevSmartWalletConnectors;
23
27
  };
24
28
  const ZeroDevSmartWalletConnectors = (props) => {
package/src/index.d.ts CHANGED
@@ -1,13 +1,20 @@
1
+ import { ZerodevBundlerProvider } from '@dynamic-labs/sdk-api-core';
1
2
  import { WalletConnectorConstructor } from '@dynamic-labs/wallet-connector-core';
2
- import { BundlerProvider } from './utils';
3
- export { createEcdsaKernelAccountClient, type BundlerProvider, type PaymasterType, } from './utils/createEcdsaKernelAccountClient';
3
+ export { createEcdsaKernelAccountClient, type PaymasterType, } from './utils/createEcdsaKernelAccountClient';
4
4
  export { fetchZeroDevChain } from './utils/fetchZeroDevChain';
5
5
  export { getEcdsaValidator } from './utils/getEcdsaValidator';
6
6
  export { getEntryPoint } from './utils/getEntryPoint';
7
7
  export { getKernelVersion } from './utils/getKernelVersion';
8
8
  export { isZeroDevConnector } from './utils/isZeroDevConnector';
9
+ export type {
10
+ /** @deprecated Use ZerodevBundlerProvider from \@dynamic-labs/sdk-api-core instead */
11
+ ZerodevBundlerProvider as BundlerProvider, } from '@dynamic-labs/sdk-api-core';
12
+ /**
13
+ * Allows defining default values for zerodev configs.
14
+ * Values configured in the dashboard will take precedence over these values.
15
+ */
9
16
  export declare const ZeroDevSmartWalletConnectorsWithConfig: ({ bundlerProvider, bundlerRpc, paymasterRpc, kernelDelegationAddress, }?: {
10
- bundlerProvider?: BundlerProvider;
17
+ bundlerProvider?: ZerodevBundlerProvider;
11
18
  bundlerRpc?: string;
12
19
  paymasterRpc?: string;
13
20
  kernelDelegationAddress?: `0x${string}`;
package/src/index.js CHANGED
@@ -10,11 +10,15 @@ export { getKernelVersion } from './utils/getKernelVersion.js';
10
10
  export { isZeroDevConnector } from './utils/isZeroDevConnector.js';
11
11
 
12
12
  assertPackageVersion('@dynamic-labs/ethereum-aa', version);
13
+ /**
14
+ * Allows defining default values for zerodev configs.
15
+ * Values configured in the dashboard will take precedence over these values.
16
+ */
13
17
  const ZeroDevSmartWalletConnectorsWithConfig = ({ bundlerProvider, bundlerRpc, paymasterRpc, kernelDelegationAddress, } = {}) => {
14
- ZeroDevConnector.bundlerProvider = bundlerProvider;
15
- ZeroDevConnector.bundlerRpc = bundlerRpc;
16
- ZeroDevConnector.paymasterRpc = paymasterRpc;
17
- ZeroDevConnector.kernelDelegationAddress = kernelDelegationAddress;
18
+ ZeroDevConnector.bundlerProviderDefault = bundlerProvider;
19
+ ZeroDevConnector.bundlerRpcDefault = bundlerRpc;
20
+ ZeroDevConnector.paymasterRpcDefault = paymasterRpc;
21
+ ZeroDevConnector.kernelDelegationAddressDefault = kernelDelegationAddress;
18
22
  return ZeroDevSmartWalletConnectors;
19
23
  };
20
24
  const ZeroDevSmartWalletConnectors = (props) => {
@@ -3,11 +3,11 @@ import { KernelAccountClient } from '@zerodev/sdk/clients';
3
3
  import { type Chain as ViemChain } from 'viem/chains';
4
4
  import { Address, WalletClient, Account, type Chain, type Client, type RpcSchema, type Transport } from 'viem';
5
5
  import { EntryPointType, GetKernelVersion } from '@zerodev/sdk/types';
6
- export type BundlerProvider = 'STACKUP' | 'PIMLICO' | 'ALCHEMY' | 'GELATO';
6
+ import { ZerodevBundlerProvider } from '@dynamic-labs/sdk-api-core';
7
7
  export type ERC20Paymaster = Address;
8
8
  export type PaymasterType = 'NONE' | 'SPONSOR' | ERC20Paymaster;
9
- export declare const getZeroDevBundlerRPC: (projectId: string, provider?: BundlerProvider) => string;
10
- export declare const getZeroDevPaymasterRPC: (projectId: string, provider?: BundlerProvider) => string;
9
+ export declare const getZeroDevBundlerRPC: (projectId: string, provider?: ZerodevBundlerProvider) => string;
10
+ export declare const getZeroDevPaymasterRPC: (projectId: string, provider?: ZerodevBundlerProvider) => string;
11
11
  type CommonClientParams<TChain extends Chain | undefined = Chain | undefined> = {
12
12
  bundlerRpc?: string;
13
13
  chain: TChain;
@@ -16,7 +16,7 @@ type CommonClientParams<TChain extends Chain | undefined = Chain | undefined> =
16
16
  paymaster: PaymasterType;
17
17
  paymasterRpc?: string;
18
18
  entryPoint: EntryPointType<EntryPointVersion>;
19
- provider?: BundlerProvider;
19
+ provider?: ZerodevBundlerProvider;
20
20
  kernelVersion: GetKernelVersion<EntryPointVersion>;
21
21
  enableKernelV3Migration: boolean;
22
22
  publicClientRpc?: string;