'use client' import { useForm } from 'react-hook-form' import { zodResolver } from '@hookform/resolvers/zod' import { z } from 'zod' import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card' import { Button } from '@/components/ui/button' import { Input } from '@/components/ui/input' import { Label } from '@/components/ui/label' import { Loader2, ArrowRight, ArrowLeft } from 'lucide-react' import type { EntityType } from '@/types' const schema = z.object({ company_name: z.string().min(1, 'Företagsnamn krävs'), org_number: z.string().min(1, 'Organisationsnummer krävs'), address_line1: z.string().optional(), postal_code: z.string().optional(), city: z.string().optional(), }) type FormData = z.infer interface Step2Props { initialData: Partial entityType?: EntityType onNext: (data: FormData) => void onBack: () => void isSaving: boolean } export default function Step2CompanyDetails({ initialData, entityType, onNext, onBack, isSaving, }: Step2Props) { const { register, handleSubmit, formState: { errors }, } = useForm({ resolver: zodResolver(schema), defaultValues: { company_name: initialData.company_name || '', org_number: initialData.org_number || '', address_line1: initialData.address_line1 || '', postal_code: initialData.postal_code || '', city: initialData.city || '', }, }) const isAB = entityType === 'aktiebolag' return (

Företagsuppgifter

Fyll i uppgifter om din verksamhet. Dessa används på fakturor.

Grunduppgifter {isAB ? 'Ange bolagets registrerade namn och organisationsnummer.' : 'Ange namn på din verksamhet.'}
{errors.company_name && (

{errors.company_name.message}

)}
{errors.org_number && (

{errors.org_number.message}

)}

{isAB ? 'Obligatoriskt för aktiebolag' : 'Vid enskild firma är orgnummer samma som ditt personnummer'}

Adress (för fakturor)

) }