@dynamic-labs/client 4.0.0-alpha.8 → 4.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 CHANGED
@@ -1,4 +1,499 @@
1
1
 
2
+ ## [4.0.0](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.52...v4.0.0) (2025-01-09)
3
+
4
+
5
+ ### ⚠ BREAKING CHANGES
6
+ See [upgrade guide](https://docs.dynamic.xyz/react-sdk/upgrade/v4) for more details.
7
+ * change openFunding to openExternalFunding (#7684)
8
+ * stop exposing authToken and minAuthToken from dynamic context (#7629)
9
+ * Removes the `eventsCallbacks` prop which has been deprecated for a while. Use the `events` prop instead.
10
+ * remove usages of findWalletBookWallet when possible (#7455)
11
+ * remove `supportsSatsConnect` helper (#7453)
12
+ * moved `getWalletLinks` helper from `@dynamic-labs/wallet-book` to `@dynamic-labs/wallet-connector-core` (#7416
13
+ * change openFunding to openExternalFunding (#7684)
14
+ * upgrade zerodev to 5.4.x (#7670)
15
+
16
+ ### Features
17
+ * Support for multi-chain AA (#6829)
18
+ * Add account abstraction module to client (#7002)
19
+ * Add support for wallet events in RN (#7061)
20
+ * Add zerodev extension for react native (#7028)
21
+ * Global connectivity disconnect (#7008)
22
+ * Add isInstalledOnBrowser prop to wallet options (#6976)
23
+ * Add iconVariant prop to DynamicBridgeWidget (#6915)
24
+ * Allow creating extra embedded wallets in react-native (#6923)
25
+ * Add hide method for auth and userProfile UI modules (#6928)
26
+ * Blockaid website scanning for global connectivity (#6874)
27
+ * Add login with TikTok (#7360)
28
+ * New transaction modal and UI for sign/signAll (#7296)
29
+ * Allow adding connection configuration for Solana connectors (#7354)
30
+ * Allow deletion of embedded wallets (#7170)
31
+ * Add support for eclipse (#7255)
32
+ * Add passkey and social to web-extension (#7096, #7106)
33
+ * Add support for compass and leap wallets
34
+ * Add support for epicgames social (#7220)
35
+ * Add support for xverse account change event (#7114)
36
+ * Show wallet names when unknown (#7478)
37
+ * AA blockaid simulations (#7583)
38
+ * Add ethereum createConnector function (#7607)
39
+ * Add fundWithExternalWallet method to useFunding (#7688)
40
+ * Global wallet: add network switch to ethereum wallets (#7686)
41
+ * Global wallet: support Solana (#7732)
42
+ * Global wallet: support Solana sign message (#7739)
43
+
44
+ ### Bug Fixes
45
+ * Create v2 embedded wallet experience in manual mode (#6887)
46
+ * Solana pk export format (#6888)
47
+ * Deeplinking on ethereum and bitcoin sats connector (#6917)
48
+ * Solana and cosmos signers not working properly (#6898)
49
+ * Edge case where wallet book fails to load (#7148)
50
+ * Issues where native currency icons were incorrect (#7126)
51
+ * Eclipse and solana wallets getting mixed up in connect only (#7487)
52
+ * Eclipse wallets never get detected (#7479)
53
+ * Changing copy of linking same wallet (#7489)
54
+ * Don't allow user to connect wallet in bridge while SDK is still loading (#7506)
55
+ * SDKHasLoaded always false in cookie enabled env (#7516)
56
+ * Normalize user reject error from injected wallets (#7702)
57
+ * Fetch nonce when authenticating a user in connect-only mode (#7689)
58
+ * Filter out wallets for current network when using external wallet funding (#7694)
59
+ * Remove toaccount from signmessage and signtypeddata for zerodev (#7650)
60
+ * Save nonce to storage (#7698)
61
+ * Add timeout when getting connected accounts (#7697)
62
+ * Update auth token from new source (#7666)
63
+ * Update extension update_url endpoint (#7655)
64
+ * Zerodev confirmation UI closes properly (#7664)
65
+ * Normalize user reject error from Rainbow and BitGet (#7721)
66
+ * Map user reject error to viem user reject error (#7712)
67
+ * Allow selecting wallet directly without showing group view if wallet key is same as group key (#7744)
68
+ * Confirmation UI shows recipient if tx is native/token transfer (#7717)
69
+ * Force network change when secondary funding wallet is on different network (#7733)
70
+ * Some Solana standard wallets not being detected correctly as installed (#7759)
71
+ * Unexpected buy button disabled when onramp is available (#7746)
72
+ * UseRpcProviders race conditions (#7742)
73
+ * allow selecting wallet directly without showing group view if wallet key is the same as group key (#7744)
74
+ * confirmation ui shows recipient if tx is native/token transfer (#7717)
75
+ * force network change when secondary fundig wallet is on a different network (#7733)
76
+ * some solana standard wallets not being detected correctly as installed (#7759)
77
+ * unexpected buy button disabled when onramp is available (#7746)
78
+ * useRpcProviders race conditions (#7742)
79
+
80
+ ## [4.0.0-alpha.52](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.51...v4.0.0-alpha.52) (2025-01-02)
81
+
82
+ ## [4.0.0-alpha.51](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.50...v4.0.0-alpha.51) (2024-12-30)
83
+
84
+
85
+ ### Bug Fixes
86
+
87
+ * changing copy of linking same wallet ([#7489](https://github.com/dynamic-labs/dynamic-auth/issues/7489)) ([e7d6b95](https://github.com/dynamic-labs/dynamic-auth/commit/e7d6b957043eaf8c06a4e8ef480ec9b027abdb5e))
88
+ * normalize user reject error from Rainbow and BitGet ([#7721](https://github.com/dynamic-labs/dynamic-auth/issues/7721)) ([78a2e41](https://github.com/dynamic-labs/dynamic-auth/commit/78a2e41e235743f0c652be746a8bee74d4e06629))
89
+
90
+ ## [4.0.0-alpha.50](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.49...v4.0.0-alpha.50) (2024-12-28)
91
+
92
+
93
+ ### Bug Fixes
94
+
95
+ * map user reject error to viem user reject error ([#7712](https://github.com/dynamic-labs/dynamic-auth/issues/7712)) ([ff2cb62](https://github.com/dynamic-labs/dynamic-auth/commit/ff2cb621b860b8d42ed520c64edc916d875e1abb))
96
+
97
+ ## [4.0.0-alpha.49](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.48...v4.0.0-alpha.49) (2024-12-27)
98
+
99
+
100
+ ### ⚠ BREAKING CHANGES
101
+
102
+ * change openFunding to openExternalFunding (#7684)
103
+
104
+ ### Features
105
+
106
+ * aa blockaid simulations ([#7583](https://github.com/dynamic-labs/dynamic-auth/issues/7583)) ([6436220](https://github.com/dynamic-labs/dynamic-auth/commit/64362204d2c96291a37bf281d62531d6f2384fdf))
107
+ * add ethereum createConnector function ([#7607](https://github.com/dynamic-labs/dynamic-auth/issues/7607)) ([f306537](https://github.com/dynamic-labs/dynamic-auth/commit/f3065372f3c5dfc8bf26173dc722576e614af5e1))
108
+ * add fundWithExternalWallet method to useFunding ([#7688](https://github.com/dynamic-labs/dynamic-auth/issues/7688)) ([d48b1d2](https://github.com/dynamic-labs/dynamic-auth/commit/d48b1d2568ba928b322a4d81b6386e775ae4aa98))
109
+ * change openFunding to openExternalFunding ([#7684](https://github.com/dynamic-labs/dynamic-auth/issues/7684)) ([8efb9cb](https://github.com/dynamic-labs/dynamic-auth/commit/8efb9cb9ca3d7e2273c14e18f7be5892e50b8e12))
110
+ * connect global wallet in ethereum ([#7619](https://github.com/dynamic-labs/dynamic-auth/issues/7619)) ([fdb7f00](https://github.com/dynamic-labs/dynamic-auth/commit/fdb7f00c33f7da3ac95ae13ac674caa64b453cae))
111
+ * create wallet groups dynamically based on wallet options ([#7662](https://github.com/dynamic-labs/dynamic-auth/issues/7662)) ([981affc](https://github.com/dynamic-labs/dynamic-auth/commit/981affce5518f6532d960fe4e879e9cf40a66ce7))
112
+
113
+
114
+ ### Bug Fixes
115
+
116
+ * **ethereum:** normalize user reject error from injected wallets ([#7702](https://github.com/dynamic-labs/dynamic-auth/issues/7702)) ([ce456a8](https://github.com/dynamic-labs/dynamic-auth/commit/ce456a8592197b07857baf32bb1b38867ffb37fe))
117
+ * fetch nonce when authenticating a user that connected in connect-only mode ([#7689](https://github.com/dynamic-labs/dynamic-auth/issues/7689)) ([f048bb9](https://github.com/dynamic-labs/dynamic-auth/commit/f048bb96b6cb5ae603966b2813f900a082cd158f))
118
+ * filter out wallets for the current network when using external wallet funding ([#7694](https://github.com/dynamic-labs/dynamic-auth/issues/7694)) ([65db665](https://github.com/dynamic-labs/dynamic-auth/commit/65db6652a934561e7d07379a65d2baa8f7813d8e))
119
+ * remove toaccount from signmessage and signtypeddata for zerodev ([#7650](https://github.com/dynamic-labs/dynamic-auth/issues/7650)) ([626e849](https://github.com/dynamic-labs/dynamic-auth/commit/626e849a4af3af51d60b42dd2787edb05126744b))
120
+ * save nonce to storage ([#7698](https://github.com/dynamic-labs/dynamic-auth/issues/7698)) ([93dc65b](https://github.com/dynamic-labs/dynamic-auth/commit/93dc65b7f78040367b85420c1374f3cafbfb598b))
121
+ * **sdk-react-core:** add timeout when getting connected accounts ([#7697](https://github.com/dynamic-labs/dynamic-auth/issues/7697)) ([9a4bd7c](https://github.com/dynamic-labs/dynamic-auth/commit/9a4bd7c02795205ec98d8d71aba75b51b9bbee7c))
122
+ * update auth token from new source ([#7666](https://github.com/dynamic-labs/dynamic-auth/issues/7666)) ([61798de](https://github.com/dynamic-labs/dynamic-auth/commit/61798de26d759db9064f5f84118540346a44ab50))
123
+ * update extension update_url endpoint ([#7655](https://github.com/dynamic-labs/dynamic-auth/issues/7655)) ([46cff3a](https://github.com/dynamic-labs/dynamic-auth/commit/46cff3a80c9efee659a764df47f927ed5a117079))
124
+ * zerodev confirmation UI closes properly ([#7664](https://github.com/dynamic-labs/dynamic-auth/issues/7664)) ([a78aded](https://github.com/dynamic-labs/dynamic-auth/commit/a78adedc054d09134198d22812aa5cab7bbff548))
125
+
126
+ ## [4.0.0-alpha.48](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.47...v4.0.0-alpha.48) (2024-12-17)
127
+
128
+
129
+ ### Bug Fixes
130
+
131
+ * Temp disable refreshing blockhash for solana transactions ([#7638](https://github.com/dynamic-labs/dynamic-auth/issues/7638)) ([fd457bf](https://github.com/dynamic-labs/dynamic-auth/commit/fd457bf0579ad35ba17fc2c7aa18a9feb49d8c7b))
132
+
133
+ ## [4.0.0-alpha.47](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.46...v4.0.0-alpha.47) (2024-12-17)
134
+
135
+
136
+ ### ⚠ BREAKING CHANGES
137
+
138
+ * stop exposing authToken and minAuthToken from dynamic context (#7629)
139
+
140
+ ### Bug Fixes
141
+
142
+ * allow re-linking unknown wallet when there's another account of the same wallet provider already linked ([#7628](https://github.com/dynamic-labs/dynamic-auth/issues/7628)) ([20c6dc3](https://github.com/dynamic-labs/dynamic-auth/commit/20c6dc3b1847d82bd46f0df5abaef4efe1e24e38))
143
+ * ensure wallet connector will not get removed ([#7625](https://github.com/dynamic-labs/dynamic-auth/issues/7625)) ([b764846](https://github.com/dynamic-labs/dynamic-auth/commit/b764846b56428e2997d33858e29a87f44359eb6c))
144
+
145
+
146
+ * stop exposing authToken and minAuthToken from dynamic context ([#7629](https://github.com/dynamic-labs/dynamic-auth/issues/7629)) ([9648870](https://github.com/dynamic-labs/dynamic-auth/commit/9648870478cdcecde279117ada2a1095dab54e2c))
147
+
148
+ ## [4.0.0-alpha.46](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.45...v4.0.0-alpha.46) (2024-12-17)
149
+
150
+
151
+ ### Features
152
+
153
+ * **GVTY-2484:** add subdomain handle field ([#7613](https://github.com/dynamic-labs/dynamic-auth/issues/7613)) ([ee8df3b](https://github.com/dynamic-labs/dynamic-auth/commit/ee8df3b34fa9fed96d92d0b414334c370c9791bc))
154
+
155
+
156
+ ### Bug Fixes
157
+
158
+ * increase wait for transactions ([#7624](https://github.com/dynamic-labs/dynamic-auth/issues/7624)) ([2f7f01b](https://github.com/dynamic-labs/dynamic-auth/commit/2f7f01b024c2733f71ea0fd09dff24f815120acb))
159
+ * solana wallet standard signer connect ([#7614](https://github.com/dynamic-labs/dynamic-auth/issues/7614)) ([1836cf3](https://github.com/dynamic-labs/dynamic-auth/commit/1836cf343b45bae01cfdcf0c0d010bf38bf54d83))
160
+
161
+ ## [4.0.0-alpha.45](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.44...v4.0.0-alpha.45) (2024-12-11)
162
+
163
+
164
+ ### Bug Fixes
165
+
166
+ * don't throw error if wallet no found in walletbook when fetching metadata ([#7579](https://github.com/dynamic-labs/dynamic-auth/issues/7579)) ([93074a1](https://github.com/dynamic-labs/dynamic-auth/commit/93074a11da1b843cd44ad986c7cfd1f243f2a65d))
167
+
168
+ ## [4.0.0-alpha.44](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.43...v4.0.0-alpha.44) (2024-12-09)
169
+
170
+
171
+ ### ⚠ BREAKING CHANGES
172
+
173
+ * Removes the `eventsCallbacks` prop which has been deprecated for a while. Use the `events` prop instead.
174
+
175
+ ### Features
176
+
177
+ * allows changing the storage postfix ([#7558](https://github.com/dynamic-labs/dynamic-auth/issues/7558)) ([f0aac70](https://github.com/dynamic-labs/dynamic-auth/commit/f0aac703732a69615f11876023684509ad87af62))
178
+ * allows filtering tokens ([#7561](https://github.com/dynamic-labs/dynamic-auth/issues/7561)) ([e73b56c](https://github.com/dynamic-labs/dynamic-auth/commit/e73b56cd41ead7e4f693d19ccb2670602d1107c5))
179
+
180
+
181
+ ### Bug Fixes
182
+
183
+ * fetch and store public key for onekey btc wallet ([#7577](https://github.com/dynamic-labs/dynamic-auth/issues/7577)) ([634e7ac](https://github.com/dynamic-labs/dynamic-auth/commit/634e7ac40dcbe6780f7b52f2aaf6b0a90f1e7325))
184
+
185
+
186
+ * remove eventsCallbacks ([#7571](https://github.com/dynamic-labs/dynamic-auth/issues/7571)) ([7006db3](https://github.com/dynamic-labs/dynamic-auth/commit/7006db3f23ee87b23b075941e16d216d1b8bc356))
187
+
188
+ ## [4.0.0-alpha.43](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.42...v4.0.0-alpha.43) (2024-12-09)
189
+
190
+
191
+ ### Features
192
+
193
+ * add support for OneKey BTC ([#7557](https://github.com/dynamic-labs/dynamic-auth/issues/7557)) ([00f1363](https://github.com/dynamic-labs/dynamic-auth/commit/00f136330bd89ecbd510750641497974b494b149))
194
+
195
+ ## [4.0.0-alpha.42](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.41...v4.0.0-alpha.42) (2024-12-06)
196
+
197
+
198
+ ### Bug Fixes
199
+
200
+ * walletbook loading issues ([#7553](https://github.com/dynamic-labs/dynamic-auth/issues/7553)) ([684ecc3](https://github.com/dynamic-labs/dynamic-auth/commit/684ecc32960e34680088d6cf200318336647ab77))
201
+
202
+ ## [4.0.0-alpha.41](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.40...v4.0.0-alpha.41) (2024-12-05)
203
+
204
+
205
+ ### Features
206
+
207
+ * add shopify login ([04c6a9e](https://github.com/dynamic-labs/dynamic-auth/commit/04c6a9ee9d039d1480aa3b476ab382d7ea6dbaf2))
208
+
209
+
210
+ ### Bug Fixes
211
+
212
+ * wallet group icon not rendering properly when no wallets with that same id are found ([#7543](https://github.com/dynamic-labs/dynamic-auth/issues/7543)) ([a26a629](https://github.com/dynamic-labs/dynamic-auth/commit/a26a6294bbe845147245cccc60a7fded49196db6))
213
+
214
+ ## [4.0.0-alpha.40](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.39...v4.0.0-alpha.40) (2024-12-03)
215
+
216
+
217
+ ### Features
218
+
219
+ * detect all eip6963 wallets, even if not in wallet-book ([#7515](https://github.com/dynamic-labs/dynamic-auth/issues/7515)) ([b658740](https://github.com/dynamic-labs/dynamic-auth/commit/b658740c16d8d26877eb955dc403077c8e9840fb))
220
+ * useWalletOptions provides chain and allows filtering ([#7533](https://github.com/dynamic-labs/dynamic-auth/issues/7533)) ([da47608](https://github.com/dynamic-labs/dynamic-auth/commit/da476084bcc72b2bf0b6fa599992be640d59724c))
221
+
222
+
223
+ ### Bug Fixes
224
+
225
+ * **QNTM-1845:** use smaller log in button sizing ([#7526](https://github.com/dynamic-labs/dynamic-auth/issues/7526)) ([264810b](https://github.com/dynamic-labs/dynamic-auth/commit/264810b3b9cddf7006c1f653b4cc10f23804ae50))
226
+ * update twitter to X in social provide label ([#7530](https://github.com/dynamic-labs/dynamic-auth/issues/7530)) ([c02fca0](https://github.com/dynamic-labs/dynamic-auth/commit/c02fca03de2f46a9e50d19c9e7ef2dfba0b33efc))
227
+
228
+ ## [4.0.0-alpha.39](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.38...v4.0.0-alpha.39) (2024-12-02)
229
+
230
+
231
+ ### ⚠ BREAKING CHANGES
232
+
233
+ * remove usages of findWalletBookWallet when possible (#7455)
234
+
235
+ ### Bug Fixes
236
+
237
+ * sdkHasLoaded always false in cookie enabled env ([#7516](https://github.com/dynamic-labs/dynamic-auth/issues/7516)) ([1c3335c](https://github.com/dynamic-labs/dynamic-auth/commit/1c3335c13930e9bffe60cf1c09bc9c9584a59ef7))
238
+
239
+
240
+ * remove usages of findWalletBookWallet when possible ([#7455](https://github.com/dynamic-labs/dynamic-auth/issues/7455)) ([0ce977d](https://github.com/dynamic-labs/dynamic-auth/commit/0ce977d5d4d591c371c6ea2edfb252ba7acff5d2))
241
+
242
+ ## [4.0.0-alpha.38](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.37...v4.0.0-alpha.38) (2024-11-27)
243
+
244
+
245
+ ### Bug Fixes
246
+
247
+ * don't allow user to connect wallet in bridge while sdk is still loading ([#7506](https://github.com/dynamic-labs/dynamic-auth/issues/7506)) ([c0a913d](https://github.com/dynamic-labs/dynamic-auth/commit/c0a913d78675cc66b41f03ea9bfb316de5f95905))
248
+
249
+ ## [4.0.0-alpha.37](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.36...v4.0.0-alpha.37) (2024-11-27)
250
+
251
+
252
+ ### Features
253
+
254
+ * show the name of a wallet when it is unknown ([#7478](https://github.com/dynamic-labs/dynamic-auth/issues/7478)) ([698acc5](https://github.com/dynamic-labs/dynamic-auth/commit/698acc5b63a489f56bf403747a40c36027045bf7))
255
+
256
+ ## [4.0.0-alpha.36](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.35...v4.0.0-alpha.36) (2024-11-26)
257
+
258
+
259
+ ### Bug Fixes
260
+
261
+ * only fetch nonce when required ([#7495](https://github.com/dynamic-labs/dynamic-auth/issues/7495)) ([2816b6f](https://github.com/dynamic-labs/dynamic-auth/commit/2816b6f22d7f9dc7f7e1858e19263a2cb2631bb5))
262
+ * show network for unknown wallets ([#7463](https://github.com/dynamic-labs/dynamic-auth/issues/7463)) ([3a98cc2](https://github.com/dynamic-labs/dynamic-auth/commit/3a98cc2bc807db457f1d11b08b74237badb1399e))
263
+
264
+ ## [4.0.0-alpha.35](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.34...v4.0.0-alpha.35) (2024-11-25)
265
+
266
+
267
+ ### Bug Fixes
268
+
269
+ * eclipse and solana wallets getting mixed up in connect only ([#7487](https://github.com/dynamic-labs/dynamic-auth/issues/7487)) ([6cabfb8](https://github.com/dynamic-labs/dynamic-auth/commit/6cabfb8da4d23a858652634844653aadc75be062))
270
+ * eclipse wallets never get detected ([#7479](https://github.com/dynamic-labs/dynamic-auth/issues/7479)) ([4a1a040](https://github.com/dynamic-labs/dynamic-auth/commit/4a1a04027e447a0c5c42b2dd3808b82c2ce7724c))
271
+ * **ui:** add missing rule for social login modals ([#7476](https://github.com/dynamic-labs/dynamic-auth/issues/7476)) ([59b5a2d](https://github.com/dynamic-labs/dynamic-auth/commit/59b5a2de10600decedbc167ee30e7900ec53618b))
272
+ * use correct fallback connector for each chain ([#7318](https://github.com/dynamic-labs/dynamic-auth/issues/7318)) ([91dcf8b](https://github.com/dynamic-labs/dynamic-auth/commit/91dcf8b6be4932c8e4122ce4dbceafee7ba1d194))
273
+
274
+ ## [4.0.0-alpha.34](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.33...v4.0.0-alpha.34) (2024-11-20)
275
+
276
+
277
+ ### ⚠ BREAKING CHANGES
278
+
279
+ * remove `supportsSatsConnect` helper ([#7453](https://github.com/dynamic-labs/dynamic-auth/issues/7453)) ([920c63b](https://github.com/dynamic-labs/dynamic-auth/commit/920c63bbb5a38dc3d676664db512a4da539c0909))
280
+ * moved `getWalletLinks` helper from `@dynamic-labs/wallet-book` to `@dynamic-labs/wallet-connector-core` ([#7416](https://github.com/dynamic-labs/dynamic-auth/issues/7416)) ([73fdfa8](https://github.com/dynamic-labs/dynamic-auth/commit/73fdfa8a19fe4c2cca55410d5ed3cb7b5bd8cdfd))
281
+
282
+ ### Features
283
+
284
+ * allow listening to dynamic events without using a hook ([#7466](https://github.com/dynamic-labs/dynamic-auth/issues/7466)) ([3b34e1b](https://github.com/dynamic-labs/dynamic-auth/commit/3b34e1bd2737003b987887a02d0e21436e9bf908))
285
+ * emit primaryWalletChanged event when primary wallets changes ([#7464](https://github.com/dynamic-labs/dynamic-auth/issues/7464)) ([3bc6ba0](https://github.com/dynamic-labs/dynamic-auth/commit/3bc6ba055e0232bff3c6c6bb93d3d57b1dd90bc6))
286
+ * emit primaryWalletNetworkChanged event when primary wallet network changes ([#7465](https://github.com/dynamic-labs/dynamic-auth/issues/7465)) ([33cc629](https://github.com/dynamic-labs/dynamic-auth/commit/33cc629d3c6a03c381b7e5591a8f4557987cc6fc))
287
+
288
+
289
+ ## [4.0.0-alpha.33](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.32...v4.0.0-alpha.33) (2024-11-18)
290
+
291
+
292
+ ### Features
293
+
294
+ * add login with tiktok ([#7360](https://github.com/dynamic-labs/dynamic-auth/issues/7360)) ([75bb66b](https://github.com/dynamic-labs/dynamic-auth/commit/75bb66b05158fe339daf7d14bfa21538b42c54f9))
295
+
296
+
297
+ ### Bug Fixes
298
+
299
+ * confirmation ui tweaks ([#7440](https://github.com/dynamic-labs/dynamic-auth/issues/7440)) ([684fb4c](https://github.com/dynamic-labs/dynamic-auth/commit/684fb4ca4232faeaa9975ea346abf88bd8c0acb3))
300
+ * siwe stop passing the query param in the URI ([#7444](https://github.com/dynamic-labs/dynamic-auth/issues/7444)) ([96b7a9c](https://github.com/dynamic-labs/dynamic-auth/commit/96b7a9ce2b7d52395b9dbe2d43c3d7e8a1a5346e))
301
+
302
+ ## [4.0.0-alpha.32](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.31...v4.0.0-alpha.32) (2024-11-13)
303
+
304
+
305
+ ### Bug Fixes
306
+
307
+ * **client:** convert the wallet when using wallets.embedded.getWallet ([#7430](https://github.com/dynamic-labs/dynamic-auth/issues/7430)) ([f852a09](https://github.com/dynamic-labs/dynamic-auth/commit/f852a09695141389c275d1ca27c26595a78d8051))
308
+ * refresh blockhash for solana embedded and use confirmed commitment ([#7425](https://github.com/dynamic-labs/dynamic-auth/issues/7425)) ([25b4169](https://github.com/dynamic-labs/dynamic-auth/commit/25b4169950b32619731f10f3372f80e71ede4ae5))
309
+
310
+ ## [4.0.0-alpha.31](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.30...v4.0.0-alpha.31) (2024-11-13)
311
+
312
+
313
+ ### Features
314
+
315
+ * allow passing telegram auth token into telegramSignIn function ([#7423](https://github.com/dynamic-labs/dynamic-auth/issues/7423)) ([4b8d594](https://github.com/dynamic-labs/dynamic-auth/commit/4b8d594984d1ac7851ce8d94fe4329ba94730f35))
316
+
317
+ ## [4.0.0-alpha.30](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.29...v4.0.0-alpha.30) (2024-11-13)
318
+
319
+
320
+ ### ⚠ BREAKING CHANGES
321
+
322
+ * check wallet limitations from metadata (#7413)
323
+
324
+ ### Bug Fixes
325
+
326
+ * confirmation ui disabled for solana signall and signTransaction ([#7403](https://github.com/dynamic-labs/dynamic-auth/issues/7403)) ([98a352a](https://github.com/dynamic-labs/dynamic-auth/commit/98a352a826202abad734f00df1b3d19080ecf1e2))
327
+ * get starknet wallets directly from window ([#7421](https://github.com/dynamic-labs/dynamic-auth/issues/7421)) ([13e24f7](https://github.com/dynamic-labs/dynamic-auth/commit/13e24f70accf7747f5137fc3f2b05c00939c3af3))
328
+ * issue with SollanaWalletConnectorWithConfig embedded wallets ([#7405](https://github.com/dynamic-labs/dynamic-auth/issues/7405)) ([f08ecd6](https://github.com/dynamic-labs/dynamic-auth/commit/f08ecd6955faf191177bb9833b7a594637a6c4cc))
329
+ * set override key in starknet injected connector ([#7420](https://github.com/dynamic-labs/dynamic-auth/issues/7420)) ([74b2887](https://github.com/dynamic-labs/dynamic-auth/commit/74b28874661b3bad1e0a0f92aa9d3c987dc71225))
330
+
331
+
332
+ * check wallet limitations from metadata ([#7413](https://github.com/dynamic-labs/dynamic-auth/issues/7413)) ([a419de6](https://github.com/dynamic-labs/dynamic-auth/commit/a419de643ea4ff240a27825c10670ba92589b71b))
333
+
334
+ ## [4.0.0-alpha.29](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.28...v4.0.0-alpha.29) (2024-11-07)
335
+
336
+ ## [4.0.0-alpha.28](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.27...v4.0.0-alpha.28) (2024-11-07)
337
+
338
+
339
+ ### ⚠ BREAKING CHANGES
340
+
341
+ * upgrade to starknet v6
342
+ See this guide for more details: https://starknetjs.com/docs/guides/migrate/
343
+ There are no code changes required on the Dynamic SDK side, however if you have installed the `starknet` package, you will need to upgrade to >= v6.11.0.
344
+
345
+ ### Features
346
+
347
+ * new transaction modal and ui for sign/signAll ([#7296](https://github.com/dynamic-labs/dynamic-auth/issues/7296)) ([05a8af1](https://github.com/dynamic-labs/dynamic-auth/commit/05a8af1eb772b2b8087ed96a54caf4b6ae8b79d2)), closes [#7297](https://github.com/dynamic-labs/dynamic-auth/issues/7297) [#7298](https://github.com/dynamic-labs/dynamic-auth/issues/7298)
348
+ * upgrade to starknet v6 ([#7189](https://github.com/dynamic-labs/dynamic-auth/issues/7189)) ([2a6e24e](https://github.com/dynamic-labs/dynamic-auth/commit/2a6e24e4178fcee671b381c28f6a681f4ce52c62))
349
+
350
+
351
+ ### Bug Fixes
352
+
353
+ * transaction confirmation modal popup ([#7368](https://github.com/dynamic-labs/dynamic-auth/issues/7368)) ([3c48658](https://github.com/dynamic-labs/dynamic-auth/commit/3c48658a62874d908bba8f06fb092ff5983ede16))
354
+
355
+ ## [4.0.0-alpha.27](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.26...v4.0.0-alpha.27) (2024-11-06)
356
+
357
+
358
+ ### Features
359
+
360
+ * allows adding connection configuration for solana connectors ([#7354](https://github.com/dynamic-labs/dynamic-auth/issues/7354)) ([01e35ee](https://github.com/dynamic-labs/dynamic-auth/commit/01e35ee5bfe4605df48e4188a753111efe483048))
361
+ * allows passing solana connection config to dynamic client ([#7357](https://github.com/dynamic-labs/dynamic-auth/issues/7357)) ([6da14ce](https://github.com/dynamic-labs/dynamic-auth/commit/6da14ceb481147aea31d192fe268be43a8af80e9))
362
+
363
+
364
+ ### Bug Fixes
365
+
366
+ * check legacy vs eip1599 tx in global connectivity ([#7341](https://github.com/dynamic-labs/dynamic-auth/issues/7341)) ([b223ea7](https://github.com/dynamic-labs/dynamic-auth/commit/b223ea7a5ed5637e11da1040c631c48bc23ba76d))
367
+ * global connectivity multiple transactions in a row ([#7342](https://github.com/dynamic-labs/dynamic-auth/issues/7342)) ([d13c1af](https://github.com/dynamic-labs/dynamic-auth/commit/d13c1afec6b3680961621d8317f55549b3ed428f))
368
+
369
+ ## [4.0.0-alpha.26](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.25...v4.0.0-alpha.26) (2024-11-04)
370
+
371
+ ## [4.0.0-alpha.25](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.24...v4.0.0-alpha.25) (2024-11-01)
372
+
373
+ ## [4.0.0-alpha.24](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.23...v4.0.0-alpha.24) (2024-10-31)
374
+
375
+
376
+ ### Bug Fixes
377
+
378
+ * prevent use-wallet-options from reading empty wallet-book ([#7319](https://github.com/dynamic-labs/dynamic-auth/issues/7319)) ([fc1269e](https://github.com/dynamic-labs/dynamic-auth/commit/fc1269ed2b59ee17fc528d24a4d34936eb20c02f))
379
+
380
+ ## [4.0.0-alpha.23](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.22...v4.0.0-alpha.23) (2024-10-31)
381
+
382
+
383
+ ### Features
384
+
385
+ * allow deletion of embedded wallets ([#7170](https://github.com/dynamic-labs/dynamic-auth/issues/7170)) ([40c5478](https://github.com/dynamic-labs/dynamic-auth/commit/40c54789594ba265a63b24f936da4e72b5b1c5b9))
386
+
387
+ ## [4.0.0-alpha.22](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.21...v4.0.0-alpha.22) (2024-10-30)
388
+
389
+
390
+ ### Features
391
+
392
+ * **QNTM-522:** add wallet details card ([#7239](https://github.com/dynamic-labs/dynamic-auth/issues/7239)) ([0181c87](https://github.com/dynamic-labs/dynamic-auth/commit/0181c8727af575620525b8ea47b196945c347846))
393
+
394
+
395
+ ### Bug Fixes
396
+
397
+ * update check for wallet provider event listeners support ([#7303](https://github.com/dynamic-labs/dynamic-auth/issues/7303)) ([c5f3766](https://github.com/dynamic-labs/dynamic-auth/commit/c5f376691c87a0999991e477f9acd07eed4774aa))
398
+
399
+ ## [4.0.0-alpha.21](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.20...v4.0.0-alpha.21) (2024-10-30)
400
+
401
+ ## [4.0.0-alpha.20](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.19...v4.0.0-alpha.20) (2024-10-30)
402
+
403
+ ## [4.0.0-alpha.19](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.18...v4.0.0-alpha.19) (2024-10-29)
404
+
405
+
406
+ ### Bug Fixes
407
+
408
+ * ensure the client js will emit a change event after the value update ([#7284](https://github.com/dynamic-labs/dynamic-auth/issues/7284)) ([930d2e9](https://github.com/dynamic-labs/dynamic-auth/commit/930d2e9fdc75fd4a38da8ef6efc9d3e29152285b))
409
+
410
+ ## [4.0.0-alpha.18](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.17...v4.0.0-alpha.18) (2024-10-29)
411
+
412
+
413
+ ### Bug Fixes
414
+
415
+ * **web-extension:** add color scheme style to prevent broken style ([#7247](https://github.com/dynamic-labs/dynamic-auth/issues/7247)) ([c525c50](https://github.com/dynamic-labs/dynamic-auth/commit/c525c50ac02997f3baf220fd2e67c6c4b3d10903))
416
+
417
+ ## [4.0.0-alpha.17](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.16...v4.0.0-alpha.17) (2024-10-28)
418
+
419
+
420
+ ### Features
421
+
422
+ * add support for eclipse ([#7255](https://github.com/dynamic-labs/dynamic-auth/issues/7255)) ([70e9830](https://github.com/dynamic-labs/dynamic-auth/commit/70e9830c6c801e0298825b914ee825b578350cf0))
423
+
424
+
425
+ ### Bug Fixes
426
+
427
+ * adds missing packages to zerodev-extension package ([#7187](https://github.com/dynamic-labs/dynamic-auth/issues/7187)) ([052a7e7](https://github.com/dynamic-labs/dynamic-auth/commit/052a7e7c08d458996d1be56f7697448ad5a9a1c9))
428
+ * unpin reactivity package for vue projects ([#7246](https://github.com/dynamic-labs/dynamic-auth/issues/7246)) ([18013e0](https://github.com/dynamic-labs/dynamic-auth/commit/18013e00d6855f8b371c9edb97594a08764c3868))
429
+
430
+ ## [4.0.0-alpha.16](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.15...v4.0.0-alpha.16) (2024-10-27)
431
+
432
+
433
+ ### Features
434
+
435
+ * add passkey to web-extension ([#7096](https://github.com/dynamic-labs/dynamic-auth/issues/7096)) ([a4b4643](https://github.com/dynamic-labs/dynamic-auth/commit/a4b4643e5307358425c878067bae095090f322ca))
436
+ * add social to web extension ([#7106](https://github.com/dynamic-labs/dynamic-auth/issues/7106)) ([422bc8e](https://github.com/dynamic-labs/dynamic-auth/commit/422bc8e2d276d960a7a76ad55a7b244c3fd83173))
437
+ * add support for compass and leap wallets ([9738749](https://github.com/dynamic-labs/dynamic-auth/commit/9738749bb5ed8e07a2582df255f683e4d408db93))
438
+ * add support for epicgames social ([#7220](https://github.com/dynamic-labs/dynamic-auth/issues/7220)) ([cb5bc30](https://github.com/dynamic-labs/dynamic-auth/commit/cb5bc30bc17d063bdaa9b427a9358b30124c4589))
439
+ * add web-extension to client ([#7180](https://github.com/dynamic-labs/dynamic-auth/issues/7180)) ([e2ccbb7](https://github.com/dynamic-labs/dynamic-auth/commit/e2ccbb77bdd0250d000a6cc4d89a2e5d7d2f4bb2))
440
+
441
+ ## [4.0.0-alpha.15](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.14...v4.0.0-alpha.15) (2024-10-19)
442
+
443
+ ## [4.0.0-alpha.14](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.13...v4.0.0-alpha.14) (2024-10-18)
444
+
445
+ ## [4.0.0-alpha.13](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.12...v4.0.0-alpha.13) (2024-10-18)
446
+
447
+
448
+ ### Bug Fixes
449
+
450
+ * improve displayed chain name in network switcher ([#7153](https://github.com/dynamic-labs/dynamic-auth/issues/7153)) ([55d2e5a](https://github.com/dynamic-labs/dynamic-auth/commit/55d2e5a9954bf0255b5caf7aba7a6f1f2e215967))
451
+
452
+ ## [4.0.0-alpha.12](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.11...v4.0.0-alpha.12) (2024-10-18)
453
+
454
+
455
+ ### Features
456
+
457
+ * add support for xverse account change event ([#7114](https://github.com/dynamic-labs/dynamic-auth/issues/7114)) ([79df047](https://github.com/dynamic-labs/dynamic-auth/commit/79df04775edb297a339e2d74adcc873584a6d8af))
458
+ * solana embedded signall headless ([#7132](https://github.com/dynamic-labs/dynamic-auth/issues/7132)) ([fe16b71](https://github.com/dynamic-labs/dynamic-auth/commit/fe16b71a4c0ad775f8de87ca899cfdd1071f11d6))
459
+
460
+
461
+ ### Bug Fixes
462
+
463
+ * bug where embeddedWalletCreated event was fired before listener … ([#7151](https://github.com/dynamic-labs/dynamic-auth/issues/7151)) ([ae9da56](https://github.com/dynamic-labs/dynamic-auth/commit/ae9da56850130491384a2d5f47c1617815dcce5b))
464
+ * edge case where wallet book fails to load ([#7148](https://github.com/dynamic-labs/dynamic-auth/issues/7148)) ([805dc6d](https://github.com/dynamic-labs/dynamic-auth/commit/805dc6d7cc4cdf0b23748d82b3bd8216d88d55b5))
465
+ * issues where native currency icons were incorrect ([#7126](https://github.com/dynamic-labs/dynamic-auth/issues/7126)) ([8b8891a](https://github.com/dynamic-labs/dynamic-auth/commit/8b8891a52397e17cc127ea3a09ade14c4b70a8ee))
466
+ * remove now-unused sessionTimeout from useSocial ([#7123](https://github.com/dynamic-labs/dynamic-auth/issues/7123)) ([7959a8a](https://github.com/dynamic-labs/dynamic-auth/commit/7959a8a4c8ceb76c5c4f1ae91af204bf9c5cae7b))
467
+ * Revert: Update Exodus extension version " ([#7130](https://github.com/dynamic-labs/dynamic-auth/issues/7130)) ([f2274ae](https://github.com/dynamic-labs/dynamic-auth/commit/f2274aefd29bb9f3fb6de8493e4a5f73946a5600)), closes [#7129](https://github.com/dynamic-labs/dynamic-auth/issues/7129)
468
+ * use embedded primaryChain when passing undefined chains list to createTurnkeyWallet ([#7149](https://github.com/dynamic-labs/dynamic-auth/issues/7149)) ([c73a3ae](https://github.com/dynamic-labs/dynamic-auth/commit/c73a3aeeda8045b936d218f7078ad79967c321ef))
469
+
470
+ ## [4.0.0-alpha.11](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.10...v4.0.0-alpha.11) (2024-10-15)
471
+
472
+
473
+ ### Bug Fixes
474
+
475
+ * missing null check in property accessor ([#7122](https://github.com/dynamic-labs/dynamic-auth/issues/7122)) ([bbb5e76](https://github.com/dynamic-labs/dynamic-auth/commit/bbb5e76c1284edad2829605444dda24971027a57))
476
+
477
+ ## [4.0.0-alpha.10](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.9...v4.0.0-alpha.10) (2024-10-15)
478
+
479
+
480
+ ### Bug Fixes
481
+
482
+ * epicgames key name without dash ([#7119](https://github.com/dynamic-labs/dynamic-auth/issues/7119)) ([7388d6c](https://github.com/dynamic-labs/dynamic-auth/commit/7388d6cf98f6ee92e12003549dfd1ad81951119e))
483
+
484
+ ## [4.0.0-alpha.9](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.8...v4.0.0-alpha.9) (2024-10-11)
485
+
486
+
487
+ ### Features
488
+
489
+ * add support for fordefi wallet ([#7109](https://github.com/dynamic-labs/dynamic-auth/issues/7109)) ([1adb6b1](https://github.com/dynamic-labs/dynamic-auth/commit/1adb6b15b7f8e9156207ac7addf4368d27c1e371))
490
+ * support ability to define additional oauth scopes ([#7105](https://github.com/dynamic-labs/dynamic-auth/issues/7105)) ([b303203](https://github.com/dynamic-labs/dynamic-auth/commit/b303203e8041c0cbf5f8968df0d3cde04ed1b22a))
491
+
492
+
493
+ ### Bug Fixes
494
+
495
+ * add eip6963 for exodus evm ([#7094](https://github.com/dynamic-labs/dynamic-auth/issues/7094)) ([c1ec5ef](https://github.com/dynamic-labs/dynamic-auth/commit/c1ec5ef4b6a531c563be4b690aa5f2bd4e7e6a16))
496
+
2
497
  ## [4.0.0-alpha.8](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.7...v4.0.0-alpha.8) (2024-10-07)
3
498
 
4
499
 
@@ -933,7 +1428,7 @@
933
1428
 
934
1429
  - React Native - You can now build mobile-first onboarding experiences with the same Dynamic magic but for React Native, get started [here](https://docs.dynamic.xyz/react-native/introduction)
935
1430
 
936
- - Cookie Authentication - Dynamic can now be configured to set a secure, HttpOnly cookie that can be used for authenticating with Dynamic’s backend. This will contain a minified version of our JWT token.
1431
+ - Cookie Authentication - Dynamic can now be configured to set a secure, HttpOnly cookie that can be used for authenticating with Dynamic’s backend. This will contain a minified version of our JWT token.
937
1432
 
938
1433
 
939
1434
  ## Improvements
package/package.cjs CHANGED
@@ -3,6 +3,6 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var version = "4.0.0-alpha.8";
6
+ var version = "4.0.0";
7
7
 
8
8
  exports.version = version;
package/package.js CHANGED
@@ -1,4 +1,4 @@
1
1
  'use client'
2
- var version = "4.0.0-alpha.8";
2
+ var version = "4.0.0";
3
3
 
4
4
  export { version };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs/client",
3
- "version": "4.0.0-alpha.8",
3
+ "version": "4.0.0",
4
4
  "description": "Core package for utilizing Dynamic's sdk",
5
5
  "author": "Dynamic Labs, Inc.",
6
6
  "license": "MIT",
@@ -18,11 +18,11 @@
18
18
  },
19
19
  "homepage": "https://www.dynamic.xyz/",
20
20
  "dependencies": {
21
- "@vue/reactivity": "3.4.21",
22
- "@dynamic-labs/assert-package-version": "4.0.0-alpha.8",
23
- "@dynamic-labs/logger": "4.0.0-alpha.8",
24
- "@dynamic-labs/message-transport": "4.0.0-alpha.8",
25
- "@dynamic-labs/types": "4.0.0-alpha.8",
21
+ "@vue/reactivity": "^3.4.21",
22
+ "@dynamic-labs/assert-package-version": "4.0.0",
23
+ "@dynamic-labs/logger": "4.0.0",
24
+ "@dynamic-labs/message-transport": "4.0.0",
25
+ "@dynamic-labs/types": "4.0.0",
26
26
  "eventemitter3": "5.0.1"
27
27
  },
28
28
  "peerDependencies": {}
@@ -10,6 +10,7 @@ var sdkModule = require('../modules/sdkModule/sdkModule.cjs');
10
10
  var userInterfaceModule = require('../modules/userInterfaceModule/userInterfaceModule.cjs');
11
11
  var walletsModule = require('../modules/walletsModule/walletsModule.cjs');
12
12
  var Extendable = require('../utils/Extendable/Extendable.cjs');
13
+ var setupFetchHandler = require('../utils/setupFetchHandler/setupFetchHandler.cjs');
13
14
  var core = require('./core/core.cjs');
14
15
 
15
16
  const baseClientExtensionName = 'base';
@@ -23,6 +24,7 @@ const baseClientExtensionName = 'base';
23
24
  const createClient = (props) => {
24
25
  logger.Logger.setEnvironmentId(props.environmentId);
25
26
  const core$1 = core.createCore(props);
27
+ setupFetchHandler.setupFetchHandler(core$1);
26
28
  const baseExtendable = new Extendable.Extendable(core$1);
27
29
  return baseExtendable.extend(() => {
28
30
  core$1.declaredExtensionNames.push(baseClientExtensionName);
@@ -6,6 +6,7 @@ import { createSdkModule } from '../modules/sdkModule/sdkModule.js';
6
6
  import { createUserInterfaceModule } from '../modules/userInterfaceModule/userInterfaceModule.js';
7
7
  import { createWalletsModule } from '../modules/walletsModule/walletsModule.js';
8
8
  import { Extendable } from '../utils/Extendable/Extendable.js';
9
+ import { setupFetchHandler } from '../utils/setupFetchHandler/setupFetchHandler.js';
9
10
  import { createCore } from './core/core.js';
10
11
 
11
12
  const baseClientExtensionName = 'base';
@@ -19,6 +20,7 @@ const baseClientExtensionName = 'base';
19
20
  const createClient = (props) => {
20
21
  Logger.setEnvironmentId(props.environmentId);
21
22
  const core = createCore(props);
23
+ setupFetchHandler(core);
22
24
  const baseExtendable = new Extendable(core);
23
25
  return baseExtendable.extend(() => {
24
26
  core.declaredExtensionNames.push(baseClientExtensionName);
@@ -3,48 +3,50 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var messageTransport$1 = require('@dynamic-labs/message-transport');
6
+ var messageTransport = require('@dynamic-labs/message-transport');
7
7
  var initializationModule = require('./modules/initializationModule/initializationModule.cjs');
8
8
  var manifestModule = require('./modules/manifestModule/manifestModule.cjs');
9
9
 
10
- const messageTransport = messageTransport$1.applyDefaultMessageOrigin({
11
- defaultOrigin: 'host',
12
- messageTransport: messageTransport$1.makeWaitForInitEvent({
13
- bypassBlockIf: (message) => message.origin === 'webview',
14
- initializeMessageType: messageTransport$1.sdkHasLoadedEventName,
15
- messageTransport: messageTransport$1.createMessageTransport(),
16
- }),
17
- });
18
- // Uncomment this to easily debug incoming/outgoing messages to webview
19
- // messageTransport.on((message) =>
20
- // console.log('message', JSON.stringify(message, null, 2)),
21
- // );
22
- const initialization = initializationModule.createInitializationModule(messageTransport);
23
- const createCore = (props) => ({
24
- /**
25
- * Allows an extension to add its name to the list, such that
26
- * other extensions are able to detect if it is present.
27
- *
28
- * Ex: ViemExtension adds "viem" to the list, and WagmiExtension later
29
- * checks this list and throws an error if it doesn't find "viem" there.
30
- */
31
- declaredExtensionNames: [],
32
- /**
33
- * SDK initialization module handles the initialization error
34
- */
35
- initialization,
36
- /**
37
- * Manages the manifest of the host
38
- */
39
- manifest: manifestModule.createManifestModule(props, messageTransport, initialization),
40
- /**
41
- * Message transport that will be used to send and receive messages to the webview.
42
- * Should preferably be used with createRequestChannel, rather than used directly.
43
- *
44
- * Note: Doesn't implement forwarding messages to/from webview yet.
45
- * The user is expected to extend the client with an Extension that implements that.
46
- */
47
- messageTransport,
48
- });
10
+ const createCore = (props) => {
11
+ const messageTransport$1 = messageTransport.applyDefaultMessageOrigin({
12
+ defaultOrigin: 'host',
13
+ messageTransport: messageTransport.makeWaitForInitEvent({
14
+ bypassBlockIf: (message) => message.origin === 'webview',
15
+ initializeMessageType: messageTransport.sdkHasLoadedEventName,
16
+ messageTransport: messageTransport.createMessageTransport(),
17
+ }),
18
+ });
19
+ // Uncomment this to easily debug incoming/outgoing messages to webview
20
+ // messageTransport.on((message) =>
21
+ // console.log('message', JSON.stringify(message, null, 2)),
22
+ // );
23
+ const initialization = initializationModule.createInitializationModule(messageTransport$1);
24
+ return {
25
+ /**
26
+ * Allows an extension to add its name to the list, such that
27
+ * other extensions are able to detect if it is present.
28
+ *
29
+ * Ex: ViemExtension adds "viem" to the list, and WagmiExtension later
30
+ * checks this list and throws an error if it doesn't find "viem" there.
31
+ */
32
+ declaredExtensionNames: [],
33
+ /**
34
+ * SDK initialization module handles the initialization error
35
+ */
36
+ initialization,
37
+ /**
38
+ * Manages the manifest of the host
39
+ */
40
+ manifest: manifestModule.createManifestModule(props, messageTransport$1, initialization),
41
+ /**
42
+ * Message transport that will be used to send and receive messages to the webview.
43
+ * Should preferably be used with createRequestChannel, rather than used directly.
44
+ *
45
+ * Note: Doesn't implement forwarding messages to/from webview yet.
46
+ * The user is expected to extend the client with an Extension that implements that.
47
+ */
48
+ messageTransport: messageTransport$1,
49
+ };
50
+ };
49
51
 
50
52
  exports.createCore = createCore;
@@ -37,7 +37,7 @@ export declare const createCore: (props: ClientProps) => {
37
37
  onEmit?: VoidFunction | undefined;
38
38
  } | undefined) => void;
39
39
  unblock: () => void;
40
- isBlocked: boolean;
40
+ isBlocked: () => boolean;
41
41
  } & {
42
42
  defaultOrigin: "webview" | "host";
43
43
  emit: (message: import("@dynamic-labs/message-transport").MessageTransportDataOptionalOrigin) => void;
@@ -3,44 +3,46 @@ import { applyDefaultMessageOrigin, makeWaitForInitEvent, sdkHasLoadedEventName,
3
3
  import { createInitializationModule } from './modules/initializationModule/initializationModule.js';
4
4
  import { createManifestModule } from './modules/manifestModule/manifestModule.js';
5
5
 
6
- const messageTransport = applyDefaultMessageOrigin({
7
- defaultOrigin: 'host',
8
- messageTransport: makeWaitForInitEvent({
9
- bypassBlockIf: (message) => message.origin === 'webview',
10
- initializeMessageType: sdkHasLoadedEventName,
11
- messageTransport: createMessageTransport(),
12
- }),
13
- });
14
- // Uncomment this to easily debug incoming/outgoing messages to webview
15
- // messageTransport.on((message) =>
16
- // console.log('message', JSON.stringify(message, null, 2)),
17
- // );
18
- const initialization = createInitializationModule(messageTransport);
19
- const createCore = (props) => ({
20
- /**
21
- * Allows an extension to add its name to the list, such that
22
- * other extensions are able to detect if it is present.
23
- *
24
- * Ex: ViemExtension adds "viem" to the list, and WagmiExtension later
25
- * checks this list and throws an error if it doesn't find "viem" there.
26
- */
27
- declaredExtensionNames: [],
28
- /**
29
- * SDK initialization module handles the initialization error
30
- */
31
- initialization,
32
- /**
33
- * Manages the manifest of the host
34
- */
35
- manifest: createManifestModule(props, messageTransport, initialization),
36
- /**
37
- * Message transport that will be used to send and receive messages to the webview.
38
- * Should preferably be used with createRequestChannel, rather than used directly.
39
- *
40
- * Note: Doesn't implement forwarding messages to/from webview yet.
41
- * The user is expected to extend the client with an Extension that implements that.
42
- */
43
- messageTransport,
44
- });
6
+ const createCore = (props) => {
7
+ const messageTransport = applyDefaultMessageOrigin({
8
+ defaultOrigin: 'host',
9
+ messageTransport: makeWaitForInitEvent({
10
+ bypassBlockIf: (message) => message.origin === 'webview',
11
+ initializeMessageType: sdkHasLoadedEventName,
12
+ messageTransport: createMessageTransport(),
13
+ }),
14
+ });
15
+ // Uncomment this to easily debug incoming/outgoing messages to webview
16
+ // messageTransport.on((message) =>
17
+ // console.log('message', JSON.stringify(message, null, 2)),
18
+ // );
19
+ const initialization = createInitializationModule(messageTransport);
20
+ return {
21
+ /**
22
+ * Allows an extension to add its name to the list, such that
23
+ * other extensions are able to detect if it is present.
24
+ *
25
+ * Ex: ViemExtension adds "viem" to the list, and WagmiExtension later
26
+ * checks this list and throws an error if it doesn't find "viem" there.
27
+ */
28
+ declaredExtensionNames: [],
29
+ /**
30
+ * SDK initialization module handles the initialization error
31
+ */
32
+ initialization,
33
+ /**
34
+ * Manages the manifest of the host
35
+ */
36
+ manifest: createManifestModule(props, messageTransport, initialization),
37
+ /**
38
+ * Message transport that will be used to send and receive messages to the webview.
39
+ * Should preferably be used with createRequestChannel, rather than used directly.
40
+ *
41
+ * Note: Doesn't implement forwarding messages to/from webview yet.
42
+ * The user is expected to extend the client with an Extension that implements that.
43
+ */
44
+ messageTransport,
45
+ };
46
+ };
45
47
 
46
48
  export { createCore };
@@ -12,15 +12,30 @@ const createInitializationModule = (messageTransport$1) => {
12
12
  const state = reactivity.reactive({
13
13
  error: null,
14
14
  });
15
+ /**
16
+ * Uses regular console.error to log the errors
17
+ * so we dont send the error to the backend twice
18
+ */
15
19
  consoleRequestChannel.handle('error', (serializedError, { severity }) => {
16
20
  const error = messageTransport.parseErrorFromTransport(serializedError);
21
+ if (Array.isArray(error)) {
22
+ // Log each item individually because the expo console fails to log complex objects
23
+ // So this way if one item is complex, it doesn't hide the others
24
+ // eslint-disable-next-line no-console
25
+ for (const item of error)
26
+ console.error(item);
27
+ if (severity === 'fatal') {
28
+ state.error = new Error('Unknown error occurred, check your console for more details');
29
+ }
30
+ return;
31
+ }
17
32
  if (severity === 'fatal') {
18
33
  state.error = error;
19
34
  }
20
- /**
21
- * Uses regular console.error to log the error
22
- * so we dont send the error to the backend twice
23
- */
35
+ // We also log the message individually in case the error object fails to be logged by the expo console
36
+ // eslint-disable-next-line no-console
37
+ if (error.message)
38
+ console.error(error.message);
24
39
  // eslint-disable-next-line no-console
25
40
  console.error(error);
26
41
  });
@@ -8,15 +8,30 @@ const createInitializationModule = (messageTransport) => {
8
8
  const state = reactive({
9
9
  error: null,
10
10
  });
11
+ /**
12
+ * Uses regular console.error to log the errors
13
+ * so we dont send the error to the backend twice
14
+ */
11
15
  consoleRequestChannel.handle('error', (serializedError, { severity }) => {
12
16
  const error = parseErrorFromTransport(serializedError);
17
+ if (Array.isArray(error)) {
18
+ // Log each item individually because the expo console fails to log complex objects
19
+ // So this way if one item is complex, it doesn't hide the others
20
+ // eslint-disable-next-line no-console
21
+ for (const item of error)
22
+ console.error(item);
23
+ if (severity === 'fatal') {
24
+ state.error = new Error('Unknown error occurred, check your console for more details');
25
+ }
26
+ return;
27
+ }
13
28
  if (severity === 'fatal') {
14
29
  state.error = error;
15
30
  }
16
- /**
17
- * Uses regular console.error to log the error
18
- * so we dont send the error to the backend twice
19
- */
31
+ // We also log the message individually in case the error object fails to be logged by the expo console
32
+ // eslint-disable-next-line no-console
33
+ if (error.message)
34
+ console.error(error.message);
20
35
  // eslint-disable-next-line no-console
21
36
  console.error(error);
22
37
  });
@@ -5,8 +5,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
6
  var _tslib = require('../../../../../_virtual/_tslib.cjs');
7
7
  var messageTransport = require('@dynamic-labs/message-transport');
8
- var logger = require('@dynamic-labs/logger');
9
- var logger$1 = require('../../../../utils/logger/logger.cjs');
8
+ var logger$1 = require('@dynamic-labs/logger');
9
+ var logger = require('../../../../utils/logger/logger.cjs');
10
10
  var createPartialManifest = require('./createPartialManifest/createPartialManifest.cjs');
11
11
  var validateManifest = require('./validateManifest/validateManifest.cjs');
12
12
 
@@ -21,7 +21,7 @@ const createManifestModule = (props, messageTransport$1, initializationModule) =
21
21
  return validateManifest.validateManifest(manifest);
22
22
  }
23
23
  catch (error) {
24
- logger$1.logger.error(error);
24
+ logger.logger.error(error);
25
25
  if (error instanceof Error)
26
26
  initializationModule.error = error;
27
27
  throw error;
@@ -30,7 +30,7 @@ const createManifestModule = (props, messageTransport$1, initializationModule) =
30
30
  return {
31
31
  setAppOrigin: (appOrigin) => (manifest.appOrigin = appOrigin),
32
32
  setPlatform: (platform) => {
33
- logger.Logger.globalMetaData.set('platform', platform);
33
+ logger$1.Logger.globalMetaData.set('platform', platform);
34
34
  manifest.platform = platform;
35
35
  },
36
36
  setRedirectUrl: (redirectUrl) => (manifest.redirectUrl = redirectUrl),
@@ -10,8 +10,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
10
10
  const mandatoryFields = {
11
11
  clientVersion: "We were unable to retrieve the Dynamic Client's version from your app. Please contact us about this.",
12
12
  environmentId: 'You must provide an environment id to the Dynamic Client.',
13
- platform: 'Missing platform specific extension, like BrowserExtension or ReactNativeExtension. See how to setup Dynamic Client in our docs for help.',
14
- redirectUrl: 'Missing platform specific extension, like BrowserExtension or ReactNativeExtension. See how to setup Dynamic Client in our docs for help.',
13
+ platform: 'Missing platform specific extension, like WebExtension or ReactNativeExtension. See how to setup Dynamic Client in our docs for help.',
14
+ redirectUrl: 'Missing platform specific extension, like WebExtension or ReactNativeExtension. See how to setup Dynamic Client in our docs for help.',
15
15
  };
16
16
  const validateManifest = (partialManifest) => {
17
17
  /**
@@ -6,8 +6,8 @@
6
6
  const mandatoryFields = {
7
7
  clientVersion: "We were unable to retrieve the Dynamic Client's version from your app. Please contact us about this.",
8
8
  environmentId: 'You must provide an environment id to the Dynamic Client.',
9
- platform: 'Missing platform specific extension, like BrowserExtension or ReactNativeExtension. See how to setup Dynamic Client in our docs for help.',
10
- redirectUrl: 'Missing platform specific extension, like BrowserExtension or ReactNativeExtension. See how to setup Dynamic Client in our docs for help.',
9
+ platform: 'Missing platform specific extension, like WebExtension or ReactNativeExtension. See how to setup Dynamic Client in our docs for help.',
10
+ redirectUrl: 'Missing platform specific extension, like WebExtension or ReactNativeExtension. See how to setup Dynamic Client in our docs for help.',
11
11
  };
12
12
  const validateManifest = (partialManifest) => {
13
13
  /**
@@ -3,6 +3,7 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
+ var reactivity = require('@vue/reactivity');
6
7
  var messageTransport = require('@dynamic-labs/message-transport');
7
8
  var pickListenerActions = require('../../utils/pickListenerActions/pickListenerActions.cjs');
8
9
  var addProperty = require('../../utils/addProperty/addProperty.cjs');
@@ -15,7 +16,11 @@ const createSdkModule = (core) => {
15
16
  key: 'sdk',
16
17
  messageTransport: core.messageTransport,
17
18
  });
18
- const baseModule = Object.assign(store.getters, pickListenerActions.pickListenerActions(store.eventEmitter));
19
+ const eventEmitter = store.eventEmitter;
20
+ const baseModule = Object.assign(store.getters, pickListenerActions.pickListenerActions(eventEmitter));
21
+ reactivity.effect(() => core.initialization.error, {
22
+ scheduler: () => eventEmitter.emit('error', core.initialization.error),
23
+ });
19
24
  return addProperty.addProperty(baseModule, 'error', {
20
25
  get: () => core.initialization.error,
21
26
  });
@@ -1,6 +1,10 @@
1
- import { SdkModuleState, StoreEventListeners } from '@dynamic-labs/message-transport';
1
+ import { PickedEventListeners, SdkModuleState, StoreEventListeners } from '@dynamic-labs/message-transport';
2
2
  import { Core } from '../../client/core';
3
- export type SdkModule = SdkModuleState & StoreEventListeners<SdkModuleState> & {
3
+ type ErrorEvent = {
4
+ error: (error: Error | null) => void;
5
+ };
6
+ export type SdkModule = SdkModuleState & StoreEventListeners<SdkModuleState> & PickedEventListeners<ErrorEvent> & {
4
7
  readonly error: Error | null;
5
8
  };
6
9
  export declare const createSdkModule: (core: Core) => SdkModule;
10
+ export {};
@@ -1,4 +1,5 @@
1
1
  'use client'
2
+ import { effect } from '@vue/reactivity';
2
3
  import { createStore } from '@dynamic-labs/message-transport';
3
4
  import { pickListenerActions } from '../../utils/pickListenerActions/pickListenerActions.js';
4
5
  import { addProperty } from '../../utils/addProperty/addProperty.js';
@@ -11,7 +12,11 @@ const createSdkModule = (core) => {
11
12
  key: 'sdk',
12
13
  messageTransport: core.messageTransport,
13
14
  });
14
- const baseModule = Object.assign(store.getters, pickListenerActions(store.eventEmitter));
15
+ const eventEmitter = store.eventEmitter;
16
+ const baseModule = Object.assign(store.getters, pickListenerActions(eventEmitter));
17
+ effect(() => core.initialization.error, {
18
+ scheduler: () => eventEmitter.emit('error', core.initialization.error),
19
+ });
15
20
  return addProperty(baseModule, 'error', {
16
21
  get: () => core.initialization.error,
17
22
  });
@@ -0,0 +1 @@
1
+ export { setupFetchHandler } from './setupFetchHandler';
@@ -0,0 +1,24 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var _tslib = require('../../../_virtual/_tslib.cjs');
7
+ var messageTransport = require('@dynamic-labs/message-transport');
8
+
9
+ const setupFetchHandler = (core) => {
10
+ const fetchRequestChannel = messageTransport.createRequestChannel(core.messageTransport);
11
+ fetchRequestChannel.handle('fetch', (input, init) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
12
+ const response = yield fetch(input, init);
13
+ const responseBody = yield response.text();
14
+ return {
15
+ body: responseBody,
16
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
17
+ headers: Object.fromEntries(response.headers.entries()),
18
+ status: response.status,
19
+ statusText: response.statusText,
20
+ };
21
+ }));
22
+ };
23
+
24
+ exports.setupFetchHandler = setupFetchHandler;
@@ -0,0 +1,2 @@
1
+ import type { Core } from '../../client/core';
2
+ export declare const setupFetchHandler: (core: Core) => void;
@@ -0,0 +1,20 @@
1
+ 'use client'
2
+ import { __awaiter } from '../../../_virtual/_tslib.js';
3
+ import { createRequestChannel } from '@dynamic-labs/message-transport';
4
+
5
+ const setupFetchHandler = (core) => {
6
+ const fetchRequestChannel = createRequestChannel(core.messageTransport);
7
+ fetchRequestChannel.handle('fetch', (input, init) => __awaiter(void 0, void 0, void 0, function* () {
8
+ const response = yield fetch(input, init);
9
+ const responseBody = yield response.text();
10
+ return {
11
+ body: responseBody,
12
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
13
+ headers: Object.fromEntries(response.headers.entries()),
14
+ status: response.status,
15
+ statusText: response.statusText,
16
+ };
17
+ }));
18
+ };
19
+
20
+ export { setupFetchHandler };