diff --git a/apps/admin.saladeaula.digital/app/routes/_.$orgid.enrollments.add/route.tsx b/apps/admin.saladeaula.digital/app/routes/_.$orgid.enrollments.add/route.tsx index f34175d..3157767 100644 --- a/apps/admin.saladeaula.digital/app/routes/_.$orgid.enrollments.add/route.tsx +++ b/apps/admin.saladeaula.digital/app/routes/_.$orgid.enrollments.add/route.tsx @@ -1,6 +1,6 @@ import type { Route } from './+types/route' -import { ptBR } from 'react-day-picker/locale' +import { useToggle } from 'ahooks' import { CalendarIcon, SearchIcon, @@ -10,7 +10,10 @@ import { PlusIcon } from 'lucide-react' import { Link } from 'react-router' -import { useFieldArray, useForm } from 'react-hook-form' +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, @@ -20,11 +23,6 @@ import { BreadcrumbPage, BreadcrumbSeparator } from '@repo/ui/components/ui/breadcrumb' -import { - Tooltip, - TooltipContent, - TooltipTrigger -} from '@repo/ui/components/ui/tooltip' import { InputGroup, InputGroupAddon, @@ -49,6 +47,7 @@ import { } 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' }] @@ -56,12 +55,23 @@ export function meta({}: Route.MetaArgs) { export default function Route({}: Route.ComponentProps) { const form = useForm({ defaultValues: { enrollments: [{}] } }) - const { formState, control } = form - const { fields, append, remove } = useFieldArray({ + 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 (