add authentication routes, components, and pages including AuthHome, Login, and SignUp, and implement form fields utility functions
```
This commit is contained in:
louiscklaw
2025-05-12 19:22:00 +08:00
parent ee0aa0353b
commit 3f10a0728c
14 changed files with 543 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
import { useState } from 'react';
export const useFormInput = (initialValue = '') => {
const [value, setValue] = useState(initialValue);
const handleChange = async (e) => {
const tempValue = await e.currentTarget.value;
setValue(tempValue);
};
return {
value,
reset: (newValue) => setValue(newValue),
onIonChange: handleChange,
onKeyUp: handleChange,
};
};
export const validateForm = (fields) => {
let errors = [];
fields.forEach((field) => {
if (field.required) {
const fieldValue = field.input.state.value;
if (fieldValue === '') {
const error = {
id: field.id,
message: `Please check your ${field.id}`,
};
errors.push(error);
}
}
});
return errors;
};