@dynamic-labs/wagmi-connector 2.0.0-alpha.9 → 2.0.0
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 +314 -0
- package/package.json +11 -10
- package/src/lib/Connector.d.ts +9 -10
- package/src/lib/Connector.js +3 -10
- package/src/lib/DynamicWagmiConnector.d.ts +1 -0
- package/src/lib/DynamicWagmiConnector.js +18 -11
- package/src/lib/hooks/useConnectorId/index.d.ts +1 -0
- package/src/lib/hooks/useConnectorId/useConnectorId.d.ts +7 -0
- package/src/lib/hooks/useConnectorId/useConnectorId.js +23 -0
- package/src/lib/hooks/useFindEvmWallet/index.d.ts +1 -0
- package/src/lib/hooks/useFindEvmWallet/useFindEvmWallet.d.ts +2 -0
- package/src/lib/hooks/useFindEvmWallet/useFindEvmWallet.js +21 -0
- package/src/lib/useChainMismatchLogger.d.ts +3 -0
- package/src/lib/useChainMismatchLogger.js +44 -0
- package/src/lib/utils/findAndOrderEvmWallets/findAndOrderEvmWallets.d.ts +0 -2
- package/src/lib/utils/findAndOrderEvmWallets/findAndOrderEvmWallets.js +0 -13
- package/src/lib/utils/findAndOrderEvmWallets/index.d.ts +0 -1
- package/src/lib/utils/index.d.ts +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,318 @@
|
|
|
1
1
|
|
|
2
|
+
## [2.0.0-alpha.32](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.31...v2.0.0-alpha.32) (2024-04-15)
|
|
3
|
+
|
|
4
|
+
## [2.0.0-alpha.31](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.30...v2.0.0-alpha.31) (2024-04-11)
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* support adding email for recovery to existing embedded wallet ([#5128](https://github.com/dynamic-labs/DynamicAuth/issues/5128)) ([477fd81](https://github.com/dynamic-labs/DynamicAuth/commit/477fd81ac00864284d9d2183c0b8c078a0a23a2b))
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Bug Fixes
|
|
13
|
+
|
|
14
|
+
* issue where customer also tries to use i18n.init ([#5267](https://github.com/dynamic-labs/DynamicAuth/issues/5267)) ([7f81f1e](https://github.com/dynamic-labs/DynamicAuth/commit/7f81f1e010fbc6408f6a5d6a37608235e947befa))
|
|
15
|
+
* smart wallet not loading correctly upon refresh when using non-embedded eoa wallet ([#5301](https://github.com/dynamic-labs/DynamicAuth/issues/5301)) ([e957317](https://github.com/dynamic-labs/DynamicAuth/commit/e9573173f6209773a0be5f4af37323f2be8d7906))
|
|
16
|
+
|
|
17
|
+
## [2.0.0-alpha.30](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.29...v2.0.0-alpha.30) (2024-04-11)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### ⚠ BREAKING CHANGES
|
|
21
|
+
|
|
22
|
+
* add headless sms sign-in (#5274)
|
|
23
|
+
|
|
24
|
+
### Features
|
|
25
|
+
|
|
26
|
+
* add headless sms sign-in ([#5274](https://github.com/dynamic-labs/DynamicAuth/issues/5274)) ([fffc293](https://github.com/dynamic-labs/DynamicAuth/commit/fffc293f85447a784e8c728d1586f3555ab1fbfa))
|
|
27
|
+
|
|
28
|
+
## [2.0.0-alpha.29](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.28...v2.0.0-alpha.29) (2024-04-10)
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
### ⚠ BREAKING CHANGES
|
|
32
|
+
|
|
33
|
+
* replace sdk-api with sdk-api-core (#5280)
|
|
34
|
+
|
|
35
|
+
### Features
|
|
36
|
+
|
|
37
|
+
* add dynamic client context ([#5250](https://github.com/dynamic-labs/DynamicAuth/issues/5250)) ([778ebe6](https://github.com/dynamic-labs/DynamicAuth/commit/778ebe6313e0bf3c9876feb6eff5bf152c15c55e))
|
|
38
|
+
* **webview-controller:** fetch manifest and render Dynamic SDK ([#5287](https://github.com/dynamic-labs/DynamicAuth/issues/5287)) ([00e84ac](https://github.com/dynamic-labs/DynamicAuth/commit/00e84acc4bdda92bad91108788f8d7882d0790d6))
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
### Bug Fixes
|
|
42
|
+
|
|
43
|
+
* don't render modal header component if there's no content ([#5269](https://github.com/dynamic-labs/DynamicAuth/issues/5269)) ([f4d7266](https://github.com/dynamic-labs/DynamicAuth/commit/f4d72668a5243108649774c6581733655f385cab))
|
|
44
|
+
* don't show get extension button when there are no download links ([#5276](https://github.com/dynamic-labs/DynamicAuth/issues/5276)) ([e8cf660](https://github.com/dynamic-labs/DynamicAuth/commit/e8cf66076a9914881a8edda69feb2fb192ac63a3))
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
* replace sdk-api with sdk-api-core ([#5280](https://github.com/dynamic-labs/DynamicAuth/issues/5280)) ([da4b695](https://github.com/dynamic-labs/DynamicAuth/commit/da4b6955a81d6bfb5c994cd62e21e9ae11a4f454))
|
|
48
|
+
|
|
49
|
+
## [2.0.0-alpha.28](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.27...v2.0.0-alpha.28) (2024-04-10)
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
### Bug Fixes
|
|
53
|
+
|
|
54
|
+
* improve bridge connect experience on mobile ([#5283](https://github.com/dynamic-labs/DynamicAuth/issues/5283)) ([155e4a9](https://github.com/dynamic-labs/DynamicAuth/commit/155e4a99e2cf5f78a1a5e91e774acbf170d6b083))
|
|
55
|
+
|
|
56
|
+
## [2.0.0-alpha.27](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.26...v2.0.0-alpha.27) (2024-04-09)
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
### Bug Fixes
|
|
60
|
+
|
|
61
|
+
* coinbase improvements ([#5268](https://github.com/dynamic-labs/DynamicAuth/issues/5268)) ([c10a6de](https://github.com/dynamic-labs/DynamicAuth/commit/c10a6debcacff6cd97f2436fbde387f85faa5682))
|
|
62
|
+
* show qr code for metamask on desktop when not installed ([#5262](https://github.com/dynamic-labs/DynamicAuth/issues/5262)) ([1dcb4d9](https://github.com/dynamic-labs/DynamicAuth/commit/1dcb4d98de8a95f6b11d7bad90b9059110087385))
|
|
63
|
+
* update title of hardware wallet select screen ([#5270](https://github.com/dynamic-labs/DynamicAuth/issues/5270)) ([6e8fe17](https://github.com/dynamic-labs/DynamicAuth/commit/6e8fe17306677786ccf528b97ab673b9ae6b57b9))
|
|
64
|
+
|
|
65
|
+
## [2.0.0-alpha.26](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.25...v2.0.0-alpha.26) (2024-04-08)
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
### ⚠ BREAKING CHANGES
|
|
69
|
+
|
|
70
|
+
* add onWalletAdded/onWalletRemoved callbacks and removed onConnect/onDisconnect/onLinkSuccess/onUnlinkSuccess (#5194)
|
|
71
|
+
* note:
|
|
72
|
+
- use "events" in favour of "eventsCallbacks"
|
|
73
|
+
- use "handlers.handleConnectedWallet" in favour of "eventsCallbacks.onBeforeConnectSuccessConfirmation"
|
|
74
|
+
|
|
75
|
+
### Bug Fixes
|
|
76
|
+
|
|
77
|
+
* coinbase wallet settings ([#5233](https://github.com/dynamic-labs/DynamicAuth/issues/5233)) ([1b04411](https://github.com/dynamic-labs/DynamicAuth/commit/1b04411eb90db438f3eacf622d9c28db4c7cf532))
|
|
78
|
+
* remove local storage settings on logout ([#5212](https://github.com/dynamic-labs/DynamicAuth/issues/5212)) ([e686628](https://github.com/dynamic-labs/DynamicAuth/commit/e686628f602a44cd13083e7bb9afb4f50304390e))
|
|
79
|
+
* show app name or logo in sign message modal ([#5225](https://github.com/dynamic-labs/DynamicAuth/issues/5225)) ([a77b6ba](https://github.com/dynamic-labs/DynamicAuth/commit/a77b6ba9b5646b400ebf933949dabe06a35d1c81))
|
|
80
|
+
* user wallets not being cleared immediately when logout is called ([#5211](https://github.com/dynamic-labs/DynamicAuth/issues/5211)) ([a649c46](https://github.com/dynamic-labs/DynamicAuth/commit/a649c462d171cf6f8d67159df9f5f2144f315e5c))
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
* add onWalletAdded/onWalletRemoved callbacks and removed onConnect/onDisconnect/onLinkSuccess/onUnlinkSuccess ([#5194](https://github.com/dynamic-labs/DynamicAuth/issues/5194)) ([fdec78c](https://github.com/dynamic-labs/DynamicAuth/commit/fdec78c1c32c58c8f7dc7ffd9b877320aa4d90e0))
|
|
84
|
+
* rename eventsCallbacks to events ([#5196](https://github.com/dynamic-labs/DynamicAuth/issues/5196)) ([5797185](https://github.com/dynamic-labs/DynamicAuth/commit/5797185c18fa091032ef27043b63a1d5201b5e23))
|
|
85
|
+
|
|
86
|
+
## [2.0.0-alpha.25](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.24...v2.0.0-alpha.25) (2024-04-04)
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
### Features
|
|
90
|
+
|
|
91
|
+
* add in-app browser deeplink for metamask ([#5176](https://github.com/dynamic-labs/DynamicAuth/issues/5176)) ([02ce607](https://github.com/dynamic-labs/DynamicAuth/commit/02ce6077ed0deeaefc7a62ee91ff72f5bce2b327)), closes [#5123](https://github.com/dynamic-labs/DynamicAuth/issues/5123)
|
|
92
|
+
|
|
93
|
+
## [2.0.0-alpha.24](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.23...v2.0.0-alpha.24) (2024-04-03)
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
### ⚠ BREAKING CHANGES
|
|
97
|
+
|
|
98
|
+
* rename otp verification callbacks (#5180)
|
|
99
|
+
* remove deprecated isVerificationInProgress flag and setter (#5089)
|
|
100
|
+
|
|
101
|
+
### Features
|
|
102
|
+
|
|
103
|
+
* allow creating embedded wallets even if user signs in with a wallet ([#5093](https://github.com/dynamic-labs/DynamicAuth/issues/5093)) ([ba2dd62](https://github.com/dynamic-labs/DynamicAuth/commit/ba2dd625e0a7bf35018cf8aac8e80bd23b4e3b0f))
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
### Bug Fixes
|
|
107
|
+
|
|
108
|
+
* api unit test by removing api and sdk versions for assertion ([#5168](https://github.com/dynamic-labs/DynamicAuth/issues/5168)) ([6d3b8ad](https://github.com/dynamic-labs/DynamicAuth/commit/6d3b8adebe62a4f2a7878630384348b2c491d779))
|
|
109
|
+
* bug when phone input is empty ([#5139](https://github.com/dynamic-labs/DynamicAuth/issues/5139)) ([7155b63](https://github.com/dynamic-labs/DynamicAuth/commit/7155b63518d00ba807bc321c6740b341d0a8b82f))
|
|
110
|
+
* clear error message on otp resend for sms ([#5182](https://github.com/dynamic-labs/DynamicAuth/issues/5182)) ([f40b48c](https://github.com/dynamic-labs/DynamicAuth/commit/f40b48c7f58c8e3dfe73fb124d642c3b8f193cee))
|
|
111
|
+
* link farcaster account ([#5170](https://github.com/dynamic-labs/DynamicAuth/issues/5170)) ([10fe272](https://github.com/dynamic-labs/DynamicAuth/commit/10fe272247605b5f09385f063231e2c881399cc8))
|
|
112
|
+
* show correct otp message for sms verification failure ([#5177](https://github.com/dynamic-labs/DynamicAuth/issues/5177)) ([b3bcd76](https://github.com/dynamic-labs/DynamicAuth/commit/b3bcd7694047dac55ce37babb71684a418633f95))
|
|
113
|
+
* update wagmi connector id when wallet connector changes ([#5185](https://github.com/dynamic-labs/DynamicAuth/issues/5185)) ([14fb83a](https://github.com/dynamic-labs/DynamicAuth/commit/14fb83a22c8e39095b79cc9951cae3f00f4fca2f))
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
* remove deprecated isVerificationInProgress flag and setter ([#5089](https://github.com/dynamic-labs/DynamicAuth/issues/5089)) ([060fef7](https://github.com/dynamic-labs/DynamicAuth/commit/060fef70df0c497e7a9b6e67ad0bfafef52c2bbb))
|
|
117
|
+
* rename otp verification callbacks ([#5180](https://github.com/dynamic-labs/DynamicAuth/issues/5180)) ([a580eec](https://github.com/dynamic-labs/DynamicAuth/commit/a580eec02d15b46a25c01d5473e4db2db89937e2))
|
|
118
|
+
|
|
119
|
+
## [2.0.0-alpha.23](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.22...v2.0.0-alpha.23) (2024-04-01)
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
### ⚠ BREAKING CHANGES
|
|
123
|
+
|
|
124
|
+
* implement proper solana embedded wallet signer (#5092)
|
|
125
|
+
* prevent adding temporary wallet connection to userWallets (#5104)
|
|
126
|
+
|
|
127
|
+
### Bug Fixes
|
|
128
|
+
|
|
129
|
+
* Multiple WC bug fixes ([#5142](https://github.com/dynamic-labs/DynamicAuth/issues/5142)) ([92236e6](https://github.com/dynamic-labs/DynamicAuth/commit/92236e6d74c28516403f6df79c539406ece3d6d0)) ([#5132](https://github.com/dynamic-labs/DynamicAuth/issues/5132)) ([99f564a](https://github.com/dynamic-labs/DynamicAuth/commit/99f564a39e35e28af0be2a03617f12aa19cbeb7f))
|
|
130
|
+
|
|
131
|
+
* Better handling of empty callback queue([#5147](https://github.com/dynamic-labs/DynamicAuth/issues/5147)) ([e2d6bf2](https://github.com/dynamic-labs/DynamicAuth/commit/e2d6bf2444ca01199796ead4136f34b81b6c9b61))
|
|
132
|
+
|
|
133
|
+
* multiple improvements to the wallet list ([#5112](https://github.com/dynamic-labs/DynamicAuth/issues/5112)) ([00eec5f](https://github.com/dynamic-labs/DynamicAuth/commit/00eec5fde70548c3d771260f3d86e5365e73878d))
|
|
134
|
+
|
|
135
|
+
* Improved scroll experience on ios ([#5152](https://github.com/dynamic-labs/DynamicAuth/issues/5152)) ([341704f](https://github.com/dynamic-labs/DynamicAuth/commit/341704f99cb6e06f253309f3a8afb1684bb8ae2a))
|
|
136
|
+
|
|
137
|
+
* better handling of multiwallet state([#5146](https://github.com/dynamic-labs/DynamicAuth/issues/5146)) ([403267b](https://github.com/dynamic-labs/DynamicAuth/commit/403267b3c268d648aba155e0b6fea31d7fdc1b56))
|
|
138
|
+
|
|
139
|
+
* show correct OTP error message ([#5135](https://github.com/dynamic-labs/DynamicAuth/issues/5135)) ([e7494ce](https://github.com/dynamic-labs/DynamicAuth/commit/e7494cee4a1b5132af91058cbcb2dae0b7eac44b))
|
|
140
|
+
|
|
141
|
+
* implement proper solana embedded wallet signer ([#5092](https://github.com/dynamic-labs/DynamicAuth/issues/5092)) ([7749b97](https://github.com/dynamic-labs/DynamicAuth/commit/7749b97db49fb9af8ae0668172f478e1f0c29665))
|
|
142
|
+
|
|
143
|
+
* prevent adding temporary wallet connection to userWallets ([#5104](https://github.com/dynamic-labs/DynamicAuth/issues/5104)) ([3c02b78](https://github.com/dynamic-labs/DynamicAuth/commit/3c02b781c997c63ff11a7f1c255b92d10962327f))
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
## [2.0.0-alpha.22](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.21...v2.0.0-alpha.22) (2024-03-27)
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
### ⚠ BREAKING CHANGES
|
|
150
|
+
|
|
151
|
+
* remove isFullyConnected (#5066)
|
|
152
|
+
* remove and deprecated exported methods (#5065)
|
|
153
|
+
* remove emailOnly provider
|
|
154
|
+
|
|
155
|
+
### Features
|
|
156
|
+
|
|
157
|
+
* add method property to track which phantom connector function was called ([#5044](https://github.com/dynamic-labs/DynamicAuth/issues/5044)) ([f820cd4](https://github.com/dynamic-labs/DynamicAuth/commit/f820cd4c7e047fd5181115b4d388e54df682e5c8))
|
|
158
|
+
* add signAndSendTransaction to phantom redirect connector ([#5054](https://github.com/dynamic-labs/DynamicAuth/issues/5054)) ([694a300](https://github.com/dynamic-labs/DynamicAuth/commit/694a3003c8765098878a5c95174be5eba4509fc2))
|
|
159
|
+
* implement remaining signer methods on phantom redirect connector ([#5060](https://github.com/dynamic-labs/DynamicAuth/issues/5060)) ([29db446](https://github.com/dynamic-labs/DynamicAuth/commit/29db4464de6eea11c92a8080fed1eb3e7588b2b8))
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
### Bug Fixes
|
|
163
|
+
|
|
164
|
+
* add recommended wallet tags to the WalletSimpleSignIn component ([#5041](https://github.com/dynamic-labs/DynamicAuth/issues/5041)) ([aefde4d](https://github.com/dynamic-labs/DynamicAuth/commit/aefde4d927427c131dce4402eb3c705527c64e8f))
|
|
165
|
+
* display invalid phone number error ([#5103](https://github.com/dynamic-labs/DynamicAuth/issues/5103)) ([842c0ba](https://github.com/dynamic-labs/DynamicAuth/commit/842c0ba3cfe1120c166f12410efbc346d8e30ed0))
|
|
166
|
+
* ensure the user field modals uses the base widget context ([#5105](https://github.com/dynamic-labs/DynamicAuth/issues/5105)) ([aa2a545](https://github.com/dynamic-labs/DynamicAuth/commit/aa2a545bdbf6f38f4131ccdde61142389dbf5480))
|
|
167
|
+
* force aspect ratio for social icon pfps ([#5072](https://github.com/dynamic-labs/DynamicAuth/issues/5072)) ([6f611a7](https://github.com/dynamic-labs/DynamicAuth/commit/6f611a7cbe41d66796449b28af919bc93a7bae42))
|
|
168
|
+
* handle too many email verifications error ([#5051](https://github.com/dynamic-labs/DynamicAuth/issues/5051)) ([7af96df](https://github.com/dynamic-labs/DynamicAuth/commit/7af96dfb85cdc68577fdb8cc880e2fd09bcff5af))
|
|
169
|
+
* hardcode zerion provider and update walletbook to prevent showing up as metamask when not installed ([#5071](https://github.com/dynamic-labs/DynamicAuth/issues/5071)) ([3ab6c37](https://github.com/dynamic-labs/DynamicAuth/commit/3ab6c3772efe2c2e3259ca7a9dbb92e924314029))
|
|
170
|
+
* issue where ethereum is tree shaken ([#5028](https://github.com/dynamic-labs/DynamicAuth/issues/5028)) ([fda542d](https://github.com/dynamic-labs/DynamicAuth/commit/fda542db2b65a437004fe809a0ea9f90fde47b13))
|
|
171
|
+
* not clearing the loading when creating an embedded wallet ([323086f](https://github.com/dynamic-labs/DynamicAuth/commit/323086f673fb8a2108b8262181511987d0bc1d09))
|
|
172
|
+
* solflare double connection on page refresh ([#5083](https://github.com/dynamic-labs/DynamicAuth/issues/5083)) ([ef76005](https://github.com/dynamic-labs/DynamicAuth/commit/ef7600564b646cf45396287a0d6b6f1420473b04))
|
|
173
|
+
* swap out findProvider for getSigner on solflare ([#5057](https://github.com/dynamic-labs/DynamicAuth/issues/5057)) ([b78827f](https://github.com/dynamic-labs/DynamicAuth/commit/b78827f8fd87a594114908d890f58b8771123383))
|
|
174
|
+
* validate user session whenever user is connected/authenticated ([#5082](https://github.com/dynamic-labs/DynamicAuth/issues/5082)) ([432faa0](https://github.com/dynamic-labs/DynamicAuth/commit/432faa0a69b43cb7324a252a2450db3cbd3b4b12))
|
|
175
|
+
* walletconnect improvements and fixes ([#5085](https://github.com/dynamic-labs/DynamicAuth/issues/5085)) ([bb42566](https://github.com/dynamic-labs/DynamicAuth/commit/bb425666aef5071b7827ef0aa167a328493f1ae7))
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
* remove and deprecated exported methods ([#5065](https://github.com/dynamic-labs/DynamicAuth/issues/5065)) ([63af7ea](https://github.com/dynamic-labs/DynamicAuth/commit/63af7ea691b2112032de332f2b3558ac6260a38d))
|
|
179
|
+
* remove emailOnly provider ([60a30bc](https://github.com/dynamic-labs/DynamicAuth/commit/60a30bc2f242de19d9c6167279fc44b7f9395ac8))
|
|
180
|
+
* remove isFullyConnected ([#5066](https://github.com/dynamic-labs/DynamicAuth/issues/5066)) ([0a662d9](https://github.com/dynamic-labs/DynamicAuth/commit/0a662d9eda19045f13c21ad1b5238ca11594fde5))
|
|
181
|
+
|
|
182
|
+
## [2.0.0-alpha.21](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.20...v2.0.0-alpha.21) (2024-03-20)
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
### Features
|
|
186
|
+
|
|
187
|
+
* implement barebones signer in PhantomRedirect connector ([#5043](https://github.com/dynamic-labs/DynamicAuth/issues/5043)) ([4d7ff79](https://github.com/dynamic-labs/DynamicAuth/commit/4d7ff79acfe554d651791139b5e1d23ebafe712c))
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
### Bug Fixes
|
|
191
|
+
|
|
192
|
+
* find embedded wallets when no chain is specified ([#5036](https://github.com/dynamic-labs/DynamicAuth/issues/5036)) ([ac50742](https://github.com/dynamic-labs/DynamicAuth/commit/ac50742c6002f48aae7b60c9ec094eb12df8dcca))
|
|
193
|
+
* ignore walletconnect chainChange event when it's the same chain ([#5029](https://github.com/dynamic-labs/DynamicAuth/issues/5029)) ([115311a](https://github.com/dynamic-labs/DynamicAuth/commit/115311a4a64ae35317b8864f93c38203566714fc))
|
|
194
|
+
|
|
195
|
+
## [2.0.0-alpha.20](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.19...v2.0.0-alpha.20) (2024-03-19)
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
### Bug Fixes
|
|
199
|
+
|
|
200
|
+
* prevent solflare connect popping up on page refresh when connected ([#5032](https://github.com/dynamic-labs/DynamicAuth/issues/5032)) ([28175a9](https://github.com/dynamic-labs/DynamicAuth/commit/28175a9af43f3e7f2cab30148563eaf5573477d1))
|
|
201
|
+
* show correct user identifier in onboarding view ([#5021](https://github.com/dynamic-labs/DynamicAuth/issues/5021)) ([c84747f](https://github.com/dynamic-labs/DynamicAuth/commit/c84747f01eb2a0a827ca48e62f03739d4e6df136))
|
|
202
|
+
* use address as the wallet client account ([#5037](https://github.com/dynamic-labs/DynamicAuth/issues/5037)) ([287631e](https://github.com/dynamic-labs/DynamicAuth/commit/287631e9a027e3a39ee2ad6b45ca404febd03929))
|
|
203
|
+
|
|
204
|
+
## [2.0.0-alpha.19](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.18...v2.0.0-alpha.19) (2024-03-19)
|
|
205
|
+
|
|
206
|
+
|
|
207
|
+
### Bug Fixes
|
|
208
|
+
|
|
209
|
+
* add localization to email form ([#5009](https://github.com/dynamic-labs/DynamicAuth/issues/5009)) ([f3c100c](https://github.com/dynamic-labs/DynamicAuth/commit/f3c100cb0b815880d11c6b619d94bfaa7330a115))
|
|
210
|
+
* include domain on signTypedData for ZeroDev connector ([#5017](https://github.com/dynamic-labs/DynamicAuth/issues/5017)) ([71c9131](https://github.com/dynamic-labs/DynamicAuth/commit/71c91311a75309810bc497c8f82981553ddc57fd))
|
|
211
|
+
* Remove Copy Address button if there is no wallet ([#4994](https://github.com/dynamic-labs/DynamicAuth/issues/4994)) ([fe1e641](https://github.com/dynamic-labs/DynamicAuth/commit/fe1e6417be2299e65ba4bcbc3347dfc27f021853))
|
|
212
|
+
|
|
213
|
+
## [2.0.0-alpha.18](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.17...v2.0.0-alpha.18) (2024-03-15)
|
|
214
|
+
|
|
215
|
+
## [2.0.0-alpha.17](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.16...v2.0.0-alpha.17) (2024-03-15)
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
### ⚠ BREAKING CHANGES
|
|
219
|
+
|
|
220
|
+
* rename prop canConnectViaEmail to requiresNonDynamicEmailOtp (#4991)
|
|
221
|
+
|
|
222
|
+
### Features
|
|
223
|
+
|
|
224
|
+
* allow creating embedded wallet with phone number without email ([#4953](https://github.com/dynamic-labs/DynamicAuth/issues/4953)) ([39d31cb](https://github.com/dynamic-labs/DynamicAuth/commit/39d31cbc969fff7acf53c0b6c5e5093ff846f3ea))
|
|
225
|
+
|
|
226
|
+
|
|
227
|
+
* rename prop canConnectViaEmail to requiresNonDynamicEmailOtp ([#4991](https://github.com/dynamic-labs/DynamicAuth/issues/4991)) ([e83a365](https://github.com/dynamic-labs/DynamicAuth/commit/e83a3658d4f5cf0630fc8f15be66f2d3db84ab98))
|
|
228
|
+
|
|
229
|
+
## [2.0.0-alpha.16](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.15...v2.0.0-alpha.16) (2024-03-15)
|
|
230
|
+
|
|
231
|
+
|
|
232
|
+
### Features
|
|
233
|
+
|
|
234
|
+
* add bundlerProvider prop to allow AA customers to select a provider ([#4975](https://github.com/dynamic-labs/DynamicAuth/issues/4975)) ([1870cef](https://github.com/dynamic-labs/DynamicAuth/commit/1870cef4f50944a86226d10f09ef7bf6595f3c95))
|
|
235
|
+
|
|
236
|
+
## [2.0.0-alpha.15](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.14...v2.0.0-alpha.15) (2024-03-15)
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
### Features
|
|
240
|
+
|
|
241
|
+
* Add support for mobile farcaster signin ([#4973](https://github.com/dynamic-labs/DynamicAuth/issues/4973)) ([98261a4](https://github.com/dynamic-labs/DynamicAuth/commit/98261a47bd319cd93b36f5cdd6a9be0064887686))
|
|
242
|
+
|
|
243
|
+
## [2.0.0-alpha.14](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.13...v2.0.0-alpha.14) (2024-03-14)
|
|
244
|
+
|
|
245
|
+
|
|
246
|
+
### Bug Fixes
|
|
247
|
+
|
|
248
|
+
* convert empty value when checking for gas sponsorship ([#4970](https://github.com/dynamic-labs/DynamicAuth/issues/4970)) ([8439a20](https://github.com/dynamic-labs/DynamicAuth/commit/8439a2035729150f33507b22c2678b16ae47976b))
|
|
249
|
+
* omit wallet connect on mobile ([#4954](https://github.com/dynamic-labs/DynamicAuth/issues/4954)) ([6ac29a8](https://github.com/dynamic-labs/DynamicAuth/commit/6ac29a8961dc010688425fb67a4fb621ca9f80b2))
|
|
250
|
+
|
|
251
|
+
## [2.0.0-alpha.13](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.12...v2.0.0-alpha.13) (2024-03-14)
|
|
252
|
+
|
|
253
|
+
## [2.0.0-alpha.12](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.11...v2.0.0-alpha.12) (2024-03-13)
|
|
254
|
+
|
|
255
|
+
|
|
256
|
+
### Features
|
|
257
|
+
|
|
258
|
+
* add sign-in with farcaster ([#4947](https://github.com/dynamic-labs/DynamicAuth/issues/4947)) ([3927d24](https://github.com/dynamic-labs/DynamicAuth/commit/3927d24392a8944997ca05431c6ab54757be62d9))
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
### Bug Fixes
|
|
262
|
+
|
|
263
|
+
* wallet connect links with query params ([#4948](https://github.com/dynamic-labs/DynamicAuth/issues/4948)) ([0738130](https://github.com/dynamic-labs/DynamicAuth/commit/0738130f82473a197e035b8dd74d996bdbb24c11))
|
|
264
|
+
|
|
265
|
+
## [2.0.0-alpha.11](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.10...v2.0.0-alpha.11) (2024-03-12)
|
|
266
|
+
|
|
267
|
+
|
|
268
|
+
### ⚠ BREAKING CHANGES
|
|
269
|
+
|
|
270
|
+
* rename FetchPublicAddressOpts to GetAddressOpts (#4910)
|
|
271
|
+
* remove use effect in useWalletEventListeners (#4843)
|
|
272
|
+
* rename fetchPublicAddress to getAddress (#4851)
|
|
273
|
+
|
|
274
|
+
### Features
|
|
275
|
+
|
|
276
|
+
* Add farcaster to iconic ([#4925](https://github.com/dynamic-labs/DynamicAuth/issues/4925)) ([ab282dc](https://github.com/dynamic-labs/DynamicAuth/commit/ab282dc9cdcc0fe11f014d002b056ef4d3b34234))
|
|
277
|
+
* use transaction confirmation ui on signAndSendTransaction for solana embedded wallets ([#4909](https://github.com/dynamic-labs/DynamicAuth/issues/4909)) ([d77e89e](https://github.com/dynamic-labs/DynamicAuth/commit/d77e89ecff9dfc67ed48537f541a9995b2662e1e))
|
|
278
|
+
|
|
279
|
+
|
|
280
|
+
### Bug Fixes
|
|
281
|
+
|
|
282
|
+
* add back connect button css variables ([#4922](https://github.com/dynamic-labs/DynamicAuth/issues/4922)) ([1119d62](https://github.com/dynamic-labs/DynamicAuth/commit/1119d62c2db6504952393060930524c3823e4a00))
|
|
283
|
+
* keep adaptive wallet list height ([#4916](https://github.com/dynamic-labs/DynamicAuth/issues/4916)) ([62aa54e](https://github.com/dynamic-labs/DynamicAuth/commit/62aa54e81d563082f7aa519f2ff2b5132e7dd83d))
|
|
284
|
+
* pass account and chain to walletClient ([#4865](https://github.com/dynamic-labs/DynamicAuth/issues/4865)) ([17a143f](https://github.com/dynamic-labs/DynamicAuth/commit/17a143f87a77e56227b2517038c20cf67f8e08bf))
|
|
285
|
+
* update walletbook to fix zerion in-app browser detection issue ([#4917](https://github.com/dynamic-labs/DynamicAuth/issues/4917)) ([48b05d7](https://github.com/dynamic-labs/DynamicAuth/commit/48b05d78e4f7add09787b64505723d4eca34d3e0))
|
|
286
|
+
|
|
287
|
+
|
|
288
|
+
* remove use effect in useWalletEventListeners ([#4843](https://github.com/dynamic-labs/DynamicAuth/issues/4843)) ([2e948bb](https://github.com/dynamic-labs/DynamicAuth/commit/2e948bbca0dbdceab7460a844d0988eacd47f581))
|
|
289
|
+
* rename fetchPublicAddress to getAddress ([#4851](https://github.com/dynamic-labs/DynamicAuth/issues/4851)) ([668e7dd](https://github.com/dynamic-labs/DynamicAuth/commit/668e7dd62e1f323dbe64209b5c59c2cd0ee45d61))
|
|
290
|
+
* rename FetchPublicAddressOpts to GetAddressOpts ([#4910](https://github.com/dynamic-labs/DynamicAuth/issues/4910)) ([e5e4b1b](https://github.com/dynamic-labs/DynamicAuth/commit/e5e4b1b08a4e010afa44f8abb0bf6af7f236a86a))
|
|
291
|
+
|
|
292
|
+
## [2.0.0-alpha.10](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.9...v2.0.0-alpha.10) (2024-03-08)
|
|
293
|
+
|
|
294
|
+
|
|
295
|
+
### ⚠ BREAKING CHANGES
|
|
296
|
+
|
|
297
|
+
* rename hideEmbeddedWalletUIs prop to hideEmbeddedWalletTra… (#4892)
|
|
298
|
+
* refactor send transaction for multi chain (#4831)
|
|
299
|
+
|
|
300
|
+
### Features
|
|
301
|
+
|
|
302
|
+
* add sandbox indicator to sdk ([62fd821](https://github.com/dynamic-labs/DynamicAuth/commit/62fd821a895bb54cec4cae3d153aa0056a7e6638))
|
|
303
|
+
|
|
304
|
+
|
|
305
|
+
### Bug Fixes
|
|
306
|
+
|
|
307
|
+
* coinbase connector and auth fetcher no being set properly ([#4891](https://github.com/dynamic-labs/DynamicAuth/issues/4891)) ([328566f](https://github.com/dynamic-labs/DynamicAuth/commit/328566ff39c38d5b5761ddc655de3a5d08bb567a))
|
|
308
|
+
* fix server side rendering ([#4811](https://github.com/dynamic-labs/DynamicAuth/issues/4811)) ([063dfae](https://github.com/dynamic-labs/DynamicAuth/commit/063dfae8b6750875d2f35dd9709a1f675495f4fb))
|
|
309
|
+
* hide network ([#4885](https://github.com/dynamic-labs/DynamicAuth/issues/4885)) ([ec10c58](https://github.com/dynamic-labs/DynamicAuth/commit/ec10c588218f067e991d5830fc06ec081e4e1d18))
|
|
310
|
+
* network picker on mobile ([#4887](https://github.com/dynamic-labs/DynamicAuth/issues/4887)) ([6e0ab1b](https://github.com/dynamic-labs/DynamicAuth/commit/6e0ab1bc7d138b73373741960a501ff7cf20e3f9))
|
|
311
|
+
|
|
312
|
+
|
|
313
|
+
* refactor send transaction for multi chain ([#4831](https://github.com/dynamic-labs/DynamicAuth/issues/4831)) ([c98444b](https://github.com/dynamic-labs/DynamicAuth/commit/c98444be7935420dda3d8216d03946f5893eb82f))
|
|
314
|
+
* rename hideEmbeddedWalletUIs prop to hideEmbeddedWalletTra… ([#4892](https://github.com/dynamic-labs/DynamicAuth/issues/4892)) ([7cdf519](https://github.com/dynamic-labs/DynamicAuth/commit/7cdf5196b1cd8516de2d456163fe9071956d40d3))
|
|
315
|
+
|
|
2
316
|
## [2.0.0-alpha.9](https://github.com/dynamic-labs/DynamicAuth/compare/v2.0.0-alpha.8...v2.0.0-alpha.9) (2024-03-06)
|
|
3
317
|
|
|
4
318
|
|
package/package.json
CHANGED
|
@@ -1,24 +1,25 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/wagmi-connector",
|
|
3
|
-
"version": "2.0.0
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/dynamic-labs/DynamicAuth.git",
|
|
7
7
|
"directory": "packages/wagmi-connector"
|
|
8
8
|
},
|
|
9
9
|
"peerDependencies": {
|
|
10
|
-
"@wagmi/core": "2.6.4",
|
|
10
|
+
"@wagmi/core": "^2.6.4",
|
|
11
11
|
"react": "^18.0.0",
|
|
12
|
-
"viem": "2.7.6",
|
|
13
|
-
"wagmi": "2.5.7",
|
|
14
|
-
"@dynamic-labs/
|
|
15
|
-
"@dynamic-labs/
|
|
16
|
-
"@dynamic-labs/
|
|
17
|
-
"@dynamic-labs/
|
|
12
|
+
"viem": "^2.7.6",
|
|
13
|
+
"wagmi": "^2.5.7",
|
|
14
|
+
"@dynamic-labs/logger": "2.0.0",
|
|
15
|
+
"@dynamic-labs/rpc-providers": "2.0.0",
|
|
16
|
+
"@dynamic-labs/sdk-react-core": "2.0.0",
|
|
17
|
+
"@dynamic-labs/types": "2.0.0",
|
|
18
|
+
"@dynamic-labs/wallet-connector-core": "2.0.0",
|
|
18
19
|
"eventemitter3": "5.0.1"
|
|
19
20
|
},
|
|
20
21
|
"license": "MIT",
|
|
21
|
-
"main": "./src/index.
|
|
22
|
+
"main": "./src/index.js",
|
|
22
23
|
"module": "./src/index.js",
|
|
23
24
|
"types": "./src/index.d.ts",
|
|
24
25
|
"type": "module",
|
|
@@ -26,7 +27,7 @@
|
|
|
26
27
|
".": {
|
|
27
28
|
"types": "./src/index.d.ts",
|
|
28
29
|
"import": "./src/index.js",
|
|
29
|
-
"require": "./src/index.
|
|
30
|
+
"require": "./src/index.js"
|
|
30
31
|
},
|
|
31
32
|
"./package.json": "./package.json"
|
|
32
33
|
}
|
package/src/lib/Connector.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { MutableRefObject } from 'react';
|
|
2
|
-
import { Connector } from 'wagmi';
|
|
3
2
|
import { Account, Transport, Chain } from 'viem';
|
|
4
|
-
import {
|
|
3
|
+
import { WalletConnector } from '@dynamic-labs/sdk-react-core';
|
|
5
4
|
export type ConnectorParameters = {
|
|
5
|
+
connectorId: string;
|
|
6
6
|
handleLogOut: () => Promise<void>;
|
|
7
7
|
walletConnector: WalletConnector;
|
|
8
8
|
preventWagmiSyncFromCallingLogout: MutableRefObject<boolean>;
|
|
@@ -58,8 +58,8 @@ export declare const getCreateConnectorFn: (parameters: ConnectorParameters) =>
|
|
|
58
58
|
[x: `address[${string}]`]: undefined;
|
|
59
59
|
[x: `bool[${string}]`]: undefined;
|
|
60
60
|
[x: `bytes[${string}]`]: undefined;
|
|
61
|
-
[x: `bytes1[${string}]`]: undefined;
|
|
62
61
|
[x: `bytes16[${string}]`]: undefined;
|
|
62
|
+
[x: `bytes1[${string}]`]: undefined;
|
|
63
63
|
[x: `bytes2[${string}]`]: undefined;
|
|
64
64
|
[x: `bytes3[${string}]`]: undefined;
|
|
65
65
|
[x: `bytes4[${string}]`]: undefined;
|
|
@@ -160,8 +160,8 @@ export declare const getCreateConnectorFn: (parameters: ConnectorParameters) =>
|
|
|
160
160
|
address?: undefined;
|
|
161
161
|
bool?: undefined;
|
|
162
162
|
bytes?: undefined;
|
|
163
|
-
bytes1?: undefined;
|
|
164
163
|
bytes16?: undefined;
|
|
164
|
+
bytes1?: undefined;
|
|
165
165
|
bytes2?: undefined;
|
|
166
166
|
bytes3?: undefined;
|
|
167
167
|
bytes4?: undefined;
|
|
@@ -336,8 +336,8 @@ export declare const getCreateConnectorFn: (parameters: ConnectorParameters) =>
|
|
|
336
336
|
[x: `address[${string}]`]: undefined;
|
|
337
337
|
[x: `bool[${string}]`]: undefined;
|
|
338
338
|
[x: `bytes[${string}]`]: undefined;
|
|
339
|
-
[x: `bytes1[${string}]`]: undefined;
|
|
340
339
|
[x: `bytes16[${string}]`]: undefined;
|
|
340
|
+
[x: `bytes1[${string}]`]: undefined;
|
|
341
341
|
[x: `bytes2[${string}]`]: undefined;
|
|
342
342
|
[x: `bytes3[${string}]`]: undefined;
|
|
343
343
|
[x: `bytes4[${string}]`]: undefined;
|
|
@@ -438,8 +438,8 @@ export declare const getCreateConnectorFn: (parameters: ConnectorParameters) =>
|
|
|
438
438
|
address?: undefined;
|
|
439
439
|
bool?: undefined;
|
|
440
440
|
bytes?: undefined;
|
|
441
|
-
bytes1?: undefined;
|
|
442
441
|
bytes16?: undefined;
|
|
442
|
+
bytes1?: undefined;
|
|
443
443
|
bytes2?: undefined;
|
|
444
444
|
bytes3?: undefined;
|
|
445
445
|
bytes4?: undefined;
|
|
@@ -618,8 +618,8 @@ export declare const getCreateConnectorFn: (parameters: ConnectorParameters) =>
|
|
|
618
618
|
[x: `address[${string}]`]: undefined;
|
|
619
619
|
[x: `bool[${string}]`]: undefined;
|
|
620
620
|
[x: `bytes[${string}]`]: undefined;
|
|
621
|
-
[x: `bytes1[${string}]`]: undefined;
|
|
622
621
|
[x: `bytes16[${string}]`]: undefined;
|
|
622
|
+
[x: `bytes1[${string}]`]: undefined;
|
|
623
623
|
[x: `bytes2[${string}]`]: undefined;
|
|
624
624
|
[x: `bytes3[${string}]`]: undefined;
|
|
625
625
|
[x: `bytes4[${string}]`]: undefined;
|
|
@@ -720,8 +720,8 @@ export declare const getCreateConnectorFn: (parameters: ConnectorParameters) =>
|
|
|
720
720
|
address?: undefined;
|
|
721
721
|
bool?: undefined;
|
|
722
722
|
bytes?: undefined;
|
|
723
|
-
bytes1?: undefined;
|
|
724
723
|
bytes16?: undefined;
|
|
724
|
+
bytes1?: undefined;
|
|
725
725
|
bytes2?: undefined;
|
|
726
726
|
bytes3?: undefined;
|
|
727
727
|
bytes4?: undefined;
|
|
@@ -835,7 +835,7 @@ export declare const getCreateConnectorFn: (parameters: ConnectorParameters) =>
|
|
|
835
835
|
uid?: undefined;
|
|
836
836
|
} & Partial<Pick<import("viem").PublicActions<Transport, Chain, Account>, "getChainId" | "prepareTransactionRequest" | "sendRawTransaction" | "call" | "createContractEventFilter" | "createEventFilter" | "estimateContractGas" | "estimateGas" | "getBlock" | "getBlockNumber" | "getContractEvents" | "getEnsText" | "getFilterChanges" | "getGasPrice" | "getLogs" | "getTransaction" | "getTransactionCount" | "getTransactionReceipt" | "readContract" | "simulateContract" | "uninstallFilter" | "watchBlockNumber" | "watchContractEvent"> & Pick<import("viem").WalletActions<Chain, Account>, "sendTransaction" | "writeContract">>>(fn: (client: import("viem").Client<Transport, Chain, Account, import("viem").WalletRpcSchema, import("viem").WalletActions<Chain, Account>>) => client) => import("viem").Client<Transport, Chain, Account, import("viem").WalletRpcSchema, { [K in keyof client]: client[K]; } & import("viem").WalletActions<Chain, Account>>;
|
|
837
837
|
}>;
|
|
838
|
-
id:
|
|
838
|
+
id: string;
|
|
839
839
|
isAuthorized: () => Promise<boolean>;
|
|
840
840
|
name: "Dynamic";
|
|
841
841
|
onAccountsChanged: (accounts: string[]) => void;
|
|
@@ -846,4 +846,3 @@ export declare const getCreateConnectorFn: (parameters: ConnectorParameters) =>
|
|
|
846
846
|
}) => Promise<Chain>;
|
|
847
847
|
type: "dynamic";
|
|
848
848
|
}, {}>;
|
|
849
|
-
export declare const createConnectorForFirstConnectedEvmWallet: (wallets: Wallet[], createConnector: (wallet: Wallet) => Connector) => Connector | undefined;
|
package/src/lib/Connector.js
CHANGED
|
@@ -42,7 +42,7 @@ const getCreateConnectorFn = (parameters) => createConnector((config) => ({
|
|
|
42
42
|
getAccounts() {
|
|
43
43
|
var _a;
|
|
44
44
|
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
-
const address = yield ((_a = parameters.walletConnector) === null || _a === void 0 ? void 0 : _a.
|
|
45
|
+
const address = yield ((_a = parameters.walletConnector) === null || _a === void 0 ? void 0 : _a.getAddress());
|
|
46
46
|
if (!address) {
|
|
47
47
|
throw new Error('Not connected');
|
|
48
48
|
}
|
|
@@ -82,7 +82,7 @@ const getCreateConnectorFn = (parameters) => createConnector((config) => ({
|
|
|
82
82
|
return (_a = parameters.walletConnector) === null || _a === void 0 ? void 0 : _a.getWalletClient();
|
|
83
83
|
});
|
|
84
84
|
},
|
|
85
|
-
id:
|
|
85
|
+
id: parameters.connectorId,
|
|
86
86
|
isAuthorized() {
|
|
87
87
|
var _a, _b;
|
|
88
88
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -117,12 +117,5 @@ const getCreateConnectorFn = (parameters) => createConnector((config) => ({
|
|
|
117
117
|
},
|
|
118
118
|
type: 'dynamic',
|
|
119
119
|
}));
|
|
120
|
-
const createConnectorForFirstConnectedEvmWallet = (wallets, createConnector) => {
|
|
121
|
-
for (const wallet of wallets) {
|
|
122
|
-
if (wallet.connected && wallet.connector.connectedChain === 'EVM') {
|
|
123
|
-
return createConnector(wallet);
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
};
|
|
127
120
|
|
|
128
|
-
export {
|
|
121
|
+
export { getCreateConnectorFn };
|
|
@@ -2,29 +2,36 @@ import { jsx } from 'react/jsx-runtime';
|
|
|
2
2
|
import { useRef, useMemo, useEffect } from 'react';
|
|
3
3
|
import { useConfig } from 'wagmi';
|
|
4
4
|
import { useDynamicContext, useUserWallets } from '@dynamic-labs/sdk-react-core';
|
|
5
|
-
import {
|
|
6
|
-
import { createConnectorForFirstConnectedEvmWallet, getCreateConnectorFn } from './Connector.js';
|
|
5
|
+
import { getCreateConnectorFn } from './Connector.js';
|
|
7
6
|
import { SyncDynamicWagmi } from './SyncDynamicWagmi.js';
|
|
7
|
+
import { useChainMismatchLogger } from './useChainMismatchLogger.js';
|
|
8
|
+
import { useFindEvmWallet } from './hooks/useFindEvmWallet/useFindEvmWallet.js';
|
|
9
|
+
import { useConnectorId } from './hooks/useConnectorId/useConnectorId.js';
|
|
8
10
|
|
|
9
|
-
const DynamicWagmiConnector = ({ children, }) => {
|
|
11
|
+
const DynamicWagmiConnector = ({ suppressChainMismatchError = false, children, }) => {
|
|
10
12
|
const config = useConfig();
|
|
11
13
|
const { handleLogOut, primaryWallet } = useDynamicContext();
|
|
14
|
+
const wallets = useUserWallets();
|
|
15
|
+
useChainMismatchLogger({ throwOnMismatch: !suppressChainMismatchError });
|
|
16
|
+
const evmWallet = useFindEvmWallet(primaryWallet, wallets);
|
|
17
|
+
const getConnectorId = useConnectorId();
|
|
12
18
|
/**
|
|
13
19
|
* This will prevent the wagmi Connector from calling handleLogOut when we are the ones calling disconnect
|
|
14
20
|
* as a result of a handleLogOut call (see SyncDynamicWagmi), but will preserve the existing behavior for customers.
|
|
15
21
|
*/
|
|
16
22
|
const preventWagmiSyncFromCallingLogout = useRef(false);
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
const
|
|
23
|
+
const connector = useMemo(() => {
|
|
24
|
+
if (!evmWallet) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
const connectorId = getConnectorId(evmWallet.connector);
|
|
28
|
+
return config._internal.connectors.setup(getCreateConnectorFn({
|
|
29
|
+
connectorId,
|
|
22
30
|
handleLogOut,
|
|
23
31
|
preventWagmiSyncFromCallingLogout,
|
|
24
|
-
walletConnector:
|
|
32
|
+
walletConnector: evmWallet.connector,
|
|
25
33
|
}));
|
|
26
|
-
|
|
27
|
-
}), [config._internal.connectors, evmWallets, handleLogOut]);
|
|
34
|
+
}, [config._internal.connectors, getConnectorId, handleLogOut, evmWallet]);
|
|
28
35
|
/**
|
|
29
36
|
* Updating the wagmi config must be done in a useEffect because
|
|
30
37
|
* when setting the public client and connectors, wagmi will fire
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { useConnectorId } from './useConnectorId';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { WalletConnector } from '@dynamic-labs/wallet-connector-core';
|
|
2
|
+
/**
|
|
3
|
+
* This hook is used to generate a unique ID for a given WalletConnector.
|
|
4
|
+
* This is used to ensure the wagmi connector id will change if the wallet connector
|
|
5
|
+
* instance changes between rerenders.
|
|
6
|
+
*/
|
|
7
|
+
export declare const useConnectorId: () => (walletConnector: WalletConnector) => string;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { useRef, useCallback } from 'react';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* This hook is used to generate a unique ID for a given WalletConnector.
|
|
5
|
+
* This is used to ensure the wagmi connector id will change if the wallet connector
|
|
6
|
+
* instance changes between rerenders.
|
|
7
|
+
*/
|
|
8
|
+
const useConnectorId = () => {
|
|
9
|
+
const lastSeenWalletConnector = useRef(undefined);
|
|
10
|
+
const lastConnectorKey = useRef(0);
|
|
11
|
+
/**
|
|
12
|
+
* This function will generate a unique ID for a given WalletConnector.
|
|
13
|
+
*/
|
|
14
|
+
return useCallback((walletConnector) => {
|
|
15
|
+
if (walletConnector !== lastSeenWalletConnector.current) {
|
|
16
|
+
lastSeenWalletConnector.current = walletConnector;
|
|
17
|
+
lastConnectorKey.current += 1;
|
|
18
|
+
}
|
|
19
|
+
return `dynamic-${walletConnector.key}-${lastConnectorKey.current}`;
|
|
20
|
+
}, []);
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export { useConnectorId };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { useFindEvmWallet } from './useFindEvmWallet';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
const isEvmWallet = (wallet) => wallet.connector.connectedChain === 'EVM';
|
|
2
|
+
const isWalletConnected = (wallet) => wallet.connected;
|
|
3
|
+
const useFindEvmWallet = (primaryWallet, wallets) => {
|
|
4
|
+
/**
|
|
5
|
+
* If the primary wallet is an EVM wallet and is connected, return it.
|
|
6
|
+
*/
|
|
7
|
+
if (primaryWallet &&
|
|
8
|
+
isEvmWallet(primaryWallet) &&
|
|
9
|
+
isWalletConnected(primaryWallet)) {
|
|
10
|
+
return primaryWallet;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* If the primary wallet is not connected, find the first connected EVM wallet.
|
|
14
|
+
*/
|
|
15
|
+
const connectedEvmWallets = wallets
|
|
16
|
+
.filter(isEvmWallet)
|
|
17
|
+
.filter(isWalletConnected);
|
|
18
|
+
return connectedEvmWallets[0];
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
export { useFindEvmWallet };
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
import { useConfig } from 'wagmi';
|
|
3
|
+
import { Logger } from '@dynamic-labs/logger';
|
|
4
|
+
import { useDynamicContext } from '@dynamic-labs/sdk-react-core';
|
|
5
|
+
|
|
6
|
+
const logger = new Logger('DynamicWagmiConnector');
|
|
7
|
+
const useChainMismatchLogger = ({ throwOnMismatch, } = { throwOnMismatch: true }) => {
|
|
8
|
+
const config = useConfig();
|
|
9
|
+
const { networkConfigurations } = useDynamicContext();
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
if (!(networkConfigurations === null || networkConfigurations === void 0 ? void 0 : networkConfigurations.evm))
|
|
12
|
+
return;
|
|
13
|
+
const wagmiChains = config.chains;
|
|
14
|
+
const wagmiChainIds = wagmiChains.map((chain) => chain.id);
|
|
15
|
+
const dynamicChains = networkConfigurations.evm;
|
|
16
|
+
const dynamicChainIds = dynamicChains.map((chain) => chain.chainId);
|
|
17
|
+
wagmiChains.forEach((chain) => {
|
|
18
|
+
if (!dynamicChainIds.includes(chain.id)) {
|
|
19
|
+
const message = `Chain (id: ${chain.id} name: ${chain.name}) is present in the Wagmi config, but is not present in the Dynamic configuration.` +
|
|
20
|
+
' Please make sure to enable the chain in your Dynamic Dashboard, or add it to the evmNetworks prop on DynamicContextProvider.' +
|
|
21
|
+
' For more information, see: https://docs.dynamic.xyz/guides/frameworks/wagmi-v2#chain-configuration';
|
|
22
|
+
if (throwOnMismatch) {
|
|
23
|
+
throw new Error(message +
|
|
24
|
+
' \n\nTo suppress this error, pass `suppressChainMismatchError` to `DynamicWagmiConnector`: `<DynamicWagmiConnector suppressChainMismatchError>`');
|
|
25
|
+
}
|
|
26
|
+
logger.warn(message);
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
dynamicChains.forEach((chain) => {
|
|
30
|
+
if (!wagmiChainIds.includes(Number(chain.chainId))) {
|
|
31
|
+
const message = `Chain (id: ${chain.chainId} name: ${chain.name}) is present in the Dynamic config, but is not present in the Wagmi configuration.` +
|
|
32
|
+
' Please make sure to add the chain to the chains prop on the Wagmi createConfig function.' +
|
|
33
|
+
' For more information, see: https://docs.dynamic.xyz/guides/frameworks/wagmi-v2#chain-configuration';
|
|
34
|
+
if (throwOnMismatch) {
|
|
35
|
+
throw new Error(message +
|
|
36
|
+
' \n\nTo suppress this error, pass `suppressChainMismatchError` to `DynamicWagmiConnector`: `<DynamicWagmiConnector suppressChainMismatchError>`');
|
|
37
|
+
}
|
|
38
|
+
logger.warn(message);
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
}, [config.chains, networkConfigurations, throwOnMismatch]);
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
export { useChainMismatchLogger };
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
const evmWalletsFilter = (wallet) => wallet.connector.connectedChain === 'EVM';
|
|
2
|
-
const findAndOrderEvmWallets = (primaryWallet, wallets) => {
|
|
3
|
-
const isPrimaryWalletEvm = (primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector.connectedChain) === 'EVM';
|
|
4
|
-
if (isPrimaryWalletEvm) {
|
|
5
|
-
const secondaryEvmWallets = wallets
|
|
6
|
-
.filter(evmWalletsFilter)
|
|
7
|
-
.filter((wallet) => wallet.address !== primaryWallet.address);
|
|
8
|
-
return [primaryWallet, ...secondaryEvmWallets];
|
|
9
|
-
}
|
|
10
|
-
return wallets.filter(evmWalletsFilter);
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
export { findAndOrderEvmWallets };
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { findAndOrderEvmWallets } from './findAndOrderEvmWallets';
|
package/src/lib/utils/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './findAndOrderEvmWallets';
|