added data table, formatter

revert context on __root beforeLoad
refactor project structure
refactor role badge
dynamic nav menu
This commit is contained in:
2026-01-14 09:35:46 +07:00
parent a44fa70500
commit edb4ebe11c
45 changed files with 1519 additions and 149 deletions

View File

@@ -0,0 +1,17 @@
import { useEffect, useState } from 'react';
function useDebounced<T>(value: T, delay: number): T {
const [debouncedValue, setDebouncedValue] = useState(value);
useEffect(() => {
const handler = setTimeout(() => {
setDebouncedValue(value);
}, delay);
return () => clearTimeout(handler); // clear timeout nếu value thay đổi trước khi delay hết
}, [value, delay]);
return debouncedValue;
}
export default useDebounced;