Files
porridger/front/src/hooks/api/useSignIn.ts
2023-08-15 23:33:58 +03:00

36 lines
840 B
TypeScript

import useSendWithButton from '../useSendWithButton'
import { composeTokenURL, processToken } from '../../api/token'
import { isTokenResponse } from '../../api/token/types'
import { setToken } from '../../utils/auth'
function useSignIn() {
const { doSend, button } = useSendWithButton(
'Мы уже знакомы',
'Войдено',
false,
composeTokenURL(),
'POST',
false,
isTokenResponse,
processToken,
)
async function handleSignIn(formData: FormData) {
const token = await doSend({}, {
body: formData,
})
if (token !== null && token !== undefined) {
setToken(token)
return true
}
return false
}
return { handleSignIn, signInButton: button }
}
export default useSignIn