import type { Route } from './+types/route' import { useToggle } from 'ahooks' import { CalendarIcon, SearchIcon, CopyIcon, CopyPlusIcon, Trash2Icon, PlusIcon } from 'lucide-react' import { Link } from 'react-router' import { Controller, useFieldArray, useForm } from 'react-hook-form' import { Fragment, useState } from 'react' import { format } from 'date-fns' import { ptBR } from 'react-day-picker/locale' import { Breadcrumb, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator } from '@repo/ui/components/ui/breadcrumb' import { InputGroup, InputGroupAddon, InputGroupInput, InputGroupText } from '@repo/ui/components/ui/input-group' import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@repo/ui/components/ui/card' import { Spinner } from '@repo/ui/components/ui/spinner' import { Input } from '@repo/ui/components/ui/input' import { Button } from '@repo/ui/components/ui/button' import { Separator } from '@repo/ui/components/ui/separator' import { Popover, PopoverContent, PopoverTrigger } from '@repo/ui/components/ui/popover' import { Label } from '@repo/ui/components/ui/label' import { Calendar } from '@repo/ui/components/ui/calendar' import { data } from 'react-router' export function meta({}: Route.MetaArgs) { return [{ title: 'Adicionar matrícula' }] } export default function Route({}: Route.ComponentProps) { const form = useForm({ defaultValues: { enrollments: [{}] } }) const { formState, control, handleSubmit, getValues } = form const { fields, insert, remove, append } = useFieldArray({ control, name: 'enrollments' }) const onSubmit = async (data) => { console.log(data) } const duplicateRow = (index: number, times: number = 1) => { const values = getValues(`enrollments.${index}`) Array.from({ length: times }, (_, i) => { insert(index + 1 + i, values) }) } return (