@dynamic-labs-sdk/evm 0.1.0-alpha.9 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/CHANGELOG.md +308 -0
  2. package/_extends.cjs.js +1 -1
  3. package/_extends.esm.js +1 -1
  4. package/addEIP6963Extension.cjs.js +16 -9
  5. package/addEIP6963Extension.esm.js +16 -9
  6. package/addWaasEvmExtension.cjs.js +61 -20
  7. package/addWaasEvmExtension.esm.js +65 -24
  8. package/index.cjs.js +1 -0
  9. package/index.esm.js +1 -0
  10. package/package.json +12 -4
  11. package/src/EvmWalletProvider.types.d.ts +6 -8
  12. package/src/EvmWalletProvider.types.d.ts.map +1 -1
  13. package/src/eip6963/addEIP6963Extension/addEIP6963Extension.d.ts.map +1 -1
  14. package/src/eip6963/utils/isEip6963Event/index.d.ts +2 -0
  15. package/src/eip6963/utils/{isEip9693Event → isEip6963Event}/index.d.ts.map +1 -1
  16. package/src/eip6963/utils/isEip6963Event/isEip6963Event.d.ts +3 -0
  17. package/src/eip6963/utils/isEip6963Event/isEip6963Event.d.ts.map +1 -0
  18. package/src/exports/index.d.ts +1 -0
  19. package/src/exports/index.d.ts.map +1 -1
  20. package/src/exports/viem.d.ts +1 -0
  21. package/src/exports/viem.d.ts.map +1 -1
  22. package/src/exports/walletConnect.d.ts +5 -0
  23. package/src/exports/walletConnect.d.ts.map +1 -0
  24. package/src/utils/createWalletProviderFromEIP1193Provider/createWalletProviderFromEIP1193Provider.d.ts.map +1 -1
  25. package/src/utils/isEIP1193Provider/index.d.ts +2 -0
  26. package/src/utils/isEIP1193Provider/index.d.ts.map +1 -0
  27. package/src/utils/isEIP1193Provider/isEIP1193Provider.d.ts +3 -0
  28. package/src/utils/isEIP1193Provider/isEIP1193Provider.d.ts.map +1 -0
  29. package/src/viem/createWalletClientForWalletAccount/createWalletClientForWalletAccount.d.ts.map +1 -1
  30. package/src/viem/viem.types.d.ts +3 -0
  31. package/src/viem/viem.types.d.ts.map +1 -0
  32. package/src/waas/addWaasEvmExtension/addWaasEvmExtension.d.ts.map +1 -1
  33. package/src/waas/utils/createWalletProviderForWaasEvm/createViemWalletClientForWaas/createViemWalletClientForWaas.d.ts +1 -2
  34. package/src/waas/utils/createWalletProviderForWaasEvm/createViemWalletClientForWaas/createViemWalletClientForWaas.d.ts.map +1 -1
  35. package/src/waas/utils/createWalletProviderForWaasEvm/createWalletProviderForWaasEvm.d.ts.map +1 -1
  36. package/src/waas/utils/createWalletProviderForWaasEvm/signAuthorization/index.d.ts +2 -0
  37. package/src/waas/utils/createWalletProviderForWaasEvm/signAuthorization/index.d.ts.map +1 -0
  38. package/src/waas/utils/createWalletProviderForWaasEvm/signAuthorization/signAuthorization.d.ts +13 -0
  39. package/src/waas/utils/createWalletProviderForWaasEvm/signAuthorization/signAuthorization.d.ts.map +1 -0
  40. package/src/waas/utils/createWalletProviderForWaasEvm/signTypedData/signTypedData.d.ts +1 -2
  41. package/src/waas/utils/createWalletProviderForWaasEvm/signTypedData/signTypedData.d.ts.map +1 -1
  42. package/src/walletConnect/addWalletConnectEvmExtension/addWalletConnectEvmExtension.d.ts +3 -0
  43. package/src/walletConnect/addWalletConnectEvmExtension/addWalletConnectEvmExtension.d.ts.map +1 -0
  44. package/src/walletConnect/addWalletConnectEvmExtension/index.d.ts +2 -0
  45. package/src/walletConnect/addWalletConnectEvmExtension/index.d.ts.map +1 -0
  46. package/src/walletConnect/connectAndVerifyWithWalletConnectEvm/connectAndVerifyWithWalletConnectEvm.d.ts +17 -0
  47. package/src/walletConnect/connectAndVerifyWithWalletConnectEvm/connectAndVerifyWithWalletConnectEvm.d.ts.map +1 -0
  48. package/src/walletConnect/connectAndVerifyWithWalletConnectEvm/index.d.ts +2 -0
  49. package/src/walletConnect/connectAndVerifyWithWalletConnectEvm/index.d.ts.map +1 -0
  50. package/src/walletConnect/connectWithWalletConnectEvm/connectWithWalletConnectEvm.d.ts +10 -0
  51. package/src/walletConnect/connectWithWalletConnectEvm/connectWithWalletConnectEvm.d.ts.map +1 -0
  52. package/src/walletConnect/connectWithWalletConnectEvm/index.d.ts +2 -0
  53. package/src/walletConnect/connectWithWalletConnectEvm/index.d.ts.map +1 -0
  54. package/src/walletConnect/consts.d.ts +8 -0
  55. package/src/walletConnect/consts.d.ts.map +1 -0
  56. package/src/walletConnect/createWalletProviderFromEIP155Session/createWalletProviderFromEIP155Session.d.ts +9 -0
  57. package/src/walletConnect/createWalletProviderFromEIP155Session/createWalletProviderFromEIP155Session.d.ts.map +1 -0
  58. package/src/walletConnect/createWalletProviderFromEIP155Session/index.d.ts +2 -0
  59. package/src/walletConnect/createWalletProviderFromEIP155Session/index.d.ts.map +1 -0
  60. package/src/walletConnect/walletConnectEvmWalletProvider.types.d.ts +6 -0
  61. package/src/walletConnect/walletConnectEvmWalletProvider.types.d.ts.map +1 -0
  62. package/viem.cjs.js +8 -0
  63. package/viem.esm.js +8 -1
  64. package/waas.cjs.js +1 -0
  65. package/waas.esm.js +1 -0
  66. package/walletConnect.cjs.d.ts +1 -0
  67. package/walletConnect.cjs.js +343 -0
  68. package/walletConnect.esm.d.ts +1 -0
  69. package/walletConnect.esm.js +339 -0
  70. package/src/eip6963/utils/isEip9693Event/index.d.ts +0 -2
  71. package/src/eip6963/utils/isEip9693Event/isEip9693Event.d.ts +0 -3
  72. package/src/eip6963/utils/isEip9693Event/isEip9693Event.d.ts.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,3 +1,311 @@
1
+ ## 0.1.1 (2025-12-19)
2
+
3
+ ### 🚀 Features
4
+
5
+ - add getTransactionHistory method ([#702](https://github.com/dynamic-labs/dynamic-sdk/pull/702))
6
+
7
+ ## 0.1.0 (2025-12-18)
8
+
9
+ ### 🚀 Features
10
+
11
+ - add getTransactionHistory method ([#702](https://github.com/dynamic-labs/dynamic-sdk/pull/702))
12
+
13
+ ## 0.1.0-alpha.37 (2025-12-17)
14
+
15
+ ### 🩹 Fixes
16
+
17
+ - ensure api errors are correctly parsed ([#706](https://github.com/dynamic-labs/dynamic-sdk/pull/706))
18
+
19
+ ## 0.1.0-alpha.36 (2025-12-17)
20
+
21
+ This was a version bump only, there were no code changes.
22
+
23
+ ## 0.1.0-alpha.35 (2025-12-12)
24
+
25
+ ### 🩹 Fixes
26
+
27
+ - ensure all extensions register the chain network provider builder ([#696](https://github.com/dynamic-labs/dynamic-sdk/pull/696))
28
+ - properly handle signAlTransactions when using Solana Wallet Standard wallets ([#697](https://github.com/dynamic-labs/dynamic-sdk/pull/697))
29
+
30
+ ## 0.1.0-alpha.34 (2025-12-08)
31
+
32
+ ### 🩹 Fixes
33
+
34
+ - emit walletAccountsChanged when loading the SDK ([#691](https://github.com/dynamic-labs/dynamic-sdk/pull/691))
35
+
36
+ ## 0.1.0-alpha.33 (2025-12-03)
37
+
38
+ ### 🚀 Features
39
+
40
+ - add deleteUser ([#673](https://github.com/dynamic-labs/dynamic-sdk/pull/673))
41
+
42
+ ### 🩹 Fixes
43
+
44
+ - return verified response in the verifyOTP function ([#670](https://github.com/dynamic-labs/dynamic-sdk/pull/670))
45
+
46
+ ## 0.1.0-alpha.32 (2025-11-27)
47
+
48
+ This was a version bump only, there were no code changes.
49
+
50
+ ## 0.1.0-alpha.31 (2025-11-25)
51
+
52
+ This was a version bump only, there were no code changes.
53
+
54
+ ## 0.1.0-alpha.30 (2025-11-19)
55
+
56
+ ### 🚀 Features
57
+
58
+ - allow social account unlinking ([#618](https://github.com/dynamic-labs/dynamic-sdk/pull/618))
59
+ - add support for Sui external wallets ([#643](https://github.com/dynamic-labs/dynamic-sdk/pull/643))
60
+ - add support for Sui embedded wallets ([#652](https://github.com/dynamic-labs/dynamic-sdk/pull/652))
61
+
62
+ ## 0.1.0-alpha.29 (2025-11-12)
63
+
64
+ ### 🚀 Features
65
+
66
+ - add support for WaaS delegation ([#634](https://github.com/dynamic-labs/dynamic-sdk/pull/634))
67
+
68
+ ## 0.1.0-alpha.28 (2025-11-03)
69
+
70
+ ### 🩹 Fixes
71
+
72
+ - don't override mfa token on non-mfa related state updates ([#630](https://github.com/dynamic-labs/dynamic-sdk/pull/630))
73
+
74
+ ## 0.1.0-alpha.27 (2025-11-03)
75
+
76
+ This was a version bump only, there were no code changes.
77
+
78
+ ## 0.1.0-alpha.26 (2025-10-30)
79
+
80
+ ### 🚀 Features
81
+
82
+ - add getUserSocialAccounts function ([#620](https://github.com/dynamic-labs/dynamic-sdk/pull/620))
83
+
84
+ ## 0.1.0-alpha.25 (2025-10-29)
85
+
86
+ ### Breaking Changes
87
+
88
+ - Rename signInWithSocialRedirect -> authenticateWithSocial
89
+ - Rename completeSocialRedirectSignIn -> completeSocialAuthentication
90
+
91
+ ### 🚀 Features
92
+
93
+ - add support for social account linking ([#616](https://github.com/dynamic-labs/dynamic-sdk/pull/616))
94
+
95
+ ## 0.1.0-alpha.24 (2025-10-28)
96
+
97
+ ### Breaking Changes
98
+
99
+ Removed `getSigner` from `solana` package in favor of individual signing methods
100
+ - signAndSendTransaction
101
+ - signTransaction
102
+ - signAllTransactions
103
+
104
+ ## 0.1.0-alpha.23 (2025-10-22)
105
+
106
+ ### 🚀 Features
107
+
108
+ - add support for OKX BTC ([#583](https://github.com/dynamic-labs/dynamic-sdk/pull/583))
109
+ - add support for OneKey BTC ([#586](https://github.com/dynamic-labs/dynamic-sdk/pull/586))
110
+ - add support for Bitget Wallet BTC ([#592](https://github.com/dynamic-labs/dynamic-sdk/pull/592))
111
+ - add support for Binance Wallet BTC ([#595](https://github.com/dynamic-labs/dynamic-sdk/pull/595))
112
+ - add support for Oyl Wallet BTC ([#589](https://github.com/dynamic-labs/dynamic-sdk/pull/589))
113
+ - add support for Leather Wallet BTC ([#600](https://github.com/dynamic-labs/dynamic-sdk/pull/600))
114
+
115
+ ## 0.1.0-alpha.22 (2025-10-16)
116
+
117
+ ### 🚀 Features
118
+
119
+ - add support for Magic Eden BTC ([#575](https://github.com/dynamic-labs/dynamic-sdk/pull/575))
120
+
121
+ ## 0.1.0-alpha.21 (2025-10-16)
122
+
123
+ ### 🩹 Fixes
124
+
125
+ - don't refetch project settings on page refresh if there are connected wallets ([#571](https://github.com/dynamic-labs/dynamic-sdk/pull/571))
126
+
127
+ ## 0.1.0-alpha.20 (2025-10-15)
128
+
129
+ This was a version bump only, there were no code changes.
130
+
131
+ ## 0.1.0-alpha.19 (2025-10-10)
132
+
133
+ This was a version bump only, there were no code changes.
134
+
135
+ ## 0.1.0-alpha.18 (2025-10-08)
136
+
137
+ ### 🚀 Features
138
+
139
+ - Add TypeDoc for JavaScript SDK API Reference Documentation ([#512](https://github.com/dynamic-labs/dynamic-sdk/pull/512))
140
+
141
+ ## 0.1.0-alpha.17 (2025-10-02)
142
+
143
+ ### 🩹 Fixes
144
+
145
+ - add return type to connect with wallet provider ([#497](https://github.com/dynamic-labs/dynamic-sdk/pull/497))
146
+
147
+ ## 0.1.0-alpha.16 (2025-10-01)
148
+
149
+ ### 🚀 Features
150
+
151
+ - logout user when session expires ([#47](https://github.com/dynamic-labs/dynamic-sdk/pull/47))
152
+ - add sms verification ([#78](https://github.com/dynamic-labs/dynamic-sdk/pull/78))
153
+ - raise changed events for state variables ([#79](https://github.com/dynamic-labs/dynamic-sdk/pull/79))
154
+ - allow extending the client ([#80](https://github.com/dynamic-labs/dynamic-sdk/pull/80))
155
+ - allow manual init of client ([#88](https://github.com/dynamic-labs/dynamic-sdk/pull/88))
156
+ - add signMessage ([#111](https://github.com/dynamic-labs/dynamic-sdk/pull/111))
157
+ - support social sign in ([#123](https://github.com/dynamic-labs/dynamic-sdk/pull/123))
158
+ - add updateUser function ([#138](https://github.com/dynamic-labs/dynamic-sdk/pull/138))
159
+ - add acknowledgeRecoveryCodes function ([#139](https://github.com/dynamic-labs/dynamic-sdk/pull/139))
160
+ - add getMfaDevices function ([#140](https://github.com/dynamic-labs/dynamic-sdk/pull/140))
161
+ - add deleteMfaDevice function ([#141](https://github.com/dynamic-labs/dynamic-sdk/pull/141))
162
+ - add registerTotpMfaDevice function ([#142](https://github.com/dynamic-labs/dynamic-sdk/pull/142))
163
+ - add getMfaRecoveryCodes function ([#143](https://github.com/dynamic-labs/dynamic-sdk/pull/143))
164
+ - cache project settings for connected users ([#148](https://github.com/dynamic-labs/dynamic-sdk/pull/148))
165
+ - add createNewMfaRecoveryCodes function ([#144](https://github.com/dynamic-labs/dynamic-sdk/pull/144))
166
+ - add setDefaultMfaDevice function ([#149](https://github.com/dynamic-labs/dynamic-sdk/pull/149))
167
+ - add support for solana wallet standard ([#133](https://github.com/dynamic-labs/dynamic-sdk/pull/133))
168
+ - add primary wallet account ([#128](https://github.com/dynamic-labs/dynamic-sdk/pull/128))
169
+ - add authTotpMfaDevice function ([#146](https://github.com/dynamic-labs/dynamic-sdk/pull/146))
170
+ - add authMfaRecoveryCode function ([#147](https://github.com/dynamic-labs/dynamic-sdk/pull/147))
171
+ - add new getMultichainBalances api method ([#219](https://github.com/dynamic-labs/dynamic-sdk/pull/219))
172
+ - adds authenticated event ([#222](https://github.com/dynamic-labs/dynamic-sdk/pull/222))
173
+ - raise an error if different dynamic packages are on different versions ([#253](https://github.com/dynamic-labs/dynamic-sdk/pull/253))
174
+ - add signInWithExternalJwt function ([#263](https://github.com/dynamic-labs/dynamic-sdk/pull/263))
175
+ - add network provider registry and API ([#266](https://github.com/dynamic-labs/dynamic-sdk/pull/266))
176
+ - add ethereum netowrk providers ([#267](https://github.com/dynamic-labs/dynamic-sdk/pull/267))
177
+ - add solana network provider ([#268](https://github.com/dynamic-labs/dynamic-sdk/pull/268))
178
+ - add proveWalletAccountOwnership function ([#295](https://github.com/dynamic-labs/dynamic-sdk/pull/295))
179
+ - format evm wallet addresses to conform to eip55 ([#300](https://github.com/dynamic-labs/dynamic-sdk/pull/300))
180
+ - add viem public client ([#272](https://github.com/dynamic-labs/dynamic-sdk/pull/272))
181
+ - add getSolanaConnection ([#275](https://github.com/dynamic-labs/dynamic-sdk/pull/275))
182
+ - add dynamic waas evm extension ([#299](https://github.com/dynamic-labs/dynamic-sdk/pull/299))
183
+ - add refreshUser function ([#332](https://github.com/dynamic-labs/dynamic-sdk/pull/332))
184
+ - add get network method ([#321](https://github.com/dynamic-labs/dynamic-sdk/pull/321))
185
+ - add createWaasWallet function ([#343](https://github.com/dynamic-labs/dynamic-sdk/pull/343))
186
+ - allow switching network ([#323](https://github.com/dynamic-labs/dynamic-sdk/pull/323))
187
+ - introduce getBalance and getBalanceForAddress ([#335](https://github.com/dynamic-labs/dynamic-sdk/pull/335))
188
+ - add delegateWaasKeyShares function ([#353](https://github.com/dynamic-labs/dynamic-sdk/pull/353))
189
+ - add updateWaasPassword function ([#354](https://github.com/dynamic-labs/dynamic-sdk/pull/354))
190
+ - add exportWaasClientKeyshares function ([#355](https://github.com/dynamic-labs/dynamic-sdk/pull/355))
191
+ - add importWaasPrivateKey function ([#356](https://github.com/dynamic-labs/dynamic-sdk/pull/356))
192
+ - add refreshWaasWalletAccountShares function ([#357](https://github.com/dynamic-labs/dynamic-sdk/pull/357))
193
+ - add backupWaasKeySharesToGoogleDrive function ([#358](https://github.com/dynamic-labs/dynamic-sdk/pull/358))
194
+ - add exportWaasPrivateKey function ([#359](https://github.com/dynamic-labs/dynamic-sdk/pull/359))
195
+ - add isWaasWalletAccount function ([#365](https://github.com/dynamic-labs/dynamic-sdk/pull/365))
196
+ - add createWalletClientForWalletAccount function ([#367](https://github.com/dynamic-labs/dynamic-sdk/pull/367))
197
+ - add connectAndVerifyWithWalletProvider function ([#385](https://github.com/dynamic-labs/dynamic-sdk/pull/385))
198
+ - add event listening for wallet providers ([#389](https://github.com/dynamic-labs/dynamic-sdk/pull/389))
199
+ - expose the session expires at date ([#420](https://github.com/dynamic-labs/dynamic-sdk/pull/420))
200
+ - refresh user when cookies are enabled ([#430](https://github.com/dynamic-labs/dynamic-sdk/pull/430))
201
+ - introduce waitForClientInitialized ([#436](https://github.com/dynamic-labs/dynamic-sdk/pull/436))
202
+ - introduce isMobile helper utility ([#441](https://github.com/dynamic-labs/dynamic-sdk/pull/441))
203
+ - persist unverified wallets in local storage ([#448](https://github.com/dynamic-labs/dynamic-sdk/pull/448))
204
+ - **QNTM-3387:** add sui base infrastructure and core client ([#240](https://github.com/dynamic-labs/dynamic-sdk/pull/240))
205
+ - **SIN-7:** Add Signin with Passkey ([#201](https://github.com/dynamic-labs/dynamic-sdk/pull/201))
206
+ - **wallets:** adds methods to connect and verify a wallet ([#99](https://github.com/dynamic-labs/dynamic-sdk/pull/99))
207
+
208
+ ### 🩹 Fixes
209
+
210
+ - make the client package public ([#74](https://github.com/dynamic-labs/dynamic-sdk/pull/74))
211
+ - properly export state changed events ([#85](https://github.com/dynamic-labs/dynamic-sdk/pull/85))
212
+ - client core accidentally sharing state among different instances ([#89](https://github.com/dynamic-labs/dynamic-sdk/pull/89))
213
+ - support server side rendering ([#92](https://github.com/dynamic-labs/dynamic-sdk/pull/92))
214
+ - use correct import path for commonjs ([#125](https://github.com/dynamic-labs/dynamic-sdk/pull/125))
215
+ - ensure change events are fired only when state changes ([#168](https://github.com/dynamic-labs/dynamic-sdk/pull/168))
216
+ - solana integration ([#169](https://github.com/dynamic-labs/dynamic-sdk/pull/169))
217
+ - throw when attempting to set undefined prop in storage ([#200](https://github.com/dynamic-labs/dynamic-sdk/pull/200))
218
+ - allow the api call to include cookie credentials ([#209](https://github.com/dynamic-labs/dynamic-sdk/pull/209))
219
+ - convert api headers to get api headers ([#211](https://github.com/dynamic-labs/dynamic-sdk/pull/211))
220
+ - import zod mini using namespace ([#214](https://github.com/dynamic-labs/dynamic-sdk/pull/214))
221
+ - bind fetch to window ([#265](https://github.com/dynamic-labs/dynamic-sdk/pull/265))
222
+ - update default API base URL ([#296](https://github.com/dynamic-labs/dynamic-sdk/pull/296))
223
+ - remove version pin on sdk-api-core ([#351](https://github.com/dynamic-labs/dynamic-sdk/pull/351))
224
+ - sending transaction with solana ([#381](https://github.com/dynamic-labs/dynamic-sdk/pull/381))
225
+ - set client version to project settings api call ([#414](https://github.com/dynamic-labs/dynamic-sdk/pull/414))
226
+ - logout with wallet standard sol wallets ([#423](https://github.com/dynamic-labs/dynamic-sdk/pull/423))
227
+ - logout user when any api call fails with 401 ([#432](https://github.com/dynamic-labs/dynamic-sdk/pull/432))
228
+ - logout for connected only wallets ([#437](https://github.com/dynamic-labs/dynamic-sdk/pull/437))
229
+ - ensure server side rendering will not trigger any api call ([#445](https://github.com/dynamic-labs/dynamic-sdk/pull/445))
230
+ - handle 401 when initializing the SDK ([#446](https://github.com/dynamic-labs/dynamic-sdk/pull/446))
231
+ - logout user when any api call fails with 401 " ([#432](https://github.com/dynamic-labs/dynamic-sdk/pull/432), [#450](https://github.com/dynamic-labs/dynamic-sdk/pull/450))
232
+ - logout user only when it fails to refresh user with cookies ([#451](https://github.com/dynamic-labs/dynamic-sdk/pull/451))
233
+ - update how wallet account id is computed to support multiple wallet accounts with the same address ([#481](https://github.com/dynamic-labs/dynamic-sdk/pull/481))
234
+ - **mfa:** make device id optional ([#175](https://github.com/dynamic-labs/dynamic-sdk/pull/175))
235
+ - **mfa:** allow create mfa options to authTotpMfaDevice ([#178](https://github.com/dynamic-labs/dynamic-sdk/pull/178))
236
+
237
+ ### 🔧 Refactors
238
+
239
+ - rename initializationManager to asyncTrack ([#26](https://github.com/dynamic-labs/dynamic-sdk/pull/26))
240
+ - modularize DynamicCoreState with global interface ([#93](https://github.com/dynamic-labs/dynamic-sdk/pull/93))
241
+ - add setVerifyResponse ([#106](https://github.com/dynamic-labs/dynamic-sdk/pull/106))
242
+ - rename set verify response function ([#122](https://github.com/dynamic-labs/dynamic-sdk/pull/122))
243
+ - clean up social implementation ([#145](https://github.com/dynamic-labs/dynamic-sdk/pull/145))
244
+ - reorganize exports index file ([#303](https://github.com/dynamic-labs/dynamic-sdk/pull/303))
245
+ - rename events folder to clientEvents ([#305](https://github.com/dynamic-labs/dynamic-sdk/pull/305))
246
+ - dry network provider type ([#308](https://github.com/dynamic-labs/dynamic-sdk/pull/308))
247
+ - rename types files to include the features name ([#319](https://github.com/dynamic-labs/dynamic-sdk/pull/319))
248
+ - use evm instead of other terms ([#306](https://github.com/dynamic-labs/dynamic-sdk/pull/306))
249
+ - rename net configuration to net data ([#322](https://github.com/dynamic-labs/dynamic-sdk/pull/322))
250
+ - move waas-utils to client package ([#342](https://github.com/dynamic-labs/dynamic-sdk/pull/342))
251
+ - assert signed session id in getSignedSessionId ([#361](https://github.com/dynamic-labs/dynamic-sdk/pull/361))
252
+ - add consumeMfaTokenIfRequiredForAction function ([#363](https://github.com/dynamic-labs/dynamic-sdk/pull/363))
253
+ - waas sign message defined in waas provider ([#377](https://github.com/dynamic-labs/dynamic-sdk/pull/377))
254
+ - ban chain enum ([#386](https://github.com/dynamic-labs/dynamic-sdk/pull/386))
255
+ - ban misplaced waas exports ([#387](https://github.com/dynamic-labs/dynamic-sdk/pull/387))
256
+ - also apply lint-tsc for specfiles ([#399](https://github.com/dynamic-labs/dynamic-sdk/pull/399))
257
+ - require client to always be passed as a param for internal code ([#401](https://github.com/dynamic-labs/dynamic-sdk/pull/401))
258
+ - linter rule for addExtension functions ([#433](https://github.com/dynamic-labs/dynamic-sdk/pull/433))
259
+ - improve demo ui and organization ([#434](https://github.com/dynamic-labs/dynamic-sdk/pull/434))
260
+ - misc improvements ([#438](https://github.com/dynamic-labs/dynamic-sdk/pull/438))
261
+ - add linter rule for unpinned dependencies ([#439](https://github.com/dynamic-labs/dynamic-sdk/pull/439))
262
+ - rework captcha code for demo ([#449](https://github.com/dynamic-labs/dynamic-sdk/pull/449))
263
+ - rename schemas ([#471](https://github.com/dynamic-labs/dynamic-sdk/pull/471))
264
+
265
+ ## 0.1.0-alpha.15 (2025-10-01)
266
+
267
+ This was a version bump only, there were no code changes.
268
+
269
+ ## 0.1.0-alpha.14 (2025-09-30)
270
+
271
+ This was a version bump only, there were no code changes.
272
+
273
+ ## 0.1.0-alpha.13 (2025-09-30)
274
+
275
+ ### 🚀 Features
276
+
277
+ - persist unverified wallets in local storage ([#448](https://github.com/dynamic-labs/dynamic-sdk/pull/448))
278
+
279
+ ### 🩹 Fixes
280
+
281
+ - update how wallet account id is computed to support multiple wallet accounts with the same address ([#481](https://github.com/dynamic-labs/dynamic-sdk/pull/481))
282
+
283
+ ### 🔧 Refactors
284
+
285
+ - rename schemas ([#471](https://github.com/dynamic-labs/dynamic-sdk/pull/471))
286
+
287
+ ## 0.1.0-alpha.12 (2025-09-23)
288
+
289
+ This was a version bump only, there were no code changes.
290
+
291
+ ## 0.1.0-alpha.11 (2025-09-23)
292
+
293
+ ### 🩹 Fixes
294
+
295
+ - logout user when any api call fails with 401 " ([#432](https://github.com/dynamic-labs/dynamic-sdk/pull/432), [#450](https://github.com/dynamic-labs/dynamic-sdk/pull/450))
296
+ - logout user only when it fails to refresh user with cookies ([#451](https://github.com/dynamic-labs/dynamic-sdk/pull/451))
297
+
298
+ ### 🔧 Refactors
299
+
300
+ - rework captcha code for demo ([#449](https://github.com/dynamic-labs/dynamic-sdk/pull/449))
301
+
302
+ ## 0.1.0-alpha.10 (2025-09-22)
303
+
304
+ ### 🩹 Fixes
305
+
306
+ - ensure server side rendering will not trigger any api call ([#445](https://github.com/dynamic-labs/dynamic-sdk/pull/445))
307
+ - handle 401 when initializing the SDK ([#446](https://github.com/dynamic-labs/dynamic-sdk/pull/446))
308
+
1
309
  ## 0.1.0-alpha.9 (2025-09-19)
2
310
 
3
311
  ### 🚀 Features
package/_extends.cjs.js CHANGED
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var name = "@dynamic-labs-sdk/evm";
4
- var version = "0.1.0-alpha.9";
4
+ var version = "0.1.1";
5
5
 
6
6
  function _extends() {
7
7
  _extends = Object.assign || function assign(target) {
package/_extends.esm.js CHANGED
@@ -1,5 +1,5 @@
1
1
  var name = "@dynamic-labs-sdk/evm";
2
- var version = "0.1.0-alpha.9";
2
+ var version = "0.1.1";
3
3
 
4
4
  function _extends() {
5
5
  _extends = Object.assign || function assign(target) {
@@ -103,7 +103,12 @@ const switchActiveNetwork = async ({ networkId, client: client$1, eip1193, walle
103
103
 
104
104
  const createWalletProviderFromEIP1193Provider = ({ eip1193, icon, displayName }, client)=>{
105
105
  const chain = 'EVM';
106
- const key = core.formatWalletProviderKey(displayName, chain);
106
+ const walletProviderType = sdkApiCore.WalletProviderEnum.BrowserExtension;
107
+ const key = core.formatWalletProviderKey({
108
+ chain,
109
+ displayName,
110
+ walletProviderType
111
+ });
107
112
  const addNetworkWrapped = async ({ networkData })=>addNetwork({
108
113
  eip1193,
109
114
  networkData
@@ -115,7 +120,9 @@ const createWalletProviderFromEIP1193Provider = ({ eip1193, icon, displayName },
115
120
  });
116
121
  const formattedAddresses = addresses.map((address)=>viem.getAddress(address));
117
122
  return {
118
- addresses: formattedAddresses
123
+ addresses: formattedAddresses.map((address)=>({
124
+ address
125
+ }))
119
126
  };
120
127
  };
121
128
  const disconnect = async ()=>{
@@ -189,12 +196,11 @@ const createWalletProviderFromEIP1193Provider = ({ eip1193, icon, displayName },
189
196
  eip1193
190
197
  }),
191
198
  getConnectedAddresses,
192
- getWalletProviderType: ()=>sdkApiCore.WalletProviderEnum.BrowserExtension,
193
199
  groupKey: core.formatWalletProviderGroupKey(displayName),
194
- key: core.formatWalletProviderKey(displayName, chain),
200
+ key,
195
201
  metadata: {
196
202
  displayName,
197
- icon: icon
203
+ icon
198
204
  },
199
205
  request: eip1193.request.bind(eip1193.request),
200
206
  signMessage,
@@ -204,11 +210,12 @@ const createWalletProviderFromEIP1193Provider = ({ eip1193, icon, displayName },
204
210
  networkId,
205
211
  walletProviderKey: key
206
212
  }),
207
- terminate
213
+ terminate,
214
+ walletProviderType
208
215
  };
209
216
  };
210
217
 
211
- const isEip9693Event = (event)=>event !== null && event !== undefined && event.type === 'eip6963:announceProvider' && event.detail !== undefined && event.detail !== null;
218
+ const isEip6963Event = (event)=>event !== null && event !== undefined && event.type === 'eip6963:announceProvider' && event.detail !== undefined && event.detail !== null;
212
219
 
213
220
  const listenForEIP6963ProviderAnnouncement = (onProvider, /**
214
221
  * This feature is only available in the browser
@@ -218,7 +225,7 @@ const listenForEIP6963ProviderAnnouncement = (onProvider, /**
218
225
  */ // eslint-disable-next-line no-restricted-globals
219
226
  globalWindow = window)=>{
220
227
  const handler = (event)=>{
221
- if (!isEip9693Event(event)) return;
228
+ if (!isEip6963Event(event)) return;
222
229
  onProvider(event.detail);
223
230
  };
224
231
  globalWindow.addEventListener('eip6963:announceProvider', handler);
@@ -238,7 +245,6 @@ const EIP6963_EXTENSION_KEY = 'eip6963';
238
245
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
239
246
  * @returns A function that can be used to remove EIP-6963 global event listeners that were added.
240
247
  */ const addEIP6963Extension = (client = core.getDefaultClient())=>{
241
- registerEvmNetworkProviderBuilder.registerEvmNetworkProviderBuilder(client);
242
248
  if (core.hasExtension({
243
249
  extensionKey: EIP6963_EXTENSION_KEY
244
250
  }, client)) {
@@ -249,6 +255,7 @@ const EIP6963_EXTENSION_KEY = 'eip6963';
249
255
  core.registerExtension({
250
256
  extensionKey: EIP6963_EXTENSION_KEY
251
257
  }, client);
258
+ registerEvmNetworkProviderBuilder.registerEvmNetworkProviderBuilder(client);
252
259
  const walletProviderRegistry = core.getWalletProviderRegistry(client);
253
260
  return listenForEIP6963ProviderAnnouncement((detail)=>{
254
261
  const walletProvider = createWalletProviderFromEIP1193Provider({
@@ -101,7 +101,12 @@ const switchActiveNetwork = async ({ networkId, client, eip1193, walletProviderK
101
101
 
102
102
  const createWalletProviderFromEIP1193Provider = ({ eip1193, icon, displayName }, client)=>{
103
103
  const chain = 'EVM';
104
- const key = formatWalletProviderKey(displayName, chain);
104
+ const walletProviderType = WalletProviderEnum.BrowserExtension;
105
+ const key = formatWalletProviderKey({
106
+ chain,
107
+ displayName,
108
+ walletProviderType
109
+ });
105
110
  const addNetworkWrapped = async ({ networkData })=>addNetwork({
106
111
  eip1193,
107
112
  networkData
@@ -113,7 +118,9 @@ const createWalletProviderFromEIP1193Provider = ({ eip1193, icon, displayName },
113
118
  });
114
119
  const formattedAddresses = addresses.map((address)=>getAddress(address));
115
120
  return {
116
- addresses: formattedAddresses
121
+ addresses: formattedAddresses.map((address)=>({
122
+ address
123
+ }))
117
124
  };
118
125
  };
119
126
  const disconnect = async ()=>{
@@ -187,12 +194,11 @@ const createWalletProviderFromEIP1193Provider = ({ eip1193, icon, displayName },
187
194
  eip1193
188
195
  }),
189
196
  getConnectedAddresses,
190
- getWalletProviderType: ()=>WalletProviderEnum.BrowserExtension,
191
197
  groupKey: formatWalletProviderGroupKey(displayName),
192
- key: formatWalletProviderKey(displayName, chain),
198
+ key,
193
199
  metadata: {
194
200
  displayName,
195
- icon: icon
201
+ icon
196
202
  },
197
203
  request: eip1193.request.bind(eip1193.request),
198
204
  signMessage,
@@ -202,11 +208,12 @@ const createWalletProviderFromEIP1193Provider = ({ eip1193, icon, displayName },
202
208
  networkId,
203
209
  walletProviderKey: key
204
210
  }),
205
- terminate
211
+ terminate,
212
+ walletProviderType
206
213
  };
207
214
  };
208
215
 
209
- const isEip9693Event = (event)=>event !== null && event !== undefined && event.type === 'eip6963:announceProvider' && event.detail !== undefined && event.detail !== null;
216
+ const isEip6963Event = (event)=>event !== null && event !== undefined && event.type === 'eip6963:announceProvider' && event.detail !== undefined && event.detail !== null;
210
217
 
211
218
  const listenForEIP6963ProviderAnnouncement = (onProvider, /**
212
219
  * This feature is only available in the browser
@@ -216,7 +223,7 @@ const listenForEIP6963ProviderAnnouncement = (onProvider, /**
216
223
  */ // eslint-disable-next-line no-restricted-globals
217
224
  globalWindow = window)=>{
218
225
  const handler = (event)=>{
219
- if (!isEip9693Event(event)) return;
226
+ if (!isEip6963Event(event)) return;
220
227
  onProvider(event.detail);
221
228
  };
222
229
  globalWindow.addEventListener('eip6963:announceProvider', handler);
@@ -236,7 +243,6 @@ const EIP6963_EXTENSION_KEY = 'eip6963';
236
243
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
237
244
  * @returns A function that can be used to remove EIP-6963 global event listeners that were added.
238
245
  */ const addEIP6963Extension = (client = getDefaultClient())=>{
239
- registerEvmNetworkProviderBuilder(client);
240
246
  if (hasExtension({
241
247
  extensionKey: EIP6963_EXTENSION_KEY
242
248
  }, client)) {
@@ -247,6 +253,7 @@ const EIP6963_EXTENSION_KEY = 'eip6963';
247
253
  registerExtension({
248
254
  extensionKey: EIP6963_EXTENSION_KEY
249
255
  }, client);
256
+ registerEvmNetworkProviderBuilder(client);
250
257
  const walletProviderRegistry = getWalletProviderRegistry(client);
251
258
  return listenForEIP6963ProviderAnnouncement((detail)=>{
252
259
  const walletProvider = createWalletProviderFromEIP1193Provider({
@@ -9,8 +9,46 @@ var client = require('@dynamic-labs-sdk/client');
9
9
  var viem = require('viem');
10
10
  var accounts = require('viem/accounts');
11
11
  var mapNetworkDataToViemChain = require('./mapNetworkDataToViemChain.cjs.js');
12
+ var utils = require('viem/utils');
12
13
 
13
- const signTypedData = async ({ typedData, walletAccount, dynamicClient, waasProvider })=>{
14
+ const signAuthorization = async ({ parameters, walletAccount, waasProvider, password }, dynamicClient)=>{
15
+ const { address: contractAddress, chainId, nonce } = parameters;
16
+ core.assertDefined(contractAddress, 'Contract address not found');
17
+ const { signature: signedSessionId } = await core.getSignedSessionId(dynamicClient);
18
+ const mfaToken = await core.consumeMfaTokenIfRequiredForAction({
19
+ mfaAction: client.MFAAction.WalletWaasSign
20
+ }, dynamicClient);
21
+ const waasClient = await waasProvider.getWaasClient();
22
+ const authorization = {
23
+ address: contractAddress,
24
+ chainId,
25
+ nonce
26
+ };
27
+ var _dynamicClient_token;
28
+ const signature = await waasClient.signRawMessage({
29
+ accountAddress: walletAccount.address,
30
+ authToken: (_dynamicClient_token = dynamicClient.token) != null ? _dynamicClient_token : undefined,
31
+ context: {
32
+ eip7702Auth: authorization
33
+ },
34
+ message: utils.hashAuthorization(authorization).slice(2),
35
+ mfaToken,
36
+ password,
37
+ signedSessionId
38
+ });
39
+ const parsedSignature = viem.parseSignature(signature);
40
+ return {
41
+ address: contractAddress,
42
+ chainId,
43
+ nonce,
44
+ r: parsedSignature.r,
45
+ s: parsedSignature.s,
46
+ v: parsedSignature.v,
47
+ yParity: parsedSignature.yParity
48
+ };
49
+ };
50
+
51
+ const signTypedData = async ({ typedData, walletAccount, waasProvider }, dynamicClient)=>{
14
52
  const { signature: signedSessionId } = await core.getSignedSessionId(dynamicClient);
15
53
  const mfaToken = await core.consumeMfaTokenIfRequiredForAction({
16
54
  mfaAction: sdkApiCore.MFAAction.WalletWaasSign
@@ -26,7 +64,7 @@ const signTypedData = async ({ typedData, walletAccount, dynamicClient, waasProv
26
64
  });
27
65
  };
28
66
 
29
- const createViemWalletClientForWaas = async ({ dynamicClient, waasProvider, walletAccount, httpTransportConfig, viemWalletClientConfig })=>{
67
+ const createViemWalletClientForWaas = async ({ waasProvider, walletAccount, httpTransportConfig, viemWalletClientConfig }, dynamicClient)=>{
30
68
  const { networkData: activeNetworkData } = await client.getActiveNetworkData({
31
69
  walletAccount
32
70
  }, dynamicClient);
@@ -34,6 +72,14 @@ const createViemWalletClientForWaas = async ({ dynamicClient, waasProvider, wall
34
72
  return viem.createWalletClient(_extends._extends({
35
73
  account: accounts.toAccount({
36
74
  address: walletAccount.address,
75
+ async signAuthorization (parameters) {
76
+ const signature = await signAuthorization({
77
+ parameters,
78
+ waasProvider,
79
+ walletAccount
80
+ }, dynamicClient);
81
+ return signature;
82
+ },
37
83
  signMessage: async ({ message })=>{
38
84
  const { signature } = await waasProvider.signMessage({
39
85
  message: message,
@@ -50,11 +96,10 @@ const createViemWalletClientForWaas = async ({ dynamicClient, waasProvider, wall
50
96
  },
51
97
  signTypedData: async (typedData)=>{
52
98
  const signature = await signTypedData({
53
- dynamicClient,
54
99
  typedData,
55
100
  waasProvider,
56
101
  walletAccount
57
- });
102
+ }, dynamicClient);
58
103
  return signature;
59
104
  }
60
105
  }),
@@ -65,20 +110,23 @@ const createViemWalletClientForWaas = async ({ dynamicClient, waasProvider, wall
65
110
 
66
111
  const createWalletProviderForWaasEvm = ({ dynamicClient })=>{
67
112
  const chain = 'EVM';
68
- const key = core.formatWalletProviderKey(core$1.DYNAMIC_WAAS_METADATA.name, chain);
69
- const logger = core.getCore(dynamicClient).logger;
113
+ const walletProviderType = sdkApiCore.WalletProviderEnum.EmbeddedWallet;
114
+ const key = core.formatWalletProviderKey({
115
+ chain,
116
+ displayName: core$1.DYNAMIC_WAAS_METADATA.displayName,
117
+ walletProviderType
118
+ });
70
119
  const waasProvider = core$1.createWaasProvider({
71
120
  chain,
72
121
  sdkClient: dynamicClient
73
122
  });
74
123
  const createViemWalletClient = async ({ walletAccount, httpTransportConfig, viemWalletClientConfig })=>{
75
124
  return createViemWalletClientForWaas({
76
- dynamicClient,
77
125
  httpTransportConfig,
78
126
  viemWalletClientConfig,
79
127
  waasProvider,
80
128
  walletAccount
81
- });
129
+ }, dynamicClient);
82
130
  };
83
131
  const getActiveNetworkId = async ()=>core.getActiveNetworkIdFromLastKnownRegistry({
84
132
  client: dynamicClient,
@@ -92,12 +140,6 @@ const createWalletProviderForWaasEvm = ({ dynamicClient })=>{
92
140
  addresses: waasEvmAddresses
93
141
  };
94
142
  };
95
- const request = async (args)=>{
96
- logger.warn('request is not implemented', {
97
- args
98
- });
99
- throw new core.MethodNotImplementedError('request');
100
- };
101
143
  const signMessage = async ({ message, walletAccount })=>{
102
144
  core.assertDefined(walletAccount, 'Wallet account is required');
103
145
  return waasProvider.signMessage({
@@ -118,17 +160,16 @@ const createWalletProviderForWaasEvm = ({ dynamicClient })=>{
118
160
  createViemWalletClient,
119
161
  getActiveNetworkId,
120
162
  getConnectedAddresses,
121
- getWalletProviderType: ()=>sdkApiCore.WalletProviderEnum.EmbeddedWallet,
122
- groupKey: core.formatWalletProviderGroupKey(core$1.DYNAMIC_WAAS_METADATA.name),
163
+ groupKey: core.formatWalletProviderGroupKey(core$1.DYNAMIC_WAAS_METADATA.displayName),
123
164
  key,
124
165
  metadata: {
125
- displayName: core$1.DYNAMIC_WAAS_METADATA.name,
166
+ displayName: core$1.DYNAMIC_WAAS_METADATA.displayName,
126
167
  icon: core$1.DYNAMIC_WAAS_METADATA.icon
127
168
  },
128
- request,
129
169
  signMessage,
130
170
  switchActiveNetwork,
131
- terminate
171
+ terminate,
172
+ walletProviderType
132
173
  });
133
174
  };
134
175
 
@@ -141,7 +182,6 @@ const WAAS_EVM_EXTENSION_KEY = 'waasEvm';
141
182
  *
142
183
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
143
184
  */ const addWaasEvmExtension = (client = core.getDefaultClient())=>{
144
- registerEvmNetworkProviderBuilder.registerEvmNetworkProviderBuilder(client);
145
185
  if (core.hasExtension({
146
186
  extensionKey: WAAS_EVM_EXTENSION_KEY
147
187
  }, client)) {
@@ -150,6 +190,7 @@ const WAAS_EVM_EXTENSION_KEY = 'waasEvm';
150
190
  core.registerExtension({
151
191
  extensionKey: WAAS_EVM_EXTENSION_KEY
152
192
  }, client);
193
+ registerEvmNetworkProviderBuilder.registerEvmNetworkProviderBuilder(client);
153
194
  const walletProviderRegistry = core.getWalletProviderRegistry(client);
154
195
  const walletProvider = createWalletProviderForWaasEvm({
155
196
  dynamicClient: client