snapshot of https://github.com/shadcn-ui/ui.git (main, 2026-09-15; blobs > 131072B omitted)
This commit is contained in:
19
apps/v4/hooks/use-delayed-status.ts
Normal file
19
apps/v4/hooks/use-delayed-status.ts
Normal file
@@ -0,0 +1,19 @@
|
||||
import * as React from "react"
|
||||
import type { ChatStatus } from "ai"
|
||||
|
||||
export function useDelayedStatus(status: ChatStatus, delay: number) {
|
||||
const [delayedStatus, setDelayedStatus] = React.useState(status)
|
||||
|
||||
React.useEffect(() => {
|
||||
const timeout = window.setTimeout(
|
||||
() => {
|
||||
setDelayedStatus(status)
|
||||
},
|
||||
status === "submitted" ? delay : 0
|
||||
)
|
||||
|
||||
return () => window.clearTimeout(timeout)
|
||||
}, [delay, status])
|
||||
|
||||
return delayedStatus
|
||||
}
|
||||
Reference in New Issue
Block a user