@dynamic-labs/wallet-connector-core 4.0.0-alpha.5 → 4.0.0-alpha.51

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.
Files changed (116) hide show
  1. package/CHANGELOG.md +468 -0
  2. package/package.cjs +8 -0
  3. package/package.js +4 -0
  4. package/package.json +9 -16
  5. package/src/{lib/wallets/Wallet → Wallet}/Wallet.cjs +6 -6
  6. package/src/{lib/wallets/Wallet → Wallet}/Wallet.d.ts +6 -2
  7. package/src/{lib/wallets/Wallet → Wallet}/Wallet.js +6 -6
  8. package/src/{lib → WalletBookSingleton}/WalletBookSingleton.cjs +3 -0
  9. package/src/{lib → WalletBookSingleton}/WalletBookSingleton.d.ts +1 -0
  10. package/src/{lib → WalletBookSingleton}/WalletBookSingleton.js +3 -0
  11. package/src/WalletBookSingleton/index.d.ts +1 -0
  12. package/src/{lib/WalletConnector.cjs → WalletConnectorBase/WalletConnectorBase.cjs} +21 -38
  13. package/src/{lib/WalletConnector.d.ts → WalletConnectorBase/WalletConnectorBase.d.ts} +16 -45
  14. package/src/{lib/WalletConnector.js → WalletConnectorBase/WalletConnectorBase.js} +22 -37
  15. package/src/WalletConnectorBase/index.d.ts +2 -0
  16. package/src/WalletConnectorBase/types.cjs +33 -0
  17. package/src/WalletConnectorBase/types.d.ts +54 -0
  18. package/src/WalletConnectorBase/types.js +28 -0
  19. package/src/events/index.d.ts +1 -0
  20. package/src/events/walletConnectorEvents.cjs +14 -0
  21. package/src/events/walletConnectorEvents.d.ts +34 -0
  22. package/src/events/walletConnectorEvents.js +6 -0
  23. package/src/index.cjs +25 -7
  24. package/src/index.d.ts +7 -4
  25. package/src/index.js +14 -2
  26. package/src/{lib → interfaces}/IAccountAbstractionWalletConnector.d.ts +11 -2
  27. package/src/{lib → interfaces}/IBitcoinWalletConnector.d.ts +1 -1
  28. package/src/{lib → interfaces}/ICoinbaseMPCWalletConnector.d.ts +1 -1
  29. package/src/{lib → interfaces}/IEmailWalletConnector.d.ts +1 -1
  30. package/src/{lib → interfaces}/IHardwareWalletConnector.d.ts +1 -1
  31. package/src/{lib → interfaces}/IPasskeyWalletConnector.d.ts +1 -1
  32. package/src/{lib → interfaces}/IPhantomRedirectConnector.d.ts +1 -1
  33. package/src/{lib → interfaces}/ISMSWalletConnector.d.ts +1 -1
  34. package/src/{lib → interfaces}/ISendBalanceWalletConnector.d.ts +1 -1
  35. package/src/{lib → interfaces}/ISessionKeyCompatibleWalletConnector.d.ts +1 -1
  36. package/src/{lib → interfaces}/ITurnkeyWalletConnector.d.ts +1 -1
  37. package/src/interfaces/ITurnkeyWalletConnectorStamper.d.ts +35 -0
  38. package/src/{lib → interfaces}/IWalletConnectConnector.d.ts +1 -1
  39. package/src/{lib → interfaces}/index.d.ts +7 -10
  40. package/src/types.d.ts +88 -0
  41. package/src/utils/convertWalletToBaseWallet/convertWalletToBaseWallet.cjs +24 -0
  42. package/src/utils/convertWalletToBaseWallet/convertWalletToBaseWallet.d.ts +4 -0
  43. package/src/utils/convertWalletToBaseWallet/convertWalletToBaseWallet.js +19 -0
  44. package/src/utils/convertWalletToBaseWallet/index.d.ts +1 -0
  45. package/src/utils/eventListenerHandlers.d.ts +1 -1
  46. package/src/utils/getChainInfo/getChainInfo.cjs +4 -4
  47. package/src/utils/getChainInfo/getChainInfo.d.ts +2 -2
  48. package/src/utils/getChainInfo/getChainInfo.js +4 -4
  49. package/src/utils/getWalletConnectorByKey.d.ts +1 -1
  50. package/src/utils/getWalletLinks/getWalletLinks.cjs +32 -0
  51. package/src/utils/getWalletLinks/getWalletLinks.d.ts +2 -0
  52. package/src/utils/getWalletLinks/getWalletLinks.js +28 -0
  53. package/src/utils/getWalletLinks/index.d.ts +1 -0
  54. package/src/utils/getWalletMetadataFromWalletBook/getDeepLinks/getDeepLinks.cjs +36 -0
  55. package/src/utils/getWalletMetadataFromWalletBook/getDeepLinks/getDeepLinks.d.ts +6 -0
  56. package/src/utils/getWalletMetadataFromWalletBook/getDeepLinks/getDeepLinks.js +32 -0
  57. package/src/utils/getWalletMetadataFromWalletBook/getDeepLinks/index.d.ts +1 -0
  58. package/src/utils/getWalletMetadataFromWalletBook/getDownloadLinks/getDownloadLinks.cjs +36 -0
  59. package/src/utils/getWalletMetadataFromWalletBook/getDownloadLinks/getDownloadLinks.d.ts +3 -0
  60. package/src/utils/getWalletMetadataFromWalletBook/getDownloadLinks/getDownloadLinks.js +32 -0
  61. package/src/utils/getWalletMetadataFromWalletBook/getDownloadLinks/index.d.ts +1 -0
  62. package/src/utils/getWalletMetadataFromWalletBook/getIconUrl/getIconUrl.cjs +15 -0
  63. package/src/utils/getWalletMetadataFromWalletBook/getIconUrl/getIconUrl.d.ts +1 -0
  64. package/src/utils/getWalletMetadataFromWalletBook/getIconUrl/getIconUrl.js +11 -0
  65. package/src/utils/getWalletMetadataFromWalletBook/getIconUrl/index.d.ts +1 -0
  66. package/src/utils/getWalletMetadataFromWalletBook/getValidHexColor/getValidHexColor.cjs +15 -0
  67. package/src/utils/getWalletMetadataFromWalletBook/getValidHexColor/getValidHexColor.d.ts +1 -0
  68. package/src/utils/getWalletMetadataFromWalletBook/getValidHexColor/getValidHexColor.js +11 -0
  69. package/src/utils/getWalletMetadataFromWalletBook/getValidHexColor/index.d.ts +1 -0
  70. package/src/utils/getWalletMetadataFromWalletBook/getWalletLimitations/getWalletLimitations.cjs +19 -0
  71. package/src/utils/getWalletMetadataFromWalletBook/getWalletLimitations/getWalletLimitations.d.ts +3 -0
  72. package/src/utils/getWalletMetadataFromWalletBook/getWalletLimitations/getWalletLimitations.js +15 -0
  73. package/src/utils/getWalletMetadataFromWalletBook/getWalletLimitations/index.d.ts +1 -0
  74. package/src/utils/getWalletMetadataFromWalletBook/getWalletMetadataFromWalletBook.cjs +54 -0
  75. package/src/utils/getWalletMetadataFromWalletBook/getWalletMetadataFromWalletBook.d.ts +10 -0
  76. package/src/utils/getWalletMetadataFromWalletBook/getWalletMetadataFromWalletBook.js +50 -0
  77. package/src/utils/getWalletMetadataFromWalletBook/index.d.ts +1 -0
  78. package/src/utils/index.d.ts +5 -0
  79. package/src/utils/isAccountAbstractionConnector/isAccountAbstractionConnector.d.ts +1 -1
  80. package/src/utils/isBitcoinConnector/isBitcoinConnector.d.ts +1 -1
  81. package/src/utils/isBloctoConnector/isBloctoConnector.d.ts +1 -1
  82. package/src/utils/isCoinbaseMpcWalletConnector/isCoinbaseMpcWalletConnector.d.ts +1 -1
  83. package/src/utils/isConnectorEventSupported/index.d.ts +1 -0
  84. package/src/utils/isConnectorEventSupported/isConnectorEventSupported.cjs +11 -0
  85. package/src/utils/isConnectorEventSupported/isConnectorEventSupported.d.ts +3 -0
  86. package/src/utils/isConnectorEventSupported/isConnectorEventSupported.js +7 -0
  87. package/src/utils/isConnectorMethodSupported/isConnectorMethodSupported.cjs +2 -5
  88. package/src/utils/isConnectorMethodSupported/isConnectorMethodSupported.d.ts +3 -3
  89. package/src/utils/isConnectorMethodSupported/isConnectorMethodSupported.js +2 -5
  90. package/src/utils/isEmailOTPWalletConnector/isEmailOTPWalletConnector.d.ts +1 -1
  91. package/src/utils/isEmailWalletConnector/isEmailWalletConnector.d.ts +1 -1
  92. package/src/utils/isEmbeddedConnector/isEmbeddedConnector.d.ts +1 -1
  93. package/src/utils/isHardwareWalletConnector/isHardwareWalletConnector.d.ts +1 -1
  94. package/src/utils/isMagicConnector/isMagicConnector.d.ts +1 -1
  95. package/src/utils/isPasskeyWalletConnector/isPasskeyWalletConnector.d.ts +1 -1
  96. package/src/utils/isPhantomRedirectConnector/isPhantomRedirectConnector.d.ts +1 -1
  97. package/src/utils/isSendBalanceWalletConnector/isSendBalanceWalletConnector.cjs +2 -1
  98. package/src/utils/isSendBalanceWalletConnector/isSendBalanceWalletConnector.d.ts +2 -2
  99. package/src/utils/isSendBalanceWalletConnector/isSendBalanceWalletConnector.js +2 -1
  100. package/src/utils/isSessionKeyCompatible/isSessionKeyCompatibleWallet/isSessionKeyCompatibleWallet.d.ts +1 -1
  101. package/src/utils/isSessionKeyCompatible/isSessionKeyCompatibleWalletConnector/isSessionKeyCompatibleWalletConnector.d.ts +2 -2
  102. package/src/utils/isSocialWalletConnector/isSocialWalletConnector.d.ts +1 -1
  103. package/src/utils/isTurnkeyWalletConnector/isTurnkeyWalletConnector.d.ts +1 -1
  104. package/src/utils/isWalletConnectConnector/isWalletConnectConnector.d.ts +1 -1
  105. package/src/utils/walletConnectDeepLinks/performPlatformSpecificConnectionMethod.cjs +3 -3
  106. package/src/utils/walletConnectDeepLinks/performPlatformSpecificConnectionMethod.d.ts +3 -3
  107. package/src/utils/walletConnectDeepLinks/performPlatformSpecificConnectionMethod.js +3 -3
  108. package/src/utils/walletConnectDeepLinks/walletConnectDeepLinks.cjs +11 -8
  109. package/src/utils/walletConnectDeepLinks/walletConnectDeepLinks.d.ts +3 -3
  110. package/src/utils/walletConnectDeepLinks/walletConnectDeepLinks.js +11 -8
  111. package/src/lib/ITurnkeyWalletConnectorStamper.d.ts +0 -18
  112. package/src/lib/WalletConnectorExtension.d.ts +0 -7
  113. package/src/lib/types.d.ts +0 -8
  114. package/src/lib/wallets/index.d.ts +0 -1
  115. /package/src/{lib/wallets/Wallet → Wallet}/index.d.ts +0 -0
  116. /package/src/{lib → interfaces}/IEmailOTPWalletConnector.d.ts +0 -0
@@ -10,6 +10,9 @@ class WalletBookSingleton {
10
10
  }
11
11
  return WalletBookSingleton.instance;
12
12
  }
13
+ static reset() {
14
+ WalletBookSingleton.instance = undefined;
15
+ }
13
16
  }
14
17
 
15
18
  export { WalletBookSingleton };
@@ -0,0 +1 @@
1
+ export * from './WalletBookSingleton';
@@ -5,13 +5,15 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
6
  var _tslib = require('../../_virtual/_tslib.cjs');
7
7
  var EventEmitter = require('eventemitter3');
8
- var walletBook = require('@dynamic-labs/wallet-book');
9
8
  var utils = require('@dynamic-labs/utils');
9
+ var walletConnectorEvents = require('../events/walletConnectorEvents.cjs');
10
10
  var logger = require('../utils/logger.cjs');
11
11
  var isSameAddress = require('../utils/isSameAddress/isSameAddress.cjs');
12
12
  var getMobileExperience = require('../utils/getMobileExperience/getMobileExperience.cjs');
13
+ var getWalletMetadataFromWalletBook = require('../utils/getWalletMetadataFromWalletBook/getWalletMetadataFromWalletBook.cjs');
13
14
  var isConnectorMethodSupported = require('../utils/isConnectorMethodSupported/isConnectorMethodSupported.cjs');
14
- var WalletBookSingleton = require('./WalletBookSingleton.cjs');
15
+ require('@dynamic-labs/wallet-book');
16
+ var WalletBookSingleton = require('../WalletBookSingleton/WalletBookSingleton.cjs');
15
17
 
16
18
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
17
19
 
@@ -22,31 +24,6 @@ var EventEmitter__default = /*#__PURE__*/_interopDefaultLegacy(EventEmitter);
22
24
  /* eslint-disable prefer-arrow/prefer-arrow-functions */
23
25
  /* eslint-disable @typescript-eslint/no-unused-vars */
24
26
  var _WalletConnectorBase_registeredExtensions;
25
- /* eslint-disable @typescript-eslint/no-empty-interface */
26
- const Chains = [
27
- 'ETH',
28
- 'FLOW',
29
- 'SOL',
30
- 'EVM',
31
- 'ALGO',
32
- 'STARK',
33
- 'ATOM',
34
- 'COSMOS',
35
- 'BTC',
36
- ];
37
- const socialProviders = [
38
- 'google',
39
- 'facebook',
40
- 'apple',
41
- 'github',
42
- 'bitbucket',
43
- 'gitlab',
44
- 'linkedin',
45
- 'twitter',
46
- 'discord',
47
- 'twitch',
48
- 'microsoft',
49
- ];
50
27
  class WalletConnectorBase extends EventEmitter__default["default"] {
51
28
  createWallet(props) {
52
29
  const wallet = new this.ChainWallet(props);
@@ -126,6 +103,10 @@ class WalletConnectorBase extends EventEmitter__default["default"] {
126
103
  this.isInitialized = true;
127
104
  this.constructorProps = props;
128
105
  this._walletBookInstance = WalletBookSingleton.WalletBookSingleton.getOrCreate(props.walletBook);
106
+ this._metadata = props.metadata;
107
+ this.walletConnectorEventsEmitter =
108
+ this.constructorProps.walletConnectorEventsEmitter ||
109
+ walletConnectorEvents.walletConnectorEvents;
129
110
  if (this.walletBook === undefined) {
130
111
  throw new Error('WalletConnectorBase was not called with super(props) and is missing wallet-book');
131
112
  }
@@ -156,13 +137,7 @@ class WalletConnectorBase extends EventEmitter__default["default"] {
156
137
  return this._walletBookInstance.walletBook;
157
138
  }
158
139
  filter() {
159
- try {
160
- walletBook.getWalletBookWallet(this.walletBook, this.key, this.walletFallback);
161
- return true;
162
- }
163
- catch (_a) {
164
- return false;
165
- }
140
+ return true;
166
141
  }
167
142
  get mobileExperience() {
168
143
  return getMobileExperience.getMobileExperience({
@@ -307,6 +282,16 @@ class WalletConnectorBase extends EventEmitter__default["default"] {
307
282
  get key() {
308
283
  return this.overrideKey || this.name.replace(/\W/g, '').toLowerCase();
309
284
  }
285
+ get metadata() {
286
+ var _a;
287
+ if (!this._metadata) {
288
+ this._metadata = getWalletMetadataFromWalletBook.getWalletMetadataFromWalletBook({
289
+ walletBook: this.walletBook,
290
+ walletKey: this.key,
291
+ });
292
+ }
293
+ return (_a = this._metadata) !== null && _a !== void 0 ? _a : { icon: '', id: this.key, name: this.name };
294
+ }
310
295
  /**
311
296
  * Whether the wallet connector should fall back to a different wallet connector
312
297
  * This is called after the object is instantiated, so it can't be a static property
@@ -341,7 +326,7 @@ class WalletConnectorBase extends EventEmitter__default["default"] {
341
326
  *
342
327
  * @default Promise<undefined>
343
328
  */
344
- signMessage(messageToSign, withAddress) {
329
+ signMessage(messageToSign, options) {
345
330
  return Promise.resolve(undefined);
346
331
  }
347
332
  /**
@@ -418,7 +403,7 @@ class WalletConnectorBase extends EventEmitter__default["default"] {
418
403
  validateActiveWallet(expectedAddress) {
419
404
  return _tslib.__awaiter(this, void 0, void 0, function* () {
420
405
  logger.logger.debug('validateActiveWallet - validating wallet', expectedAddress);
421
- const canFetchConnectedAccounts = isConnectorMethodSupported.isConnectorMethodSupported(this, 'getConnectedAccounts', 'browserExtension');
406
+ const canFetchConnectedAccounts = isConnectorMethodSupported.isConnectorMethodSupported(this, 'getConnectedAccounts', 'desktop');
422
407
  logger.logger.debug('validateActiveWallet - getting connected accounts', {
423
408
  canFetchConnectedAccounts,
424
409
  });
@@ -458,6 +443,4 @@ class WalletConnectorBase extends EventEmitter__default["default"] {
458
443
  }
459
444
  _WalletConnectorBase_registeredExtensions = new WeakMap();
460
445
 
461
- exports.Chains = Chains;
462
446
  exports.WalletConnectorBase = WalletConnectorBase;
463
- exports.socialProviders = socialProviders;
@@ -1,61 +1,28 @@
1
1
  import EventEmitter from 'eventemitter3';
2
- import { WalletBookSchema, WalletSchema } from '@dynamic-labs/wallet-book';
3
- import type { JwtVerifiedCredential, WalletAdditionalAddress } from '@dynamic-labs/sdk-api-core';
4
2
  import { IChainRpcProviders } from '@dynamic-labs/rpc-providers';
3
+ import type { JwtVerifiedCredential, WalletAdditionalAddress } from '@dynamic-labs/sdk-api-core';
5
4
  import { MobileExperience } from '@dynamic-labs/types';
6
- import { WalletBookSingleton } from './WalletBookSingleton';
7
- import { WalletConnectorExtension } from './WalletConnectorExtension';
8
- import { WalletConnectorCore } from './types';
9
- import { WalletConstructor, WalletProps } from './wallets';
10
- export declare const Chains: readonly ["ETH", "FLOW", "SOL", "EVM", "ALGO", "STARK", "ATOM", "COSMOS", "BTC"];
11
- export type Chain = typeof Chains[number];
12
- export declare const socialProviders: readonly ["google", "facebook", "apple", "github", "bitbucket", "gitlab", "linkedin", "twitter", "discord", "twitch", "microsoft"];
13
- export type SocialProvider = typeof socialProviders[number];
14
- export type PayloadParams = {
15
- params: {
16
- accounts: string[];
17
- chainId: number;
18
- message: string;
19
- }[];
20
- };
21
- export type GetAddressOpts = {
22
- chainId?: string;
23
- onConnect?(payload: PayloadParams): void;
24
- onDesktopUri?(uri: string): void;
25
- onDisplayUri?(uri: string): void;
26
- };
27
- export type NameServiceData = {
28
- avatar?: string;
29
- name?: string;
30
- };
31
- declare module './types' {
5
+ import { WalletBookSchema, WalletSchema } from '@dynamic-labs/wallet-book';
6
+ import { WalletConnectorEventEmitter } from '../events';
7
+ import { WalletMetadata } from '../types';
8
+ import { WalletConstructor, WalletProps } from '../Wallet';
9
+ import { WalletBookSingleton } from '../WalletBookSingleton';
10
+ import { Chain, GetAddressOpts, InternalWalletConnector, NameServiceData, WalletConnectorEventTypes, WalletConnectorExtension } from './types';
11
+ declare module '../types' {
32
12
  namespace WalletConnectorCore {
33
13
  interface WalletConnector extends WalletConnectorBase {
34
14
  }
35
15
  }
36
16
  }
37
- export type InternalWalletConnector = WalletConnectorCore.WalletConnector;
38
- export type WalletConnector = Pick<InternalWalletConnector, 'canConnectViaCustodialService' | 'canConnectViaQrCode' | 'canConnectViaSocial' | 'chainRpcProviders' | 'connect' | 'connectedChain' | 'createWallet' | 'constructorProps' | 'endSession' | 'getAddress' | 'getAdditionalAddresses' | 'getConnectedAccounts' | 'getDeepLink' | 'getMobileOrInstalledWallet' | 'getNetwork' | 'getSession' | 'initEventListener' | 'isAvailable' | 'isEmbeddedWallet' | 'isInitialized' | 'isInstalledOnBrowser' | 'isTestnet' | 'isWalletConnect' | 'key' | 'name' | 'parseAddress' | 'proveOwnership' | 'providerResources' | 'supportedChains' | 'supportsNetworkSwitching' | 'switchNetwork' | 'switchNetworkOnlyFromWallet' | 'teardownEventListeners'> & EventEmitter<WalletConnectorEventTypes>;
39
- export interface WalletConnectorConstructor {
40
- new (props?: any): InternalWalletConnector;
41
- }
42
- export type WalletConnectorsMethod = (props?: any) => WalletConnectorConstructor[];
43
- export type WalletConnectorEventTypes = {
44
- chainChange: (props: {
45
- chain: string;
46
- }) => void;
47
- accountChange: (props: {
48
- accounts: string[];
49
- }) => void;
50
- disconnect: () => void;
51
- };
52
17
  export declare abstract class WalletConnectorBase<C extends WalletConstructor<any> = WalletConstructor<any>> extends EventEmitter<WalletConnectorEventTypes> {
53
18
  #private;
54
19
  abstract ChainWallet: C;
55
- createWallet(props: WalletProps<InternalWalletConnector>): import("./wallets").Wallet<any>;
20
+ createWallet(props: WalletProps<InternalWalletConnector>): import("../Wallet").Wallet<any>;
56
21
  chainRpcProviders: IChainRpcProviders | undefined;
57
22
  constructorProps: any;
58
23
  _walletBookInstance: WalletBookSingleton;
24
+ _metadata: WalletMetadata | undefined;
25
+ walletConnectorEventsEmitter: WalletConnectorEventEmitter;
59
26
  walletFallback: WalletSchema | undefined;
60
27
  isGlobalTransaction: boolean;
61
28
  /**
@@ -66,6 +33,7 @@ export declare abstract class WalletConnectorBase<C extends WalletConstructor<an
66
33
  */
67
34
  constructor(props: {
68
35
  walletBook: WalletBookSchema;
36
+ metadata?: WalletMetadata;
69
37
  });
70
38
  extend(extension: WalletConnectorExtension, settings?: {
71
39
  walletConnectDappProjectId?: string;
@@ -252,6 +220,7 @@ export declare abstract class WalletConnectorBase<C extends WalletConstructor<an
252
220
  * Override key or the normalized wallet name if needed
253
221
  */
254
222
  get key(): string;
223
+ get metadata(): WalletMetadata;
255
224
  /**
256
225
  * Wallet name
257
226
  */
@@ -291,7 +260,9 @@ export declare abstract class WalletConnectorBase<C extends WalletConstructor<an
291
260
  *
292
261
  * @default Promise<undefined>
293
262
  */
294
- signMessage(messageToSign: string, withAddress?: string): Promise<string | undefined>;
263
+ signMessage(messageToSign: string, options?: {
264
+ address?: string;
265
+ }): Promise<string | undefined>;
295
266
  /**
296
267
  * List of supported chains for this wallet
297
268
  */
@@ -1,44 +1,21 @@
1
1
  'use client'
2
2
  import { __classPrivateFieldGet, __awaiter } from '../../_virtual/_tslib.js';
3
3
  import EventEmitter from 'eventemitter3';
4
- import { getWalletBookWallet } from '@dynamic-labs/wallet-book';
5
4
  import { WalletAddressMismatchError } from '@dynamic-labs/utils';
5
+ import { walletConnectorEvents } from '../events/walletConnectorEvents.js';
6
6
  import { logger } from '../utils/logger.js';
7
7
  import { isSameAddress } from '../utils/isSameAddress/isSameAddress.js';
8
8
  import { getMobileExperience } from '../utils/getMobileExperience/getMobileExperience.js';
9
+ import { getWalletMetadataFromWalletBook } from '../utils/getWalletMetadataFromWalletBook/getWalletMetadataFromWalletBook.js';
9
10
  import { isConnectorMethodSupported } from '../utils/isConnectorMethodSupported/isConnectorMethodSupported.js';
10
- import { WalletBookSingleton } from './WalletBookSingleton.js';
11
+ import '@dynamic-labs/wallet-book';
12
+ import { WalletBookSingleton } from '../WalletBookSingleton/WalletBookSingleton.js';
11
13
 
12
14
  /* eslint-disable @typescript-eslint/triple-slash-reference */
13
15
  /* eslint-disable @typescript-eslint/no-namespace */
14
16
  /* eslint-disable prefer-arrow/prefer-arrow-functions */
15
17
  /* eslint-disable @typescript-eslint/no-unused-vars */
16
18
  var _WalletConnectorBase_registeredExtensions;
17
- /* eslint-disable @typescript-eslint/no-empty-interface */
18
- const Chains = [
19
- 'ETH',
20
- 'FLOW',
21
- 'SOL',
22
- 'EVM',
23
- 'ALGO',
24
- 'STARK',
25
- 'ATOM',
26
- 'COSMOS',
27
- 'BTC',
28
- ];
29
- const socialProviders = [
30
- 'google',
31
- 'facebook',
32
- 'apple',
33
- 'github',
34
- 'bitbucket',
35
- 'gitlab',
36
- 'linkedin',
37
- 'twitter',
38
- 'discord',
39
- 'twitch',
40
- 'microsoft',
41
- ];
42
19
  class WalletConnectorBase extends EventEmitter {
43
20
  createWallet(props) {
44
21
  const wallet = new this.ChainWallet(props);
@@ -118,6 +95,10 @@ class WalletConnectorBase extends EventEmitter {
118
95
  this.isInitialized = true;
119
96
  this.constructorProps = props;
120
97
  this._walletBookInstance = WalletBookSingleton.getOrCreate(props.walletBook);
98
+ this._metadata = props.metadata;
99
+ this.walletConnectorEventsEmitter =
100
+ this.constructorProps.walletConnectorEventsEmitter ||
101
+ walletConnectorEvents;
121
102
  if (this.walletBook === undefined) {
122
103
  throw new Error('WalletConnectorBase was not called with super(props) and is missing wallet-book');
123
104
  }
@@ -148,13 +129,7 @@ class WalletConnectorBase extends EventEmitter {
148
129
  return this._walletBookInstance.walletBook;
149
130
  }
150
131
  filter() {
151
- try {
152
- getWalletBookWallet(this.walletBook, this.key, this.walletFallback);
153
- return true;
154
- }
155
- catch (_a) {
156
- return false;
157
- }
132
+ return true;
158
133
  }
159
134
  get mobileExperience() {
160
135
  return getMobileExperience({
@@ -299,6 +274,16 @@ class WalletConnectorBase extends EventEmitter {
299
274
  get key() {
300
275
  return this.overrideKey || this.name.replace(/\W/g, '').toLowerCase();
301
276
  }
277
+ get metadata() {
278
+ var _a;
279
+ if (!this._metadata) {
280
+ this._metadata = getWalletMetadataFromWalletBook({
281
+ walletBook: this.walletBook,
282
+ walletKey: this.key,
283
+ });
284
+ }
285
+ return (_a = this._metadata) !== null && _a !== void 0 ? _a : { icon: '', id: this.key, name: this.name };
286
+ }
302
287
  /**
303
288
  * Whether the wallet connector should fall back to a different wallet connector
304
289
  * This is called after the object is instantiated, so it can't be a static property
@@ -333,7 +318,7 @@ class WalletConnectorBase extends EventEmitter {
333
318
  *
334
319
  * @default Promise<undefined>
335
320
  */
336
- signMessage(messageToSign, withAddress) {
321
+ signMessage(messageToSign, options) {
337
322
  return Promise.resolve(undefined);
338
323
  }
339
324
  /**
@@ -410,7 +395,7 @@ class WalletConnectorBase extends EventEmitter {
410
395
  validateActiveWallet(expectedAddress) {
411
396
  return __awaiter(this, void 0, void 0, function* () {
412
397
  logger.debug('validateActiveWallet - validating wallet', expectedAddress);
413
- const canFetchConnectedAccounts = isConnectorMethodSupported(this, 'getConnectedAccounts', 'browserExtension');
398
+ const canFetchConnectedAccounts = isConnectorMethodSupported(this, 'getConnectedAccounts', 'desktop');
414
399
  logger.debug('validateActiveWallet - getting connected accounts', {
415
400
  canFetchConnectedAccounts,
416
401
  });
@@ -450,4 +435,4 @@ class WalletConnectorBase extends EventEmitter {
450
435
  }
451
436
  _WalletConnectorBase_registeredExtensions = new WeakMap();
452
437
 
453
- export { Chains, WalletConnectorBase, socialProviders };
438
+ export { WalletConnectorBase };
@@ -0,0 +1,2 @@
1
+ export * from './WalletConnectorBase';
2
+ export * from './types';
@@ -0,0 +1,33 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ const Chains = [
7
+ 'ETH',
8
+ 'FLOW',
9
+ 'SOL',
10
+ 'EVM',
11
+ 'ALGO',
12
+ 'STARK',
13
+ 'ATOM',
14
+ 'COSMOS',
15
+ 'BTC',
16
+ 'ECLIPSE',
17
+ ];
18
+ const socialProviders = [
19
+ 'google',
20
+ 'facebook',
21
+ 'apple',
22
+ 'github',
23
+ 'bitbucket',
24
+ 'gitlab',
25
+ 'linkedin',
26
+ 'twitter',
27
+ 'discord',
28
+ 'twitch',
29
+ 'microsoft',
30
+ ];
31
+
32
+ exports.Chains = Chains;
33
+ exports.socialProviders = socialProviders;
@@ -0,0 +1,54 @@
1
+ import EventEmitter from 'eventemitter3';
2
+ import { WalletConnectorCore } from '../types';
3
+ export declare const Chains: readonly ["ETH", "FLOW", "SOL", "EVM", "ALGO", "STARK", "ATOM", "COSMOS", "BTC", "ECLIPSE"];
4
+ export type Chain = typeof Chains[number];
5
+ export declare const socialProviders: readonly ["google", "facebook", "apple", "github", "bitbucket", "gitlab", "linkedin", "twitter", "discord", "twitch", "microsoft"];
6
+ export type SocialProvider = typeof socialProviders[number];
7
+ export type PayloadParams = {
8
+ params: {
9
+ accounts: string[];
10
+ chainId: number;
11
+ message: string;
12
+ }[];
13
+ };
14
+ export type GetAddressOpts = {
15
+ chainId?: string;
16
+ onConnect?(payload: PayloadParams): void;
17
+ onDesktopUri?(uri: string): void;
18
+ onDisplayUri?(uri: string): void;
19
+ };
20
+ export type NameServiceData = {
21
+ avatar?: string;
22
+ name?: string;
23
+ };
24
+ export type InternalWalletConnector = WalletConnectorCore.WalletConnector;
25
+ export type WalletConnector = Pick<InternalWalletConnector, 'canConnectViaCustodialService' | 'canConnectViaQrCode' | 'canConnectViaSocial' | 'chainRpcProviders' | 'connect' | 'connectedChain' | 'createWallet' | 'constructorProps' | 'endSession' | 'getAddress' | 'getAdditionalAddresses' | 'getConnectedAccounts' | 'getDeepLink' | 'getMobileOrInstalledWallet' | 'getNetwork' | 'getSession' | 'initEventListener' | 'isAvailable' | 'isEmbeddedWallet' | 'isInitialized' | 'isInstalledOnBrowser' | 'isTestnet' | 'isWalletConnect' | 'key' | 'metadata' | 'name' | 'parseAddress' | 'proveOwnership' | 'providerResources' | 'supportedChains' | 'supportsNetworkSwitching' | 'switchNetwork' | 'switchNetworkOnlyFromWallet' | 'teardownEventListeners'> & EventEmitter<WalletConnectorEventTypes>;
26
+ export interface WalletConnectorConstructor {
27
+ new (props?: any): InternalWalletConnector;
28
+ }
29
+ export type WalletConnectorsMethod = (props?: any) => WalletConnectorConstructor[];
30
+ export type WalletConnectorEventTypes = {
31
+ chainChange: (props: {
32
+ chain: string;
33
+ }) => void;
34
+ accountChange: (props: {
35
+ accounts: string[];
36
+ }) => void;
37
+ disconnect: () => void;
38
+ };
39
+ export interface WalletConnectorExtension {
40
+ extend(connector: InternalWalletConnector, settings?: {
41
+ walletConnectDappProjectId?: string;
42
+ }): void;
43
+ name: string;
44
+ }
45
+ export type ChainChangeEventHandler = (chainId: string | number) => Promise<void>;
46
+ export type DisconnectEventHandler = (error?: {
47
+ code: number;
48
+ }) => Promise<void>;
49
+ export type ChainInfo = {
50
+ blockchainName: string;
51
+ displayName: string;
52
+ name: string;
53
+ symbol: Chain;
54
+ };
@@ -0,0 +1,28 @@
1
+ 'use client'
2
+ const Chains = [
3
+ 'ETH',
4
+ 'FLOW',
5
+ 'SOL',
6
+ 'EVM',
7
+ 'ALGO',
8
+ 'STARK',
9
+ 'ATOM',
10
+ 'COSMOS',
11
+ 'BTC',
12
+ 'ECLIPSE',
13
+ ];
14
+ const socialProviders = [
15
+ 'google',
16
+ 'facebook',
17
+ 'apple',
18
+ 'github',
19
+ 'bitbucket',
20
+ 'gitlab',
21
+ 'linkedin',
22
+ 'twitter',
23
+ 'discord',
24
+ 'twitch',
25
+ 'microsoft',
26
+ ];
27
+
28
+ export { Chains, socialProviders };
@@ -0,0 +1 @@
1
+ export * from './walletConnectorEvents';
@@ -0,0 +1,14 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var EventEmitter = require('eventemitter3');
7
+
8
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
+
10
+ var EventEmitter__default = /*#__PURE__*/_interopDefaultLegacy(EventEmitter);
11
+
12
+ const walletConnectorEvents = new EventEmitter__default["default"]();
13
+
14
+ exports.walletConnectorEvents = walletConnectorEvents;
@@ -0,0 +1,34 @@
1
+ import EventEmitter from 'eventemitter3';
2
+ import { InternalWalletConnector, WalletConnectorConstructor } from '../WalletConnectorBase';
3
+ type AutoConnectEventProps = {
4
+ connector: InternalWalletConnector;
5
+ };
6
+ type ProviderReadyEventProps = {
7
+ connector: InternalWalletConnector;
8
+ };
9
+ type ProviderInjectedEventProps = {
10
+ injectedConnectorConstructor: WalletConnectorConstructor;
11
+ };
12
+ export type WalletConnectorEvents = {
13
+ /**
14
+ * This is useful for when we want to auto-connect/login with a wallet
15
+ * without the user having to select it from the list, as long as
16
+ * the wallet is already connected to the dapp
17
+ *
18
+ * For example, we can auto-connect to a Safe wallet from a a Safe App
19
+ */
20
+ autoConnect: (props: AutoConnectEventProps) => void;
21
+ /**
22
+ * This is useful for when we want to know when the wallet provider
23
+ * is ready to be used
24
+ */
25
+ providerReady: (props: ProviderReadyEventProps) => void;
26
+ /**
27
+ * This is emitted when a wallet gets announced (eip6963, bitcoin wallet standard, solana wallet standard, etc)
28
+ * It contains the constructor of the wallet connector that was injected
29
+ */
30
+ providerInjected: (props: ProviderInjectedEventProps) => void;
31
+ };
32
+ export declare const walletConnectorEvents: EventEmitter<WalletConnectorEvents, any>;
33
+ export type WalletConnectorEventEmitter = typeof walletConnectorEvents;
34
+ export {};
@@ -0,0 +1,6 @@
1
+ 'use client'
2
+ import EventEmitter from 'eventemitter3';
3
+
4
+ const walletConnectorEvents = new EventEmitter();
5
+
6
+ export { walletConnectorEvents };
package/src/index.cjs CHANGED
@@ -3,8 +3,9 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var WalletConnector = require('./lib/WalletConnector.cjs');
7
- var Wallet = require('./lib/wallets/Wallet/Wallet.cjs');
6
+ var assertPackageVersion = require('@dynamic-labs/assert-package-version');
7
+ var _package = require('../package.cjs');
8
+ var walletConnectorEvents = require('./events/walletConnectorEvents.cjs');
8
9
  var logger = require('./utils/logger.cjs');
9
10
  var ProviderLookup = require('./utils/ProviderLookup/ProviderLookup.cjs');
10
11
  var getChainInfo = require('./utils/getChainInfo/getChainInfo.cjs');
@@ -35,13 +36,19 @@ var isSendBalanceWalletConnector = require('./utils/isSendBalanceWalletConnector
35
36
  var isSessionKeyCompatibleWallet = require('./utils/isSessionKeyCompatible/isSessionKeyCompatibleWallet/isSessionKeyCompatibleWallet.cjs');
36
37
  var isSessionKeyCompatibleWalletConnector = require('./utils/isSessionKeyCompatible/isSessionKeyCompatibleWalletConnector/isSessionKeyCompatibleWalletConnector.cjs');
37
38
  var getMobileExperience = require('./utils/getMobileExperience/getMobileExperience.cjs');
39
+ var getWalletMetadataFromWalletBook = require('./utils/getWalletMetadataFromWalletBook/getWalletMetadataFromWalletBook.cjs');
40
+ var isConnectorMethodSupported = require('./utils/isConnectorMethodSupported/isConnectorMethodSupported.cjs');
41
+ var isConnectorEventSupported = require('./utils/isConnectorEventSupported/isConnectorEventSupported.cjs');
42
+ var getWalletLinks = require('./utils/getWalletLinks/getWalletLinks.cjs');
43
+ var convertWalletToBaseWallet = require('./utils/convertWalletToBaseWallet/convertWalletToBaseWallet.cjs');
44
+ var Wallet = require('./Wallet/Wallet.cjs');
45
+ var WalletConnectorBase = require('./WalletConnectorBase/WalletConnectorBase.cjs');
46
+ var types = require('./WalletConnectorBase/types.cjs');
47
+ var WalletBookSingleton = require('./WalletBookSingleton/WalletBookSingleton.cjs');
38
48
 
49
+ assertPackageVersion.assertPackageVersion('@dynamic-labs/wallet-connector-core', _package.version);
39
50
 
40
-
41
- exports.Chains = WalletConnector.Chains;
42
- exports.WalletConnectorBase = WalletConnector.WalletConnectorBase;
43
- exports.socialProviders = WalletConnector.socialProviders;
44
- exports.Wallet = Wallet.Wallet;
51
+ exports.walletConnectorEvents = walletConnectorEvents.walletConnectorEvents;
45
52
  exports.logger = logger.logger;
46
53
  exports.ProviderLookup = ProviderLookup.ProviderLookup;
47
54
  exports.getChainInfo = getChainInfo.getChainInfo;
@@ -76,3 +83,14 @@ exports.isSendBalanceWalletConnector = isSendBalanceWalletConnector.isSendBalanc
76
83
  exports.isSessionKeyCompatibleWallet = isSessionKeyCompatibleWallet.isSessionKeyCompatibleWallet;
77
84
  exports.isSessionKeyCompatibleWalletConnector = isSessionKeyCompatibleWalletConnector.isSessionKeyCompatibleWalletConnector;
78
85
  exports.getMobileExperience = getMobileExperience.getMobileExperience;
86
+ exports.getWalletMetadataFromWalletBook = getWalletMetadataFromWalletBook.getWalletMetadataFromWalletBook;
87
+ exports.isConnectorMethodSupported = isConnectorMethodSupported.isConnectorMethodSupported;
88
+ exports.isConnectorEventSupported = isConnectorEventSupported.isConnectorEventSupported;
89
+ exports.getWalletLinks = getWalletLinks.getWalletLinks;
90
+ exports.convertWalletToBaseWallet = convertWalletToBaseWallet.convertWalletToBaseWallet;
91
+ exports.convertWalletToBaseWalletPartial = convertWalletToBaseWallet.convertWalletToBaseWalletPartial;
92
+ exports.Wallet = Wallet.Wallet;
93
+ exports.WalletConnectorBase = WalletConnectorBase.WalletConnectorBase;
94
+ exports.Chains = types.Chains;
95
+ exports.socialProviders = types.socialProviders;
96
+ exports.WalletBookSingleton = WalletBookSingleton.WalletBookSingleton;
package/src/index.d.ts CHANGED
@@ -1,4 +1,7 @@
1
- export { Chains, Wallet, WalletConnectorBase, socialProviders, type Attestation, type AuthenticatorRecoveryHandler, type AuthenticatorType, type BitcoinSignPsbtRequest, type BitcoinSignPsbtRequestSignature, type BitcoinSignPsbtResponse, type Chain, type ChainInfo, type ExportHandler, type ExtendedPrivateKey, type GetAddressOpts, type IAccountAbstractionWalletConnector, type IBitcoinWalletConnector, type ICoinbaseMPCWalletConnector, type IEmailOTPWalletConnector, type IEmailWalletConnector, type IHardwareWalletConnector, type ITurnkeyWalletConnector, type InternalWalletConnector, type IPasskeyWalletConnector, type IPhantomRedirectConnector, type IPhantomRedirectConnectorWithEvents, type ISMSWalletConnector, type ISendBalanceWalletConnector, type ISessionKeyCompatibleWalletConnector, type ITurnkeyWalletConnectorStamper, type IWalletConnectConnector, type NameServiceData, type PayloadParams, type RawPrivateKey, type RecoveryEmailParams, type RecoveryWebAuthnAttestation, type SignAllTransactionsListener, type SignAndSendTransactionListener, type SignMessageListener, type SignTransactionListener, type SocialProvider, type WalletConnector, type WalletConnectorConstructor, type WalletConnectorCore, type WalletConnectorEventTypes, type WalletConnectorsMethod, type WalletConstructor, type WalletProps, type WebAuthnAttestation, } from './lib';
2
- export type { WalletConnectorExtension } from './lib/WalletConnectorExtension';
3
- export type { AccountChangeEventHandler, ChainChangeEventHandler, DisconnectEventHandler, } from './types';
4
- export { ProviderLookup, addHexPrefix, bufferToHex, eventListenerHandlers, getChainInfo, getChainInfoWithOverrides, setChainInfoOverrides, getDeepLink, getMobileExperience, getRpcUrlForChain, getWalletConnectorByKey, isAccountAbstractionConnector, isBitcoinConnector, isBloctoConnector, isCoinbaseMpcWalletConnector, isTurnkeyWalletConnector, isEmailOTPWalletConnector, isEmailWalletConnector, isEmbeddedConnector, isHardwareWalletConnector, isHex, isMagicConnector, isPasskeyWalletConnector, isPhantomRedirectConnector, isSameAddress, isSendBalanceWalletConnector, isSessionKeyCompatibleWallet, isSessionKeyCompatibleWalletConnector, isSocialWalletConnector, isWalletConnectConnector, logger, performPlatformSpecificConnectionMethod, shouldLowercaseAddress, utf8ToHex, type DeepLinkVariant, type ProviderCondition, type ChainDisplayOverrides, } from './utils';
1
+ export { walletConnectorEvents } from './events';
2
+ export { type Attestation, type AuthenticatorRecoveryHandler, type AuthenticatorType, type BitcoinSignPsbtRequest, type BitcoinSignPsbtRequestSignature, type BitcoinSignPsbtResponse, type ExportHandler, type ExtendedPrivateKey, type IAccountAbstractionWalletConnector, type IBitcoinWalletConnector, type ICoinbaseMPCWalletConnector, type IEmailOTPWalletConnector, type IEmailWalletConnector, type IHardwareWalletConnector, type IPasskeyWalletConnector, type IPhantomRedirectConnector, type IPhantomRedirectConnectorWithEvents, type ISendBalanceWalletConnector, type ISessionKeyCompatibleWalletConnector, type ISMSWalletConnector, type ITurnkeyWalletConnector, type ITurnkeyWalletConnectorStamper, type IWalletConnectConnector, type RawPrivateKey, type RecoveryEmailParams, type RecoveryWebAuthnAttestation, type SignAllTransactionsListener, type SignAndSendTransactionListener, type SignMessageListener, type SignTransactionListener, type WebAuthnAttestation, } from './interfaces';
3
+ export type { AccountChangeEventHandler, ChainChangeEventHandler, DisconnectEventHandler, WalletConnectorCore, WalletMetadata, WalletDeepLinks, WalletDownloadLinks, WalletLimitations, WalletLinks, } from './types';
4
+ export { addHexPrefix, bufferToHex, eventListenerHandlers, getChainInfo, getChainInfoWithOverrides, getDeepLink, getMobileExperience, getRpcUrlForChain, getWalletConnectorByKey, isAccountAbstractionConnector, isBitcoinConnector, isBloctoConnector, isCoinbaseMpcWalletConnector, isEmailOTPWalletConnector, isEmailWalletConnector, isEmbeddedConnector, isHardwareWalletConnector, isHex, isMagicConnector, isPasskeyWalletConnector, isPhantomRedirectConnector, isSameAddress, isSendBalanceWalletConnector, isSessionKeyCompatibleWallet, isSessionKeyCompatibleWalletConnector, isSocialWalletConnector, isTurnkeyWalletConnector, isWalletConnectConnector, isConnectorMethodSupported, isConnectorEventSupported, getWalletMetadataFromWalletBook, getWalletLinks, logger, performPlatformSpecificConnectionMethod, ProviderLookup, setChainInfoOverrides, shouldLowercaseAddress, utf8ToHex, convertWalletToBaseWallet, convertWalletToBaseWalletPartial, type ChainDisplayOverrides, type DeepLinkVariant, type ProviderCondition, } from './utils';
5
+ export { Wallet, type WalletConstructor, type WalletProps } from './Wallet';
6
+ export { Chains, socialProviders, WalletConnectorBase, type Chain, type ChainInfo, type GetAddressOpts, type InternalWalletConnector, type NameServiceData, type PayloadParams, type SocialProvider, type WalletConnector, type WalletConnectorConstructor, type WalletConnectorEventTypes, type WalletConnectorExtension, type WalletConnectorsMethod, } from './WalletConnectorBase';
7
+ export { WalletBookSingleton } from './WalletBookSingleton';
package/src/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  'use client'
2
- export { Chains, WalletConnectorBase, socialProviders } from './lib/WalletConnector.js';
3
- export { Wallet } from './lib/wallets/Wallet/Wallet.js';
2
+ import { assertPackageVersion } from '@dynamic-labs/assert-package-version';
3
+ import { version } from '../package.js';
4
+ export { walletConnectorEvents } from './events/walletConnectorEvents.js';
4
5
  export { logger } from './utils/logger.js';
5
6
  export { ProviderLookup } from './utils/ProviderLookup/ProviderLookup.js';
6
7
  export { getChainInfo, getChainInfoWithOverrides, setChainInfoOverrides } from './utils/getChainInfo/getChainInfo.js';
@@ -31,3 +32,14 @@ export { isSendBalanceWalletConnector } from './utils/isSendBalanceWalletConnect
31
32
  export { isSessionKeyCompatibleWallet } from './utils/isSessionKeyCompatible/isSessionKeyCompatibleWallet/isSessionKeyCompatibleWallet.js';
32
33
  export { isSessionKeyCompatibleWalletConnector } from './utils/isSessionKeyCompatible/isSessionKeyCompatibleWalletConnector/isSessionKeyCompatibleWalletConnector.js';
33
34
  export { getMobileExperience } from './utils/getMobileExperience/getMobileExperience.js';
35
+ export { getWalletMetadataFromWalletBook } from './utils/getWalletMetadataFromWalletBook/getWalletMetadataFromWalletBook.js';
36
+ export { isConnectorMethodSupported } from './utils/isConnectorMethodSupported/isConnectorMethodSupported.js';
37
+ export { isConnectorEventSupported } from './utils/isConnectorEventSupported/isConnectorEventSupported.js';
38
+ export { getWalletLinks } from './utils/getWalletLinks/getWalletLinks.js';
39
+ export { convertWalletToBaseWallet, convertWalletToBaseWalletPartial } from './utils/convertWalletToBaseWallet/convertWalletToBaseWallet.js';
40
+ export { Wallet } from './Wallet/Wallet.js';
41
+ export { WalletConnectorBase } from './WalletConnectorBase/WalletConnectorBase.js';
42
+ export { Chains, socialProviders } from './WalletConnectorBase/types.js';
43
+ export { WalletBookSingleton } from './WalletBookSingleton/WalletBookSingleton.js';
44
+
45
+ assertPackageVersion('@dynamic-labs/wallet-connector-core', version);