import { createFileRoute, useNavigate } from '@tanstack/react-router' import { useForm } from 'react-hook-form' import { toast } from 'sonner' import { ArrowLeftOutlined } from '@ant-design/icons' import { Button } from '@imphnen-frontend-service/ui/atoms' import { ControlledInputField } from '@imphnen-frontend-service/ui/organisms' import { useCreateGachaItem } from '@imphnen-frontend-service/service' export const Route = createFileRoute('/_authenticated/dashboard/create')({ component: DashboardCreatePage, }) function DashboardCreatePage() { const navigate = useNavigate() const createItem = useCreateGachaItem() const form = useForm<{ itemName: string; quantity: number; foto?: FileList }>({ mode: 'all', defaultValues: { itemName: '', quantity: 1 }, }) const onSubmit = form.handleSubmit(async (data) => { try { await createItem.mutateAsync({ item_code: (data.itemName as string).toLowerCase().replace(/\s+/g, '-'), name: data.itemName, description: '', rarity: 'common', type_: 'physical', category: 'merchandise', value: 0, weight: 1, stock: data.quantity ?? 1, is_limited: false, }) toast.success('Item ditambahkan ke gacha item') navigate({ to: '/dashboard' }) } catch (error) { console.log(error) toast.error('Item gagal ditambahkan ke gacha item') } }) return (

Tambah Item Gacha

) }