mirror of
https://github.com/Thream/website.git
synced 2024-07-21 09:28:32 +02:00
a0fa66e8f5
Co-authored-by: Walid <87608619+WalidKorchi@users.noreply.github.com>
16 lines
439 B
TypeScript
16 lines
439 B
TypeScript
import { useState } from 'react'
|
|
|
|
export const formState = ['idle', 'loading', 'error', 'success'] as const
|
|
|
|
export type FormState = typeof formState[number]
|
|
|
|
export const useFormState = (
|
|
initialFormState: FormState = 'idle'
|
|
): [
|
|
formState: FormState,
|
|
setFormState: React.Dispatch<React.SetStateAction<FormState>>
|
|
] => {
|
|
const [formState, setFormState] = useState<FormState>(initialFormState)
|
|
return [formState, setFormState]
|
|
}
|