"use client"; import { useFormContext } from "react-hook-form"; import { useLocale } from "@calcom/lib/hooks/useLocale"; import { Button } from "@calcom/ui/components/button"; import { Label, TextField, Select } from "@calcom/ui/components/form"; import { XIcon } from "@coss/ui/icons"; import type { InviteRole } from "../store/onboarding-store"; type BaseInviteFormData = { email: string; role: InviteRole; }; type InviteFormDataWithOptionalTeam = BaseInviteFormData & { team?: string; }; type InviteFormDataWithRequiredTeam = BaseInviteFormData & { team: string; }; type InviteFormData = InviteFormDataWithOptionalTeam | InviteFormDataWithRequiredTeam; type EmailInviteFormProps = { fields: Array<{ id: string }>; append: (value: InviteFormData) => void; remove: (index: number) => void; defaultRole: InviteRole; showTeamSelect?: boolean; teams?: Array<{ value: string; label: string }>; emailPlaceholder?: string; }; export function EmailInviteForm({ fields, append, remove, defaultRole, showTeamSelect = false, teams = [], emailPlaceholder, }: EmailInviteFormProps) { const { t } = useLocale(); const { register, watch, setValue } = useFormContext(); return (