espace-paie-odentas/hooks/useProgress.ts

32 lines
626 B
TypeScript

import { useCallback } from 'react'
import NProgress from 'nprogress'
/**
* Hook pour contrôler manuellement la barre de progression NProgress
* Utile pour les actions asynchrones comme les soumissions de formulaires,
* les requêtes API, etc.
*/
export function useProgress() {
const start = useCallback(() => {
NProgress.start()
}, [])
const done = useCallback(() => {
NProgress.done()
}, [])
const set = useCallback((progress: number) => {
NProgress.set(progress)
}, [])
const inc = useCallback(() => {
NProgress.inc()
}, [])
return {
start,
done,
set,
inc
}
}