@@ -20,6 +20,7 @@ import { Spacer } from "../../components/Spacer.js";
2020import  {  Spinner  }  from  "../../components/Spinner.js" ; 
2121import  {  Text  }  from  "../../components/text.js" ; 
2222import  {  StyledDiv  }  from  "../../design-system/elements.js" ; 
23+ import  {  useDebouncedValue  }  from  "../../hooks/useDebouncedValue.js" ; 
2324import  {  useIsMobile  }  from  "../../hooks/useisMobile.js" ; 
2425import  {  SearchInput  }  from  "./SearchInput.js" ; 
2526import  {  SelectChainButton  }  from  "./SelectChainButton.js" ; 
@@ -57,6 +58,7 @@ function getDefaultSelectedChain(
5758export  function  SelectToken ( props : SelectTokenUIProps )  { 
5859  const  chainQuery  =  useBridgeChains ( props . client ) ; 
5960  const  [ search ,  setSearch ]  =  useState ( "" ) ; 
61+   const  debouncedSearch  =  useDebouncedValue ( search ,  500 ) ; 
6062  const  [ limit ,  setLimit ]  =  useState ( 1000 ) ; 
6163
6264  const  [ _selectedChain ,  setSelectedChain ]  =  useState < BridgeChain  |  undefined > ( 
@@ -76,7 +78,7 @@ export function SelectToken(props: SelectTokenUIProps) {
7678  const  tokensQuery  =  useTokens ( { 
7779    client : props . client , 
7880    chainId : selectedChain ?. chainId , 
79-     search, 
81+     search :  debouncedSearch , 
8082    limit, 
8183    offset : 0 , 
8284  } ) ; 
@@ -93,12 +95,14 @@ export function SelectToken(props: SelectTokenUIProps) {
9395  const  filteredOwnedTokens  =  useMemo ( ( )  =>  { 
9496    return  ownedTokensQuery . data ?. tokens ?. filter ( ( token )  =>  { 
9597      return  ( 
96-         token . symbol . toLowerCase ( ) . includes ( search . toLowerCase ( ) )  || 
97-         token . name . toLowerCase ( ) . includes ( search . toLowerCase ( ) )  || 
98-         token . token_address . toLowerCase ( ) . includes ( search . toLowerCase ( ) ) 
98+         token . symbol . toLowerCase ( ) . includes ( debouncedSearch . toLowerCase ( ) )  || 
99+         token . name . toLowerCase ( ) . includes ( debouncedSearch . toLowerCase ( ) )  || 
100+         token . token_address 
101+           . toLowerCase ( ) 
102+           . includes ( debouncedSearch . toLowerCase ( ) ) 
99103      ) ; 
100104    } ) ; 
101-   } ,  [ ownedTokensQuery . data ?. tokens ,  search ] ) ; 
105+   } ,  [ ownedTokensQuery . data ?. tokens ,  debouncedSearch ] ) ; 
102106
103107  const  isFetching  =  tokensQuery . isFetching  ||  ownedTokensQuery . isFetching ; 
104108
0 commit comments