@lifi/widget 3.29.1 → 3.30.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 (169) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/esm/components/AmountInput/AmountInputEndAdornment.d.ts +1 -1
  3. package/dist/esm/components/AmountInput/AmountInputEndAdornment.js +3 -2
  4. package/dist/esm/components/AmountInput/AmountInputEndAdornment.js.map +1 -1
  5. package/dist/esm/components/AmountInput/PriceFormHelperText.d.ts +1 -1
  6. package/dist/esm/components/AmountInput/PriceFormHelperText.js +3 -2
  7. package/dist/esm/components/AmountInput/PriceFormHelperText.js.map +1 -1
  8. package/dist/esm/components/ChainSelect/ChainSelect.js +35 -18
  9. package/dist/esm/components/ChainSelect/ChainSelect.js.map +1 -1
  10. package/dist/esm/components/ChainSelect/useChainSelect.d.ts +1 -1
  11. package/dist/esm/components/ChainSelect/useChainSelect.js +3 -3
  12. package/dist/esm/components/ChainSelect/useChainSelect.js.map +1 -1
  13. package/dist/esm/components/Chains/AllChainsAvatar.d.ts +7 -0
  14. package/dist/esm/components/Chains/AllChainsAvatar.js +77 -0
  15. package/dist/esm/components/Chains/AllChainsAvatar.js.map +1 -0
  16. package/dist/esm/components/Chains/ChainList.d.ts +2 -1
  17. package/dist/esm/components/Chains/ChainList.js +2 -2
  18. package/dist/esm/components/Chains/ChainList.js.map +1 -1
  19. package/dist/esm/components/Chains/ChainSearchInput.js +2 -2
  20. package/dist/esm/components/Chains/ChainSearchInput.js.map +1 -1
  21. package/dist/esm/components/Chains/SelectChainContent.js +1 -1
  22. package/dist/esm/components/Chains/SelectChainContent.js.map +1 -1
  23. package/dist/esm/components/Chains/VirtualizedChainList.d.ts +2 -1
  24. package/dist/esm/components/Chains/VirtualizedChainList.js +42 -10
  25. package/dist/esm/components/Chains/VirtualizedChainList.js.map +1 -1
  26. package/dist/esm/components/RouteCard/RouteCardEssentials.js +1 -1
  27. package/dist/esm/components/RouteCard/RouteCardEssentials.js.map +1 -1
  28. package/dist/esm/components/TokenList/TokenDetailsSheet.d.ts +1 -5
  29. package/dist/esm/components/TokenList/TokenDetailsSheet.js +4 -2
  30. package/dist/esm/components/TokenList/TokenDetailsSheet.js.map +1 -1
  31. package/dist/esm/components/TokenList/TokenDetailsSheetContent.js +2 -2
  32. package/dist/esm/components/TokenList/TokenDetailsSheetContent.js.map +1 -1
  33. package/dist/esm/components/TokenList/TokenList.js +11 -53
  34. package/dist/esm/components/TokenList/TokenList.js.map +1 -1
  35. package/dist/esm/components/TokenList/TokenListItem.d.ts +1 -1
  36. package/dist/esm/components/TokenList/TokenListItem.js +29 -25
  37. package/dist/esm/components/TokenList/TokenListItem.js.map +1 -1
  38. package/dist/esm/components/TokenList/VirtualizedTokenList.js +56 -37
  39. package/dist/esm/components/TokenList/VirtualizedTokenList.js.map +1 -1
  40. package/dist/esm/components/TokenList/types.d.ts +6 -10
  41. package/dist/esm/components/TokenList/useTokenSelect.js +3 -4
  42. package/dist/esm/components/TokenList/useTokenSelect.js.map +1 -1
  43. package/dist/esm/components/TransactionDetails.js +2 -2
  44. package/dist/esm/components/TransactionDetails.js.map +1 -1
  45. package/dist/esm/config/version.d.ts +1 -1
  46. package/dist/esm/config/version.js +1 -1
  47. package/dist/esm/hooks/useAccountsBalancesData.d.ts +6 -0
  48. package/dist/esm/hooks/useAccountsBalancesData.js +64 -0
  49. package/dist/esm/hooks/useAccountsBalancesData.js.map +1 -0
  50. package/dist/esm/hooks/useFilteredByTokenBalances.d.ts +8 -0
  51. package/dist/esm/hooks/useFilteredByTokenBalances.js +69 -0
  52. package/dist/esm/hooks/useFilteredByTokenBalances.js.map +1 -0
  53. package/dist/esm/hooks/useListHeight.d.ts +0 -1
  54. package/dist/esm/hooks/useListHeight.js +0 -1
  55. package/dist/esm/hooks/useListHeight.js.map +1 -1
  56. package/dist/esm/hooks/useToken.d.ts +2 -2
  57. package/dist/esm/hooks/useToken.js +13 -11
  58. package/dist/esm/hooks/useToken.js.map +1 -1
  59. package/dist/esm/hooks/useTokenAddressBalance.d.ts +2 -3
  60. package/dist/esm/hooks/useTokenAddressBalance.js +10 -14
  61. package/dist/esm/hooks/useTokenAddressBalance.js.map +1 -1
  62. package/dist/esm/hooks/useTokenBalances.d.ts +6 -9
  63. package/dist/esm/hooks/useTokenBalances.js +57 -72
  64. package/dist/esm/hooks/useTokenBalances.js.map +1 -1
  65. package/dist/esm/hooks/useTokenBalancesQueries.d.ts +11 -0
  66. package/dist/esm/hooks/useTokenBalancesQueries.js +74 -0
  67. package/dist/esm/hooks/useTokenBalancesQueries.js.map +1 -0
  68. package/dist/esm/hooks/useTokens.d.ts +6 -6
  69. package/dist/esm/hooks/useTokens.js +78 -70
  70. package/dist/esm/hooks/useTokens.js.map +1 -1
  71. package/dist/esm/i18n/bn.json +3 -3
  72. package/dist/esm/i18n/de.json +3 -3
  73. package/dist/esm/i18n/en.json +3 -3
  74. package/dist/esm/i18n/es.json +3 -3
  75. package/dist/esm/i18n/fr.json +3 -3
  76. package/dist/esm/i18n/hi.json +3 -3
  77. package/dist/esm/i18n/id.json +3 -3
  78. package/dist/esm/i18n/it.json +3 -3
  79. package/dist/esm/i18n/ja.json +3 -3
  80. package/dist/esm/i18n/ko.json +3 -3
  81. package/dist/esm/i18n/pl.json +3 -3
  82. package/dist/esm/i18n/pt.json +3 -3
  83. package/dist/esm/i18n/th.json +3 -3
  84. package/dist/esm/i18n/tr.json +3 -3
  85. package/dist/esm/i18n/uk.json +3 -3
  86. package/dist/esm/i18n/vi.json +3 -3
  87. package/dist/esm/i18n/zh.json +3 -3
  88. package/dist/esm/pages/SelectTokenPage/SearchTokenInput.js +6 -1
  89. package/dist/esm/pages/SelectTokenPage/SearchTokenInput.js.map +1 -1
  90. package/dist/esm/pages/SelectTokenPage/SelectTokenPage.js +2 -4
  91. package/dist/esm/pages/SelectTokenPage/SelectTokenPage.js.map +1 -1
  92. package/dist/esm/pages/TransactionPage/TokenValueBottomSheet.js +1 -1
  93. package/dist/esm/pages/TransactionPage/TokenValueBottomSheet.js.map +1 -1
  94. package/dist/esm/stores/chains/createChainOrderStore.d.ts +3 -2
  95. package/dist/esm/stores/chains/createChainOrderStore.js +13 -8
  96. package/dist/esm/stores/chains/createChainOrderStore.js.map +1 -1
  97. package/dist/esm/stores/chains/types.d.ts +2 -0
  98. package/dist/esm/stores/chains/useChainOrder.js +5 -1
  99. package/dist/esm/stores/chains/useChainOrder.js.map +1 -1
  100. package/dist/esm/types/token.d.ts +7 -2
  101. package/dist/esm/utils/chainType.d.ts +1 -0
  102. package/dist/esm/utils/chainType.js +2 -0
  103. package/dist/esm/utils/chainType.js.map +1 -1
  104. package/dist/esm/utils/token.d.ts +8 -0
  105. package/dist/esm/utils/token.js +29 -0
  106. package/dist/esm/utils/token.js.map +1 -0
  107. package/dist/esm/utils/tokenList.d.ts +13 -0
  108. package/dist/esm/utils/tokenList.js +106 -0
  109. package/dist/esm/utils/tokenList.js.map +1 -0
  110. package/package.json +7 -7
  111. package/package.json.tmp +6 -6
  112. package/src/components/AmountInput/AmountInputEndAdornment.tsx +3 -2
  113. package/src/components/AmountInput/PriceFormHelperText.tsx +3 -2
  114. package/src/components/ChainSelect/ChainSelect.tsx +112 -40
  115. package/src/components/ChainSelect/useChainSelect.ts +3 -3
  116. package/src/components/Chains/AllChainsAvatar.tsx +113 -0
  117. package/src/components/Chains/ChainList.tsx +3 -0
  118. package/src/components/Chains/ChainSearchInput.tsx +2 -2
  119. package/src/components/Chains/SelectChainContent.tsx +1 -0
  120. package/src/components/Chains/VirtualizedChainList.tsx +80 -12
  121. package/src/components/RouteCard/RouteCardEssentials.tsx +1 -1
  122. package/src/components/TokenList/TokenDetailsSheet.tsx +4 -9
  123. package/src/components/TokenList/TokenDetailsSheetContent.tsx +2 -6
  124. package/src/components/TokenList/TokenList.tsx +57 -129
  125. package/src/components/TokenList/TokenListItem.tsx +191 -166
  126. package/src/components/TokenList/VirtualizedTokenList.tsx +88 -48
  127. package/src/components/TokenList/types.ts +14 -10
  128. package/src/components/TokenList/useTokenSelect.ts +3 -4
  129. package/src/components/TransactionDetails.tsx +2 -2
  130. package/src/config/version.ts +1 -1
  131. package/src/hooks/useAccountsBalancesData.ts +101 -0
  132. package/src/hooks/useFilteredByTokenBalances.ts +101 -0
  133. package/src/hooks/useListHeight.ts +0 -1
  134. package/src/hooks/useToken.ts +26 -14
  135. package/src/hooks/useTokenAddressBalance.ts +14 -20
  136. package/src/hooks/useTokenBalances.ts +81 -80
  137. package/src/hooks/useTokenBalancesQueries.ts +94 -0
  138. package/src/hooks/useTokens.ts +118 -90
  139. package/src/i18n/bn.json +3 -3
  140. package/src/i18n/de.json +3 -3
  141. package/src/i18n/en.json +3 -3
  142. package/src/i18n/es.json +3 -3
  143. package/src/i18n/fr.json +3 -3
  144. package/src/i18n/hi.json +3 -3
  145. package/src/i18n/id.json +3 -3
  146. package/src/i18n/it.json +3 -3
  147. package/src/i18n/ja.json +3 -3
  148. package/src/i18n/ko.json +3 -3
  149. package/src/i18n/pl.json +3 -3
  150. package/src/i18n/pt.json +3 -3
  151. package/src/i18n/th.json +3 -3
  152. package/src/i18n/tr.json +3 -3
  153. package/src/i18n/uk.json +3 -3
  154. package/src/i18n/vi.json +3 -3
  155. package/src/i18n/zh.json +3 -3
  156. package/src/pages/SelectTokenPage/SearchTokenInput.tsx +5 -0
  157. package/src/pages/SelectTokenPage/SelectTokenPage.tsx +7 -13
  158. package/src/pages/TransactionPage/TokenValueBottomSheet.tsx +1 -1
  159. package/src/stores/chains/createChainOrderStore.ts +17 -8
  160. package/src/stores/chains/types.ts +2 -0
  161. package/src/stores/chains/useChainOrder.ts +5 -1
  162. package/src/types/token.ts +11 -2
  163. package/src/utils/chainType.ts +2 -0
  164. package/src/utils/token.ts +65 -0
  165. package/src/utils/tokenList.ts +172 -0
  166. package/dist/esm/components/TokenList/utils.d.ts +0 -2
  167. package/dist/esm/components/TokenList/utils.js +0 -35
  168. package/dist/esm/components/TokenList/utils.js.map +0 -1
  169. package/src/components/TokenList/utils.ts +0 -42
@@ -1 +1 @@
1
- {"version":3,"file":"RouteCardEssentials.js","sourceRoot":"","sources":["../../../../src/components/RouteCard/RouteCardEssentials.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RouteCardEssentials.js","sourceRoot":"","sources":["../../../../src/components/RouteCard/RouteCardEssentials.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,2 @@
1
1
  import type { TokenDetailsSheetBase } from './types.js';
2
- interface TokenDetailsSheetProps {
3
- chainId: number | undefined;
4
- }
5
- export declare const TokenDetailsSheet: import("react").ForwardRefExoticComponent<TokenDetailsSheetProps & import("react").RefAttributes<TokenDetailsSheetBase>>;
6
- export {};
2
+ export declare const TokenDetailsSheet: import("react").ForwardRefExoticComponent<import("react").RefAttributes<TokenDetailsSheetBase>>;
@@ -2,15 +2,17 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { forwardRef, useImperativeHandle, useRef, useState } from 'react';
3
3
  import { BottomSheet } from '../BottomSheet/BottomSheet.js';
4
4
  import { TokenDetailsSheetContent } from './TokenDetailsSheetContent.js';
5
- export const TokenDetailsSheet = forwardRef(({ chainId }, ref) => {
5
+ export const TokenDetailsSheet = forwardRef((_, ref) => {
6
6
  const bottomSheetRef = useRef(null);
7
7
  const [tokenAddress, setTokenAddress] = useState(undefined);
8
+ const [chainId, setChainId] = useState(undefined);
8
9
  const [withoutContractAddress, setWithoutContractAddress] = useState(false);
9
10
  useImperativeHandle(ref, () => ({
10
11
  isOpen: () => bottomSheetRef.current?.isOpen(),
11
- open: (address, noContractAddress) => {
12
+ open: (address, noContractAddress, chainId) => {
12
13
  setTokenAddress(address);
13
14
  setWithoutContractAddress(noContractAddress);
15
+ setChainId(chainId);
14
16
  bottomSheetRef.current?.open();
15
17
  },
16
18
  close: () => {
@@ -1 +1 @@
1
- {"version":3,"file":"TokenDetailsSheet.js","sourceRoot":"","sources":["../../../../src/components/TokenList/TokenDetailsSheet.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAE3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AAOxE,MAAM,CAAC,MAAM,iBAAiB,GAAG,UAAU,CAGzC,CAAC,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,EAAE;IACrB,MAAM,cAAc,GAAG,MAAM,CAAkB,IAAI,CAAC,CAAA;IACpD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAC9C,SAAS,CACV,CAAA;IACD,MAAM,CAAC,sBAAsB,EAAE,yBAAyB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAE3E,mBAAmB,CACjB,GAAG,EACH,GAAG,EAAE,CAAC,CAAC;QACL,MAAM,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE;QAC9C,IAAI,EAAE,CAAC,OAAe,EAAE,iBAA0B,EAAE,EAAE;YACpD,eAAe,CAAC,OAAO,CAAC,CAAA;YACxB,yBAAyB,CAAC,iBAAiB,CAAC,CAAA;YAC5C,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,CAAA;QAChC,CAAC;QACD,KAAK,EAAE,GAAG,EAAE;YACV,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,CAAA;QACjC,CAAC;KACF,CAAC,EACF,EAAE,CACH,CAAA;IAED,OAAO,CACL,KAAC,WAAW,IAAC,GAAG,EAAE,cAAc,EAAE,WAAW,kBAC3C,KAAC,wBAAwB,IACvB,GAAG,EAAE,GAAG,EACR,YAAY,EAAE,YAAY,EAC1B,sBAAsB,EAAE,sBAAsB,EAC9C,OAAO,EAAE,OAAO,GAChB,GACU,CACf,CAAA;AACH,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"TokenDetailsSheet.js","sourceRoot":"","sources":["../../../../src/components/TokenList/TokenDetailsSheet.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAE3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AAGxE,MAAM,CAAC,MAAM,iBAAiB,GAAG,UAAU,CAAwB,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;IAC5E,MAAM,cAAc,GAAG,MAAM,CAAkB,IAAI,CAAC,CAAA;IACpD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAC9C,SAAS,CACV,CAAA;IACD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAqB,SAAS,CAAC,CAAA;IACrE,MAAM,CAAC,sBAAsB,EAAE,yBAAyB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAE3E,mBAAmB,CACjB,GAAG,EACH,GAAG,EAAE,CAAC,CAAC;QACL,MAAM,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE;QAC9C,IAAI,EAAE,CAAC,OAAe,EAAE,iBAA0B,EAAE,OAAe,EAAE,EAAE;YACrE,eAAe,CAAC,OAAO,CAAC,CAAA;YACxB,yBAAyB,CAAC,iBAAiB,CAAC,CAAA;YAC5C,UAAU,CAAC,OAAO,CAAC,CAAA;YACnB,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,CAAA;QAChC,CAAC;QACD,KAAK,EAAE,GAAG,EAAE;YACV,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,CAAA;QACjC,CAAC;KACF,CAAC,EACF,EAAE,CACH,CAAA;IAED,OAAO,CACL,KAAC,WAAW,IAAC,GAAG,EAAE,cAAc,EAAE,WAAW,kBAC3C,KAAC,wBAAwB,IACvB,GAAG,EAAE,GAAG,EACR,YAAY,EAAE,YAAY,EAC1B,sBAAsB,EAAE,sBAAsB,EAC9C,OAAO,EAAE,OAAO,GAChB,GACU,CACf,CAAA;AACH,CAAC,CAAC,CAAA"}
@@ -7,7 +7,7 @@ import { forwardRef, useMemo } from 'react';
7
7
  import { useTranslation } from 'react-i18next';
8
8
  import { useAvailableChains } from '../../hooks/useAvailableChains.js';
9
9
  import { useExplorer } from '../../hooks/useExplorer.js';
10
- import { useTokenSearch } from '../../hooks/useTokenSearch.js';
10
+ import { useToken } from '../../hooks/useToken.js';
11
11
  import { shortenAddress } from '../../utils/wallet.js';
12
12
  import { TokenAvatar } from '../Avatar/TokenAvatar.js';
13
13
  import { CardIconButton } from '../Card/CardIconButton.js';
@@ -17,7 +17,7 @@ export const TokenDetailsSheetContent = forwardRef(({ tokenAddress, chainId, wit
17
17
  const { t } = useTranslation();
18
18
  const { getAddressLink } = useExplorer();
19
19
  const { getChainById } = useAvailableChains();
20
- const { token, isLoading } = useTokenSearch(chainId, tokenAddress, !!tokenAddress);
20
+ const { token, isLoading } = useToken(chainId, tokenAddress, true);
21
21
  const chain = useMemo(() => getChainById(chainId), [chainId, getChainById]);
22
22
  const copyContractAddress = async (e) => {
23
23
  e.stopPropagation();
@@ -1 +1 @@
1
- {"version":3,"file":"TokenDetailsSheetContent.js","sourceRoot":"","sources":["../../../../src/components/TokenList/TokenDetailsSheetContent.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TokenDetailsSheetContent.js","sourceRoot":"","sources":["../../../../src/components/TokenList/TokenDetailsSheetContent.tsx"],"names":[],"mappings":"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"}
@@ -1,76 +1,34 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useAccount } from '@lifi/wallet-management';
3
2
  import { Box } from '@mui/material';
4
- import { useEffect } from 'react';
5
- import { useChain } from '../../hooks/useChain.js';
3
+ import { memo, useEffect } from 'react';
6
4
  import { useDebouncedWatch } from '../../hooks/useDebouncedWatch.js';
7
5
  import { useTokenBalances } from '../../hooks/useTokenBalances.js';
8
- import { useTokenSearch } from '../../hooks/useTokenSearch.js';
9
6
  import { useWidgetEvents } from '../../hooks/useWidgetEvents.js';
10
- import { useWidgetConfig } from '../../providers/WidgetProvider/WidgetProvider.js';
7
+ import { useChainOrderStore } from '../../stores/chains/ChainOrderStore.js';
11
8
  import { FormKeyHelper } from '../../stores/form/types.js';
12
9
  import { useFieldValues } from '../../stores/form/useFieldValues.js';
13
10
  import { WidgetEvent } from '../../types/events.js';
14
- import { getConfigItemSets, isFormItemAllowed } from '../../utils/item.js';
15
11
  import { TokenNotFound } from './TokenNotFound.js';
16
12
  import { useTokenSelect } from './useTokenSelect.js';
17
- import { filteredTokensComparator } from './utils.js';
18
13
  import { VirtualizedTokenList } from './VirtualizedTokenList.js';
19
- export const TokenList = ({ formType, parentRef, height, onClick, }) => {
14
+ export const TokenList = memo(({ formType, parentRef, height, onClick }) => {
20
15
  const emitter = useWidgetEvents();
21
16
  const [selectedChainId, selectedTokenAddress] = useFieldValues(FormKeyHelper.getChainKey(formType), FormKeyHelper.getTokenKey(formType));
17
+ const isAllNetworks = useChainOrderStore((state) => state.isAllNetworks);
22
18
  const [tokenSearchFilter] = useDebouncedWatch(320, 'tokenSearchFilter');
23
- const { tokens: configTokens } = useWidgetConfig();
24
- const { chain: selectedChain, isLoading: isSelectedChainLoading } = useChain(selectedChainId);
25
- const { account } = useAccount({
26
- chainType: selectedChain?.chainType,
27
- });
28
- const { tokens: chainTokens, tokensWithBalance, isLoading: isTokensLoading, isBalanceLoading, featuredTokens, popularTokens, } = useTokenBalances(selectedChainId);
29
- let filteredTokens = (tokensWithBalance ?? chainTokens ?? []);
30
- const normalizedSearchFilter = tokenSearchFilter?.replaceAll('$', '');
31
- const searchFilter = normalizedSearchFilter?.toUpperCase() ?? '';
32
- const filteredConfigTokens = getConfigItemSets(configTokens, (tokens) => new Set(tokens
33
- .filter((t) => t.chainId === selectedChainId)
34
- .map((t) => t.address)), formType);
35
- // Get the appropriate allow/deny lists based on formType
36
- filteredTokens = filteredTokens.filter((token) => token.chainId === selectedChainId &&
37
- isFormItemAllowed(token, filteredConfigTokens, formType, (t) => t.address));
38
- filteredTokens = tokenSearchFilter
39
- ? filteredTokens
40
- .filter((token) => token.name?.toUpperCase().includes(searchFilter) ||
41
- token.symbol
42
- .toUpperCase()
43
- // Replace ₮ with T for USD₮0
44
- .replaceAll('₮', 'T')
45
- .includes(searchFilter) ||
46
- token.address.toUpperCase().includes(searchFilter))
47
- .sort(filteredTokensComparator(searchFilter))
48
- : filteredTokens;
49
- const tokenSearchEnabled = !isTokensLoading &&
50
- !filteredTokens.length &&
51
- !!tokenSearchFilter &&
52
- !!selectedChainId;
53
- const { token: searchedToken, isLoading: isSearchedTokenLoading } = useTokenSearch(selectedChainId, normalizedSearchFilter, tokenSearchEnabled, formType);
54
- const isLoading = isTokensLoading ||
55
- isSelectedChainLoading ||
56
- (tokenSearchEnabled && isSearchedTokenLoading);
57
- const tokens = filteredTokens.length
58
- ? filteredTokens
59
- : searchedToken
60
- ? [searchedToken]
61
- : filteredTokens;
19
+ const { tokens, withCategories, isTokensLoading, isBalanceLoading, isSearchLoading, } = useTokenBalances(selectedChainId, formType, isAllNetworks, tokenSearchFilter);
62
20
  const handleTokenClick = useTokenSelect(formType, onClick);
63
- const showCategories = Boolean(featuredTokens?.length || popularTokens?.length) &&
64
- !tokenSearchFilter;
65
- // biome-ignore lint/correctness/useExhaustiveDependencies: Should fire only when search filter changes
21
+ const showCategories = withCategories && !tokenSearchFilter && !isAllNetworks;
66
22
  useEffect(() => {
23
+ const normalizedSearchFilter = tokenSearchFilter?.replaceAll('$', '');
67
24
  if (normalizedSearchFilter) {
68
25
  emitter.emit(WidgetEvent.TokenSearch, {
69
26
  value: normalizedSearchFilter,
70
27
  tokens,
71
28
  });
72
29
  }
73
- }, [normalizedSearchFilter, emitter]);
74
- return (_jsxs(Box, { ref: parentRef, style: { height, overflow: 'auto' }, children: [!tokens.length && !isLoading ? (_jsx(TokenNotFound, { formType: formType })) : null, _jsx(VirtualizedTokenList, { account: account, tokens: tokens, scrollElementRef: parentRef, chainId: selectedChainId, chain: selectedChain, isLoading: isLoading, isBalanceLoading: isBalanceLoading, showCategories: showCategories, onClick: handleTokenClick, selectedTokenAddress: selectedTokenAddress })] }));
75
- };
30
+ // eslint-disable-next-line react-hooks/exhaustive-deps
31
+ }, [tokenSearchFilter, tokens, emitter]);
32
+ return (_jsxs(Box, { ref: parentRef, style: { height, overflow: 'auto' }, children: [!tokens.length && !isTokensLoading && !isSearchLoading ? (_jsx(TokenNotFound, { formType: formType })) : null, _jsx(VirtualizedTokenList, { tokens: tokens, scrollElementRef: parentRef, chainId: selectedChainId, isLoading: isTokensLoading || isSearchLoading, isBalanceLoading: isBalanceLoading, showCategories: showCategories, onClick: handleTokenClick, selectedTokenAddress: selectedTokenAddress, isAllNetworks: isAllNetworks })] }));
33
+ });
76
34
  //# sourceMappingURL=TokenList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TokenList.js","sourceRoot":"","sources":["../../../../src/components/TokenList/TokenList.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AACnC,OAAO,EAAW,SAAS,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,kDAAkD,CAAA;AAClF,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAA;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAEhE,MAAM,CAAC,MAAM,SAAS,GAAuB,CAAC,EAC5C,QAAQ,EACR,SAAS,EACT,MAAM,EACN,OAAO,GACR,EAAE,EAAE;IACH,MAAM,OAAO,GAAG,eAAe,EAAE,CAAA;IACjC,MAAM,CAAC,eAAe,EAAE,oBAAoB,CAAC,GAAG,cAAc,CAC5D,aAAa,CAAC,WAAW,CAAC,QAAQ,CAAC,EACnC,aAAa,CAAC,WAAW,CAAC,QAAQ,CAAC,CACpC,CAAA;IACD,MAAM,CAAC,iBAAiB,CAAC,GAAa,iBAAiB,CACrD,GAAG,EACH,mBAAmB,CACpB,CAAA;IAED,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,eAAe,EAAE,CAAA;IAElD,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,sBAAsB,EAAE,GAC/D,QAAQ,CAAC,eAAe,CAAC,CAAA;IAC3B,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;QAC7B,SAAS,EAAE,aAAa,EAAE,SAAS;KACpC,CAAC,CAAA;IAEF,MAAM,EACJ,MAAM,EAAE,WAAW,EACnB,iBAAiB,EACjB,SAAS,EAAE,eAAe,EAC1B,gBAAgB,EAChB,cAAc,EACd,aAAa,GACd,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAA;IAErC,IAAI,cAAc,GAAG,CAAC,iBAAiB,IAAI,WAAW,IAAI,EAAE,CAAkB,CAAA;IAC9E,MAAM,sBAAsB,GAAG,iBAAiB,EAAE,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;IACrE,MAAM,YAAY,GAAG,sBAAsB,EAAE,WAAW,EAAE,IAAI,EAAE,CAAA;IAEhE,MAAM,oBAAoB,GAAG,iBAAiB,CAC5C,YAAY,EACZ,CAAC,MAAmB,EAAE,EAAE,CACtB,IAAI,GAAG,CACL,MAAM;SACH,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,eAAe,CAAC;SAC5C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CACzB,EACH,QAAQ,CACT,CAAA;IAED,yDAAyD;IACzD,cAAc,GAAG,cAAc,CAAC,MAAM,CACpC,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,OAAO,KAAK,eAAe;QACjC,iBAAiB,CAAC,KAAK,EAAE,oBAAoB,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAC7E,CAAA;IAED,cAAc,GAAG,iBAAiB;QAChC,CAAC,CAAC,cAAc;aACX,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;YAChD,KAAK,CAAC,MAAM;iBACT,WAAW,EAAE;gBACd,6BAA6B;iBAC5B,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC;iBACpB,QAAQ,CAAC,YAAY,CAAC;YACzB,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CACrD;aACA,IAAI,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAC;QACjD,CAAC,CAAC,cAAc,CAAA;IAElB,MAAM,kBAAkB,GACtB,CAAC,eAAe;QAChB,CAAC,cAAc,CAAC,MAAM;QACtB,CAAC,CAAC,iBAAiB;QACnB,CAAC,CAAC,eAAe,CAAA;IAEnB,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,sBAAsB,EAAE,GAC/D,cAAc,CACZ,eAAe,EACf,sBAAsB,EACtB,kBAAkB,EAClB,QAAQ,CACT,CAAA;IAEH,MAAM,SAAS,GACb,eAAe;QACf,sBAAsB;QACtB,CAAC,kBAAkB,IAAI,sBAAsB,CAAC,CAAA;IAEhD,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM;QAClC,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,aAAa;YACb,CAAC,CAAC,CAAC,aAAa,CAAC;YACjB,CAAC,CAAC,cAAc,CAAA;IAEpB,MAAM,gBAAgB,GAAG,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IAC1D,MAAM,cAAc,GAClB,OAAO,CAAC,cAAc,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,CAAC;QACxD,CAAC,iBAAiB,CAAA;IAEpB,uGAAuG;IACvG,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,sBAAsB,EAAE,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE;gBACpC,KAAK,EAAE,sBAAsB;gBAC7B,MAAM;aACP,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,EAAE,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC,CAAA;IAErC,OAAO,CACL,MAAC,GAAG,IAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,aACrD,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAC9B,KAAC,aAAa,IAAC,QAAQ,EAAE,QAAQ,GAAI,CACtC,CAAC,CAAC,CAAC,IAAI,EACR,KAAC,oBAAoB,IACnB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,SAAS,EAC3B,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,SAAS,EACpB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,EAC9B,OAAO,EAAE,gBAAgB,EACzB,oBAAoB,EAAE,oBAAoB,GAC1C,IACE,CACP,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"TokenList.js","sourceRoot":"","sources":["../../../../src/components/TokenList/TokenList.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { TokenListItemAvatarProps, TokenListItemButtonProps, TokenListItemProps } from './types.js';
2
2
  export declare const TokenListItem: React.FC<TokenListItemProps>;
3
- export declare const TokenListItemAvatar: React.FC<TokenListItemAvatarProps>;
3
+ export declare const TokenListItemAvatar: import("react").MemoExoticComponent<({ token }: TokenListItemAvatarProps) => import("react/jsx-runtime").JSX.Element>;
4
4
  export declare const TokenListItemButton: React.FC<TokenListItemButtonProps>;
5
5
  export declare const TokenListItemSkeleton: () => import("react/jsx-runtime").JSX.Element;
6
6
  export declare const TokenAmountSkeleton: React.FC;
@@ -1,40 +1,37 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { ChainType } from '@lifi/sdk';
3
3
  import InfoOutlinedIcon from '@mui/icons-material/InfoOutlined';
4
- import { Avatar, Box, ListItemAvatar, ListItemText, Skeleton, Slide, Typography, } from '@mui/material';
5
- import { memo, useRef, useState } from 'react';
4
+ import { Avatar, Box, ListItemAvatar, ListItemText, listItemSecondaryActionClasses, Skeleton, Slide, Typography, } from '@mui/material';
5
+ import { memo, useMemo, useRef, useState } from 'react';
6
6
  import { useTranslation } from 'react-i18next';
7
7
  import { useLongPress } from '../../hooks/useLongPress.js';
8
8
  import { formatTokenAmount, formatTokenPrice } from '../../utils/format.js';
9
9
  import { shortenAddress } from '../../utils/wallet.js';
10
+ import { TokenAvatar } from '../Avatar/TokenAvatar.js';
10
11
  import { ListItemButton } from '../ListItem/ListItemButton.js';
11
12
  import { IconButton, ListItem } from './TokenList.style.js';
12
- export const TokenListItem = memo(({ onClick, size, start, token, chain, accountAddress, isBalanceLoading, startAdornment, endAdornment, selected, onShowTokenDetails, }) => {
13
- const handleClick = (e) => {
14
- e.stopPropagation();
15
- onClick?.(token.address, chain?.id);
16
- };
13
+ export const TokenListItem = memo(({ onClick, size, start, token, chain, isBalanceLoading, startAdornment, endAdornment, selected, onShowTokenDetails, }) => {
17
14
  return (_jsxs(ListItem, { style: {
18
15
  height: `${size}px`,
19
16
  transform: `translateY(${start}px)`,
20
17
  padding: 0,
21
- }, children: [startAdornment, _jsx(TokenListItemButton, { token: token, chain: chain, accountAddress: accountAddress, isBalanceLoading: isBalanceLoading, onClick: handleClick, selected: selected, onShowTokenDetails: onShowTokenDetails }), endAdornment] }));
18
+ }, children: [startAdornment, _jsx(TokenListItemButton, { token: token, isBalanceLoading: isBalanceLoading, onClick: onClick, chain: chain, selected: selected, onShowTokenDetails: onShowTokenDetails }), endAdornment] }));
22
19
  });
23
- export const TokenListItemAvatar = ({ token, }) => {
20
+ export const TokenListItemAvatar = memo(({ token }) => {
24
21
  const [isImageLoading, setIsImageLoading] = useState(true);
25
22
  return (_jsx(Avatar, { src: token.logoURI, alt: token.symbol, sx: (theme) => isImageLoading ? { bgcolor: theme.vars.palette.grey[300] } : null, onLoad: () => setIsImageLoading(false), children: token.symbol?.[0] }));
26
- };
27
- const OpenTokenDetailsButton = ({ tokenAddress, withoutContractAddress, onClick, }) => {
23
+ });
24
+ const OpenTokenDetailsButton = ({ tokenAddress, withoutContractAddress, chainId, onClick, }) => {
28
25
  if (!tokenAddress) {
29
26
  return null;
30
27
  }
31
28
  return (_jsx(IconButton, { size: "small", onClick: (e) => {
32
29
  e.stopPropagation();
33
30
  e.currentTarget.blur(); // Remove focus to prevent accessibility issues when opening drawer
34
- onClick(tokenAddress, withoutContractAddress);
31
+ onClick(tokenAddress, withoutContractAddress, chainId);
35
32
  }, children: _jsx(InfoOutlinedIcon, {}) }));
36
33
  };
37
- export const TokenListItemButton = ({ onClick, token, chain, accountAddress, isBalanceLoading, selected, onShowTokenDetails, }) => {
34
+ export const TokenListItemButton = memo(({ onClick, token, chain, isBalanceLoading, selected, onShowTokenDetails, }) => {
38
35
  const { t } = useTranslation();
39
36
  const container = useRef(null);
40
37
  const timeoutId = useRef(undefined);
@@ -53,13 +50,17 @@ export const TokenListItemButton = ({ onClick, token, chain, accountAddress, isB
53
50
  setShowAddress(false);
54
51
  }
55
52
  };
56
- const tokenAmount = formatTokenAmount(token.amount, token.decimals);
57
- const tokenPrice = formatTokenPrice(token.amount, token.priceUSD, token.decimals);
58
- const longPressEvents = useLongPress(() => onShowTokenDetails(token.address, withoutContractAddress));
59
- return (_jsxs(ListItemButton, { onClick: onClick, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, ...longPressEvents, dense: true, selected: selected, sx: {
53
+ const handleClick = (e) => {
54
+ e.stopPropagation();
55
+ onClick?.(token.address, token.chainId);
56
+ };
57
+ const tokenAmount = useMemo(() => formatTokenAmount(token.amount, token.decimals), [token.amount, token.decimals]);
58
+ const tokenPrice = useMemo(() => formatTokenPrice(token.amount, token.priceUSD, token.decimals), [token.amount, token.priceUSD, token.decimals]);
59
+ const longPressEvents = useLongPress(() => onShowTokenDetails(token.address, withoutContractAddress, token.chainId));
60
+ return (_jsxs(ListItemButton, { onClick: handleClick, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, ...longPressEvents, dense: true, selected: selected, sx: {
60
61
  height: 60,
61
62
  marginBottom: '4px',
62
- }, children: [_jsx(ListItemAvatar, { children: _jsx(TokenListItemAvatar, { token: token }) }), _jsx(ListItemText, { primary: token.symbol, slotProps: {
63
+ }, children: [_jsx(ListItemAvatar, { children: chain ? (_jsx(TokenAvatar, { token: token, chain: chain, tokenAvatarSize: 40, chainAvatarSize: 16 })) : (_jsx(TokenListItemAvatar, { token: token })) }), _jsx(ListItemText, { primary: token.symbol, slotProps: {
63
64
  secondary: {
64
65
  component: 'div',
65
66
  },
@@ -74,7 +75,7 @@ export const TokenListItemButton = ({ onClick, token, chain, accountAddress, isB
74
75
  position: 'absolute',
75
76
  }, appear: false, mountOnEnter: true, children: _jsx(Box, { sx: {
76
77
  display: 'flex',
77
- }, children: _jsx(OpenTokenDetailsButton, { tokenAddress: token.address, withoutContractAddress: withoutContractAddress, onClick: onShowTokenDetails }) }) }) })] })) : (_jsxs(Box, { ref: container, sx: {
78
+ }, children: _jsx(OpenTokenDetailsButton, { tokenAddress: token.address, withoutContractAddress: withoutContractAddress, chainId: token.chainId, onClick: onShowTokenDetails }) }) }) })] })) : (_jsxs(Box, { ref: container, sx: {
78
79
  position: 'relative',
79
80
  height: 20,
80
81
  }, children: [_jsx(Slide, { direction: "down", in: !showAddress, container: container.current, style: {
@@ -89,25 +90,28 @@ export const TokenListItemButton = ({ onClick, token, chain, accountAddress, isB
89
90
  display: 'flex',
90
91
  alignItems: 'center',
91
92
  pt: 0.125,
92
- }, children: shortenAddress(token.address) }), _jsx(OpenTokenDetailsButton, { tokenAddress: token.address, withoutContractAddress: withoutContractAddress, onClick: onShowTokenDetails })] }) })] })) }), accountAddress ? (isBalanceLoading ? (_jsx(TokenAmountSkeleton, {})) : (_jsxs(Box, { sx: { textAlign: 'right' }, children: [token.amount ? (_jsx(Typography, { noWrap: true, sx: {
93
+ }, children: shortenAddress(token.address) }), _jsx(OpenTokenDetailsButton, { tokenAddress: token.address, withoutContractAddress: withoutContractAddress, chainId: token.chainId, onClick: onShowTokenDetails })] }) })] })) }), isBalanceLoading ? (_jsx(TokenAmountSkeleton, {})) : (_jsxs(Box, { sx: { textAlign: 'right' }, children: [token.amount ? (_jsx(Typography, { noWrap: true, sx: {
93
94
  fontWeight: 600,
94
95
  }, title: tokenAmount, children: t('format.tokenAmount', {
95
96
  value: tokenAmount,
96
- }) })) : null, tokenPrice ? (_jsx(Typography, { "data-price": token.priceUSD, sx: {
97
+ }) })) : null, token.amount && token.priceUSD ? (_jsx(Typography, { "data-price": token.priceUSD, sx: {
97
98
  fontWeight: 500,
98
99
  fontSize: 12,
99
100
  color: 'text.secondary',
100
101
  }, children: t('format.currency', {
101
102
  value: tokenPrice,
102
- }) })) : null] }))) : null] }));
103
- };
103
+ }) })) : null] }))] }));
104
+ });
104
105
  export const TokenListItemSkeleton = () => {
105
- return (_jsxs(ListItem, { secondaryAction: _jsx(TokenAmountSkeleton, {}), disablePadding: true, sx: {
106
+ return (_jsxs(ListItem, { secondaryAction: _jsx(TokenAmountSkeleton, {}), disablePadding: true, sx: (theme) => ({
106
107
  position: 'relative',
107
108
  flexDirection: 'row',
108
109
  alignItems: 'center',
109
110
  padding: 0,
110
- }, children: [_jsx(ListItemAvatar, { children: _jsx(Skeleton, { variant: "circular", width: 40, height: 40, sx: { marginLeft: 1.5, marginRight: 2 } }) }), _jsx(ListItemText, { primary: _jsx(Skeleton, { variant: "text", width: 56, height: 24 }), secondary: _jsx(Skeleton, { variant: "text", width: 96, height: 16 }) })] }));
111
+ [`& .${listItemSecondaryActionClasses.root}`]: {
112
+ right: theme.spacing(1.5),
113
+ },
114
+ }), children: [_jsx(ListItemAvatar, { children: _jsx(Skeleton, { variant: "circular", width: 40, height: 40, sx: { marginLeft: 1.5, marginRight: 2 } }) }), _jsx(ListItemText, { primary: _jsx(Skeleton, { variant: "text", width: 56, height: 24 }), secondary: _jsx(Skeleton, { variant: "text", width: 96, height: 16 }) })] }));
111
115
  };
112
116
  export const TokenAmountSkeleton = () => {
113
117
  return (_jsxs(Box, { sx: {
@@ -1 +1 @@
1
- {"version":3,"file":"TokenListItem.js","sourceRoot":"","sources":["../../../../src/components/TokenList/TokenListItem.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TokenListItem.js","sourceRoot":"","sources":["../../../../src/components/TokenList/TokenListItem.tsx"],"names":[],"mappings":"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"}
@@ -1,49 +1,68 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Typography } from '@mui/material';
3
3
  import { useVirtualizer } from '@tanstack/react-virtual';
4
- import { useCallback, useEffect, useRef } from 'react';
4
+ import { useCallback, useEffect, useMemo, useRef } from 'react';
5
5
  import { useTranslation } from 'react-i18next';
6
+ import { useAvailableChains } from '../../hooks/useAvailableChains.js';
6
7
  import { TokenDetailsSheet } from './TokenDetailsSheet.js';
7
8
  import { List } from './TokenList.style.js';
8
9
  import { TokenListItem, TokenListItemSkeleton } from './TokenListItem.js';
9
- export const VirtualizedTokenList = ({ account, tokens, scrollElementRef, chainId, chain, selectedTokenAddress, isLoading, isBalanceLoading, showCategories, onClick, }) => {
10
+ const tokenItemHeight = 64; // 60 + 4px margin-bottom
11
+ export const VirtualizedTokenList = ({ tokens, scrollElementRef, chainId, selectedTokenAddress, isLoading, isBalanceLoading, showCategories, onClick, isAllNetworks, }) => {
10
12
  const { t } = useTranslation();
13
+ const { chains } = useAvailableChains();
14
+ // Create Set for O(1) chain lookup instead of O(n) find
15
+ const chainsSet = useMemo(() => {
16
+ if (!chains) {
17
+ return undefined;
18
+ }
19
+ return new Map(chains.map((chain) => [chain.id, chain]));
20
+ }, [chains]);
11
21
  const tokenDetailsSheetRef = useRef(null);
12
- const onShowTokenDetails = useCallback((tokenAddress, noContractAddress) => {
13
- tokenDetailsSheetRef.current?.open(tokenAddress, noContractAddress);
22
+ const onShowTokenDetails = useCallback((tokenAddress, noContractAddress, chainId) => {
23
+ tokenDetailsSheetRef.current?.open(tokenAddress, noContractAddress, chainId);
14
24
  }, []);
15
25
  const getItemKey = useCallback((index) => {
16
- return `${tokens[index].address}-${index}`;
26
+ const token = tokens[index];
27
+ return `${token.chainId}-${token.address}-${index}`;
17
28
  }, [tokens]);
18
- const { getVirtualItems, getTotalSize, scrollToIndex } = useVirtualizer({
29
+ const estimateSize = useCallback((index) => {
30
+ const currentToken = tokens[index];
31
+ // Base size for TokenListItem
32
+ let size = tokenItemHeight;
33
+ // Early return if categories are not shown
34
+ if (!showCategories) {
35
+ return size;
36
+ }
37
+ const previousToken = tokens[index - 1];
38
+ // Adjust size for the first featured token
39
+ if (currentToken.featured && index === 0) {
40
+ size += 24;
41
+ }
42
+ // Adjust size based on changes between the current and previous tokens
43
+ const isCategoryChanged = (previousToken?.amount && !currentToken.amount) ||
44
+ (previousToken?.featured && !currentToken.featured) ||
45
+ (previousToken?.popular && !currentToken.popular);
46
+ if (isCategoryChanged) {
47
+ size += 32;
48
+ }
49
+ return size;
50
+ }, [tokens, showCategories]);
51
+ // Chunk the tokens for infinite loading simulation
52
+ const virtualizerConfig = useMemo(() => ({
19
53
  count: tokens.length,
20
54
  overscan: 5,
21
- paddingEnd: 12,
22
55
  getScrollElement: () => scrollElementRef.current,
23
- estimateSize: (index) => {
24
- // Base size for TokenListItem
25
- let size = 64;
26
- // Early return if categories are not shown
27
- if (!showCategories) {
28
- return size;
29
- }
30
- const currentToken = tokens[index];
31
- const previousToken = tokens[index - 1];
32
- // Adjust size for the first featured token
33
- if (currentToken.featured && index === 0) {
34
- size += 24;
35
- }
36
- // Adjust size based on changes between the current and previous tokens
37
- const isCategoryChanged = (previousToken?.amount && !currentToken.amount) ||
38
- (previousToken?.featured && !currentToken.featured) ||
39
- (previousToken?.popular && !currentToken.popular);
40
- if (isCategoryChanged) {
41
- size += 32;
42
- }
43
- return size;
44
- },
56
+ estimateSize,
45
57
  getItemKey,
46
- });
58
+ }), [tokens.length, estimateSize, getItemKey, scrollElementRef]);
59
+ const { getVirtualItems, getTotalSize, scrollToIndex, measure } = useVirtualizer(virtualizerConfig);
60
+ // Address the issue of disappearing tokens on rerender
61
+ useEffect(() => {
62
+ if (scrollElementRef.current) {
63
+ measure();
64
+ }
65
+ }, [measure, scrollElementRef.current]);
47
66
  // biome-ignore lint/correctness/useExhaustiveDependencies: run only when chainId changes
48
67
  useEffect(() => {
49
68
  // Scroll to the top of the list when switching the chains
@@ -52,13 +71,11 @@ export const VirtualizedTokenList = ({ account, tokens, scrollElementRef, chainI
52
71
  }
53
72
  // Close the token details sheet when switching the chains
54
73
  tokenDetailsSheetRef.current?.close();
55
- }, [scrollToIndex, chainId, getVirtualItems]);
56
- if (isLoading) {
57
- return (_jsx(List, { disablePadding: true, children: Array.from({ length: 3 }).map((_, index) => (_jsx(TokenListItemSkeleton, {}, index))) }));
58
- }
74
+ }, [scrollToIndex, isAllNetworks, chainId, getVirtualItems]);
59
75
  return (_jsxs(_Fragment, { children: [_jsx(List, { className: "long-list", style: { height: getTotalSize() }, disablePadding: true, children: getVirtualItems().map((item) => {
60
76
  const currentToken = tokens[item.index];
61
77
  const previousToken = tokens[item.index - 1];
78
+ const chain = chainsSet?.get(currentToken.chainId);
62
79
  const isFirstFeaturedToken = currentToken.featured && item.index === 0;
63
80
  const isTransitionFromFeaturedTokens = previousToken?.featured && !currentToken.featured;
64
81
  const isTransitionFromMyTokens = previousToken?.amount && !currentToken.amount;
@@ -68,7 +85,7 @@ export const VirtualizedTokenList = ({ account, tokens, scrollElementRef, chainI
68
85
  const shouldShowAllTokensCategory = isTransitionFromMyTokens ||
69
86
  isTransitionFromFeaturedTokens ||
70
87
  (previousToken?.popular && !currentToken.popular);
71
- const startAdornmentLabel = showCategories
88
+ const startAdornmentLabel = !isAllNetworks && showCategories
72
89
  ? (() => {
73
90
  if (isFirstFeaturedToken) {
74
91
  return t('main.featuredTokens');
@@ -85,7 +102,9 @@ export const VirtualizedTokenList = ({ account, tokens, scrollElementRef, chainI
85
102
  return null;
86
103
  })()
87
104
  : null;
88
- return (_jsx(TokenListItem, { onClick: onClick, size: item.size, start: item.start, token: currentToken, chain: chain, selected: currentToken.address === selectedTokenAddress, onShowTokenDetails: onShowTokenDetails, isBalanceLoading: isBalanceLoading, accountAddress: account.address, startAdornment: startAdornmentLabel ? (_jsx(Typography, { sx: {
105
+ const isSelected = selectedTokenAddress === currentToken.address &&
106
+ chainId === currentToken.chainId;
107
+ return (_jsx(TokenListItem, { onClick: onClick, size: item.size, start: item.start, token: currentToken, chain: isAllNetworks ? chain : undefined, selected: isSelected, onShowTokenDetails: onShowTokenDetails, isBalanceLoading: isBalanceLoading, startAdornment: startAdornmentLabel ? (_jsx(Typography, { sx: {
89
108
  fontSize: 14,
90
109
  fontWeight: 600,
91
110
  lineHeight: '16px',
@@ -93,6 +112,6 @@ export const VirtualizedTokenList = ({ account, tokens, scrollElementRef, chainI
93
112
  pt: isFirstFeaturedToken ? 0 : 1,
94
113
  pb: 1,
95
114
  }, children: startAdornmentLabel })) : null }, item.key));
96
- }) }), _jsx(TokenDetailsSheet, { ref: tokenDetailsSheetRef, chainId: chainId })] }));
115
+ }) }), _jsx(TokenDetailsSheet, { ref: tokenDetailsSheetRef }), isLoading && (_jsx(List, { disablePadding: true, sx: { cursor: 'default' }, children: Array.from({ length: 3 }).map((_, index) => (_jsx(TokenListItemSkeleton, {}, index))) }))] }));
97
116
  };
98
117
  //# sourceMappingURL=VirtualizedTokenList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VirtualizedTokenList.js","sourceRoot":"","sources":["../../../../src/components/TokenList/VirtualizedTokenList.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAMzE,MAAM,CAAC,MAAM,oBAAoB,GAAkC,CAAC,EAClE,OAAO,EACP,MAAM,EACN,gBAAgB,EAChB,OAAO,EACP,KAAK,EACL,oBAAoB,EACpB,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,OAAO,GACR,EAAE,EAAE;IACH,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,EAAE,CAAA;IAE9B,MAAM,oBAAoB,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAA;IAEhE,MAAM,kBAAkB,GAAG,WAAW,CACpC,CAAC,YAAoB,EAAE,iBAA0B,EAAE,EAAE;QACnD,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAA;IACrE,CAAC,EACD,EAAE,CACH,CAAA;IAED,MAAM,UAAU,GAAG,WAAW,CAC5B,CAAC,KAAa,EAAE,EAAE;QAChB,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,IAAI,KAAK,EAAE,CAAA;IAC5C,CAAC,EACD,CAAC,MAAM,CAAC,CACT,CAAA;IAED,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,cAAc,CAAC;QACtE,KAAK,EAAE,MAAM,CAAC,MAAM;QACpB,QAAQ,EAAE,CAAC;QACX,UAAU,EAAE,EAAE;QACd,gBAAgB,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,OAAO;QAChD,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE;YACtB,8BAA8B;YAC9B,IAAI,IAAI,GAAG,EAAE,CAAA;YACb,2CAA2C;YAC3C,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,OAAO,IAAI,CAAA;YACb,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;YAClC,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;YAEvC,2CAA2C;YAC3C,IAAI,YAAY,CAAC,QAAQ,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBACzC,IAAI,IAAI,EAAE,CAAA;YACZ,CAAC;YAED,uEAAuE;YACvE,MAAM,iBAAiB,GACrB,CAAC,aAAa,EAAE,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;gBAC/C,CAAC,aAAa,EAAE,QAAQ,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC;gBACnD,CAAC,aAAa,EAAE,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;YAEnD,IAAI,iBAAiB,EAAE,CAAC;gBACtB,IAAI,IAAI,EAAE,CAAA;YACZ,CAAC;YAED,OAAO,IAAI,CAAA;QACb,CAAC;QACD,UAAU;KACX,CAAC,CAAA;IAEF,yFAAyF;IACzF,SAAS,CAAC,GAAG,EAAE;QACb,0DAA0D;QAC1D,IAAI,eAAe,EAAE,CAAC,MAAM,EAAE,CAAC;YAC7B,aAAa,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;QACtC,CAAC;QACD,0DAA0D;QAC1D,oBAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,CAAA;IACvC,CAAC,EAAE,CAAC,aAAa,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAA;IAE7C,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CACL,KAAC,IAAI,IAAC,cAAc,kBACjB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAC3C,KAAC,qBAAqB,MAAM,KAAK,CAAI,CACtC,CAAC,GACG,CACR,CAAA;IACH,CAAC;IAED,OAAO,CACL,8BACE,KAAC,IAAI,IACH,SAAS,EAAC,WAAW,EACrB,KAAK,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EACjC,cAAc,kBAEb,eAAe,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;oBAC9B,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;oBACvC,MAAM,aAAa,GAA4B,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;oBAErE,MAAM,oBAAoB,GAAG,YAAY,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC,CAAA;oBAEtE,MAAM,8BAA8B,GAClC,aAAa,EAAE,QAAQ,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAA;oBAEnD,MAAM,wBAAwB,GAC5B,aAAa,EAAE,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAA;oBAE/C,MAAM,sBAAsB,GAC1B,8BAA8B,IAAI,YAAY,CAAC,MAAM,CAAA;oBAEvD,MAAM,2BAA2B,GAC/B,CAAC,8BAA8B,IAAI,wBAAwB,CAAC;wBAC5D,YAAY,CAAC,OAAO,CAAA;oBAEtB,MAAM,2BAA2B,GAC/B,wBAAwB;wBACxB,8BAA8B;wBAC9B,CAAC,aAAa,EAAE,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;oBAEnD,MAAM,mBAAmB,GAAG,cAAc;wBACxC,CAAC,CAAC,CAAC,GAAG,EAAE;4BACJ,IAAI,oBAAoB,EAAE,CAAC;gCACzB,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAA;4BACjC,CAAC;4BACD,IAAI,sBAAsB,EAAE,CAAC;gCAC3B,OAAO,CAAC,CAAC,eAAe,CAAC,CAAA;4BAC3B,CAAC;4BACD,IAAI,2BAA2B,EAAE,CAAC;gCAChC,OAAO,CAAC,CAAC,oBAAoB,CAAC,CAAA;4BAChC,CAAC;4BACD,IAAI,2BAA2B,EAAE,CAAC;gCAChC,OAAO,CAAC,CAAC,gBAAgB,CAAC,CAAA;4BAC5B,CAAC;4BACD,OAAO,IAAI,CAAA;wBACb,CAAC,CAAC,EAAE;wBACN,CAAC,CAAC,IAAI,CAAA;oBAER,OAAO,CACL,KAAC,aAAa,IAEZ,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,YAAY,CAAC,OAAO,KAAK,oBAAoB,EACvD,kBAAkB,EAAE,kBAAkB,EACtC,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,OAAO,CAAC,OAAO,EAC/B,cAAc,EACZ,mBAAmB,CAAC,CAAC,CAAC,CACpB,KAAC,UAAU,IACT,EAAE,EAAE;gCACF,QAAQ,EAAE,EAAE;gCACZ,UAAU,EAAE,GAAG;gCACf,UAAU,EAAE,MAAM;gCAClB,EAAE,EAAE,GAAG;gCACP,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gCAChC,EAAE,EAAE,CAAC;6BACN,YAEA,mBAAmB,GACT,CACd,CAAC,CAAC,CAAC,IAAI,IAxBL,IAAI,CAAC,GAAG,CA0Bb,CACH,CAAA;gBACH,CAAC,CAAC,GACG,EACP,KAAC,iBAAiB,IAAC,GAAG,EAAE,oBAAoB,EAAE,OAAO,EAAE,OAAO,GAAI,IACjE,CACJ,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"VirtualizedTokenList.js","sourceRoot":"","sources":["../../../../src/components/TokenList/VirtualizedTokenList.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import type { ExtendedChain } from '@lifi/sdk';
2
- import type { Account } from '@lifi/wallet-management';
3
- import type { MouseEventHandler, RefObject } from 'react';
2
+ import type { RefObject } from 'react';
4
3
  import type { FormType } from '../../stores/form/types.js';
5
4
  import type { TokenAmount } from '../../types/token.js';
6
5
  export interface TokenListProps {
@@ -10,16 +9,15 @@ export interface TokenListProps {
10
9
  onClick?(): void;
11
10
  }
12
11
  export interface VirtualizedTokenListProps {
13
- account: Account;
14
12
  tokens: TokenAmount[];
15
13
  scrollElementRef: RefObject<HTMLElement | null>;
16
14
  isLoading: boolean;
17
15
  isBalanceLoading: boolean;
18
16
  chainId?: number;
19
- chain?: ExtendedChain;
20
17
  showCategories?: boolean;
21
18
  onClick(tokenAddress: string, chainId?: number): void;
22
19
  selectedTokenAddress?: string;
20
+ isAllNetworks: boolean;
23
21
  }
24
22
  export interface TokenListItemBaseProps {
25
23
  onClick?(tokenAddress: string, chainId?: number): void;
@@ -27,9 +25,8 @@ export interface TokenListItemBaseProps {
27
25
  start: number;
28
26
  }
29
27
  export interface TokenListItemProps extends TokenListItemBaseProps {
30
- accountAddress?: string;
31
28
  token: TokenAmount;
32
- onShowTokenDetails: (tokenAddress: string, noContractAddress: boolean) => void;
29
+ onShowTokenDetails: (tokenAddress: string, noContractAddress: boolean, chainId: number) => void;
33
30
  chain?: ExtendedChain;
34
31
  isBalanceLoading?: boolean;
35
32
  startAdornment?: React.ReactNode;
@@ -37,9 +34,8 @@ export interface TokenListItemProps extends TokenListItemBaseProps {
37
34
  selected?: boolean;
38
35
  }
39
36
  export interface TokenListItemButtonProps {
40
- onShowTokenDetails: (tokenAddress: string, noContractAddress: boolean) => void;
41
- onClick?: MouseEventHandler<HTMLDivElement>;
42
- accountAddress?: string;
37
+ onShowTokenDetails: (tokenAddress: string, noContractAddress: boolean, chainId: number) => void;
38
+ onClick?(tokenAddress: string, chainId?: number): void;
43
39
  token: TokenAmount;
44
40
  chain?: ExtendedChain;
45
41
  isBalanceLoading?: boolean;
@@ -50,6 +46,6 @@ export interface TokenListItemAvatarProps {
50
46
  }
51
47
  export interface TokenDetailsSheetBase {
52
48
  isOpen(): void;
53
- open(address: string, noContractAddress: boolean): void;
49
+ open(address: string, noContractAddress: boolean, chainId: number): void;
54
50
  close(): void;
55
51
  }