0xtrails 0.2.2 → 0.2.5

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 (194) hide show
  1. package/dist/aave.d.ts +8 -0
  2. package/dist/aave.d.ts.map +1 -1
  3. package/dist/{ccip-ConT1gDe.js → ccip-CXlshvBY.js} +1 -1
  4. package/dist/chains.d.ts +5 -1
  5. package/dist/chains.d.ts.map +1 -1
  6. package/dist/config.d.ts +1 -1
  7. package/dist/config.d.ts.map +1 -1
  8. package/dist/constants.d.ts +5 -4
  9. package/dist/constants.d.ts.map +1 -1
  10. package/dist/error.d.ts +1 -0
  11. package/dist/error.d.ts.map +1 -1
  12. package/dist/estimate.d.ts +52 -0
  13. package/dist/estimate.d.ts.map +1 -1
  14. package/dist/{index-CMh8uEbV.js → index-_QuyGrjU.js} +86304 -83380
  15. package/dist/index.d.ts +4 -3
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +2 -2
  18. package/dist/intentEntrypoint.d.ts +0 -8
  19. package/dist/intentEntrypoint.d.ts.map +1 -1
  20. package/dist/intents.d.ts +40 -0
  21. package/dist/intents.d.ts.map +1 -1
  22. package/dist/metaTxnMonitor.d.ts +5 -4
  23. package/dist/metaTxnMonitor.d.ts.map +1 -1
  24. package/dist/metaTxns.d.ts +3 -3
  25. package/dist/metaTxns.d.ts.map +1 -1
  26. package/dist/morpho.d.ts +8 -0
  27. package/dist/morpho.d.ts.map +1 -1
  28. package/dist/prepareSend.d.ts +16 -6
  29. package/dist/prepareSend.d.ts.map +1 -1
  30. package/dist/queryParams.d.ts.map +1 -1
  31. package/dist/relayer.d.ts +10 -7
  32. package/dist/relayer.d.ts.map +1 -1
  33. package/dist/sequenceWallet.d.ts +3 -2
  34. package/dist/sequenceWallet.d.ts.map +1 -1
  35. package/dist/tokenBalances.d.ts +7 -0
  36. package/dist/tokenBalances.d.ts.map +1 -1
  37. package/dist/tokens.d.ts +2 -1
  38. package/dist/tokens.d.ts.map +1 -1
  39. package/dist/trails.d.ts +2 -2
  40. package/dist/trails.d.ts.map +1 -1
  41. package/dist/wallets.d.ts.map +1 -1
  42. package/dist/widget/components/AccountActionsDropdown.d.ts.map +1 -1
  43. package/dist/widget/components/AccountSettings.d.ts.map +1 -1
  44. package/dist/widget/components/ClassicSwap.d.ts +2 -0
  45. package/dist/widget/components/ClassicSwap.d.ts.map +1 -1
  46. package/dist/widget/components/ConnectWallet.d.ts.map +1 -1
  47. package/dist/widget/components/ConnectedWallets.d.ts +4 -0
  48. package/dist/widget/components/ConnectedWallets.d.ts.map +1 -1
  49. package/dist/widget/components/Earn.d.ts.map +1 -1
  50. package/dist/widget/components/EarnPools.d.ts.map +1 -1
  51. package/dist/widget/components/Fund.d.ts +1 -0
  52. package/dist/widget/components/Fund.d.ts.map +1 -1
  53. package/dist/widget/components/FundMethods.d.ts.map +1 -1
  54. package/dist/widget/components/{FundSendForm.d.ts → FundSwap.d.ts} +11 -5
  55. package/dist/widget/components/FundSwap.d.ts.map +1 -0
  56. package/dist/widget/components/FundingMethodSelectorButton.d.ts +4 -0
  57. package/dist/widget/components/FundingMethodSelectorButton.d.ts.map +1 -0
  58. package/dist/widget/components/Modal.d.ts.map +1 -1
  59. package/dist/widget/components/Pay.d.ts +1 -0
  60. package/dist/widget/components/Pay.d.ts.map +1 -1
  61. package/dist/widget/components/PercentageMaxButtons.d.ts +12 -0
  62. package/dist/widget/components/PercentageMaxButtons.d.ts.map +1 -0
  63. package/dist/widget/components/{PaySendForm.d.ts → PoolDeposit.d.ts} +11 -34
  64. package/dist/widget/components/PoolDeposit.d.ts.map +1 -0
  65. package/dist/widget/components/{SimpleSwap.d.ts → PoolWithdraw.d.ts} +16 -8
  66. package/dist/widget/components/PoolWithdraw.d.ts.map +1 -0
  67. package/dist/widget/components/QuoteDetails.d.ts.map +1 -1
  68. package/dist/widget/components/Receive.d.ts.map +1 -1
  69. package/dist/widget/components/RecipientSelectorButton.d.ts +4 -0
  70. package/dist/widget/components/RecipientSelectorButton.d.ts.map +1 -0
  71. package/dist/widget/components/Recipients.d.ts.map +1 -1
  72. package/dist/widget/components/RefundWarning.d.ts +1 -0
  73. package/dist/widget/components/RefundWarning.d.ts.map +1 -1
  74. package/dist/widget/components/RequiredPropsError.d.ts +8 -0
  75. package/dist/widget/components/RequiredPropsError.d.ts.map +1 -0
  76. package/dist/widget/components/ScreenHeader.d.ts.map +1 -1
  77. package/dist/widget/components/SlippageToleranceSettings.d.ts.map +1 -1
  78. package/dist/widget/components/Swap.d.ts +1 -0
  79. package/dist/widget/components/Swap.d.ts.map +1 -1
  80. package/dist/widget/components/SwapSettings.d.ts.map +1 -1
  81. package/dist/widget/components/TokenImage.d.ts +1 -0
  82. package/dist/widget/components/TokenImage.d.ts.map +1 -1
  83. package/dist/widget/components/TokenList.d.ts.map +1 -1
  84. package/dist/widget/components/TokenSelector.d.ts.map +1 -1
  85. package/dist/widget/components/TokenSelectorButton.d.ts +16 -0
  86. package/dist/widget/components/TokenSelectorButton.d.ts.map +1 -0
  87. package/dist/widget/components/UserPreferences.d.ts.map +1 -1
  88. package/dist/widget/components/WaasFeeOptions.d.ts +8 -0
  89. package/dist/widget/components/WaasFeeOptions.d.ts.map +1 -0
  90. package/dist/widget/components/WalletConfirmation.d.ts.map +1 -1
  91. package/dist/widget/components/WalletList.d.ts.map +1 -1
  92. package/dist/widget/css/compiled.css +2 -0
  93. package/dist/widget/css/index.css +554 -0
  94. package/dist/widget/hooks/useBack.d.ts +6 -0
  95. package/dist/widget/hooks/useBack.d.ts.map +1 -1
  96. package/dist/widget/hooks/useCheckout.d.ts +1 -1
  97. package/dist/widget/hooks/useCheckout.d.ts.map +1 -1
  98. package/dist/widget/hooks/useCurrentScreen.d.ts +1 -1
  99. package/dist/widget/hooks/useCurrentScreen.d.ts.map +1 -1
  100. package/dist/widget/hooks/useDefaultTokenSelection.d.ts +3 -3
  101. package/dist/widget/hooks/useDefaultTokenSelection.d.ts.map +1 -1
  102. package/dist/widget/hooks/useInitialRedirect.d.ts +7 -0
  103. package/dist/widget/hooks/useInitialRedirect.d.ts.map +1 -0
  104. package/dist/widget/hooks/usePayMessage.d.ts.map +1 -1
  105. package/dist/widget/hooks/useSelectedFeeToken.d.ts.map +1 -1
  106. package/dist/widget/hooks/useSelectedFundMethod.d.ts +12 -0
  107. package/dist/widget/hooks/useSelectedFundMethod.d.ts.map +1 -0
  108. package/dist/widget/hooks/useSelectedRecipient.d.ts.map +1 -1
  109. package/dist/widget/hooks/useSendForm.d.ts.map +1 -1
  110. package/dist/widget/index.js +1 -1
  111. package/dist/widget/widget.d.ts +4 -4
  112. package/dist/widget/widget.d.ts.map +1 -1
  113. package/package.json +30 -23
  114. package/src/aave.ts +32 -0
  115. package/src/chains.ts +23 -3
  116. package/src/config.ts +12 -4
  117. package/src/constants.ts +11 -16
  118. package/src/error.ts +20 -2
  119. package/src/estimate.ts +416 -5
  120. package/src/index.ts +8 -3
  121. package/src/intentEntrypoint.ts +0 -15
  122. package/src/intents.ts +161 -11
  123. package/src/metaTxnMonitor.ts +28 -22
  124. package/src/metaTxns.ts +3 -3
  125. package/src/morpho.ts +32 -0
  126. package/src/prepareSend.ts +710 -458
  127. package/src/queryParams.ts +2 -1
  128. package/src/relayer.ts +15 -16
  129. package/src/sequenceWallet.ts +7 -3
  130. package/src/tokenBalances.ts +47 -0
  131. package/src/tokens.ts +17 -1
  132. package/src/trails.ts +2 -2
  133. package/src/wallets.ts +8 -0
  134. package/src/widget/compiled.css +2 -2
  135. package/src/widget/components/AccountActionsDropdown.tsx +9 -15
  136. package/src/widget/components/AccountIntentTransactionHistory.tsx +1 -1
  137. package/src/widget/components/AccountSettings.tsx +10 -27
  138. package/src/widget/components/ChainFilterDropdown.tsx +1 -1
  139. package/src/widget/components/ChainList.tsx +1 -1
  140. package/src/widget/components/ClassicSwap.tsx +111 -155
  141. package/src/widget/components/ConnectWallet.tsx +10 -39
  142. package/src/widget/components/ConnectedWallets.tsx +113 -58
  143. package/src/widget/components/Earn.tsx +73 -589
  144. package/src/widget/components/EarnPools.tsx +2 -1
  145. package/src/widget/components/Fund.tsx +81 -109
  146. package/src/widget/components/FundMethods.tsx +82 -159
  147. package/src/widget/components/FundSwap.tsx +52 -0
  148. package/src/widget/components/FundingMethodSelectorButton.tsx +60 -0
  149. package/src/widget/components/Modal.tsx +6 -2
  150. package/src/widget/components/Pay.tsx +198 -200
  151. package/src/widget/components/PercentageMaxButtons.tsx +77 -0
  152. package/src/widget/components/PoolDeposit.tsx +593 -0
  153. package/src/widget/components/PoolWithdraw.tsx +903 -0
  154. package/src/widget/components/QuoteDetails.tsx +22 -8
  155. package/src/widget/components/Receive.tsx +1 -3
  156. package/src/widget/components/RecipientSelectorButton.tsx +42 -0
  157. package/src/widget/components/Recipients.tsx +64 -156
  158. package/src/widget/components/RefundWarning.tsx +5 -1
  159. package/src/widget/components/RequiredPropsError.tsx +33 -0
  160. package/src/widget/components/ScreenHeader.tsx +5 -1
  161. package/src/widget/components/SlippageToleranceSettings.tsx +2 -1
  162. package/src/widget/components/Swap.tsx +2 -43
  163. package/src/widget/components/SwapSettings.tsx +3 -15
  164. package/src/widget/components/TokenImage.tsx +21 -4
  165. package/src/widget/components/TokenList.tsx +0 -1
  166. package/src/widget/components/TokenSelector.tsx +2 -1
  167. package/src/widget/components/TokenSelectorButton.tsx +75 -0
  168. package/src/widget/components/UserPreferences.tsx +6 -24
  169. package/src/widget/components/WaasFeeOptions.tsx +331 -0
  170. package/src/widget/components/WalletConfirmation.tsx +55 -3
  171. package/src/widget/components/WalletList.tsx +7 -5
  172. package/src/widget/hooks/useBack.tsx +113 -9
  173. package/src/widget/hooks/useCheckout.ts +36 -20
  174. package/src/widget/hooks/useCurrentScreen.tsx +1 -0
  175. package/src/widget/hooks/useDefaultTokenSelection.tsx +104 -28
  176. package/src/widget/hooks/useInitialRedirect.tsx +70 -0
  177. package/src/widget/hooks/usePayMessage.tsx +86 -11
  178. package/src/widget/hooks/useSelectedFeeToken.tsx +10 -16
  179. package/src/widget/hooks/useSelectedFundMethod.tsx +41 -0
  180. package/src/widget/hooks/useSelectedRecipient.tsx +10 -0
  181. package/src/widget/hooks/useSendForm.ts +34 -12
  182. package/src/widget/hooks/useTokenList.ts +1 -1
  183. package/src/widget/index.css +27 -0
  184. package/src/widget/widget.tsx +245 -208
  185. package/dist/widget/components/FundSendForm.d.ts.map +0 -1
  186. package/dist/widget/components/PaySendForm.d.ts.map +0 -1
  187. package/dist/widget/components/SimpleSwap.d.ts.map +0 -1
  188. package/dist/widget/hooks/useSwapSettings.d.ts +0 -16
  189. package/dist/widget/hooks/useSwapSettings.d.ts.map +0 -1
  190. package/src/widget/components/FundSendForm.tsx +0 -903
  191. package/src/widget/components/PaySendForm.tsx +0 -869
  192. package/src/widget/components/SimpleSwap.tsx +0 -983
  193. package/src/widget/hooks/useSwapSettings.tsx +0 -100
  194. /package/dist/{style.css → 0xtrails.css} +0 -0
@@ -0,0 +1,554 @@
1
+ @config "../../tailwind.config.ts";
2
+ @import "@0xsequence/design-system/preset";
3
+ @import "tailwindcss";
4
+ @tailwind base;
5
+ @tailwind components;
6
+ @tailwind utilities;
7
+
8
+
9
+ *:focus {
10
+ outline: none;
11
+ }
12
+
13
+ /* Trails Widget Theme Variables - Easy to customize */
14
+ :root {
15
+ /* Font Family - Customizable font for the entire widget */
16
+ --trails-font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
17
+
18
+ /* Border Radius - Customizable border radius for the widget */
19
+ --trails-border-radius-widget: 32px; /* Main widget container border radius */
20
+ --trails-border-radius-button: 32px; /* Primary buttons border radius */
21
+ --trails-border-radius-input: 32px; /* Input fields border radius */
22
+ --trails-border-radius-dropdown: 32px; /* Dropdown border radius now matches input and button */
23
+ --trails-border-radius-container: 8px; /* Container elements border radius (balance cards, etc.) */
24
+ --trails-border-radius-list: 8px; /* Token list border radius */
25
+ --trails-border-radius-list-button: 12px; /* List item buttons border radius */
26
+ --trails-border-radius-large-button: 16px; /* Large buttons border radius */
27
+
28
+ /* Widget Border - Customizable widget border */
29
+ --trails-widget-border: 1px solid rgb(229 231 235); /* Default widget border */
30
+
31
+ /* Primary Colors - These apply to both themes */
32
+ --trails-primary: rgb(21 93 252); /* #155DFC - Change this to customize */
33
+ --trails-primary-hover: rgb(17 75 202); /* Darker shade of #155DFC - Change this for hover state */
34
+ --trails-primary-disabled: rgb(212 212 216); /* #D4D4D8 - Disabled state */
35
+ --trails-primary-disabled-text: rgb(107 114 128); /* gray-500 - Disabled text */
36
+
37
+ /* Modal Button Colors - Customizable modal trigger button */
38
+ --trails-modal-button-bg: var(--trails-primary, rgb(21 93 252)); /* Defaults to primary color */
39
+ --trails-modal-button-hover-bg: var(--trails-primary-hover, rgb(17 75 202)); /* Defaults to primary hover */
40
+ --trails-modal-button-text: rgb(255 255 255); /* white text */
41
+ --trails-modal-button-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); /* subtle shadow */
42
+
43
+ /* Percentage Button Colors - Customizable percentage buttons */
44
+ --trails-percentage-button-bg: rgb(228 228 231); /* #E4E4E7 - Light gray background */
45
+ --trails-percentage-button-text: rgb(113 113 123); /* #71717B - Dark gray text */
46
+ --trails-percentage-button-hover-bg: rgb(212 212 216); /* #D4D4D8 - Slightly darker on hover */
47
+ }
48
+
49
+ /* Utility Classes that use CSS Variables */
50
+ .trails-bg-primary {
51
+ background-color: var(--trails-bg-primary);
52
+ }
53
+
54
+ .trails-bg-secondary {
55
+ background-color: var(--trails-bg-secondary);
56
+ }
57
+
58
+ .trails-bg-secondary-hover:hover {
59
+ background-color: var(--trails-bg-secondary-hover);
60
+ }
61
+
62
+ .trails-focus-border-secondary:focus-within {
63
+ border-color: var(--trails-bg-secondary-focus-border);
64
+ }
65
+
66
+ .trails-bg-tertiary {
67
+ background-color: var(--trails-bg-tertiary);
68
+ }
69
+
70
+ .trails-bg-card {
71
+ background-color: var(--trails-bg-card);
72
+ }
73
+
74
+ .trails-bg-overlay {
75
+ background-color: var(--trails-bg-overlay);
76
+ }
77
+
78
+ .trails-text-primary {
79
+ color: var(--trails-text-primary);
80
+ }
81
+
82
+ .trails-text-secondary {
83
+ color: var(--trails-text-secondary);
84
+ }
85
+
86
+ .trails-text-tertiary {
87
+ color: var(--trails-text-tertiary);
88
+ }
89
+
90
+ .trails-text-muted {
91
+ color: var(--trails-text-muted);
92
+ }
93
+
94
+ .trails-text-inverse {
95
+ color: var(--trails-text-inverse);
96
+ }
97
+
98
+ .trails-border-primary {
99
+ border-color: var(--trails-border-primary);
100
+ }
101
+
102
+ .trails-border-secondary {
103
+ border-color: var(--trails-border-secondary);
104
+ }
105
+
106
+ .trails-border-tertiary {
107
+ border-color: var(--trails-border-tertiary);
108
+ }
109
+
110
+ .trails-hover-bg:hover {
111
+ background-color: var(--trails-hover-bg);
112
+ }
113
+
114
+ .trails-hover-text:hover {
115
+ color: var(--trails-hover-text);
116
+ }
117
+
118
+ .trails-bg-percentage-button {
119
+ background-color: var(--trails-percentage-button-bg);
120
+ }
121
+
122
+ .trails-text-percentage-button {
123
+ color: var(--trails-percentage-button-text);
124
+ }
125
+
126
+ .trails-hover-percentage-button:hover {
127
+ background-color: var(--trails-percentage-button-hover-bg);
128
+ }
129
+
130
+
131
+
132
+ /* Font Family Utility Class */
133
+ .trails-font {
134
+ font-family: var(--trails-font-family);
135
+ }
136
+
137
+ /* Border Radius Utility Classes */
138
+ .trails-border-radius-widget {
139
+ border-radius: var(--trails-border-radius-widget);
140
+ }
141
+
142
+ .trails-border-radius-button {
143
+ border-radius: var(--trails-border-radius-button);
144
+ }
145
+
146
+ .trails-border-radius-input {
147
+ border-radius: var(--trails-border-radius-input);
148
+ }
149
+
150
+ .trails-border-radius-dropdown {
151
+ border-radius: var(--trails-border-radius-dropdown);
152
+ }
153
+
154
+ .trails-border-radius-list {
155
+ border-radius: var(--trails-border-radius-list);
156
+ }
157
+
158
+ .trails-border-radius-list-button {
159
+ border-radius: var(--trails-border-radius-list-button);
160
+ }
161
+
162
+ .trails-border-radius-large-button {
163
+ border-radius: var(--trails-border-radius-large-button);
164
+ }
165
+
166
+ .trails-border-radius-container {
167
+ border-radius: var(--trails-border-radius-container);
168
+ }
169
+
170
+ .trails-widget-border {
171
+ border: var(--trails-widget-border);
172
+ }
173
+
174
+ /* Input Field Utility Classes */
175
+ .trails-input {
176
+ background-color: var(--trails-input-bg);
177
+ border-color: var(--trails-input-border);
178
+ color: var(--trails-input-text);
179
+ border-radius: var(--trails-border-radius-input);
180
+ }
181
+
182
+ .trails-input::placeholder {
183
+ color: var(--trails-input-placeholder);
184
+ }
185
+
186
+ .trails-input:focus {
187
+ border-color: var(--trails-input-focus-border);
188
+ --tw-ring-color: var(--trails-input-focus-border);
189
+ }
190
+
191
+ /* Dropdown Utility Classes */
192
+ .trails-dropdown {
193
+ background-color: var(--trails-dropdown-bg);
194
+ border-color: var(--trails-dropdown-border);
195
+ color: var(--trails-dropdown-text);
196
+ border-radius: var(--trails-border-radius-dropdown);
197
+ }
198
+
199
+ .trails-dropdown:focus {
200
+ border-color: var(--trails-dropdown-focus-border, var(--trails-dropdown-border));
201
+ --tw-ring-color: var(--trails-dropdown-focus-border, var(--trails-dropdown-border));
202
+ }
203
+
204
+ .trails-dropdown-item {
205
+ color: var(--trails-dropdown-text);
206
+ }
207
+
208
+ .trails-dropdown-item:hover {
209
+ background-color: var(--trails-dropdown-hover-bg);
210
+ }
211
+
212
+ .trails-list-item {
213
+ background-color: var(--trails-list-item-bg);
214
+ }
215
+
216
+ .trails-list-item:hover {
217
+ background-color: var(--trails-list-hover-bg);
218
+ }
219
+
220
+ .trails-list-item-selected {
221
+ background-color: var(--trails-list-item-selected-bg);
222
+ }
223
+
224
+ /* Token List Utility Classes */
225
+ .trails-list {
226
+ background-color: var(--trails-list-bg);
227
+ border: 1px solid var(--trails-list-border);
228
+ }
229
+
230
+ .trails-border-list {
231
+ border-color: var(--trails-list-border);
232
+ }
233
+
234
+ .trails-dropdown-item-selected {
235
+ background-color: var(--trails-dropdown-selected-bg);
236
+ color: var(--trails-dropdown-selected-text);
237
+ }
238
+
239
+ /* Light Mode Theme Variables */
240
+ [data-theme="light"] {
241
+ /* Background Colors */
242
+ --trails-bg-primary: rgb(255 255 255); /* white */
243
+ --trails-bg-secondary: rgb(244 244 245); /* #F4F4F5 */
244
+ --trails-bg-secondary-hover: rgb(228 228 231); /* #E4E4E7 */
245
+ --trails-bg-secondary-focus-border: rgb(244 244 245); /* #F4F4F5 - same as secondary bg */
246
+ --trails-bg-tertiary: rgb(243 244 246); /* gray-100 */
247
+ --trails-bg-card: rgb(255 255 255); /* white */
248
+ --trails-bg-overlay: rgb(255 255 255); /* white */
249
+
250
+ /* Text Colors */
251
+ --trails-text-primary: rgb(17 24 39); /* gray-900 */
252
+ --trails-text-secondary: rgb(75 85 99); /* gray-600 */
253
+ --trails-text-tertiary: rgb(107 114 128); /* gray-500 */
254
+ --trails-text-muted: rgb(156 163 175); /* gray-400 */
255
+ --trails-text-inverse: rgb(255 255 255); /* white */
256
+
257
+ /* Border Colors */
258
+ --trails-border-primary: rgb(229 231 235); /* gray-200 */
259
+ --trails-border-secondary: rgb(209 213 219); /* gray-300 */
260
+ --trails-border-tertiary: rgb(243 244 246); /* gray-100 */
261
+
262
+ /* Interactive Colors */
263
+ --trails-hover-bg: rgb(243 244 246); /* gray-100 - darker than gray-50 */
264
+ --trails-hover-text: rgb(17 24 39); /* gray-900 */
265
+
266
+ /* Input Field Colors */
267
+ --trails-input-bg: rgb(255 255 255); /* white */
268
+ --trails-input-border: rgb(209 213 219); /* gray-300 */
269
+ --trails-input-text: rgb(17 24 39); /* gray-900 */
270
+ --trails-input-placeholder: rgb(156 163 175); /* gray-400 */
271
+ --trails-input-focus-border: rgb(21 93 252); /* #155DFC */
272
+
273
+ /* Dropdown Colors */
274
+ --trails-dropdown-bg: rgb(255 255 255); /* white */
275
+ --trails-dropdown-border: rgb(229 231 235); /* gray-200 */
276
+ --trails-dropdown-text: rgb(17 24 39); /* gray-900 */
277
+ --trails-dropdown-hover-bg: rgb(249 250 251); /* gray-50 */
278
+ --trails-dropdown-selected-bg: rgb(243 244 246); /* gray-100 */
279
+ --trails-dropdown-selected-text: rgb(17 24 39); /* gray-900 */
280
+ --trails-dropdown-focus-border: rgb(21 93 252); /* #155DFC - matches input focus border */
281
+
282
+ /* Modal Button Colors - Light Mode */
283
+ --trails-modal-button-bg: var(--trails-primary, rgb(21 93 252)); /* #155DFC for light mode */
284
+ --trails-modal-button-hover-bg: var(--trails-primary-hover, rgb(17 75 202)); /* Darker shade of #155DFC for light mode */
285
+ --trails-modal-button-text: rgb(255 255 255); /* white text */
286
+ --trails-modal-button-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); /* subtle shadow for light mode */
287
+
288
+ /* Token List Colors */
289
+ --trails-list-bg: rgb(255 255 255); /* white background for token list */
290
+ --trails-list-border: rgb(229 231 235); /* gray-200 border */
291
+ --trails-list-hover-bg: rgb(250 250 250); /* #FAFAFA hover */
292
+ --trails-list-item-bg: transparent; /* transparent background for list items */
293
+ --trails-list-item-selected-bg: rgb(239 246 255); /* #EFF6FF selected */
294
+
295
+ /* Widget Border - Customizable widget border */
296
+ --trails-widget-border: none; /* Default widget border */
297
+
298
+ /* Border Radius - Customizable border radius for the widget */
299
+ --trails-border-radius-widget: 24px; /* Main widget container border radius */
300
+ --trails-border-radius-button: 32px; /* Primary buttons border radius */
301
+ --trails-border-radius-input: 32px; /* Input fields border radius */
302
+ --trails-border-radius-dropdown: 32px; /* Dropdown border radius */
303
+ --trails-border-radius-container: 8px; /* Container elements border radius (balance cards, etc.) */
304
+ --trails-border-radius-list: 8px; /* Token list border radius */
305
+ --trails-border-radius-list-button: 12px; /* List item buttons border radius */
306
+ --trails-border-radius-large-button: 16px; /* Large buttons border radius */
307
+
308
+ /* Status Colors */
309
+ --trails-success-bg: rgb(240 253 244); /* green-50 */
310
+ --trails-success-text: rgb(22 163 74); /* green-600 */
311
+ --trails-success-border: rgb(187 247 208); /* green-200 */
312
+
313
+ --trails-warning-bg: rgb(255 251 235); /* amber-50 */
314
+ --trails-warning-text: rgb(217 119 6); /* amber-600 */
315
+ --trails-warning-border: rgb(253 230 138); /* amber-200 */
316
+
317
+ --trails-error-bg: rgb(254 242 242); /* red-50 */
318
+ --trails-error-text: rgb(220 38 38); /* red-600 */
319
+ --trails-error-border: rgb(254 202 202); /* red-200 */
320
+
321
+ /* Shadow */
322
+ --trails-shadow:
323
+ 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
324
+
325
+ /* Percentage Button Colors - Light Mode */
326
+ --trails-percentage-button-bg: rgb(228 228 231); /* #E4E4E7 - Light gray background */
327
+ --trails-percentage-button-text: rgb(113 113 123); /* #71717B - Dark gray text */
328
+ --trails-percentage-button-hover-bg: rgb(212 212 216); /* #D4D4D8 - Slightly darker on hover */
329
+ }
330
+
331
+ /* Dark Mode Theme Variables */
332
+ [data-theme="dark"] {
333
+ /* Background Colors */
334
+ --trails-bg-primary: rgb(17 24 39); /* gray-900 */
335
+ --trails-bg-secondary: rgb(31 41 55); /* gray-800 */
336
+ --trails-bg-secondary-hover: rgb(55 65 81); /* gray-700 */
337
+ --trails-bg-secondary-focus-border: rgb(31 41 55); /* gray-800 - same as secondary bg */
338
+ --trails-bg-tertiary: rgb(55 65 81); /* gray-700 */
339
+ --trails-bg-card: rgb(31 41 55); /* gray-800 */
340
+ --trails-bg-overlay: rgb(17 24 39); /* gray-900 */
341
+
342
+ /* Text Colors */
343
+ --trails-text-primary: rgb(255 255 255); /* white */
344
+ --trails-text-secondary: rgb(209 213 219); /* gray-300 */
345
+ --trails-text-tertiary: rgb(156 163 175); /* gray-400 */
346
+ --trails-text-muted: rgb(107 114 128); /* gray-500 */
347
+ --trails-text-inverse: rgb(17 24 39); /* gray-900 */
348
+
349
+ /* Border Colors */
350
+ --trails-border-primary: rgb(55 65 81); /* gray-700 */
351
+ --trails-border-secondary: rgb(75 85 99); /* gray-600 */
352
+ --trails-border-tertiary: rgb(31 41 55); /* gray-800 */
353
+
354
+ /* Interactive Colors */
355
+ --trails-hover-bg: rgb(55 65 81); /* gray-700 */
356
+ --trails-hover-text: rgb(255 255 255); /* white */
357
+
358
+ /* Input Field Colors */
359
+ --trails-input-bg: rgb(31 41 55); /* gray-800 */
360
+ --trails-input-border: rgb(75 85 99); /* gray-600 */
361
+ --trails-input-text: rgb(255 255 255); /* white */
362
+ --trails-input-placeholder: rgb(107 114 128); /* gray-500 */
363
+ --trails-input-focus-border: rgb(21 93 252); /* #155DFC */
364
+
365
+ /* Dropdown Colors */
366
+ --trails-dropdown-bg: rgb(31 41 55); /* gray-800 */
367
+ --trails-dropdown-border: rgb(75 85 99); /* gray-600 */
368
+ --trails-dropdown-text: rgb(255 255 255); /* white */
369
+ --trails-dropdown-hover-bg: rgb(55 65 81); /* gray-700 */
370
+ --trails-dropdown-selected-bg: rgb(55 65 81); /* gray-700 */
371
+ --trails-dropdown-selected-text: rgb(255 255 255); /* white */
372
+ --trails-dropdown-focus-border: rgb(21 93 252); /* #155DFC - matches input focus border */
373
+
374
+ /* Modal Button Colors - Dark Mode */
375
+ --trails-modal-button-bg: var(--trails-primary, rgb(21 93 252)); /* #155DFC for dark mode */
376
+ --trails-modal-button-hover-bg: var(--trails-primary-hover, rgb(17 75 202)); /* Darker shade of #155DFC for dark mode */
377
+ --trails-modal-button-text: rgb(255 255 255); /* white text */
378
+ --trails-modal-button-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.1); /* subtle shadow for dark mode */
379
+
380
+ /* Token List Colors */
381
+ --trails-list-bg: rgb(31 41 55); /* gray-800 background for token list */
382
+ --trails-list-border: rgb(55 65 81); /* gray-700 border - good balance */
383
+ --trails-list-hover-bg: rgb(55 65 81); /* gray-700 hover */
384
+ --trails-list-item-bg: transparent; /* transparent background for list items */
385
+ --trails-list-item-selected-bg: rgb(30 58 138); /* blue-800 selected for dark mode */
386
+
387
+ /* Widget Border - Customizable widget border */
388
+ --trails-widget-border: none; /* Default widget border */
389
+
390
+ /* Border Radius - Customizable border radius for the widget */
391
+ --trails-border-radius-widget: 32px; /* Main widget container border radius */
392
+ --trails-border-radius-button: 32px; /* Primary buttons border radius */
393
+ --trails-border-radius-input: 32px; /* Input fields border radius */
394
+ --trails-border-radius-dropdown: 32px; /* Dropdown border radius */
395
+ --trails-border-radius-container: 8px; /* Container elements border radius (balance cards, etc.) */
396
+ --trails-border-radius-list: 8px; /* Token list border radius */
397
+ --trails-border-radius-list-button: 12px; /* List item buttons border radius */
398
+ --trails-border-radius-large-button: 16px; /* Large buttons border radius */
399
+
400
+ /* Status Colors */
401
+ --trails-success-bg: rgb(22 163 74 / 0.2); /* green-600 with opacity */
402
+ --trails-success-text: rgb(134 239 172); /* green-400 */
403
+ --trails-success-border: rgb(22 163 74 / 0.3); /* green-600 with opacity */
404
+
405
+ --trails-warning-bg: rgb(217 119 6 / 0.2); /* amber-600 with opacity */
406
+ --trails-warning-text: rgb(251 191 36); /* amber-400 */
407
+ --trails-warning-border: rgb(217 119 6 / 0.3); /* amber-600 with opacity */
408
+
409
+ --trails-error-bg: rgb(239 68 68 / 0.2); /* red-500 with opacity */
410
+ --trails-error-text: rgb(252 165 165); /* red-400 */
411
+ --trails-error-border: rgb(239 68 68 / 0.3); /* red-500 with opacity */
412
+
413
+ /* Shadow */
414
+ --trails-shadow:
415
+ 0 1px 3px 0 rgb(0 0 0 / 0.3), 0 1px 2px -1px rgb(0 0 0 / 0.3);
416
+
417
+ /* Percentage Button Colors - Dark Mode */
418
+ --trails-percentage-button-bg: rgb(55 65 81); /* gray-700 - Dark gray background */
419
+ --trails-percentage-button-text: rgb(209 213 219); /* gray-300 - Light gray text */
420
+ --trails-percentage-button-hover-bg: rgb(75 85 99); /* gray-600 - Slightly lighter on hover */
421
+ }
422
+
423
+ /* Custom Scrollbar Styles */
424
+ .trails-scrollbar {
425
+ scrollbar-width: thin;
426
+ scrollbar-color: rgb(209 213 219) transparent;
427
+ }
428
+
429
+ .trails-scrollbar::-webkit-scrollbar {
430
+ width: 6px;
431
+ }
432
+
433
+ .trails-scrollbar::-webkit-scrollbar-track {
434
+ background: transparent;
435
+ }
436
+
437
+ .trails-scrollbar::-webkit-scrollbar-thumb {
438
+ background-color: rgb(209 213 219);
439
+ border-radius: 3px;
440
+ transition: background-color 0.2s ease;
441
+ }
442
+
443
+ .trails-scrollbar::-webkit-scrollbar-thumb:hover {
444
+ background-color: rgb(156 163 175);
445
+ }
446
+
447
+ /* Dark mode scrollbar styles */
448
+ [data-theme="dark"] .trails-scrollbar,
449
+ .dark .trails-scrollbar {
450
+ scrollbar-color: rgb(75 85 99) transparent;
451
+ }
452
+
453
+ [data-theme="dark"] .trails-scrollbar::-webkit-scrollbar-thumb,
454
+ .dark .trails-scrollbar::-webkit-scrollbar-thumb {
455
+ background-color: rgb(75 85 99);
456
+ }
457
+
458
+ [data-theme="dark"] .trails-scrollbar::-webkit-scrollbar-thumb:hover,
459
+ .dark .trails-scrollbar::-webkit-scrollbar-thumb:hover {
460
+ background-color: rgb(107 114 128);
461
+ }
462
+
463
+ /* Define dark mode selector for Tailwind */
464
+ [data-theme="dark"] {
465
+ color-scheme: dark;
466
+ }
467
+
468
+ [data-theme="light"] {
469
+ color-scheme: light;
470
+ }
471
+
472
+ /* Default light theme before JavaScript loads */
473
+ :root:not([data-theme]) {
474
+ color-scheme: light;
475
+ }
476
+
477
+ /* Ensure light mode takes precedence when data-theme="light" */
478
+ [data-theme="light"] {
479
+ color-scheme: light;
480
+ }
481
+
482
+ /* Note: Components should use proper light/dark classes instead of relying on CSS overrides */
483
+
484
+ /* Primary Button Override Classes - These will override Tailwind classes */
485
+ /* Light mode primary button */
486
+ .bg-blue-500 {
487
+ background-color: var(--trails-primary, rgb(21 93 252));
488
+ }
489
+
490
+ /* Dark mode primary button */
491
+ .dark .bg-blue-500 {
492
+ background-color: var(--trails-primary, rgb(21 93 252)); /* #155DFC for dark mode */
493
+ }
494
+
495
+ /* Light mode hover */
496
+ .hover\:bg-blue-600:hover {
497
+ background-color: var(--trails-primary-hover, rgb(17 75 202));
498
+ }
499
+
500
+ /* Dark mode hover */
501
+ .dark .hover\:bg-blue-600:hover {
502
+ background-color: var(--trails-primary-hover, rgb(17 75 202)); /* Darker shade of #155DFC for dark mode */
503
+ }
504
+
505
+ /* Light mode disabled background */
506
+ .disabled\:bg-gray-300:disabled {
507
+ background-color: var(--trails-primary-disabled, rgb(212 212 216));
508
+ }
509
+
510
+ /* Dark mode disabled background */
511
+ .dark .disabled\:bg-gray-300:disabled {
512
+ background-color: rgb(55 65 81); /* gray-700 for dark mode */
513
+ }
514
+
515
+ /* Light mode disabled text */
516
+ .disabled\:text-gray-500:disabled {
517
+ color: var(--trails-primary-disabled-text, rgb(107 114 128));
518
+ }
519
+
520
+ /* Dark mode disabled text */
521
+ .dark .disabled\:text-gray-500:disabled {
522
+ color: rgb(156 163 175); /* gray-400 for dark mode */
523
+ }
524
+
525
+ /* Alternative approach: Direct color overrides */
526
+ .trails-btn-primary {
527
+ background-color: var(--trails-primary, rgb(59 130 246));
528
+ color: white;
529
+ transition: all 0.2s ease-in-out;
530
+ border-radius: var(--trails-border-radius-button);
531
+ }
532
+
533
+ .trails-btn-primary:hover:not(:disabled) {
534
+ background-color: var(--trails-primary-hover, rgb(37 99 235));
535
+ }
536
+
537
+ .trails-btn-primary:disabled {
538
+ background-color: var(--trails-primary-disabled, rgb(212 212 216));
539
+ color: var(--trails-primary-disabled-text, rgb(107 114 128));
540
+ cursor: not-allowed;
541
+ }
542
+
543
+ /* Modal Button Utility Classes */
544
+ .trails-modal-button {
545
+ background-color: var(--trails-modal-button-bg, var(--trails-primary, rgb(59 130 246)));
546
+ color: var(--trails-modal-button-text, rgb(255 255 255));
547
+ box-shadow: var(--trails-modal-button-shadow, 0 1px 2px 0 rgb(0 0 0 / 0.05));
548
+ transition: all 0.2s ease-in-out;
549
+ border-radius: var(--trails-border-radius-button);
550
+ }
551
+
552
+ .trails-modal-button:hover {
553
+ background-color: var(--trails-modal-button-hover-bg, var(--trails-primary-hover, rgb(37 99 235)));
554
+ }
@@ -6,6 +6,12 @@ interface BackContextType {
6
6
  clearHistory: () => void;
7
7
  isNavigatingBack: boolean;
8
8
  getHistory: () => Screen[];
9
+ getBreadcrumbHistory: () => Screen[];
10
+ addBreadcrumb: (screen: Screen) => void;
11
+ setAccountSettingsSource: (screen: Screen) => void;
12
+ getAccountSettingsSource: () => Screen | null;
13
+ setCurrentScreenWithBack: (screen: Screen, backTo?: Screen) => void;
14
+ getPreviousScreen: () => Screen | null;
9
15
  }
10
16
  interface BackProviderProps {
11
17
  children: ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"useBack.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/useBack.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAoB,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAGrE,UAAU,eAAe;IACvB,MAAM,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAA;IAChC,SAAS,EAAE,OAAO,CAAA;IAClB,YAAY,EAAE,MAAM,IAAI,CAAA;IACxB,gBAAgB,EAAE,OAAO,CAAA;IACzB,UAAU,EAAE,MAAM,MAAM,EAAE,CAAA;CAC3B;AAID,UAAU,iBAAiB;IACzB,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CA8E3D;AAED,wBAAgB,OAAO,IAAI,eAAe,CAMzC"}
1
+ {"version":3,"file":"useBack.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/useBack.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAoB,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAGrE,UAAU,eAAe;IACvB,MAAM,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAA;IAChC,SAAS,EAAE,OAAO,CAAA;IAClB,YAAY,EAAE,MAAM,IAAI,CAAA;IACxB,gBAAgB,EAAE,OAAO,CAAA;IACzB,UAAU,EAAE,MAAM,MAAM,EAAE,CAAA;IAC1B,oBAAoB,EAAE,MAAM,MAAM,EAAE,CAAA;IACpC,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,wBAAwB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IAClD,wBAAwB,EAAE,MAAM,MAAM,GAAG,IAAI,CAAA;IAC7C,wBAAwB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACnE,iBAAiB,EAAE,MAAM,MAAM,GAAG,IAAI,CAAA;CACvC;AAID,UAAU,iBAAiB;IACzB,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CA0K3D;AAED,wBAAgB,OAAO,IAAI,eAAe,CAMzC"}
@@ -21,7 +21,7 @@ export type CheckoutCallbacks = {
21
21
  export type CheckoutOnHandlers = {
22
22
  triggerCheckoutStart: () => void;
23
23
  triggerCheckoutQuote: (quote: any) => void;
24
- triggerCheckoutComplete: () => void;
24
+ triggerCheckoutComplete: (txStatus: "success" | "fail") => void;
25
25
  triggerCheckoutError: (error: string) => void;
26
26
  triggerCheckoutStatusUpdate: (transactionStates: any[]) => void;
27
27
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useCheckout.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/useCheckout.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IACvD,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,GAAG,CAAA;KAAE,KAAK,IAAI,CAAA;IACnE,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IAC1D,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IACtE,sBAAsB,CAAC,EAAE,CAAC,IAAI,EAAE;QAC9B,SAAS,EAAE,MAAM,CAAA;QACjB,iBAAiB,EAAE,GAAG,EAAE,CAAA;KACzB,KAAK,IAAI,CAAA;CACX,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,oBAAoB,EAAE,MAAM,IAAI,CAAA;IAChC,oBAAoB,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAA;IAC1C,uBAAuB,EAAE,MAAM,IAAI,CAAA;IACnC,oBAAoB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7C,2BAA2B,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;CAChE,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,CAAA;AAEhD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,IAAI,CAAA;IACzB,kBAAkB,EAAE,kBAAkB,CAAA;CACvC,CAAA;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAC1B,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,sBAAsB,GACvB,EAAE,gBAAgB,GAAG,iBAAiB,CAuHtC"}
1
+ {"version":3,"file":"useCheckout.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/useCheckout.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IACvD,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,GAAG,CAAA;KAAE,KAAK,IAAI,CAAA;IACnE,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IAC1D,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IACtE,sBAAsB,CAAC,EAAE,CAAC,IAAI,EAAE;QAC9B,SAAS,EAAE,MAAM,CAAA;QACjB,iBAAiB,EAAE,GAAG,EAAE,CAAA;KACzB,KAAK,IAAI,CAAA;CACX,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,oBAAoB,EAAE,MAAM,IAAI,CAAA;IAChC,oBAAoB,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAA;IAC1C,uBAAuB,EAAE,CAAC,QAAQ,EAAE,SAAS,GAAG,MAAM,KAAK,IAAI,CAAA;IAC/D,oBAAoB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7C,2BAA2B,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;CAChE,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,CAAA;AAEhD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,IAAI,CAAA;IACzB,kBAAkB,EAAE,kBAAkB,CAAA;CACvC,CAAA;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAC1B,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,sBAAsB,GACvB,EAAE,gBAAgB,GAAG,iBAAiB,CAsItC"}
@@ -1,5 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
- export type Screen = "connect" | "tokens" | "send-form" | "fund-form" | "fund-methods" | "recipients" | "earn-pools" | "earn" | "swap" | "receive" | "wallet-confirmation" | "qr-code-deposit" | "pending" | "receipt" | "mesh-connect" | "mesh-connect-exchanges" | "wallet-connect" | "wallet-list" | "wallet-connection-pending" | "account-history" | "account-settings" | "user-preferences" | "chain-list" | "disconnect";
2
+ export type Screen = "connect" | "tokens" | "send-form" | "fund-form" | "fund-methods" | "recipients" | "earn-pools" | "earn" | "swap" | "receive" | "wallet-confirmation" | "qr-code-deposit" | "pending" | "receipt" | "mesh-connect" | "mesh-connect-exchanges" | "wallet-connect" | "wallet-list" | "wallet-connection-pending" | "account-history" | "account-settings" | "user-preferences" | "chain-list" | "disconnect" | "home";
3
3
  interface CurrentScreenContextType {
4
4
  currentScreen: Screen;
5
5
  setCurrentScreen: (screen: Screen) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"useCurrentScreen.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/useCurrentScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAE3E,MAAM,MAAM,MAAM,GACd,SAAS,GACT,QAAQ,GACR,WAAW,GACX,WAAW,GACX,cAAc,GACd,YAAY,GACZ,YAAY,GACZ,MAAM,GACN,MAAM,GACN,SAAS,GACT,qBAAqB,GACrB,iBAAiB,GACjB,SAAS,GACT,SAAS,GACT,cAAc,GACd,wBAAwB,GACxB,gBAAgB,GAChB,aAAa,GACb,2BAA2B,GAC3B,iBAAiB,GACjB,kBAAkB,GAClB,kBAAkB,GAClB,YAAY,GACZ,YAAY,CAAA;AAEhB,UAAU,wBAAwB;IAChC,aAAa,EAAE,MAAM,CAAA;IACrB,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;CAC3C;AAMD,wBAAgB,qBAAqB,CAAC,EACpC,QAAQ,EACR,aAAa,GACd,EAAE;IACD,QAAQ,EAAE,SAAS,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;CACtB,2CAQA;AAED,wBAAgB,gBAAgB,IAAI,wBAAwB,CAQ3D"}
1
+ {"version":3,"file":"useCurrentScreen.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/useCurrentScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAE3E,MAAM,MAAM,MAAM,GACd,SAAS,GACT,QAAQ,GACR,WAAW,GACX,WAAW,GACX,cAAc,GACd,YAAY,GACZ,YAAY,GACZ,MAAM,GACN,MAAM,GACN,SAAS,GACT,qBAAqB,GACrB,iBAAiB,GACjB,SAAS,GACT,SAAS,GACT,cAAc,GACd,wBAAwB,GACxB,gBAAgB,GAChB,aAAa,GACb,2BAA2B,GAC3B,iBAAiB,GACjB,kBAAkB,GAClB,kBAAkB,GAClB,YAAY,GACZ,YAAY,GACZ,MAAM,CAAA;AAEV,UAAU,wBAAwB;IAChC,aAAa,EAAE,MAAM,CAAA;IACrB,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;CAC3C;AAMD,wBAAgB,qBAAqB,CAAC,EACpC,QAAQ,EACR,aAAa,GACd,EAAE;IACD,QAAQ,EAAE,SAAS,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;CACtB,2CAQA;AAED,wBAAgB,gBAAgB,IAAI,wBAAwB,CAQ3D"}
@@ -17,9 +17,9 @@ import { ReactNode } from 'react';
17
17
  * - Fallback to any token with balance > 0
18
18
  *
19
19
  * Destination Token Logic (only when toToken/toChainId not provided):
20
- * - Matches origin token symbol on different chain when possible
21
- * - Default destination chain: Base (unless origin is Base, then Arbitrum)
22
- * - Fallback priority: USDC > ETH > first available token
20
+ * - Default destination chain: Base if origin is not Base, Arbitrum if origin is Base
21
+ * - Default destination token: USDC on destination chain
22
+ * - Fallback: Same symbol on destination chain > ETH on destination chain > first available token on destination chain
23
23
  *
24
24
  * @returns defaultOriginToken - Best origin token that can cover targetAmountUsd (if specified)
25
25
  * @returns defaultDestinationToken - Matching token on different chain (null if toToken/toChainId set)
@@ -1 +1 @@
1
- {"version":3,"file":"useDefaultTokenSelection.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/useDefaultTokenSelection.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAgBtC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,MAAM,CAAA;IACvB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE;QACb,QAAQ,EAAE,MAAM,CAAA;QAChB,MAAM,EAAE,MAAM,CAAA;QACd,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;CACF;AAED,MAAM,WAAW,8BAA8B;IAC7C,kBAAkB,EAAE,YAAY,GAAG,IAAI,CAAA;IACvC,uBAAuB,EAAE,YAAY,GAAG,IAAI,CAAA;IAC5C,SAAS,EAAE,OAAO,CAAA;CACnB;AAmYD,wBAAgB,6BAA6B,CAAC,EAC5C,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,SAAS,CAAA;CACpB,2CAQA;AAED,wBAAgB,wBAAwB,IAAI,8BAA8B,CAQzE"}
1
+ {"version":3,"file":"useDefaultTokenSelection.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/useDefaultTokenSelection.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAiBtC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,MAAM,CAAA;IACvB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE;QACb,QAAQ,EAAE,MAAM,CAAA;QAChB,MAAM,EAAE,MAAM,CAAA;QACd,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;CACF;AAED,MAAM,WAAW,8BAA8B;IAC7C,kBAAkB,EAAE,YAAY,GAAG,IAAI,CAAA;IACvC,uBAAuB,EAAE,YAAY,GAAG,IAAI,CAAA;IAC5C,SAAS,EAAE,OAAO,CAAA;CACnB;AA8cD,wBAAgB,6BAA6B,CAAC,EAC5C,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,SAAS,CAAA;CACpB,2CAQA;AAED,wBAAgB,wBAAwB,IAAI,8BAA8B,CAQzE"}
@@ -0,0 +1,7 @@
1
+ import { Screen } from './useCurrentScreen.js';
2
+ import { Mode } from '../../mode.js';
3
+ export declare function useInitialRedirect(isConnected: boolean, currentMode: Mode, getInitialScreenForMode: (mode: Mode) => Screen): {
4
+ hasConnectedBefore: boolean;
5
+ isInitialScreenSet: boolean;
6
+ };
7
+ //# sourceMappingURL=useInitialRedirect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useInitialRedirect.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/useInitialRedirect.tsx"],"names":[],"mappings":"AACA,OAAO,EAAoB,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAGrE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAEzC,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,OAAO,EACpB,WAAW,EAAE,IAAI,EACjB,uBAAuB,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM;;;EA4DhD"}
@@ -1 +1 @@
1
- {"version":3,"file":"usePayMessage.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/usePayMessage.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAWtC,MAAM,WAAW,cAAc;IAC7B,IAAI,EACA,MAAM,GACN,UAAU,GACV,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,WAAW,GACX,oBAAoB,GACpB,WAAW,GACX,UAAU,GACV,eAAe,GACf,aAAa,GACb,aAAa,GACb,cAAc,GACd,cAAc,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,SAAS,CAAA;IAClB,KAAK,EAAE,cAAc,EAAE,CAAA;CACxB;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,aAAa,IAAI,mBAAmB,CAsTnD"}
1
+ {"version":3,"file":"usePayMessage.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/usePayMessage.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAYtC,MAAM,WAAW,cAAc;IAC7B,IAAI,EACA,MAAM,GACN,UAAU,GACV,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,WAAW,GACX,oBAAoB,GACpB,WAAW,GACX,UAAU,GACV,eAAe,GACf,aAAa,GACb,aAAa,GACb,cAAc,GACd,cAAc,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,SAAS,CAAA;IAClB,KAAK,EAAE,cAAc,EAAE,CAAA;CACxB;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,aAAa,IAAI,mBAAmB,CAgYnD"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSelectedFeeToken.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/useSelectedFeeToken.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAOZ,KAAK,SAAS,EACf,MAAM,OAAO,CAAA;AAKd,MAAM,WAAW,SAAS;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAGD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,UAAU,2BAA2B;IACnC,gBAAgB,EAAE,SAAS,GAAG,IAAI,CAAA;IAClC,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,KAAK,IAAI,CAAA;IACtD,qBAAqB,EAAE,MAAM,IAAI,CAAA;IACjC,mBAAmB,EAAE,SAAS,EAAE,CAAA;IAChC,gBAAgB,EAAE,CAChB,UAAU,EAAE,GAAG,EAAE,GAAG,IAAI,GAAG,SAAS,EACpC,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,eAAe,EAAE,gBAAgB,EAAE,KAChC,IAAI,CAAA;CACV;AAMD,UAAU,6BAA6B;IACrC,QAAQ,EAAE,SAAS,CAAA;IACnB,YAAY,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;CAChC;AAED,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAC7C,6BAA6B,CAwO9B,CAAA;AAED,eAAO,MAAM,mBAAmB,QAAO,2BAUtC,CAAA"}
1
+ {"version":3,"file":"useSelectedFeeToken.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/useSelectedFeeToken.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAOZ,KAAK,SAAS,EACf,MAAM,OAAO,CAAA;AAKd,MAAM,WAAW,SAAS;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAGD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,UAAU,2BAA2B;IACnC,gBAAgB,EAAE,SAAS,GAAG,IAAI,CAAA;IAClC,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,KAAK,IAAI,CAAA;IACtD,qBAAqB,EAAE,MAAM,IAAI,CAAA;IACjC,mBAAmB,EAAE,SAAS,EAAE,CAAA;IAChC,gBAAgB,EAAE,CAChB,UAAU,EAAE,GAAG,EAAE,GAAG,IAAI,GAAG,SAAS,EACpC,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,eAAe,EAAE,gBAAgB,EAAE,KAChC,IAAI,CAAA;CACV;AAMD,UAAU,6BAA6B;IACrC,QAAQ,EAAE,SAAS,CAAA;IACnB,YAAY,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;CAChC;AAED,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAC7C,6BAA6B,CAkO9B,CAAA;AAED,eAAO,MAAM,mBAAmB,QAAO,2BAUtC,CAAA"}
@@ -0,0 +1,12 @@
1
+ import { ReactNode } from 'react';
2
+ interface SelectedFundMethodContextType {
3
+ selectedFundMethod: string;
4
+ setSelectedFundMethod: (method: string) => void;
5
+ }
6
+ interface SelectedFundMethodProviderProps {
7
+ children: ReactNode;
8
+ }
9
+ export declare const SelectedFundMethodProvider: ({ children, }: SelectedFundMethodProviderProps) => import("react/jsx-runtime").JSX.Element;
10
+ export declare const useSelectedFundMethod: () => SelectedFundMethodContextType;
11
+ export {};
12
+ //# sourceMappingURL=useSelectedFundMethod.d.ts.map