@relayprotocol/relay-kit-ui 5.1.1 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (249) hide show
  1. package/_cjs/src/components/common/BalanceDisplay.js +4 -3
  2. package/_cjs/src/components/common/BalanceDisplay.js.map +1 -1
  3. package/_cjs/src/components/common/Modal.js +2 -2
  4. package/_cjs/src/components/common/Modal.js.map +1 -1
  5. package/_cjs/src/components/common/MultiWalletDropdown.js +5 -4
  6. package/_cjs/src/components/common/MultiWalletDropdown.js.map +1 -1
  7. package/_cjs/src/components/common/PercentageButtons.js +9 -9
  8. package/_cjs/src/components/common/PercentageButtons.js.map +1 -1
  9. package/_cjs/src/components/common/SlippageToleranceConfig.js +30 -17
  10. package/_cjs/src/components/common/SlippageToleranceConfig.js.map +1 -1
  11. package/_cjs/src/components/common/TokenSelector/ChainFilter.js +21 -19
  12. package/_cjs/src/components/common/TokenSelector/ChainFilter.js.map +1 -1
  13. package/_cjs/src/components/common/TokenSelector/ChainFilterRow.js +117 -0
  14. package/_cjs/src/components/common/TokenSelector/ChainFilterRow.js.map +1 -0
  15. package/_cjs/src/components/common/TokenSelector/ChainFilterSidebar.js +2 -13
  16. package/_cjs/src/components/common/TokenSelector/ChainFilterSidebar.js.map +1 -1
  17. package/_cjs/src/components/common/TokenSelector/ChainShortcuts.js +83 -0
  18. package/_cjs/src/components/common/TokenSelector/ChainShortcuts.js.map +1 -0
  19. package/_cjs/src/components/common/TokenSelector/CompactChainFilter.js +180 -0
  20. package/_cjs/src/components/common/TokenSelector/CompactChainFilter.js.map +1 -0
  21. package/_cjs/src/components/common/TokenSelector/MobileChainSelector.js +255 -0
  22. package/_cjs/src/components/common/TokenSelector/MobileChainSelector.js.map +1 -0
  23. package/_cjs/src/components/common/TokenSelector/PaymentMethod.js +456 -0
  24. package/_cjs/src/components/common/TokenSelector/PaymentMethod.js.map +1 -0
  25. package/_cjs/src/components/common/TokenSelector/PaymentTokenList.js +83 -0
  26. package/_cjs/src/components/common/TokenSelector/PaymentTokenList.js.map +1 -0
  27. package/_cjs/src/components/common/TokenSelector/TokenSelector.js +62 -27
  28. package/_cjs/src/components/common/TokenSelector/TokenSelector.js.map +1 -1
  29. package/_cjs/src/components/common/TokenSelector/triggers/PaymentMethodTrigger.js +77 -0
  30. package/_cjs/src/components/common/TokenSelector/triggers/PaymentMethodTrigger.js.map +1 -0
  31. package/_cjs/src/components/primitives/ChainTokenIcon.js +3 -2
  32. package/_cjs/src/components/primitives/ChainTokenIcon.js.map +1 -1
  33. package/_cjs/src/components/primitives/Dialog.js +6 -5
  34. package/_cjs/src/components/primitives/Dialog.js.map +1 -1
  35. package/_cjs/src/components/primitives/SlippageButton.js +40 -0
  36. package/_cjs/src/components/primitives/SlippageButton.js.map +1 -0
  37. package/_cjs/src/components/primitives/Tabs.js +4 -2
  38. package/_cjs/src/components/primitives/Tabs.js.map +1 -1
  39. package/_cjs/src/components/widgets/SwapButton.js +35 -7
  40. package/_cjs/src/components/widgets/SwapButton.js.map +1 -1
  41. package/_cjs/src/components/widgets/TokenWidget/AmountModeToggle.js +31 -0
  42. package/_cjs/src/components/widgets/TokenWidget/AmountModeToggle.js.map +1 -0
  43. package/_cjs/src/components/widgets/TokenWidget/AmountSectionHeader.js +8 -0
  44. package/_cjs/src/components/widgets/TokenWidget/AmountSectionHeader.js.map +1 -0
  45. package/_cjs/src/components/widgets/TokenWidget/BuyTabContent.js +218 -0
  46. package/_cjs/src/components/widgets/TokenWidget/BuyTabContent.js.map +1 -0
  47. package/_cjs/src/components/widgets/TokenWidget/DestinationWalletSelector.js +20 -0
  48. package/_cjs/src/components/widgets/TokenWidget/DestinationWalletSelector.js.map +1 -0
  49. package/_cjs/src/components/widgets/TokenWidget/FeeBreakdownInfo.js +26 -0
  50. package/_cjs/src/components/widgets/TokenWidget/FeeBreakdownInfo.js.map +1 -0
  51. package/_cjs/src/components/widgets/TokenWidget/FeeBreakdownTooltip.js +40 -0
  52. package/_cjs/src/components/widgets/TokenWidget/FeeBreakdownTooltip.js.map +1 -0
  53. package/_cjs/src/components/widgets/TokenWidget/SectionContainer.js +22 -0
  54. package/_cjs/src/components/widgets/TokenWidget/SectionContainer.js.map +1 -0
  55. package/_cjs/src/components/widgets/TokenWidget/SellTabContent.js +280 -0
  56. package/_cjs/src/components/widgets/TokenWidget/SellTabContent.js.map +1 -0
  57. package/_cjs/src/components/widgets/TokenWidget/TransactionDetailsFooter.js +28 -0
  58. package/_cjs/src/components/widgets/TokenWidget/TransactionDetailsFooter.js.map +1 -0
  59. package/_cjs/src/components/widgets/TokenWidget/hooks/useWalletGuards.js +108 -0
  60. package/_cjs/src/components/widgets/TokenWidget/hooks/useWalletGuards.js.map +1 -0
  61. package/_cjs/src/components/widgets/TokenWidget/index.js +9 -0
  62. package/_cjs/src/components/widgets/TokenWidget/index.js.map +1 -0
  63. package/_cjs/src/components/widgets/TokenWidget/widget/TokenWidgetRenderer.js +770 -0
  64. package/_cjs/src/components/widgets/TokenWidget/widget/TokenWidgetRenderer.js.map +1 -0
  65. package/_cjs/src/components/widgets/TokenWidget/widget/index.js +1005 -0
  66. package/_cjs/src/components/widgets/TokenWidget/widget/index.js.map +1 -0
  67. package/_cjs/src/hooks/index.js +3 -1
  68. package/_cjs/src/hooks/index.js.map +1 -1
  69. package/_cjs/src/hooks/useDuneBalances.js +2 -1
  70. package/_cjs/src/hooks/useDuneBalances.js.map +1 -1
  71. package/_cjs/src/hooks/useEOADetection.js +3 -0
  72. package/_cjs/src/hooks/useEOADetection.js.map +1 -1
  73. package/_cjs/src/hooks/useMultiWalletBalances.js +119 -0
  74. package/_cjs/src/hooks/useMultiWalletBalances.js.map +1 -0
  75. package/_cjs/src/index.js.map +1 -1
  76. package/_cjs/src/styles.css +284 -78
  77. package/_cjs/src/utils/numbers.js +39 -1
  78. package/_cjs/src/utils/numbers.js.map +1 -1
  79. package/_cjs/src/utils/tokenSelector.js +4 -1
  80. package/_cjs/src/utils/tokenSelector.js.map +1 -1
  81. package/_cjs/src/utils/tokens.js +20 -1
  82. package/_cjs/src/utils/tokens.js.map +1 -1
  83. package/_cjs/src/version.js +1 -1
  84. package/_cjs/tsconfig.build.tsbuildinfo +1 -1
  85. package/_esm/src/components/common/BalanceDisplay.js +4 -3
  86. package/_esm/src/components/common/BalanceDisplay.js.map +1 -1
  87. package/_esm/src/components/common/Modal.js +2 -2
  88. package/_esm/src/components/common/Modal.js.map +1 -1
  89. package/_esm/src/components/common/MultiWalletDropdown.js +5 -4
  90. package/_esm/src/components/common/MultiWalletDropdown.js.map +1 -1
  91. package/_esm/src/components/common/PercentageButtons.js +10 -10
  92. package/_esm/src/components/common/PercentageButtons.js.map +1 -1
  93. package/_esm/src/components/common/SlippageToleranceConfig.js +31 -23
  94. package/_esm/src/components/common/SlippageToleranceConfig.js.map +1 -1
  95. package/_esm/src/components/common/TokenSelector/ChainFilter.js +25 -23
  96. package/_esm/src/components/common/TokenSelector/ChainFilter.js.map +1 -1
  97. package/_esm/src/components/common/TokenSelector/ChainFilterRow.js +112 -0
  98. package/_esm/src/components/common/TokenSelector/ChainFilterRow.js.map +1 -0
  99. package/_esm/src/components/common/TokenSelector/ChainFilterSidebar.js +4 -15
  100. package/_esm/src/components/common/TokenSelector/ChainFilterSidebar.js.map +1 -1
  101. package/_esm/src/components/common/TokenSelector/ChainShortcuts.js +84 -0
  102. package/_esm/src/components/common/TokenSelector/ChainShortcuts.js.map +1 -0
  103. package/_esm/src/components/common/TokenSelector/CompactChainFilter.js +176 -0
  104. package/_esm/src/components/common/TokenSelector/CompactChainFilter.js.map +1 -0
  105. package/_esm/src/components/common/TokenSelector/MobileChainSelector.js +260 -0
  106. package/_esm/src/components/common/TokenSelector/MobileChainSelector.js.map +1 -0
  107. package/_esm/src/components/common/TokenSelector/PaymentMethod.js +461 -0
  108. package/_esm/src/components/common/TokenSelector/PaymentMethod.js.map +1 -0
  109. package/_esm/src/components/common/TokenSelector/PaymentTokenList.js +79 -0
  110. package/_esm/src/components/common/TokenSelector/PaymentTokenList.js.map +1 -0
  111. package/_esm/src/components/common/TokenSelector/TokenSelector.js +64 -28
  112. package/_esm/src/components/common/TokenSelector/TokenSelector.js.map +1 -1
  113. package/_esm/src/components/common/TokenSelector/triggers/PaymentMethodTrigger.js +72 -0
  114. package/_esm/src/components/common/TokenSelector/triggers/PaymentMethodTrigger.js.map +1 -0
  115. package/_esm/src/components/primitives/ChainTokenIcon.js +3 -2
  116. package/_esm/src/components/primitives/ChainTokenIcon.js.map +1 -1
  117. package/_esm/src/components/primitives/Dialog.js +6 -5
  118. package/_esm/src/components/primitives/Dialog.js.map +1 -1
  119. package/_esm/src/components/primitives/SlippageButton.js +36 -0
  120. package/_esm/src/components/primitives/SlippageButton.js.map +1 -0
  121. package/_esm/src/components/primitives/Tabs.js +4 -2
  122. package/_esm/src/components/primitives/Tabs.js.map +1 -1
  123. package/_esm/src/components/widgets/SwapButton.js +35 -7
  124. package/_esm/src/components/widgets/SwapButton.js.map +1 -1
  125. package/_esm/src/components/widgets/TokenWidget/AmountModeToggle.js +30 -0
  126. package/_esm/src/components/widgets/TokenWidget/AmountModeToggle.js.map +1 -0
  127. package/_esm/src/components/widgets/TokenWidget/AmountSectionHeader.js +7 -0
  128. package/_esm/src/components/widgets/TokenWidget/AmountSectionHeader.js.map +1 -0
  129. package/_esm/src/components/widgets/TokenWidget/BuyTabContent.js +215 -0
  130. package/_esm/src/components/widgets/TokenWidget/BuyTabContent.js.map +1 -0
  131. package/_esm/src/components/widgets/TokenWidget/DestinationWalletSelector.js +16 -0
  132. package/_esm/src/components/widgets/TokenWidget/DestinationWalletSelector.js.map +1 -0
  133. package/_esm/src/components/widgets/TokenWidget/FeeBreakdownInfo.js +21 -0
  134. package/_esm/src/components/widgets/TokenWidget/FeeBreakdownInfo.js.map +1 -0
  135. package/_esm/src/components/widgets/TokenWidget/FeeBreakdownTooltip.js +39 -0
  136. package/_esm/src/components/widgets/TokenWidget/FeeBreakdownTooltip.js.map +1 -0
  137. package/_esm/src/components/widgets/TokenWidget/SectionContainer.js +22 -0
  138. package/_esm/src/components/widgets/TokenWidget/SectionContainer.js.map +1 -0
  139. package/_esm/src/components/widgets/TokenWidget/SellTabContent.js +283 -0
  140. package/_esm/src/components/widgets/TokenWidget/SellTabContent.js.map +1 -0
  141. package/_esm/src/components/widgets/TokenWidget/TransactionDetailsFooter.js +27 -0
  142. package/_esm/src/components/widgets/TokenWidget/TransactionDetailsFooter.js.map +1 -0
  143. package/_esm/src/components/widgets/TokenWidget/hooks/useWalletGuards.js +104 -0
  144. package/_esm/src/components/widgets/TokenWidget/hooks/useWalletGuards.js.map +1 -0
  145. package/_esm/src/components/widgets/TokenWidget/index.js +2 -0
  146. package/_esm/src/components/widgets/TokenWidget/index.js.map +1 -0
  147. package/_esm/src/components/widgets/TokenWidget/widget/TokenWidgetRenderer.js +795 -0
  148. package/_esm/src/components/widgets/TokenWidget/widget/TokenWidgetRenderer.js.map +1 -0
  149. package/_esm/src/components/widgets/TokenWidget/widget/index.js +1073 -0
  150. package/_esm/src/components/widgets/TokenWidget/widget/index.js.map +1 -0
  151. package/_esm/src/hooks/index.js +2 -1
  152. package/_esm/src/hooks/index.js.map +1 -1
  153. package/_esm/src/hooks/useDuneBalances.js +2 -1
  154. package/_esm/src/hooks/useDuneBalances.js.map +1 -1
  155. package/_esm/src/hooks/useEOADetection.js +3 -0
  156. package/_esm/src/hooks/useEOADetection.js.map +1 -1
  157. package/_esm/src/hooks/useMultiWalletBalances.js +122 -0
  158. package/_esm/src/hooks/useMultiWalletBalances.js.map +1 -0
  159. package/_esm/src/index.js.map +1 -1
  160. package/_esm/src/styles.css +284 -78
  161. package/_esm/src/utils/numbers.js +44 -1
  162. package/_esm/src/utils/numbers.js.map +1 -1
  163. package/_esm/src/utils/tokenSelector.js +4 -1
  164. package/_esm/src/utils/tokenSelector.js.map +1 -1
  165. package/_esm/src/utils/tokens.js +25 -0
  166. package/_esm/src/utils/tokens.js.map +1 -1
  167. package/_esm/src/version.js +1 -1
  168. package/_esm/tsconfig.build.tsbuildinfo +1 -1
  169. package/_types/src/components/common/BalanceDisplay.d.ts +2 -0
  170. package/_types/src/components/common/BalanceDisplay.d.ts.map +1 -1
  171. package/_types/src/components/common/Modal.d.ts +2 -1
  172. package/_types/src/components/common/Modal.d.ts.map +1 -1
  173. package/_types/src/components/common/MultiWalletDropdown.d.ts +2 -1
  174. package/_types/src/components/common/MultiWalletDropdown.d.ts.map +1 -1
  175. package/_types/src/components/common/PercentageButtons.d.ts +3 -1
  176. package/_types/src/components/common/PercentageButtons.d.ts.map +1 -1
  177. package/_types/src/components/common/SlippageToleranceConfig.d.ts +7 -0
  178. package/_types/src/components/common/SlippageToleranceConfig.d.ts.map +1 -1
  179. package/_types/src/components/common/TokenSelector/ChainFilter.d.ts.map +1 -1
  180. package/_types/src/components/common/TokenSelector/ChainFilterRow.d.ts +19 -0
  181. package/_types/src/components/common/TokenSelector/ChainFilterRow.d.ts.map +1 -0
  182. package/_types/src/components/common/TokenSelector/ChainFilterSidebar.d.ts.map +1 -1
  183. package/_types/src/components/common/TokenSelector/ChainShortcuts.d.ts +19 -0
  184. package/_types/src/components/common/TokenSelector/ChainShortcuts.d.ts.map +1 -0
  185. package/_types/src/components/common/TokenSelector/CompactChainFilter.d.ts +14 -0
  186. package/_types/src/components/common/TokenSelector/CompactChainFilter.d.ts.map +1 -0
  187. package/_types/src/components/common/TokenSelector/MobileChainSelector.d.ts +21 -0
  188. package/_types/src/components/common/TokenSelector/MobileChainSelector.d.ts.map +1 -0
  189. package/_types/src/components/common/TokenSelector/PaymentMethod.d.ts +24 -0
  190. package/_types/src/components/common/TokenSelector/PaymentMethod.d.ts.map +1 -0
  191. package/_types/src/components/common/TokenSelector/PaymentTokenList.d.ts +15 -0
  192. package/_types/src/components/common/TokenSelector/PaymentTokenList.d.ts.map +1 -0
  193. package/_types/src/components/common/TokenSelector/TokenSelector.d.ts.map +1 -1
  194. package/_types/src/components/common/TokenSelector/triggers/PaymentMethodTrigger.d.ts +13 -0
  195. package/_types/src/components/common/TokenSelector/triggers/PaymentMethodTrigger.d.ts.map +1 -0
  196. package/_types/src/components/primitives/ChainTokenIcon.d.ts +1 -0
  197. package/_types/src/components/primitives/ChainTokenIcon.d.ts.map +1 -1
  198. package/_types/src/components/primitives/Dialog.d.ts +1 -0
  199. package/_types/src/components/primitives/Dialog.d.ts.map +1 -1
  200. package/_types/src/components/primitives/SlippageButton.d.ts +8 -0
  201. package/_types/src/components/primitives/SlippageButton.d.ts.map +1 -0
  202. package/_types/src/components/primitives/Tabs.d.ts.map +1 -1
  203. package/_types/src/components/widgets/SwapButton.d.ts +5 -2
  204. package/_types/src/components/widgets/SwapButton.d.ts.map +1 -1
  205. package/_types/src/components/widgets/TokenWidget/AmountModeToggle.d.ts +12 -0
  206. package/_types/src/components/widgets/TokenWidget/AmountModeToggle.d.ts.map +1 -0
  207. package/_types/src/components/widgets/TokenWidget/AmountSectionHeader.d.ts +11 -0
  208. package/_types/src/components/widgets/TokenWidget/AmountSectionHeader.d.ts.map +1 -0
  209. package/_types/src/components/widgets/TokenWidget/BuyTabContent.d.ts +52 -0
  210. package/_types/src/components/widgets/TokenWidget/BuyTabContent.d.ts.map +1 -0
  211. package/_types/src/components/widgets/TokenWidget/DestinationWalletSelector.d.ts +17 -0
  212. package/_types/src/components/widgets/TokenWidget/DestinationWalletSelector.d.ts.map +1 -0
  213. package/_types/src/components/widgets/TokenWidget/FeeBreakdownInfo.d.ts +16 -0
  214. package/_types/src/components/widgets/TokenWidget/FeeBreakdownInfo.d.ts.map +1 -0
  215. package/_types/src/components/widgets/TokenWidget/FeeBreakdownTooltip.d.ts +15 -0
  216. package/_types/src/components/widgets/TokenWidget/FeeBreakdownTooltip.d.ts.map +1 -0
  217. package/_types/src/components/widgets/TokenWidget/SectionContainer.d.ts +8 -0
  218. package/_types/src/components/widgets/TokenWidget/SectionContainer.d.ts.map +1 -0
  219. package/_types/src/components/widgets/TokenWidget/SellTabContent.d.ts +61 -0
  220. package/_types/src/components/widgets/TokenWidget/SellTabContent.d.ts.map +1 -0
  221. package/_types/src/components/widgets/TokenWidget/TransactionDetailsFooter.d.ts +14 -0
  222. package/_types/src/components/widgets/TokenWidget/TransactionDetailsFooter.d.ts.map +1 -0
  223. package/_types/src/components/widgets/TokenWidget/hooks/useWalletGuards.d.ts +28 -0
  224. package/_types/src/components/widgets/TokenWidget/hooks/useWalletGuards.d.ts.map +1 -0
  225. package/_types/src/components/widgets/TokenWidget/index.d.ts +3 -0
  226. package/_types/src/components/widgets/TokenWidget/index.d.ts.map +1 -0
  227. package/_types/src/components/widgets/TokenWidget/widget/TokenWidgetRenderer.d.ts +125 -0
  228. package/_types/src/components/widgets/TokenWidget/widget/TokenWidgetRenderer.d.ts.map +1 -0
  229. package/_types/src/components/widgets/TokenWidget/widget/index.d.ts +57 -0
  230. package/_types/src/components/widgets/TokenWidget/widget/index.d.ts.map +1 -0
  231. package/_types/src/hooks/index.d.ts +2 -1
  232. package/_types/src/hooks/index.d.ts.map +1 -1
  233. package/_types/src/hooks/useDuneBalances.d.ts.map +1 -1
  234. package/_types/src/hooks/useEOADetection.d.ts.map +1 -1
  235. package/_types/src/hooks/useMultiWalletBalances.d.ts +26 -0
  236. package/_types/src/hooks/useMultiWalletBalances.d.ts.map +1 -0
  237. package/_types/src/index.d.ts +1 -0
  238. package/_types/src/index.d.ts.map +1 -1
  239. package/_types/src/utils/numbers.d.ts +8 -1
  240. package/_types/src/utils/numbers.d.ts.map +1 -1
  241. package/_types/src/utils/tokenSelector.d.ts +1 -1
  242. package/_types/src/utils/tokenSelector.d.ts.map +1 -1
  243. package/_types/src/utils/tokens.d.ts +17 -0
  244. package/_types/src/utils/tokens.d.ts.map +1 -1
  245. package/_types/src/version.d.ts +1 -1
  246. package/_types/tsconfig.build.tsbuildinfo +1 -1
  247. package/dist/panda.buildinfo.json +86 -34
  248. package/dist/styles.css +284 -78
  249. package/package.json +6 -1
@@ -0,0 +1,255 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MobileChainSelector = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const react_1 = require("react");
7
+ const index_js_1 = require("../../primitives/index.js");
8
+ const react_fontawesome_1 = require("@fortawesome/react-fontawesome");
9
+ const free_solid_svg_icons_1 = require("@fortawesome/free-solid-svg-icons");
10
+ const fuse_js_1 = tslib_1.__importDefault(require("fuse.js"));
11
+ const events_js_1 = require("../../../constants/events.js");
12
+ const AllChainsLogo_js_1 = tslib_1.__importDefault(require("../../../img/AllChainsLogo.js"));
13
+ const TagPill_js_1 = require("./TagPill.js");
14
+ const tokenSelector_js_1 = require("../../../utils/tokenSelector.js");
15
+ const localStorage_js_1 = require("../../../utils/localStorage.js");
16
+ const Tooltip_js_1 = tslib_1.__importDefault(require("../../../components/primitives/Tooltip.js"));
17
+ const fuseSearchOptions = {
18
+ includeScore: true,
19
+ includeMatches: true,
20
+ threshold: 0.2,
21
+ keys: ['id', 'name', 'displayName']
22
+ };
23
+ const MobileChainSelector = ({ options, value, onSelect, onBack, onClose, onAnalyticEvent, popularChainIds, context, onChainStarToggle, starredChainIds }) => {
24
+ const [chainSearchInput, setChainSearchInput] = (0, react_1.useState)('');
25
+ const chainFuse = new fuse_js_1.default(options, fuseSearchOptions);
26
+ const { allChainsOption, starredChains, alphabeticalChains } = (0, react_1.useMemo)(() => (0, tokenSelector_js_1.groupChains)(options, popularChainIds, starredChainIds), [options, popularChainIds, starredChainIds]);
27
+ const filteredChains = (0, react_1.useMemo)(() => {
28
+ if (chainSearchInput.trim() === '') {
29
+ return null;
30
+ }
31
+ const results = chainFuse.search(chainSearchInput);
32
+ const uniqueChains = new Map();
33
+ results.forEach((result) => {
34
+ if (!uniqueChains.has(result.item.id)) {
35
+ uniqueChains.set(result.item.id, result.item);
36
+ }
37
+ });
38
+ return Array.from(uniqueChains.values());
39
+ }, [chainSearchInput, chainFuse]);
40
+ const handleChainSelect = (0, react_1.useCallback)((chain) => {
41
+ onSelect(chain);
42
+ const fromStarredList = chain.id !== undefined && starredChains.some((c) => c.id === chain.id);
43
+ onAnalyticEvent?.(events_js_1.EventNames.CURRENCY_STEP_CHAIN_FILTER, {
44
+ chain: chain.name,
45
+ chain_id: chain.id,
46
+ search_term: chainSearchInput,
47
+ context,
48
+ from_starred_list: fromStarredList
49
+ });
50
+ onBack();
51
+ }, [
52
+ onSelect,
53
+ onAnalyticEvent,
54
+ chainSearchInput,
55
+ context,
56
+ starredChains,
57
+ onBack
58
+ ]);
59
+ return ((0, jsx_runtime_1.jsxs)(index_js_1.Flex, { direction: "column", css: {
60
+ width: '100%',
61
+ height: '100%',
62
+ gap: '3'
63
+ }, children: [(0, jsx_runtime_1.jsxs)(index_js_1.Flex, { align: "center", css: {
64
+ gap: '1',
65
+ width: '100%'
66
+ }, children: [(0, jsx_runtime_1.jsx)(index_js_1.Button, { color: "ghost", size: "none", onClick: onBack, css: {
67
+ p: '2',
68
+ borderRadius: '8px',
69
+ display: 'flex',
70
+ alignItems: 'center',
71
+ justifyContent: 'center',
72
+ minWidth: '40px',
73
+ height: '40px',
74
+ color: 'gray9'
75
+ }, children: (0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { icon: free_solid_svg_icons_1.faArrowLeft, width: 16, height: 16 }) }), (0, jsx_runtime_1.jsx)(index_js_1.Input, { placeholder: "Search a chain", icon: (0, jsx_runtime_1.jsx)(index_js_1.Box, { css: { color: 'gray9' }, children: (0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { icon: free_solid_svg_icons_1.faMagnifyingGlass, width: 16, height: 16 }) }), containerCss: {
76
+ flex: 1,
77
+ height: 40
78
+ }, css: {
79
+ width: '100%',
80
+ _placeholder_parent: {
81
+ textOverflow: 'ellipsis'
82
+ }
83
+ }, value: chainSearchInput, onChange: (e) => setChainSearchInput(e.target.value) }), (0, jsx_runtime_1.jsx)(index_js_1.Button, { color: "ghost", size: "none", onClick: onClose, css: {
84
+ p: '2',
85
+ borderRadius: '8px',
86
+ display: 'flex',
87
+ alignItems: 'center',
88
+ justifyContent: 'center',
89
+ minWidth: '40px',
90
+ height: '40px',
91
+ color: 'gray9'
92
+ }, children: (0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { icon: free_solid_svg_icons_1.faXmark, width: 16, height: 16 }) })] }), (0, jsx_runtime_1.jsx)(index_js_1.AccessibleList, { onSelect: (selectedValue) => {
93
+ if (selectedValue) {
94
+ const chain = selectedValue === 'all-chains'
95
+ ? { id: undefined, name: 'All Chains' }
96
+ : options.find((chain) => chain.id?.toString() === selectedValue);
97
+ if (chain) {
98
+ handleChainSelect(chain);
99
+ }
100
+ }
101
+ }, css: {
102
+ display: 'flex',
103
+ flexDirection: 'column',
104
+ width: '100%',
105
+ flex: 1,
106
+ overflowY: 'auto',
107
+ scrollbarColor: 'var(--relay-colors-gray5) transparent'
108
+ }, children: filteredChains ? (filteredChains.map((chain) => {
109
+ const tag = 'tags' in chain ? chain.tags?.[0] : undefined;
110
+ return ((0, jsx_runtime_1.jsx)(MobileChainRow, { chain: chain, tag: tag, value: chain.id?.toString() ?? 'all-chains', onChainStarToggle: onChainStarToggle, onAnalyticEvent: onAnalyticEvent }, chain.id?.toString() ?? 'all-chains'));
111
+ })) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [allChainsOption && ((0, jsx_runtime_1.jsx)(MobileChainRow, { chain: allChainsOption, value: "all-chains", onAnalyticEvent: onAnalyticEvent })), starredChains.length > 0 && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(index_js_1.Flex, { align: "center", css: { py: '2', gap: '2' }, children: [(0, jsx_runtime_1.jsx)(index_js_1.Box, { css: { color: 'primary9' }, children: (0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { icon: free_solid_svg_icons_1.faStar, width: 16, height: 16 }) }), (0, jsx_runtime_1.jsx)(index_js_1.Text, { style: "subtitle1", color: "subtle", children: "Starred Chains" }), (0, jsx_runtime_1.jsx)(Tooltip_js_1.default, { content: (0, jsx_runtime_1.jsx)(index_js_1.Text, { style: "body3", children: "Long-press to star a chain" }), children: (0, jsx_runtime_1.jsx)(index_js_1.Box, { css: { color: 'gray9' }, children: (0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { icon: free_solid_svg_icons_1.faInfoCircle, width: 14, height: 14 }) }) })] }), starredChains.map((chain) => {
112
+ const tag = 'tags' in chain ? chain.tags?.[0] : undefined;
113
+ return chain.id ? ((0, jsx_runtime_1.jsx)(MobileChainRow, { chain: chain, tag: tag, value: chain.id.toString(), onChainStarToggle: onChainStarToggle, showStar: false, onAnalyticEvent: onAnalyticEvent }, chain.id.toString())) : null;
114
+ })] })), (0, jsx_runtime_1.jsx)(index_js_1.Text, { style: "subtitle1", color: "subtle", css: { py: '2' }, children: "Chains A-Z" }), alphabeticalChains.map((chain) => {
115
+ const tag = 'tags' in chain ? chain.tags?.[0] : undefined;
116
+ return chain.id ? ((0, jsx_runtime_1.jsx)(MobileChainRow, { chain: chain, tag: tag, value: chain.id.toString(), onChainStarToggle: onChainStarToggle, onAnalyticEvent: onAnalyticEvent }, chain.id.toString())) : null;
117
+ })] })) })] }));
118
+ };
119
+ exports.MobileChainSelector = MobileChainSelector;
120
+ const MobileChainRow = ({ chain, tag, value, onChainStarToggle, showStar = true, onAnalyticEvent }) => {
121
+ const [dropdownOpen, setDropdownOpen] = (0, react_1.useState)(false);
122
+ const [longPressTimer, setLongPressTimer] = (0, react_1.useState)(null);
123
+ const dropdownRef = (0, react_1.useRef)(null);
124
+ const isStarred = chain.id ? (0, localStorage_js_1.isChainStarred)(chain.id) : false;
125
+ const handleClickOutside = (0, react_1.useCallback)((event) => {
126
+ if (dropdownRef.current &&
127
+ !dropdownRef.current.contains(event.target)) {
128
+ setDropdownOpen(false);
129
+ }
130
+ }, []);
131
+ const handleEscapeKey = (0, react_1.useCallback)((event) => {
132
+ if (event.key === 'Escape') {
133
+ setDropdownOpen(false);
134
+ }
135
+ }, []);
136
+ (0, react_1.useEffect)(() => {
137
+ if (dropdownOpen) {
138
+ document.addEventListener('mousedown', handleClickOutside, true);
139
+ document.addEventListener('touchstart', handleClickOutside, true);
140
+ document.addEventListener('click', handleClickOutside, true);
141
+ document.addEventListener('keydown', handleEscapeKey);
142
+ requestAnimationFrame(() => {
143
+ dropdownRef.current?.scrollIntoView({ block: 'nearest' });
144
+ });
145
+ return () => {
146
+ document.removeEventListener('mousedown', handleClickOutside, true);
147
+ document.removeEventListener('touchstart', handleClickOutside, true);
148
+ document.removeEventListener('click', handleClickOutside, true);
149
+ document.removeEventListener('keydown', handleEscapeKey);
150
+ };
151
+ }
152
+ }, [dropdownOpen, handleClickOutside, handleEscapeKey]);
153
+ const handleToggleStar = (0, react_1.useCallback)(() => {
154
+ if (chain.id) {
155
+ const previouslyStarred = isStarred;
156
+ (0, localStorage_js_1.toggleStarredChain)(chain.id);
157
+ const eventName = previouslyStarred
158
+ ? events_js_1.EventNames.CHAIN_UNSTARRED
159
+ : events_js_1.EventNames.CHAIN_STARRED;
160
+ onAnalyticEvent?.(eventName, {
161
+ chain: chain.name,
162
+ chain_id: chain.id
163
+ });
164
+ onChainStarToggle?.();
165
+ setDropdownOpen(false);
166
+ }
167
+ }, [chain.id, chain.name, isStarred, onAnalyticEvent, onChainStarToggle]);
168
+ const handleTouchStart = (0, react_1.useCallback)((e) => {
169
+ if (!chain.id)
170
+ return;
171
+ const timer = setTimeout(() => {
172
+ if ('vibrate' in navigator) {
173
+ navigator.vibrate(50);
174
+ }
175
+ setDropdownOpen(true);
176
+ }, 500);
177
+ setLongPressTimer(timer);
178
+ }, [chain.id]);
179
+ const handleTouchEnd = (0, react_1.useCallback)(() => {
180
+ if (longPressTimer) {
181
+ clearTimeout(longPressTimer);
182
+ setLongPressTimer(null);
183
+ }
184
+ }, [longPressTimer]);
185
+ const handleTouchMove = (0, react_1.useCallback)(() => {
186
+ if (longPressTimer) {
187
+ clearTimeout(longPressTimer);
188
+ setLongPressTimer(null);
189
+ }
190
+ }, [longPressTimer]);
191
+ if (!chain.id) {
192
+ return ((0, jsx_runtime_1.jsx)(index_js_1.AccessibleListItem, { value: value, asChild: true, children: (0, jsx_runtime_1.jsxs)(index_js_1.Button, { color: "ghost", size: "none", css: {
193
+ py: '3',
194
+ px: '2',
195
+ display: 'flex',
196
+ alignItems: 'center',
197
+ gap: '2',
198
+ width: '100%',
199
+ height: '56px',
200
+ borderRadius: '12px',
201
+ _hover: {
202
+ backgroundColor: 'gray3'
203
+ }
204
+ }, children: [(0, jsx_runtime_1.jsx)(AllChainsLogo_js_1.default, { style: { width: 24, height: 24 } }), (0, jsx_runtime_1.jsx)(index_js_1.Text, { style: "subtitle1", children: chain.name })] }) }));
205
+ }
206
+ return ((0, jsx_runtime_1.jsxs)("div", { style: { position: 'relative', width: '100%' }, children: [(0, jsx_runtime_1.jsx)(index_js_1.AccessibleListItem, { value: value, asChild: true, children: (0, jsx_runtime_1.jsxs)(index_js_1.Button, { color: "ghost", size: "none", onContextMenu: (e) => {
207
+ e.preventDefault();
208
+ setDropdownOpen(true);
209
+ }, onKeyDown: (e) => {
210
+ if ((e.shiftKey && e.key === 'F10') || e.key === 'ContextMenu') {
211
+ e.preventDefault();
212
+ setDropdownOpen(true);
213
+ }
214
+ }, onTouchStart: handleTouchStart, onTouchEnd: handleTouchEnd, onTouchMove: handleTouchMove, css: {
215
+ py: '3',
216
+ px: '2',
217
+ display: 'flex',
218
+ alignItems: 'center',
219
+ gap: '2',
220
+ width: '100%',
221
+ height: '56px',
222
+ borderRadius: '12px',
223
+ userSelect: 'none',
224
+ _hover: {
225
+ backgroundColor: 'gray3'
226
+ }
227
+ }, style: {
228
+ WebkitUserSelect: 'none'
229
+ }, children: [(0, jsx_runtime_1.jsx)(index_js_1.ChainIcon, { chainId: chain.id, square: true, width: 24, height: 24 }), (0, jsx_runtime_1.jsx)(index_js_1.Text, { style: "subtitle1", css: { flex: 1, textAlign: 'left' }, children: ('displayName' in chain && chain.displayName) || chain.name }), showStar && isStarred && ((0, jsx_runtime_1.jsx)(index_js_1.Box, { css: { color: 'primary9' }, children: (0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { icon: free_solid_svg_icons_1.faStar, width: 16, height: 16 }) })), tag && (0, jsx_runtime_1.jsx)(TagPill_js_1.TagPill, { tag: tag })] }) }), dropdownOpen && ((0, jsx_runtime_1.jsx)("div", { ref: dropdownRef, style: {
230
+ position: 'absolute',
231
+ top: '100%',
232
+ left: 0,
233
+ marginTop: '4px',
234
+ minWidth: 160,
235
+ zIndex: 999999
236
+ }, onClick: (e) => {
237
+ e.stopPropagation();
238
+ handleToggleStar();
239
+ }, onMouseDown: (e) => e.stopPropagation(), onTouchStart: (e) => e.stopPropagation(), children: (0, jsx_runtime_1.jsxs)(index_js_1.Flex, { css: {
240
+ alignItems: 'center',
241
+ gap: '8px',
242
+ padding: '8px',
243
+ borderRadius: 12,
244
+ cursor: 'pointer',
245
+ backgroundColor: 'gray1',
246
+ '--borderColor': 'colors.subtle-border-color',
247
+ border: '1px solid var(--borderColor)',
248
+ _hover: {
249
+ backgroundColor: 'gray2'
250
+ }
251
+ }, children: [(0, jsx_runtime_1.jsx)(index_js_1.Box, { css: {
252
+ color: isStarred ? 'gray8' : 'primary9'
253
+ }, children: (0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { icon: free_solid_svg_icons_1.faStar, width: 16, height: 16 }) }), (0, jsx_runtime_1.jsx)(index_js_1.Text, { style: "subtitle1", css: { lineHeight: '20px' }, children: isStarred ? 'Unstar chain' : 'Star chain' })] }) }))] }));
254
+ };
255
+ //# sourceMappingURL=MobileChainSelector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MobileChainSelector.js","sourceRoot":"","sources":["../../../../../src/components/common/TokenSelector/MobileChainSelector.tsx"],"names":[],"mappings":"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"}