export const login = createServerFn({ method: 'POST' })
.validator(loginSchema)
.handler(async ({ data ) => {
const user = await getUserFromEmail(data.email)
if (!user || !user.passwordHash) {
throw new Error("Incorrect username or password.")
}
const passwordMatch = await argon2.verify(user.passwordHash, data.password)
if (!passwordMatch) {
throw new Error("Incorrect username or password.")
}
const session = await createSession(user.id)
return { session }
})
export const login = createServerFn({ method: 'POST' })
.validator(loginSchema)
.handler(async ({ data ) => {
const user = await getUserFromEmail(data.email)
if (!user || !user.passwordHash) {
throw new Error("Incorrect username or password.")
}
const passwordMatch = await argon2.verify(user.passwordHash, data.password)
if (!passwordMatch) {
throw new Error("Incorrect username or password.")
}
const session = await createSession(user.id)
return { session }
})