@dynamic-labs/ethereum 0.19.0-alpha.2 → 0.19.0-alpha.21

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 (118) hide show
  1. package/CHANGELOG.md +293 -0
  2. package/package.json +13 -10
  3. package/src/EthWalletConnector.cjs +189 -193
  4. package/src/EthWalletConnector.d.ts +298 -41
  5. package/src/EthWalletConnector.js +190 -194
  6. package/src/coinbase/client/client.cjs +76 -0
  7. package/src/coinbase/client/client.d.ts +6 -0
  8. package/src/coinbase/client/client.js +69 -0
  9. package/src/coinbase/client/index.d.ts +2 -0
  10. package/src/coinbase/client/types.d.ts +14 -0
  11. package/src/coinbase/coinbase.cjs +71 -0
  12. package/src/coinbase/coinbase.d.ts +535 -0
  13. package/src/coinbase/coinbase.js +67 -0
  14. package/src/coinbase/index.d.ts +3 -0
  15. package/src/constants.d.ts +1 -1
  16. package/src/ethProviderHelper.cjs +132 -209
  17. package/src/ethProviderHelper.d.ts +28 -36
  18. package/src/ethProviderHelper.js +133 -210
  19. package/src/index.cjs +30 -26
  20. package/src/index.d.ts +9 -8
  21. package/src/index.js +25 -20
  22. package/src/injected/BloctoInjected.cjs +6 -6
  23. package/src/injected/BloctoInjected.d.ts +4 -4
  24. package/src/injected/BloctoInjected.js +6 -6
  25. package/src/injected/BraveEvm.cjs +6 -6
  26. package/src/injected/BraveEvm.d.ts +4 -4
  27. package/src/injected/BraveEvm.js +6 -6
  28. package/src/injected/Dawn.cjs +6 -6
  29. package/src/injected/Dawn.d.ts +4 -4
  30. package/src/injected/Dawn.js +6 -6
  31. package/src/injected/ExodusEvm.cjs +8 -8
  32. package/src/injected/ExodusEvm.d.ts +5 -5
  33. package/src/injected/ExodusEvm.js +7 -7
  34. package/src/injected/Frame.cjs +6 -6
  35. package/src/injected/Frame.d.ts +4 -4
  36. package/src/injected/Frame.js +6 -6
  37. package/src/injected/GameStop.cjs +6 -6
  38. package/src/injected/GameStop.d.ts +4 -4
  39. package/src/injected/GameStop.js +6 -6
  40. package/src/injected/InjectedWalletBase.cjs +86 -65
  41. package/src/injected/InjectedWalletBase.d.ts +29 -24
  42. package/src/injected/InjectedWalletBase.js +86 -65
  43. package/src/injected/LegacyInjectedWalletBase.cjs +83 -0
  44. package/src/injected/LegacyInjectedWalletBase.d.ts +24 -0
  45. package/src/injected/LegacyInjectedWalletBase.js +81 -0
  46. package/src/injected/Opera.cjs +6 -6
  47. package/src/injected/Opera.d.ts +4 -4
  48. package/src/injected/Opera.js +6 -6
  49. package/src/injected/PhantomEvm.cjs +28 -28
  50. package/src/injected/PhantomEvm.d.ts +5 -5
  51. package/src/injected/PhantomEvm.js +28 -28
  52. package/src/injected/Rabby.cjs +8 -8
  53. package/src/injected/Rabby.d.ts +5 -5
  54. package/src/injected/Rabby.js +7 -7
  55. package/src/injected/Superb.cjs +6 -6
  56. package/src/injected/Superb.d.ts +4 -4
  57. package/src/injected/Superb.js +6 -6
  58. package/src/injected/Trust.cjs +8 -8
  59. package/src/injected/Trust.d.ts +5 -5
  60. package/src/injected/Trust.js +7 -7
  61. package/src/injected/Zerion.cjs +8 -8
  62. package/src/injected/Zerion.d.ts +5 -5
  63. package/src/injected/Zerion.js +7 -7
  64. package/src/injected/fetchInjectedWalletConnectors.cjs +33 -0
  65. package/src/injected/fetchInjectedWalletConnectors.d.ts +6 -0
  66. package/src/injected/fetchInjectedWalletConnectors.js +29 -0
  67. package/src/injected/index.d.ts +13 -16
  68. package/src/injected/legacyInjectedWallets.cjs +48 -0
  69. package/src/injected/legacyInjectedWallets.d.ts +3 -0
  70. package/src/injected/legacyInjectedWallets.js +43 -0
  71. package/src/legacyEthProviderHelper.cjs +187 -0
  72. package/src/legacyEthProviderHelper.d.ts +34 -0
  73. package/src/legacyEthProviderHelper.js +183 -0
  74. package/src/polyfills.cjs +11 -11
  75. package/src/polyfills.d.ts +1 -1
  76. package/src/polyfills.js +11 -11
  77. package/src/types.d.ts +37 -24
  78. package/src/utils/eventListenerHandlers.cjs +34 -0
  79. package/src/utils/eventListenerHandlers.d.ts +8 -0
  80. package/src/utils/eventListenerHandlers.js +30 -0
  81. package/src/utils/findEvmNetwork.cjs +13 -13
  82. package/src/utils/findEvmNetwork.d.ts +6 -6
  83. package/src/utils/findEvmNetwork.js +13 -13
  84. package/src/utils/isString.d.ts +1 -1
  85. package/src/utils/isUnsupportedProviderError/index.d.ts +1 -1
  86. package/src/utils/isUnsupportedProviderError/isUnsupportedProviderError.cjs +6 -6
  87. package/src/utils/isUnsupportedProviderError/isUnsupportedProviderError.d.ts +6 -6
  88. package/src/utils/isUnsupportedProviderError/isUnsupportedProviderError.js +6 -6
  89. package/src/utils/last.d.ts +1 -1
  90. package/src/utils/parseIntSafe.cjs +13 -13
  91. package/src/utils/parseIntSafe.d.ts +1 -1
  92. package/src/utils/parseIntSafe.js +13 -13
  93. package/src/walletConnect/client/client.cjs +179 -176
  94. package/src/walletConnect/client/client.d.ts +17 -17
  95. package/src/walletConnect/client/client.js +179 -176
  96. package/src/walletConnect/client/index.d.ts +1 -1
  97. package/src/walletConnect/client/types.d.ts +4 -4
  98. package/src/walletConnect/fetchWalletConnectWallets.cjs +37 -52
  99. package/src/walletConnect/fetchWalletConnectWallets.d.ts +9 -10
  100. package/src/walletConnect/fetchWalletConnectWallets.js +38 -52
  101. package/src/walletConnect/index.d.ts +3 -3
  102. package/src/walletConnect/walletConnect.cjs +131 -130
  103. package/src/walletConnect/walletConnect.d.ts +52 -50
  104. package/src/walletConnect/walletConnect.js +131 -130
  105. package/src/walletConnect/walletConnectV2.cjs +419 -374
  106. package/src/walletConnect/walletConnectV2.d.ts +326 -61
  107. package/src/walletConnect/walletConnectV2.js +420 -375
  108. package/src/injected/MetaMask.cjs +0 -15
  109. package/src/injected/MetaMask.d.ts +0 -5
  110. package/src/injected/MetaMask.js +0 -11
  111. package/src/injected/OKX.cjs +0 -15
  112. package/src/injected/OKX.d.ts +0 -5
  113. package/src/injected/OKX.js +0 -11
  114. package/src/injected/UnknownInjectedWallet.cjs +0 -14
  115. package/src/injected/UnknownInjectedWallet.d.ts +0 -4
  116. package/src/injected/UnknownInjectedWallet.js +0 -10
  117. package/src/injected/index.cjs +0 -53
  118. package/src/injected/index.js +0 -49
@@ -0,0 +1,24 @@
1
+ import { WalletClient } from 'viem';
2
+ import { Chain } from '@dynamic-labs/wallet-connector-core';
3
+ import { EvmNetwork } from '@dynamic-labs/types';
4
+ import { EthWalletConnector } from '../EthWalletConnector';
5
+ declare abstract class LegacyInjectedWalletBase extends EthWalletConnector {
6
+ supportedChains: Chain[];
7
+ connectedChain: Chain;
8
+ publicAddress: string | undefined;
9
+ walletConnectorFallback: boolean;
10
+ getMobileOrInstalledWallet(): LegacyInjectedWalletBase;
11
+ setupEventListeners(): void;
12
+ getWalletClient(): WalletClient | undefined;
13
+ isInstalledOnBrowser(): boolean;
14
+ connect(): Promise<void>;
15
+ fetchPublicAddress(): Promise<string | undefined>;
16
+ signMessage(messageToSign: string): Promise<string | undefined>;
17
+ proveOwnership(messageToSign: string): Promise<string | undefined>;
18
+ endSession(): Promise<void>;
19
+ providerSwitchNetwork({ network, provider, }: {
20
+ network: EvmNetwork;
21
+ provider: WalletClient;
22
+ }): Promise<void>;
23
+ }
24
+ export default LegacyInjectedWalletBase;
@@ -0,0 +1,81 @@
1
+ import { __awaiter } from '../../_virtual/_tslib.js';
2
+ import { createPublicClient, custom } from 'viem';
3
+ import { getWalletBookWallet } from '@dynamic-labs/wallet-book';
4
+ import { LegacyEthProviderHelper } from '../legacyEthProviderHelper.js';
5
+ import { EthWalletConnector } from '../EthWalletConnector.js';
6
+ import { WalletConnectV2 } from '../walletConnect/walletConnectV2.js';
7
+ import { WalletConnect } from '../walletConnect/walletConnect.js';
8
+
9
+ class LegacyInjectedWalletBase extends EthWalletConnector {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.supportedChains = ['ETH', 'EVM'];
13
+ this.connectedChain = 'EVM';
14
+ this.walletConnectorFallback = false;
15
+ }
16
+ getMobileOrInstalledWallet() {
17
+ var _a, _b, _c;
18
+ if (this.walletConnectorFallback && !this.isInstalledOnBrowser()) {
19
+ const wallet = getWalletBookWallet(this.walletBook, this.key);
20
+ if (((_a = this.constructorProps) === null || _a === void 0 ? void 0 : _a.isWalletConnectV2Enabled) &&
21
+ ((_c = (_b = wallet.walletConnect) === null || _b === void 0 ? void 0 : _b.sdks) === null || _c === void 0 ? void 0 : _c.includes('sign_v2'))) {
22
+ return new WalletConnectV2(Object.assign(Object.assign({}, this.constructorProps), { walletName: this.name }));
23
+ }
24
+ else {
25
+ return new WalletConnect(Object.assign(Object.assign({}, this.constructorProps), { walletName: this.name }));
26
+ }
27
+ }
28
+ return this;
29
+ }
30
+ setupEventListeners() {
31
+ const provider = LegacyEthProviderHelper.findProvider(this.name);
32
+ if (!provider) {
33
+ return;
34
+ }
35
+ const publicClient = createPublicClient({ transport: custom(provider) });
36
+ const { tearDownEventListeners } = LegacyEthProviderHelper._setupEventListeners(this.name, this, publicClient);
37
+ this.teardownEventListeners = tearDownEventListeners;
38
+ }
39
+ getWalletClient() {
40
+ return LegacyEthProviderHelper.findWalletClient(this.name);
41
+ }
42
+ isInstalledOnBrowser() {
43
+ return LegacyEthProviderHelper.isInstalledHelper(this.name);
44
+ }
45
+ connect() {
46
+ return __awaiter(this, void 0, void 0, function* () {
47
+ yield this.fetchPublicAddress();
48
+ });
49
+ }
50
+ fetchPublicAddress() {
51
+ return __awaiter(this, void 0, void 0, function* () {
52
+ return LegacyEthProviderHelper.fetchPublicAddressWithName(this.name);
53
+ });
54
+ }
55
+ signMessage(messageToSign) {
56
+ return __awaiter(this, void 0, void 0, function* () {
57
+ return LegacyEthProviderHelper.signMessageWithName(messageToSign, this.name);
58
+ });
59
+ }
60
+ proveOwnership(messageToSign) {
61
+ return __awaiter(this, void 0, void 0, function* () {
62
+ return this.signMessage(messageToSign);
63
+ });
64
+ }
65
+ endSession() {
66
+ return __awaiter(this, void 0, void 0, function* () {
67
+ // nothing to do on browser-based metamask
68
+ return;
69
+ });
70
+ }
71
+ providerSwitchNetwork({ network, provider, }) {
72
+ const _super = Object.create(null, {
73
+ providerSwitchNetwork: { get: () => super.providerSwitchNetwork }
74
+ });
75
+ return __awaiter(this, void 0, void 0, function* () {
76
+ return _super.providerSwitchNetwork.call(this, { network, provider });
77
+ });
78
+ }
79
+ }
80
+
81
+ export { LegacyInjectedWalletBase as default };
@@ -2,13 +2,13 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var InjectedWalletBase = require('./InjectedWalletBase.cjs');
5
+ var LegacyInjectedWalletBase = require('./LegacyInjectedWalletBase.cjs');
6
6
 
7
- class Opera extends InjectedWalletBase {
8
- constructor() {
9
- super(...arguments);
10
- this.name = 'Opera';
11
- }
7
+ class Opera extends LegacyInjectedWalletBase {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.name = 'Opera';
11
+ }
12
12
  }
13
13
 
14
14
  exports.Opera = Opera;
@@ -1,4 +1,4 @@
1
- import InjectedWalletBase from './InjectedWalletBase';
2
- export declare class Opera extends InjectedWalletBase {
3
- name: string;
4
- }
1
+ import LegacyInjectedWalletBase from './LegacyInjectedWalletBase';
2
+ export declare class Opera extends LegacyInjectedWalletBase {
3
+ name: string;
4
+ }
@@ -1,10 +1,10 @@
1
- import InjectedWalletBase from './InjectedWalletBase.js';
1
+ import LegacyInjectedWalletBase from './LegacyInjectedWalletBase.js';
2
2
 
3
- class Opera extends InjectedWalletBase {
4
- constructor() {
5
- super(...arguments);
6
- this.name = 'Opera';
7
- }
3
+ class Opera extends LegacyInjectedWalletBase {
4
+ constructor() {
5
+ super(...arguments);
6
+ this.name = 'Opera';
7
+ }
8
8
  }
9
9
 
10
10
  export { Opera };
@@ -4,35 +4,35 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var _tslib = require('../../_virtual/_tslib.cjs');
6
6
  var utils = require('@dynamic-labs/utils');
7
- var InjectedWalletBase = require('./InjectedWalletBase.cjs');
7
+ var LegacyInjectedWalletBase = require('./LegacyInjectedWalletBase.cjs');
8
8
 
9
- class PhantomEvm extends InjectedWalletBase {
10
- constructor() {
11
- super(...arguments);
12
- this.name = 'PhantomEvm';
13
- }
14
- fetchPublicAddress() {
15
- const _super = Object.create(null, {
16
- fetchPublicAddress: { get: () => super.fetchPublicAddress }
17
- });
18
- return _tslib.__awaiter(this, void 0, void 0, function* () {
19
- if (this.isInstalledOnBrowser()) {
20
- return _super.fetchPublicAddress.call(this);
21
- }
22
- const url = encodeURIComponent(window.location.toString());
23
- const ref = encodeURIComponent(window.location.origin);
24
- // samsung browser only supports native links, not universal links
25
- if (utils.isMobile()) {
26
- if (utils.isSamsungBrowser()) {
27
- window.location.assign(`phantom://browse/${url}?ref=${ref}`);
28
- }
29
- else {
30
- window.location.assign(`https://phantom.app/ul/browse/${url}?ref=${ref}`);
31
- }
32
- }
33
- return undefined;
34
- });
35
- }
9
+ class PhantomEvm extends LegacyInjectedWalletBase {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.name = 'PhantomEvm';
13
+ }
14
+ fetchPublicAddress() {
15
+ const _super = Object.create(null, {
16
+ fetchPublicAddress: { get: () => super.fetchPublicAddress }
17
+ });
18
+ return _tslib.__awaiter(this, void 0, void 0, function* () {
19
+ if (this.isInstalledOnBrowser()) {
20
+ return _super.fetchPublicAddress.call(this);
21
+ }
22
+ const url = encodeURIComponent(window.location.toString());
23
+ const ref = encodeURIComponent(window.location.origin);
24
+ // samsung browser only supports native links, not universal links
25
+ if (utils.isMobile()) {
26
+ if (utils.isSamsungBrowser()) {
27
+ window.location.assign(`phantom://browse/${url}?ref=${ref}`);
28
+ }
29
+ else {
30
+ window.location.assign(`https://phantom.app/ul/browse/${url}?ref=${ref}`);
31
+ }
32
+ }
33
+ return undefined;
34
+ });
35
+ }
36
36
  }
37
37
 
38
38
  exports.PhantomEvm = PhantomEvm;
@@ -1,5 +1,5 @@
1
- import InjectedWalletBase from './InjectedWalletBase';
2
- export declare class PhantomEvm extends InjectedWalletBase {
3
- name: string;
4
- fetchPublicAddress(): Promise<string | undefined>;
5
- }
1
+ import LegacyInjectedWalletBase from './LegacyInjectedWalletBase';
2
+ export declare class PhantomEvm extends LegacyInjectedWalletBase {
3
+ name: string;
4
+ fetchPublicAddress(): Promise<string | undefined>;
5
+ }
@@ -1,34 +1,34 @@
1
1
  import { __awaiter } from '../../_virtual/_tslib.js';
2
2
  import { isMobile, isSamsungBrowser } from '@dynamic-labs/utils';
3
- import InjectedWalletBase from './InjectedWalletBase.js';
3
+ import LegacyInjectedWalletBase from './LegacyInjectedWalletBase.js';
4
4
 
5
- class PhantomEvm extends InjectedWalletBase {
6
- constructor() {
7
- super(...arguments);
8
- this.name = 'PhantomEvm';
9
- }
10
- fetchPublicAddress() {
11
- const _super = Object.create(null, {
12
- fetchPublicAddress: { get: () => super.fetchPublicAddress }
13
- });
14
- return __awaiter(this, void 0, void 0, function* () {
15
- if (this.isInstalledOnBrowser()) {
16
- return _super.fetchPublicAddress.call(this);
17
- }
18
- const url = encodeURIComponent(window.location.toString());
19
- const ref = encodeURIComponent(window.location.origin);
20
- // samsung browser only supports native links, not universal links
21
- if (isMobile()) {
22
- if (isSamsungBrowser()) {
23
- window.location.assign(`phantom://browse/${url}?ref=${ref}`);
24
- }
25
- else {
26
- window.location.assign(`https://phantom.app/ul/browse/${url}?ref=${ref}`);
27
- }
28
- }
29
- return undefined;
30
- });
31
- }
5
+ class PhantomEvm extends LegacyInjectedWalletBase {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.name = 'PhantomEvm';
9
+ }
10
+ fetchPublicAddress() {
11
+ const _super = Object.create(null, {
12
+ fetchPublicAddress: { get: () => super.fetchPublicAddress }
13
+ });
14
+ return __awaiter(this, void 0, void 0, function* () {
15
+ if (this.isInstalledOnBrowser()) {
16
+ return _super.fetchPublicAddress.call(this);
17
+ }
18
+ const url = encodeURIComponent(window.location.toString());
19
+ const ref = encodeURIComponent(window.location.origin);
20
+ // samsung browser only supports native links, not universal links
21
+ if (isMobile()) {
22
+ if (isSamsungBrowser()) {
23
+ window.location.assign(`phantom://browse/${url}?ref=${ref}`);
24
+ }
25
+ else {
26
+ window.location.assign(`https://phantom.app/ul/browse/${url}?ref=${ref}`);
27
+ }
28
+ }
29
+ return undefined;
30
+ });
31
+ }
32
32
  }
33
33
 
34
34
  export { PhantomEvm };
@@ -2,14 +2,14 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var InjectedWalletBase = require('./InjectedWalletBase.cjs');
6
-
7
- class Rabby extends InjectedWalletBase {
8
- constructor() {
9
- super(...arguments);
10
- this.name = 'Rabby';
11
- this.walletConnectorFallback = true;
12
- }
5
+ var LegacyInjectedWalletBase = require('./LegacyInjectedWalletBase.cjs');
6
+
7
+ class Rabby extends LegacyInjectedWalletBase {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.name = 'Rabby';
11
+ this.walletConnectorFallback = true;
12
+ }
13
13
  }
14
14
 
15
15
  exports.Rabby = Rabby;
@@ -1,5 +1,5 @@
1
- import InjectedWalletBase from './InjectedWalletBase';
2
- export declare class Rabby extends InjectedWalletBase {
3
- name: string;
4
- walletConnectorFallback: boolean;
5
- }
1
+ import LegacyInjectedWalletBase from './LegacyInjectedWalletBase';
2
+ export declare class Rabby extends LegacyInjectedWalletBase {
3
+ name: string;
4
+ walletConnectorFallback: boolean;
5
+ }
@@ -1,11 +1,11 @@
1
- import InjectedWalletBase from './InjectedWalletBase.js';
1
+ import LegacyInjectedWalletBase from './LegacyInjectedWalletBase.js';
2
2
 
3
- class Rabby extends InjectedWalletBase {
4
- constructor() {
5
- super(...arguments);
6
- this.name = 'Rabby';
7
- this.walletConnectorFallback = true;
8
- }
3
+ class Rabby extends LegacyInjectedWalletBase {
4
+ constructor() {
5
+ super(...arguments);
6
+ this.name = 'Rabby';
7
+ this.walletConnectorFallback = true;
8
+ }
9
9
  }
10
10
 
11
11
  export { Rabby };
@@ -2,13 +2,13 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var InjectedWalletBase = require('./InjectedWalletBase.cjs');
5
+ var LegacyInjectedWalletBase = require('./LegacyInjectedWalletBase.cjs');
6
6
 
7
- class Superb extends InjectedWalletBase {
8
- constructor() {
9
- super(...arguments);
10
- this.name = 'Superb';
11
- }
7
+ class Superb extends LegacyInjectedWalletBase {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.name = 'Superb';
11
+ }
12
12
  }
13
13
 
14
14
  exports.Superb = Superb;
@@ -1,4 +1,4 @@
1
- import InjectedWalletBase from './InjectedWalletBase';
2
- export declare class Superb extends InjectedWalletBase {
3
- name: string;
4
- }
1
+ import LegacyInjectedWalletBase from './LegacyInjectedWalletBase';
2
+ export declare class Superb extends LegacyInjectedWalletBase {
3
+ name: string;
4
+ }
@@ -1,10 +1,10 @@
1
- import InjectedWalletBase from './InjectedWalletBase.js';
1
+ import LegacyInjectedWalletBase from './LegacyInjectedWalletBase.js';
2
2
 
3
- class Superb extends InjectedWalletBase {
4
- constructor() {
5
- super(...arguments);
6
- this.name = 'Superb';
7
- }
3
+ class Superb extends LegacyInjectedWalletBase {
4
+ constructor() {
5
+ super(...arguments);
6
+ this.name = 'Superb';
7
+ }
8
8
  }
9
9
 
10
10
  export { Superb };
@@ -2,14 +2,14 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var InjectedWalletBase = require('./InjectedWalletBase.cjs');
6
-
7
- class Trust extends InjectedWalletBase {
8
- constructor() {
9
- super(...arguments);
10
- this.name = 'Trust';
11
- this.walletConnectorFallback = true;
12
- }
5
+ var LegacyInjectedWalletBase = require('./LegacyInjectedWalletBase.cjs');
6
+
7
+ class Trust extends LegacyInjectedWalletBase {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.name = 'Trust';
11
+ this.walletConnectorFallback = true;
12
+ }
13
13
  }
14
14
 
15
15
  exports.Trust = Trust;
@@ -1,5 +1,5 @@
1
- import InjectedWalletBase from './InjectedWalletBase';
2
- export declare class Trust extends InjectedWalletBase {
3
- name: string;
4
- walletConnectorFallback: boolean;
5
- }
1
+ import LegacyInjectedWalletBase from './LegacyInjectedWalletBase';
2
+ export declare class Trust extends LegacyInjectedWalletBase {
3
+ name: string;
4
+ walletConnectorFallback: boolean;
5
+ }
@@ -1,11 +1,11 @@
1
- import InjectedWalletBase from './InjectedWalletBase.js';
1
+ import LegacyInjectedWalletBase from './LegacyInjectedWalletBase.js';
2
2
 
3
- class Trust extends InjectedWalletBase {
4
- constructor() {
5
- super(...arguments);
6
- this.name = 'Trust';
7
- this.walletConnectorFallback = true;
8
- }
3
+ class Trust extends LegacyInjectedWalletBase {
4
+ constructor() {
5
+ super(...arguments);
6
+ this.name = 'Trust';
7
+ this.walletConnectorFallback = true;
8
+ }
9
9
  }
10
10
 
11
11
  export { Trust };
@@ -2,14 +2,14 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var InjectedWalletBase = require('./InjectedWalletBase.cjs');
6
-
7
- class Zerion extends InjectedWalletBase {
8
- constructor() {
9
- super(...arguments);
10
- this.name = 'Zerion';
11
- this.walletConnectorFallback = true;
12
- }
5
+ var LegacyInjectedWalletBase = require('./LegacyInjectedWalletBase.cjs');
6
+
7
+ class Zerion extends LegacyInjectedWalletBase {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.name = 'Zerion';
11
+ this.walletConnectorFallback = true;
12
+ }
13
13
  }
14
14
 
15
15
  exports.Zerion = Zerion;
@@ -1,5 +1,5 @@
1
- import InjectedWalletBase from './InjectedWalletBase';
2
- export declare class Zerion extends InjectedWalletBase {
3
- name: string;
4
- walletConnectorFallback: boolean;
5
- }
1
+ import LegacyInjectedWalletBase from './LegacyInjectedWalletBase';
2
+ export declare class Zerion extends LegacyInjectedWalletBase {
3
+ name: string;
4
+ walletConnectorFallback: boolean;
5
+ }
@@ -1,11 +1,11 @@
1
- import InjectedWalletBase from './InjectedWalletBase.js';
1
+ import LegacyInjectedWalletBase from './LegacyInjectedWalletBase.js';
2
2
 
3
- class Zerion extends InjectedWalletBase {
4
- constructor() {
5
- super(...arguments);
6
- this.name = 'Zerion';
7
- this.walletConnectorFallback = true;
8
- }
3
+ class Zerion extends LegacyInjectedWalletBase {
4
+ constructor() {
5
+ super(...arguments);
6
+ this.name = 'Zerion';
7
+ this.walletConnectorFallback = true;
8
+ }
9
9
  }
10
10
 
11
11
  export { Zerion };
@@ -0,0 +1,33 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var InjectedWalletBase = require('./InjectedWalletBase.cjs');
6
+ var legacyInjectedWallets = require('./legacyInjectedWallets.cjs');
7
+
8
+ const fetchInjectedWalletConnector = ({ walletBook, }) => {
9
+ var _a;
10
+ return Object.entries((_a = walletBook === null || walletBook === void 0 ? void 0 : walletBook.wallets) !== null && _a !== void 0 ? _a : {})
11
+ .filter(([key, wallet]) => {
12
+ var _a;
13
+ return ((_a = wallet.injectedConfig) === null || _a === void 0 ? void 0 : _a.find((config) => config.chain === 'evm')) &&
14
+ !legacyInjectedWallets.filteredLegacyInjectedWalletKeys.includes(key);
15
+ })
16
+ .map(([key, wallet]) => {
17
+ const { shortName } = wallet;
18
+ const name = shortName || wallet.name;
19
+ const walletConnectorFallback = Boolean(wallet.walletConnect);
20
+ return class extends InjectedWalletBase {
21
+ constructor(props) {
22
+ super(Object.assign({}, props));
23
+ this.name = name;
24
+ this.wallet = wallet;
25
+ this.walletConnectorFallback = walletConnectorFallback;
26
+ // this is the key from the wallet book entry so that we don't purely rely on the normalized name
27
+ this.overrideKey = key;
28
+ }
29
+ };
30
+ });
31
+ };
32
+
33
+ exports.fetchInjectedWalletConnector = fetchInjectedWalletConnector;
@@ -0,0 +1,6 @@
1
+ import { WalletConnectorConstructor } from '@dynamic-labs/wallet-connector-core';
2
+ import { WalletBookSchema } from '@dynamic-labs/wallet-book';
3
+ export declare const fetchInjectedWalletConnector: ({ walletBook, }: {
4
+ isWalletConnectV2Enabled: boolean;
5
+ walletBook: WalletBookSchema;
6
+ }) => WalletConnectorConstructor[];
@@ -0,0 +1,29 @@
1
+ import InjectedWalletBase from './InjectedWalletBase.js';
2
+ import { filteredLegacyInjectedWalletKeys } from './legacyInjectedWallets.js';
3
+
4
+ const fetchInjectedWalletConnector = ({ walletBook, }) => {
5
+ var _a;
6
+ return Object.entries((_a = walletBook === null || walletBook === void 0 ? void 0 : walletBook.wallets) !== null && _a !== void 0 ? _a : {})
7
+ .filter(([key, wallet]) => {
8
+ var _a;
9
+ return ((_a = wallet.injectedConfig) === null || _a === void 0 ? void 0 : _a.find((config) => config.chain === 'evm')) &&
10
+ !filteredLegacyInjectedWalletKeys.includes(key);
11
+ })
12
+ .map(([key, wallet]) => {
13
+ const { shortName } = wallet;
14
+ const name = shortName || wallet.name;
15
+ const walletConnectorFallback = Boolean(wallet.walletConnect);
16
+ return class extends InjectedWalletBase {
17
+ constructor(props) {
18
+ super(Object.assign({}, props));
19
+ this.name = name;
20
+ this.wallet = wallet;
21
+ this.walletConnectorFallback = walletConnectorFallback;
22
+ // this is the key from the wallet book entry so that we don't purely rely on the normalized name
23
+ this.overrideKey = key;
24
+ }
25
+ };
26
+ });
27
+ };
28
+
29
+ export { fetchInjectedWalletConnector };
@@ -1,16 +1,13 @@
1
- import { WalletConnectorConstructor } from '@dynamic-labs/wallet-connector-core';
2
- export * from './BloctoInjected';
3
- export * from './BraveEvm';
4
- export * from './Dawn';
5
- export * from './ExodusEvm';
6
- export * from './Frame';
7
- export * from './GameStop';
8
- export * from './MetaMask';
9
- export * from './Opera';
10
- export * from './PhantomEvm';
11
- export * from './Trust';
12
- export * from './UnknownInjectedWallet';
13
- export * from './Zerion';
14
- export * from './Rabby';
15
- export * from './OKX';
16
- export declare const injectedWallets: WalletConnectorConstructor[];
1
+ export * from './BloctoInjected';
2
+ export * from './BraveEvm';
3
+ export * from './Dawn';
4
+ export * from './ExodusEvm';
5
+ export * from './Frame';
6
+ export * from './GameStop';
7
+ export * from './Opera';
8
+ export * from './PhantomEvm';
9
+ export * from './Trust';
10
+ export * from './Zerion';
11
+ export * from './Rabby';
12
+ export * from './fetchInjectedWalletConnectors';
13
+ export * from './legacyInjectedWallets';