Refactor SearchAll screen (#308)

This commit is contained in:
schroda
2023-05-20 13:23:30 +02:00
committed by GitHub
parent 836b4ea4d2
commit 474e568a05
2 changed files with 131 additions and 130 deletions

View File

@@ -6,7 +6,7 @@
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
*/
import { useCallback, useState } from 'react';
import { useCallback, useEffect, useState } from 'react';
import { mutate } from 'swr';
import requestManager from 'lib/RequestManager';
@@ -34,3 +34,19 @@ export const useRefreshManga = (mangaId: string) => {
return [handleRefresh, { loading: fetchingOnline }] as const;
};
export const useDebounce = <Value>(value: Value, delay: number): Value => {
const [debouncedValue, setDebouncedValue] = useState(value);
useEffect(() => {
const handler = setTimeout(() => {
setDebouncedValue(value);
}, delay);
return () => {
clearTimeout(handler);
};
}, [value, delay]);
return debouncedValue;
};