@dynamic-labs/wallet-book 1.1.0-phantom.0 → 1.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 (47) hide show
  1. package/CHANGELOG.md +152 -2
  2. package/README.md +5 -1
  3. package/_virtual/_tslib.cjs +6 -1
  4. package/_virtual/_tslib.js +6 -1
  5. package/package.json +4 -2
  6. package/src/build/index.d.ts +2 -0
  7. package/src/build/sources/walletConnect/index.d.ts +12 -10
  8. package/src/components/BrandIcon.cjs +25 -0
  9. package/src/components/BrandIcon.d.ts +8 -0
  10. package/src/components/BrandIcon.js +21 -0
  11. package/src/components/WalletIcon.cjs +2 -1
  12. package/src/components/WalletIcon.js +2 -1
  13. package/src/components/index.d.ts +1 -0
  14. package/src/helpers/findWalletBookWallet.cjs +0 -2
  15. package/src/helpers/findWalletBookWallet.d.ts +2 -0
  16. package/src/helpers/findWalletBookWallet.js +0 -2
  17. package/src/helpers/findWalletGroup.d.ts +9 -0
  18. package/src/helpers/findWalletGroupOverride.cjs +13 -0
  19. package/src/helpers/findWalletGroupOverride.d.ts +3 -0
  20. package/src/helpers/findWalletGroupOverride.js +9 -0
  21. package/src/helpers/getBrandIconUrl.cjs +17 -0
  22. package/src/helpers/getBrandIconUrl.d.ts +2 -0
  23. package/src/helpers/getBrandIconUrl.js +13 -0
  24. package/src/helpers/getWalletBookWallet.cjs +18 -6
  25. package/src/helpers/getWalletBookWallet.js +18 -6
  26. package/src/helpers/getWalletIconUrl.cjs +3 -6
  27. package/src/helpers/getWalletIconUrl.js +3 -6
  28. package/src/helpers/index.d.ts +2 -0
  29. package/src/helpers/normalizeWalletName.cjs +7 -0
  30. package/src/helpers/normalizeWalletName.js +3 -0
  31. package/src/hooks/useWalletBookCdn.cjs +22 -16
  32. package/src/hooks/useWalletBookCdn.d.ts +11 -0
  33. package/src/hooks/useWalletBookCdn.js +22 -16
  34. package/src/hooks/useWalletBookContext.cjs +2 -0
  35. package/src/hooks/useWalletBookContext.js +2 -0
  36. package/src/index.cjs +6 -0
  37. package/src/index.d.ts +2 -2
  38. package/src/index.js +3 -0
  39. package/src/schemas/walletBookSchema.d.ts +185 -8
  40. package/src/schemas/walletGroup.cjs +6 -0
  41. package/src/schemas/walletGroup.d.ts +112 -2
  42. package/src/schemas/walletGroup.js +6 -0
  43. package/src/schemas/walletSchema.cjs +25 -20
  44. package/src/schemas/walletSchema.d.ts +41 -4
  45. package/src/schemas/walletSchema.js +25 -21
  46. package/wallet-book-fallbacks.cjs +30 -9
  47. package/wallet-book-fallbacks.js +30 -9
package/CHANGELOG.md CHANGED
@@ -1,18 +1,168 @@
1
1
 
2
- ## [1.1.0-phantom.0](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.12...v1.1.0-phantom.0) (2024-01-22)
2
+ ### [1.1.1](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0...v1.1.1) (2024-02-13)
3
+
4
+
5
+ ### Bug Fixes
6
+
7
+ * current wallet being clipped inside a circle ([#4470](https://github.com/dynamic-labs/DynamicAuth/issues/4470)) ([#4649](https://github.com/dynamic-labs/DynamicAuth/issues/4649)) ([43537af](https://github.com/dynamic-labs/DynamicAuth/commit/43537af0809c96bc8ae8726d9260e2c526d2921b))
8
+ * old iconic dependency version ([#4674](https://github.com/dynamic-labs/DynamicAuth/issues/4674)) ([04f5b03](https://github.com/dynamic-labs/DynamicAuth/commit/04f5b0387303563637ad414eda0170186aad0e44))
9
+ * solana turnkey connector not refreshing account after session expiration ([#4637](https://github.com/dynamic-labs/DynamicAuth/issues/4637)) ([ed0f964](https://github.com/dynamic-labs/DynamicAuth/commit/ed0f964bc1e0ab2e5069c51b9e6f3c0bc2a16df7))
10
+
11
+ ## [1.1.0](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.25...v1.1.0) (2024-02-07)
12
+
13
+ Check out our changelog here: https://docs.dynamic.xyz/changelog/v1-1
14
+
15
+
16
+ ### Features
17
+
18
+ * add retry when using magic ([#4579](https://github.com/dynamic-labs/DynamicAuth/issues/4579)) ([183561c](https://github.com/dynamic-labs/DynamicAuth/commit/183561cc64f083fd1489c38a8cc8b1c4c51d2924))
19
+
20
+
21
+ ### Bug Fixes
22
+
23
+ * bug where deprecated fields were still being used in the SDK ([#4604](https://github.com/dynamic-labs/DynamicAuth/issues/4604)) ([4fd15fc](https://github.com/dynamic-labs/DynamicAuth/commit/4fd15fc4daa9c5b7bbc81ce05a3b046c80a6d5b4))
24
+ * log magic RPC error and update magic network error ([#4606](https://github.com/dynamic-labs/DynamicAuth/issues/4606)) ([2206961](https://github.com/dynamic-labs/DynamicAuth/commit/22069618a317bc40b1a17fd521eadf0956983de4))
25
+ * onConnect is properly called for additional connected wallets ([#4607](https://github.com/dynamic-labs/DynamicAuth/issues/4607)) ([23241f4](https://github.com/dynamic-labs/DynamicAuth/commit/23241f4d5dc91ac9ca1251710161efbfce42dc40))
26
+
27
+ ## [1.1.0-alpha.25](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.24...v1.1.0-alpha.25) (2024-02-05)
28
+
29
+
30
+ ### Features
31
+
32
+ * add signin with coinbase to sdk ([#4581](https://github.com/dynamic-labs/DynamicAuth/issues/4581)) ([08a31ed](https://github.com/dynamic-labs/DynamicAuth/commit/08a31ed3552c48645b398881f184440800af21ec))
33
+ * exposing hook for creating either one-time code or passkeys authenticators ([#4591](https://github.com/dynamic-labs/DynamicAuth/issues/4591)) ([864d755](https://github.com/dynamic-labs/DynamicAuth/commit/864d75576152a10f73f5901bc06e2d66892b63ab))
34
+
35
+
36
+ ### Bug Fixes
37
+
38
+ * solana wallet sign message with one-time code session ([#4588](https://github.com/dynamic-labs/DynamicAuth/issues/4588)) ([a738d10](https://github.com/dynamic-labs/DynamicAuth/commit/a738d10814dc5058158b9c0c59a399a375c69c10))
39
+
40
+ ## [1.1.0-alpha.24](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.23...v1.1.0-alpha.24) (2024-02-02)
41
+
42
+
43
+ ### Bug Fixes
44
+
45
+ * remove isFullyConnected when unable to restore wallet ([#4575](https://github.com/dynamic-labs/DynamicAuth/issues/4575)) ([4504ff0](https://github.com/dynamic-labs/DynamicAuth/commit/4504ff03f594cd9a60055e6f52b7ea8001542bbe))
46
+
47
+ ## [1.1.0-alpha.23](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.22...v1.1.0-alpha.23) (2024-02-01)
48
+
49
+
50
+ ### Features
51
+
52
+ * bitcoin signPsbt ([3c964de](https://github.com/dynamic-labs/DynamicAuth/commit/3c964dea8a55debaf184c5a94f0f5fabdda3c877))
53
+ * embedded wallet email auth flow ([#4353](https://github.com/dynamic-labs/DynamicAuth/issues/4353)) ([4875da3](https://github.com/dynamic-labs/DynamicAuth/commit/4875da32c47c27facef1b1cdbdc214566bbfd171))
54
+
55
+ ## [1.1.0-alpha.22](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.21...v1.1.0-alpha.22) (2024-02-01)
56
+
57
+
58
+ ### Bug Fixes
59
+
60
+ * onAuthFlowClose not being called ([#4563](https://github.com/dynamic-labs/DynamicAuth/issues/4563)) ([c4b2648](https://github.com/dynamic-labs/DynamicAuth/commit/c4b264885b7dba6e204ef49bf642d25c7d287b04))
61
+
62
+ ## [1.1.0-alpha.21](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.20...v1.1.0-alpha.21) (2024-02-01)
63
+
64
+
65
+ ### Features
66
+
67
+ * add phantom redirect handling context ([#4479](https://github.com/dynamic-labs/DynamicAuth/issues/4479)) ([e0218ee](https://github.com/dynamic-labs/DynamicAuth/commit/e0218eec1a67787f5c0e7483d542a5f773e911ef))
68
+ * add signPsbt method to bitcoin wallet connectors ([dfdc0fe](https://github.com/dynamic-labs/DynamicAuth/commit/dfdc0fe0e6894c1307b286e89b43a4c58a8808f3))
69
+
70
+
71
+ ### Bug Fixes
72
+
73
+ * relax passkey feature detection check in sdk to avoid false nega… ([#4556](https://github.com/dynamic-labs/DynamicAuth/issues/4556)) ([4554f7d](https://github.com/dynamic-labs/DynamicAuth/commit/4554f7d7c5339859481cdecca95a9c07fae4ba5c))
74
+ * workaround braavos undefined selectedWallet on chainChange event ([#4552](https://github.com/dynamic-labs/DynamicAuth/issues/4552)) ([aa35df0](https://github.com/dynamic-labs/DynamicAuth/commit/aa35df0e894feafa0606aa1c87bd3d3879ebc594))
75
+
76
+ ## [1.1.0-alpha.20](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.19...v1.1.0-alpha.20) (2024-01-31)
77
+
78
+
79
+ ### Bug Fixes
80
+
81
+ * return all enabled chains in getSupportedNetworks instead of undefined ([#4547](https://github.com/dynamic-labs/DynamicAuth/issues/4547)) ([08e7889](https://github.com/dynamic-labs/DynamicAuth/commit/08e78896e045f24bbd96e39416a7f58006929da0))
82
+ * show modal for existing social account from other signin provider ([#4535](https://github.com/dynamic-labs/DynamicAuth/issues/4535)) ([282914a](https://github.com/dynamic-labs/DynamicAuth/commit/282914ac94b3ef5bd66e0b2265d9e414203a7406))
83
+
84
+ ## [1.1.0-alpha.19](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.18...v1.1.0-alpha.19) (2024-01-31)
85
+
86
+
87
+ ### Features
88
+
89
+ * add PhantomRedirect connector ([#4467](https://github.com/dynamic-labs/DynamicAuth/issues/4467)) ([75d6c95](https://github.com/dynamic-labs/DynamicAuth/commit/75d6c95940fcec185a699c2100b3e2d21a8233d5))
90
+
91
+
92
+ ### Bug Fixes
93
+
94
+ * lock starknet to 5.25.0 since 5.27.0 breaks the build ([#4541](https://github.com/dynamic-labs/DynamicAuth/issues/4541)) ([00b4799](https://github.com/dynamic-labs/DynamicAuth/commit/00b479977f768cb067480e2e565eabf45e1000a2))
95
+
96
+ ## [1.1.0-alpha.18](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.17...v1.1.0-alpha.18) (2024-01-30)
97
+
98
+
99
+ ### Bug Fixes
100
+
101
+ * catch email_associated_with_different_provider from response ([#4532](https://github.com/dynamic-labs/DynamicAuth/issues/4532)) ([52be1b4](https://github.com/dynamic-labs/DynamicAuth/commit/52be1b45af46c2b70972b99d73387eb4d7161ec6))
102
+
103
+ ## [1.1.0-alpha.17](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.16...v1.1.0-alpha.17) (2024-01-30)
104
+
105
+
106
+ ### Features
107
+
108
+ * add sendRawTransaction to BitcoinWalletConnector ([2e86c5a](https://github.com/dynamic-labs/DynamicAuth/commit/2e86c5a5245bd0fc29162ef1f7fe2fbd65245fe1))
109
+
110
+
111
+ ### Bug Fixes
112
+
113
+ * properly handle AccountExistsError for signInOAuth ([#4529](https://github.com/dynamic-labs/DynamicAuth/issues/4529)) ([d37fdc3](https://github.com/dynamic-labs/DynamicAuth/commit/d37fdc310fe4b70f8948fd5ed3d058342afbe08f))
114
+
115
+ ## [1.1.0-alpha.16](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.15...v1.1.0-alpha.16) (2024-01-30)
116
+
117
+
118
+ ### Bug Fixes
119
+
120
+ * add fallback to getWalletBookWallet for customers still passing in name, add deprecation warn ([#4518](https://github.com/dynamic-labs/DynamicAuth/issues/4518)) ([b233ea1](https://github.com/dynamic-labs/DynamicAuth/commit/b233ea1cd640d8d9d94c52ab230787f3d869151a))
121
+ * handle braavos network change to account which doesn not exist ([#4519](https://github.com/dynamic-labs/DynamicAuth/issues/4519)) ([486020f](https://github.com/dynamic-labs/DynamicAuth/commit/486020fb09a274388ba34c8d1b37ac3a1ff3dba6))
122
+
123
+ ## [1.1.0-alpha.15](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.14...v1.1.0-alpha.15) (2024-01-28)
124
+
125
+
126
+ ### Features
127
+
128
+ * add wallet group override to wallet book ([#4488](https://github.com/dynamic-labs/DynamicAuth/issues/4488)) ([cb19ad3](https://github.com/dynamic-labs/DynamicAuth/commit/cb19ad3ea82de488752ceceeaf0e1458a388df6e))
129
+ * enable solana embedded wallets ([#4457](https://github.com/dynamic-labs/DynamicAuth/issues/4457)) ([b0c47f4](https://github.com/dynamic-labs/DynamicAuth/commit/b0c47f4475baa12f52076da46ef993c13bd2c243))
130
+ * group ArgentX wallets ([#4495](https://github.com/dynamic-labs/DynamicAuth/issues/4495)) ([b10d79a](https://github.com/dynamic-labs/DynamicAuth/commit/b10d79a668efecedca37ddb358e6adf95319650d))
131
+
132
+
133
+ ### Bug Fixes
134
+
135
+ * add support for newest backpack extension ([#4468](https://github.com/dynamic-labs/DynamicAuth/issues/4468)) ([a219f32](https://github.com/dynamic-labs/DynamicAuth/commit/a219f325be672599e50b07f6751234a7fc98286e))
136
+ * bump timeout for slower connections ([#4475](https://github.com/dynamic-labs/DynamicAuth/issues/4475)) ([7a07ff5](https://github.com/dynamic-labs/DynamicAuth/commit/7a07ff589eaaf3b28a94d277df3eedabbca60702))
137
+ * change out getWalletBookWallet for findWalletBookWallet to avoid throwing during lookup ([#4477](https://github.com/dynamic-labs/DynamicAuth/issues/4477)) ([4648040](https://github.com/dynamic-labs/DynamicAuth/commit/4648040c166e73dd2c31b0e27897713339436c2f))
138
+ * connect to wallet with wallet connect even if network is not supported ([#4465](https://github.com/dynamic-labs/DynamicAuth/issues/4465)) ([9dbca3e](https://github.com/dynamic-labs/DynamicAuth/commit/9dbca3eb4d4990ee4be642677c1604170b425dc3))
139
+ * pass id to wagmi chain override ([#4512](https://github.com/dynamic-labs/DynamicAuth/issues/4512)) ([2bf2f04](https://github.com/dynamic-labs/DynamicAuth/commit/2bf2f0487f5b1be936dd279107c11fe5d2b42666))
140
+ * switching wallet in extension caused connected flag to be false temporarily ([#4454](https://github.com/dynamic-labs/DynamicAuth/issues/4454)) ([3650f6e](https://github.com/dynamic-labs/DynamicAuth/commit/3650f6ec471a7c779f4d304ab94c9350dd55055b))
141
+
142
+ ## [1.1.0-alpha.14](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.13...v1.1.0-alpha.14) (2024-01-23)
143
+
144
+
145
+ ### Features
146
+
147
+ * add wallet-book retryable ([#4462](https://github.com/dynamic-labs/DynamicAuth/issues/4462)) ([513b1a6](https://github.com/dynamic-labs/DynamicAuth/commit/513b1a67d6c49624398ad4b0cdca4f5618c9583f))
148
+
149
+ ## [1.1.0-alpha.13](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.12...v1.1.0-alpha.13) (2024-01-23)
3
150
 
4
151
 
5
152
  ### Features
6
153
 
7
154
  * add createWalletClientFromWallet helper function ([#4416](https://github.com/dynamic-labs/DynamicAuth/issues/4416)) ([b384898](https://github.com/dynamic-labs/DynamicAuth/commit/b384898061bb3f9b38b2ed670b6650cfc1d4b429))
8
155
  * add hardware wallets to wallet book ([#4445](https://github.com/dynamic-labs/DynamicAuth/issues/4445)) ([66c0f5b](https://github.com/dynamic-labs/DynamicAuth/commit/66c0f5b29a6a700099bb95a6f7622f6178e0bccf))
9
- * add redirect based phantom deeplinking ([c40dfd2](https://github.com/dynamic-labs/DynamicAuth/commit/c40dfd21d0692b9d33593d564ae6879ab15547e2))
156
+ * add support for Argent Web and Mobile ([#4328](https://github.com/dynamic-labs/DynamicAuth/issues/4328)) ([bce20b8](https://github.com/dynamic-labs/DynamicAuth/commit/bce20b8f35a8630f2621f53a541a1acb06a38fc0))
157
+ * enable ledger for glow, solflare and backpack ([#4392](https://github.com/dynamic-labs/DynamicAuth/issues/4392)) ([fa7b992](https://github.com/dynamic-labs/DynamicAuth/commit/fa7b992f87ebc43560f87b43ac56f2cd9909b306))
10
158
 
11
159
 
12
160
  ### Bug Fixes
13
161
 
14
162
  * breaking changes script ([#4440](https://github.com/dynamic-labs/DynamicAuth/issues/4440)) ([446173d](https://github.com/dynamic-labs/DynamicAuth/commit/446173d074d652d81856c6412e304b46b1565320))
15
163
  * broken help icon in create passkey view ([#4428](https://github.com/dynamic-labs/DynamicAuth/issues/4428)) ([e0ffc02](https://github.com/dynamic-labs/DynamicAuth/commit/e0ffc02ffea34b7ac3198ff6e1baf7f9907acddd))
164
+ * infinite loop when connecting with trust wallet ([#4448](https://github.com/dynamic-labs/DynamicAuth/issues/4448)) ([4e20edf](https://github.com/dynamic-labs/DynamicAuth/commit/4e20edf9abaabf20e5e9f9167b44d7f691e844f1))
165
+ * render wagmi elements based on react version ([#4453](https://github.com/dynamic-labs/DynamicAuth/issues/4453)) ([43c624c](https://github.com/dynamic-labs/DynamicAuth/commit/43c624ca996b0c51de1454910f19fdf908149938))
16
166
 
17
167
  ## [1.1.0-alpha.12](https://github.com/dynamic-labs/DynamicAuth/compare/v1.1.0-alpha.11...v1.1.0-alpha.12) (2024-01-18)
18
168
 
package/README.md CHANGED
@@ -5,6 +5,10 @@
5
5
  - [Wallet Book](#wallet-book)
6
6
  - [Updating Wallet Book](#updating-wallet-book)
7
7
  - [Adding First Party Wallet](#adding-first-party-wallet)
8
+ - [Adding injected (browser extension) wallets](#adding-injected-browser-extension-wallets)
9
+ - [If you need to override any of the following functions: signMessage, fetchPublicAddress, getSigner, isInstalledOnBrowser, etc...](#if-you-need-to-override-any-of-the-following-functions-signmessage-fetchpublicaddress-getsigner-isinstalledonbrowser-etc)
10
+ - [Things to remember when adding a new wallet](#things-to-remember-when-adding-a-new-wallet)
11
+ - [**Checklist before submitting the PR**:](#checklist-before-submitting-the-pr)
8
12
  - [Updating Wallet Connect Data](#updating-wallet-connect-data)
9
13
  - [Adding overrides to WalletConnect](#adding-overrides-to-walletconnect)
10
14
  - [Compile \& Publish](#compile--publish)
@@ -117,7 +121,7 @@ Refer to `injectedConfigSchema` for the schema options
117
121
 
118
122
  ### Updating Wallet Connect Data
119
123
 
120
- - Download the data from : https://registry.walletconnect.org/data/wallets.json replace
124
+ - Download the data from : https://explorer-api.walletconnect.com/v3/wallets?projectId=XXXX replace
121
125
  - Replace packages/wallet-book/src/build/sources/walletConnect/walletconnect.json
122
126
  - [Compile & Publish](#compile--publish)
123
127
 
@@ -37,7 +37,12 @@ function __awaiter(thisArg, _arguments, P, generator) {
37
37
  function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
38
38
  step((generator = generator.apply(thisArg, _arguments || [])).next());
39
39
  });
40
- }
40
+ }
41
+
42
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
43
+ var e = new Error(message);
44
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
45
+ };
41
46
 
42
47
  exports.__awaiter = __awaiter;
43
48
  exports.__rest = __rest;
@@ -33,6 +33,11 @@ function __awaiter(thisArg, _arguments, P, generator) {
33
33
  function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
34
34
  step((generator = generator.apply(thisArg, _arguments || [])).next());
35
35
  });
36
- }
36
+ }
37
+
38
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
39
+ var e = new Error(message);
40
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
41
+ };
37
42
 
38
43
  export { __awaiter, __rest };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs/wallet-book",
3
- "version": "1.1.0-phantom.0",
3
+ "version": "1.1.1",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/dynamic-labs/DynamicAuth.git",
@@ -26,7 +26,9 @@
26
26
  },
27
27
  "dependencies": {
28
28
  "zod": "3.22.4",
29
- "@dynamic-labs/logger": "1.1.0-phantom.0"
29
+ "@dynamic-labs/logger": "1.1.1",
30
+ "@dynamic-labs/utils": "1.1.1",
31
+ "util": "0.12.5"
30
32
  },
31
33
  "peerDependencies": {
32
34
  "react": "^17.0.2 || ^18.0.0",
@@ -13,6 +13,7 @@ export declare const generateWalletFallbacks: (wallets: WalletRecordsSchema) =>
13
13
  primaryColor?: string | undefined;
14
14
  spriteId?: string | undefined;
15
15
  } | undefined;
16
+ chainGroup?: string | undefined;
16
17
  chains?: string[] | undefined;
17
18
  desktop?: {
18
19
  chromeId?: string | undefined;
@@ -56,4 +57,5 @@ export declare const generateWalletFallbacks: (wallets: WalletRecordsSchema) =>
56
57
  walletConnect?: {
57
58
  sdks?: string[] | undefined;
58
59
  } | undefined;
60
+ walletGroup?: string | undefined;
59
61
  }>;
@@ -1,4 +1,12 @@
1
1
  export declare const walletConnectSourceData: Record<string, {
2
+ id: string;
3
+ metadata: {
4
+ shortName: string | null;
5
+ colors: {
6
+ primary: string | null;
7
+ secondary: string | null;
8
+ };
9
+ };
2
10
  name: string;
3
11
  chains: string[];
4
12
  desktop: {
@@ -11,13 +19,6 @@ export declare const walletConnectSourceData: Record<string, {
11
19
  universal: string | null;
12
20
  };
13
21
  sdks: string[];
14
- metadata: {
15
- shortName: string | null;
16
- colors: {
17
- primary: string | null;
18
- secondary: string | null;
19
- };
20
- };
21
22
  app: {
22
23
  android: string | null;
23
24
  ios: string | null;
@@ -35,7 +36,6 @@ export declare const walletConnectSourceData: Record<string, {
35
36
  category: string | null;
36
37
  description: string | null;
37
38
  homepage: string;
38
- id: string;
39
39
  image_id: string;
40
40
  image_url: {
41
41
  lg: string;
@@ -50,11 +50,11 @@ export declare const walletConnectSourceData: Record<string, {
50
50
  updatedAt: string;
51
51
  versions: string[];
52
52
  supported_standards?: {
53
- title: string;
54
53
  id: string;
54
+ title: string;
55
+ url: string;
55
56
  standard_id: number;
56
57
  standard_prefix: string;
57
- url: string;
58
58
  }[] | undefined;
59
59
  }>;
60
60
  export declare const walletConnectTransformedData: Promise<Record<string, {
@@ -65,6 +65,7 @@ export declare const walletConnectTransformedData: Promise<Record<string, {
65
65
  primaryColor?: string | undefined;
66
66
  spriteId?: string | undefined;
67
67
  } | undefined;
68
+ chainGroup?: string | undefined;
68
69
  chains?: string[] | undefined;
69
70
  desktop?: {
70
71
  chromeId?: string | undefined;
@@ -108,4 +109,5 @@ export declare const walletConnectTransformedData: Promise<Record<string, {
108
109
  walletConnect?: {
109
110
  sdks?: string[] | undefined;
110
111
  } | undefined;
112
+ walletGroup?: string | undefined;
111
113
  }>>;
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _tslib = require('../../_virtual/_tslib.cjs');
6
+ var react = require('react');
7
+ var getWalletIconUrl = require('../helpers/getWalletIconUrl.cjs');
8
+ require('../helpers/logger.cjs');
9
+ var getBrandIconUrl = require('../helpers/getBrandIconUrl.cjs');
10
+
11
+ const BrandIcon = (_a) => {
12
+ var { brand, walletKey } = _a, props = _tslib.__rest(_a, ["brand", "walletKey"]);
13
+ const [imgError, setImgError] = react.useState(false);
14
+ const walletIconUrl = getBrandIconUrl.getBrandIconUrl(brand);
15
+ const defaultWalletIconUrl = getWalletIconUrl.getDefaultWalletIconUrl();
16
+ if (!walletIconUrl) {
17
+ return react.createElement(react.Fragment, {});
18
+ }
19
+ const onError = () => {
20
+ setImgError(true);
21
+ };
22
+ return react.createElement('img', Object.assign(Object.assign({ 'data-testid': `wallet-icon-${walletKey}` }, props), { alt: brand.alt, onError: onError, src: imgError ? defaultWalletIconUrl : walletIconUrl }));
23
+ };
24
+
25
+ exports.BrandIcon = BrandIcon;
@@ -0,0 +1,8 @@
1
+ import { FC, ImgHTMLAttributes } from 'react';
2
+ import { WalletBrand } from '../schemas';
3
+ type BrandIconProps = {
4
+ walletKey: string;
5
+ brand: WalletBrand;
6
+ } & ImgHTMLAttributes<HTMLImageElement>;
7
+ export declare const BrandIcon: FC<BrandIconProps>;
8
+ export {};
@@ -0,0 +1,21 @@
1
+ import { __rest } from '../../_virtual/_tslib.js';
2
+ import { useState, createElement, Fragment } from 'react';
3
+ import { getDefaultWalletIconUrl } from '../helpers/getWalletIconUrl.js';
4
+ import '../helpers/logger.js';
5
+ import { getBrandIconUrl } from '../helpers/getBrandIconUrl.js';
6
+
7
+ const BrandIcon = (_a) => {
8
+ var { brand, walletKey } = _a, props = __rest(_a, ["brand", "walletKey"]);
9
+ const [imgError, setImgError] = useState(false);
10
+ const walletIconUrl = getBrandIconUrl(brand);
11
+ const defaultWalletIconUrl = getDefaultWalletIconUrl();
12
+ if (!walletIconUrl) {
13
+ return createElement(Fragment, {});
14
+ }
15
+ const onError = () => {
16
+ setImgError(true);
17
+ };
18
+ return createElement('img', Object.assign(Object.assign({ 'data-testid': `wallet-icon-${walletKey}` }, props), { alt: brand.alt, onError: onError, src: imgError ? defaultWalletIconUrl : walletIconUrl }));
19
+ };
20
+
21
+ export { BrandIcon };
@@ -5,8 +5,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var _tslib = require('../../_virtual/_tslib.cjs');
6
6
  var react = require('react');
7
7
  var getWalletIconUrl = require('../helpers/getWalletIconUrl.cjs');
8
- var findWalletBookWallet = require('../helpers/findWalletBookWallet.cjs');
9
8
  require('../helpers/logger.cjs');
9
+ var findWalletBookWallet = require('../helpers/findWalletBookWallet.cjs');
10
+ require('@dynamic-labs/utils');
10
11
  require('../schemas/walletConnectSourceSchema.cjs');
11
12
  require('../schemas/walletBookSchema.cjs');
12
13
  require('../schemas/walletSchema.cjs');
@@ -1,8 +1,9 @@
1
1
  import { __rest } from '../../_virtual/_tslib.js';
2
2
  import { useState, createElement, Fragment } from 'react';
3
3
  import { getWalletIconUrl, getDefaultWalletIconUrl } from '../helpers/getWalletIconUrl.js';
4
- import { findWalletBookWallet } from '../helpers/findWalletBookWallet.js';
5
4
  import '../helpers/logger.js';
5
+ import { findWalletBookWallet } from '../helpers/findWalletBookWallet.js';
6
+ import '@dynamic-labs/utils';
6
7
  import '../schemas/walletConnectSourceSchema.js';
7
8
  import '../schemas/walletBookSchema.js';
8
9
  import '../schemas/walletSchema.js';
@@ -1,2 +1,3 @@
1
1
  export * from './WalletIcon';
2
2
  export * from './WalletBookContext';
3
+ export * from './BrandIcon';
@@ -3,7 +3,6 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var getWalletBookWallet = require('./getWalletBookWallet.cjs');
6
- var logger = require('./logger.cjs');
7
6
 
8
7
  const findWalletBookWallet = (walletBook, walletKey) => {
9
8
  try {
@@ -11,7 +10,6 @@ const findWalletBookWallet = (walletBook, walletKey) => {
11
10
  return walletData;
12
11
  }
13
12
  catch (err) {
14
- logger.logger.warn(err);
15
13
  return undefined;
16
14
  }
17
15
  };
@@ -7,6 +7,7 @@ export declare const findWalletBookWallet: (walletBook: WalletBookSchema, wallet
7
7
  primaryColor?: string | undefined;
8
8
  spriteId?: string | undefined;
9
9
  } | undefined;
10
+ chainGroup?: string | undefined;
10
11
  chains?: string[] | undefined;
11
12
  desktop?: {
12
13
  chromeId?: string | undefined;
@@ -50,4 +51,5 @@ export declare const findWalletBookWallet: (walletBook: WalletBookSchema, wallet
50
51
  walletConnect?: {
51
52
  sdks?: string[] | undefined;
52
53
  } | undefined;
54
+ walletGroup?: string | undefined;
53
55
  } | undefined;
@@ -1,5 +1,4 @@
1
1
  import { getWalletBookWallet } from './getWalletBookWallet.js';
2
- import { logger } from './logger.js';
3
2
 
4
3
  const findWalletBookWallet = (walletBook, walletKey) => {
5
4
  try {
@@ -7,7 +6,6 @@ const findWalletBookWallet = (walletBook, walletKey) => {
7
6
  return walletData;
8
7
  }
9
8
  catch (err) {
10
- logger.warn(err);
11
9
  return undefined;
12
10
  }
13
11
  };
@@ -8,4 +8,13 @@ export declare const findWalletGroup: (walletBook: WalletBookSchema, walletGroup
8
8
  primaryColor?: string | undefined;
9
9
  spriteId?: string | undefined;
10
10
  } | undefined;
11
+ walletOverrides?: Record<string, {
12
+ brand?: {
13
+ alt?: string | undefined;
14
+ imageId?: string | undefined;
15
+ primaryColor?: string | undefined;
16
+ spriteId?: string | undefined;
17
+ } | undefined;
18
+ name?: string | undefined;
19
+ }> | undefined;
11
20
  } | undefined;
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var findWalletGroup = require('./findWalletGroup.cjs');
6
+
7
+ const findWalletGroupOverride = (walletBook, groupKey, walletKey) => {
8
+ var _a;
9
+ const group = findWalletGroup.findWalletGroup(walletBook, groupKey);
10
+ return (_a = group === null || group === void 0 ? void 0 : group.walletOverrides) === null || _a === void 0 ? void 0 : _a[walletKey];
11
+ };
12
+
13
+ exports.findWalletGroupOverride = findWalletGroupOverride;
@@ -0,0 +1,3 @@
1
+ import { WalletBookSchema } from '../schemas';
2
+ import { WalletGroupOverride } from '../schemas/walletGroup';
3
+ export declare const findWalletGroupOverride: (walletBook: WalletBookSchema, groupKey: string, walletKey: string) => WalletGroupOverride | undefined;
@@ -0,0 +1,9 @@
1
+ import { findWalletGroup } from './findWalletGroup.js';
2
+
3
+ const findWalletGroupOverride = (walletBook, groupKey, walletKey) => {
4
+ var _a;
5
+ const group = findWalletGroup(walletBook, groupKey);
6
+ return (_a = group === null || group === void 0 ? void 0 : group.walletOverrides) === null || _a === void 0 ? void 0 : _a[walletKey];
7
+ };
8
+
9
+ export { findWalletGroupOverride };
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var renderTemplate = require('./renderTemplate.cjs');
6
+
7
+ const getBrandIconUrl = (brand) => {
8
+ if (brand.spriteId) {
9
+ return renderTemplate.renderTemplate('iconicUrl', brand.spriteId);
10
+ }
11
+ if (brand.imageId) {
12
+ return renderTemplate.renderTemplate('walletConnectUrl', brand.imageId);
13
+ }
14
+ return '';
15
+ };
16
+
17
+ exports.getBrandIconUrl = getBrandIconUrl;
@@ -0,0 +1,2 @@
1
+ import { WalletBrand } from '../schemas';
2
+ export declare const getBrandIconUrl: (brand: WalletBrand) => string | undefined;
@@ -0,0 +1,13 @@
1
+ import { renderTemplate } from './renderTemplate.js';
2
+
3
+ const getBrandIconUrl = (brand) => {
4
+ if (brand.spriteId) {
5
+ return renderTemplate('iconicUrl', brand.spriteId);
6
+ }
7
+ if (brand.imageId) {
8
+ return renderTemplate('walletConnectUrl', brand.imageId);
9
+ }
10
+ return '';
11
+ };
12
+
13
+ export { getBrandIconUrl };
@@ -2,13 +2,25 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var normalizeWalletName = require('./normalizeWalletName.cjs');
6
+ var logger = require('./logger.cjs');
7
+
5
8
  const getWalletBookWallet = (walletBook, walletKey) => {
6
- var _a, _b;
7
- const walletKeyOrDefault = walletKey !== null && walletKey !== void 0 ? walletKey : 'undefined-wallet-key';
8
- const walletData = (_a = walletBook === null || walletBook === void 0 ? void 0 : walletBook.wallets) === null || _a === void 0 ? void 0 : _a[walletKeyOrDefault];
9
- if (!walletData)
10
- throw new Error(`Wallet ${walletKeyOrDefault} not found in wallet book (${Object.keys((_b = walletBook === null || walletBook === void 0 ? void 0 : walletBook.wallets) !== null && _b !== void 0 ? _b : {}).length} wallets found)`);
11
- return walletData;
9
+ var _a, _b, _c;
10
+ if (!walletKey)
11
+ throw new Error('Wallet key is required. Please pass in a wallet key to getWalletBookWallet');
12
+ const walletDataFromKeyLookup = (_a = walletBook === null || walletBook === void 0 ? void 0 : walletBook.wallets) === null || _a === void 0 ? void 0 : _a[walletKey];
13
+ if (!walletDataFromKeyLookup) {
14
+ // adds fallback support. normalizeWalletName will be removed in v2
15
+ const normalizedWalletKey = normalizeWalletName.normalizeWalletName(walletKey);
16
+ const walletDataFromNormalizedKeyLookup = (_b = walletBook === null || walletBook === void 0 ? void 0 : walletBook.wallets) === null || _b === void 0 ? void 0 : _b[normalizedWalletKey];
17
+ if (walletDataFromNormalizedKeyLookup) {
18
+ logger.logger.warn(`deprecated: using walletName: ${walletKey} to look up wallet data is deprecated. use connector.key instead ${normalizedWalletKey}`);
19
+ return walletDataFromNormalizedKeyLookup;
20
+ }
21
+ throw new Error(`Wallet ${normalizedWalletKey} not found in wallet book (${Object.keys((_c = walletBook === null || walletBook === void 0 ? void 0 : walletBook.wallets) !== null && _c !== void 0 ? _c : {}).length} wallets found)`);
22
+ }
23
+ return walletDataFromKeyLookup;
12
24
  };
13
25
 
14
26
  exports.getWalletBookWallet = getWalletBookWallet;
@@ -1,10 +1,22 @@
1
+ import { normalizeWalletName } from './normalizeWalletName.js';
2
+ import { logger } from './logger.js';
3
+
1
4
  const getWalletBookWallet = (walletBook, walletKey) => {
2
- var _a, _b;
3
- const walletKeyOrDefault = walletKey !== null && walletKey !== void 0 ? walletKey : 'undefined-wallet-key';
4
- const walletData = (_a = walletBook === null || walletBook === void 0 ? void 0 : walletBook.wallets) === null || _a === void 0 ? void 0 : _a[walletKeyOrDefault];
5
- if (!walletData)
6
- throw new Error(`Wallet ${walletKeyOrDefault} not found in wallet book (${Object.keys((_b = walletBook === null || walletBook === void 0 ? void 0 : walletBook.wallets) !== null && _b !== void 0 ? _b : {}).length} wallets found)`);
7
- return walletData;
5
+ var _a, _b, _c;
6
+ if (!walletKey)
7
+ throw new Error('Wallet key is required. Please pass in a wallet key to getWalletBookWallet');
8
+ const walletDataFromKeyLookup = (_a = walletBook === null || walletBook === void 0 ? void 0 : walletBook.wallets) === null || _a === void 0 ? void 0 : _a[walletKey];
9
+ if (!walletDataFromKeyLookup) {
10
+ // adds fallback support. normalizeWalletName will be removed in v2
11
+ const normalizedWalletKey = normalizeWalletName(walletKey);
12
+ const walletDataFromNormalizedKeyLookup = (_b = walletBook === null || walletBook === void 0 ? void 0 : walletBook.wallets) === null || _b === void 0 ? void 0 : _b[normalizedWalletKey];
13
+ if (walletDataFromNormalizedKeyLookup) {
14
+ logger.warn(`deprecated: using walletName: ${walletKey} to look up wallet data is deprecated. use connector.key instead ${normalizedWalletKey}`);
15
+ return walletDataFromNormalizedKeyLookup;
16
+ }
17
+ throw new Error(`Wallet ${normalizedWalletKey} not found in wallet book (${Object.keys((_c = walletBook === null || walletBook === void 0 ? void 0 : walletBook.wallets) !== null && _c !== void 0 ? _c : {}).length} wallets found)`);
18
+ }
19
+ return walletDataFromKeyLookup;
8
20
  };
9
21
 
10
22
  export { getWalletBookWallet };
@@ -3,18 +3,15 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var getWalletBookWallet = require('./getWalletBookWallet.cjs');
6
+ var getBrandIconUrl = require('./getBrandIconUrl.cjs');
6
7
  var logger = require('./logger.cjs');
7
8
  var renderTemplate = require('./renderTemplate.cjs');
8
9
 
9
10
  const getWalletIconUrl = (walletBook, walletKey) => {
10
- var _a, _b;
11
11
  try {
12
12
  const walletData = getWalletBookWallet.getWalletBookWallet(walletBook, walletKey);
13
- if ((_a = walletData === null || walletData === void 0 ? void 0 : walletData.brand) === null || _a === void 0 ? void 0 : _a.spriteId) {
14
- return renderTemplate.renderTemplate('iconicUrl', walletData.brand.spriteId);
15
- }
16
- if ((_b = walletData === null || walletData === void 0 ? void 0 : walletData.brand) === null || _b === void 0 ? void 0 : _b.imageId) {
17
- return renderTemplate.renderTemplate('walletConnectUrl', walletData.brand.imageId);
13
+ if (walletData === null || walletData === void 0 ? void 0 : walletData.brand) {
14
+ return getBrandIconUrl.getBrandIconUrl(walletData.brand);
18
15
  }
19
16
  }
20
17
  catch (err) {