signoz/frontend/src/hooks/useDebounce.tsx
Yevhen Shevchenko 81291c996f
fix: api calls (#2725)
* fix: aggregate filter and group by filter

* fix: operators labels and divider

* fix: api calls

* fix: remove ts ignore from file
2023-05-18 17:01:50 +05:30

18 lines
382 B
TypeScript

import { useEffect, useState } from 'react';
export default function useDebounce<T>(value: T, delay: number): T {
const [debouncedValue, setDebouncedValue] = useState<T>(value);
useEffect(() => {
const handler = setTimeout(() => {
setDebouncedValue(value);
}, delay);
return (): void => {
clearTimeout(handler);
};
}, [value, delay]);
return debouncedValue;
}