'use client'; import React from 'react'; import dynamic from 'next/dynamic'; import { Input } from '@/components/ui/input'; import { Label } from '@/components/ui/label'; import { Button } from '@/components/ui/button'; // Lazy-load TipTap-based editor — keeps it out of the initial bundle. const RichTextEditor = dynamic( () => import('@/components/ui/rich-text-editor').then((m) => m.RichTextEditor), { ssr: false, loading: () => (
), } ); import { Project } from '@/components/dashboard/resume-component'; import { Plus, Trash2, Github, Globe } from 'lucide-react'; import { useTranslations } from '@/lib/i18n'; interface ProjectsFormProps { data: Project[]; onChange: (data: Project[]) => void; } export const ProjectsForm: React.FC{t('builder.genericItemForm.noEntries', { label: t('resume.sections.projects') })}