feat: update Dashboard page

- Perubahan tampilan dan modal pada halaman Dashboard
- Tambah schema dan type untuk Gacha Item
- Gunakan form dan Toast
This commit is contained in:
Hafid Nur
2025-04-05 09:36:49 +07:00
parent e805e5fd41
commit 0e3dc101d5
8 changed files with 327 additions and 198 deletions
@@ -17,16 +17,27 @@ export const ControlledInputField = <T extends FieldValues>(
const { field, fieldState } = useController<T>(props);
const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {
const value =
props.type === 'number' ? Number(e.target.value) : e.target.value;
let value;
if (props.type === 'number') {
value = Number(e.target.value);
} else if (props.type === 'file') {
value = e.target.files?.[0];
} else {
value = e.target.value;
}
field.onChange(value);
};
const inputProps =
props.type === 'file'
? { ...props, ...field, value: undefined }
: { ...props, ...field };
return (
<InputField
error={fieldState.error?.message}
{...props}
{...field}
{...inputProps}
onChange={handleChange}
/>
);