Something went wrong. Try again.
Bluesky app fork with some witchin' additions 💫 forked from jollywhoppers.com/witchsky.app
Something went wrong. Try again.
482 B · 15 lines
TypeScript
at main
12345678910111213141516import React from 'react'
export function useDelayedLoading(delay: number, initialState: boolean = true) { const [isLoading, setIsLoading] = React.useState(initialState)
React.useEffect(() => { let timeout: NodeJS.Timeout // on initial load, show a loading spinner for a hot sec to prevent flash if (isLoading) timeout = setTimeout(() => setIsLoading(false), delay)
return () => timeout && clearTimeout(timeout) }, [isLoading, delay])
return isLoading}