'use client' import { useState } from 'react' import { Button } from '@/components/ui/button' import { Switch } from '@/components/ui/switch' import { cn } from '@/lib/utils' import { getSector } from '@/lib/extensions/sectors' import { resolveIcon } from '@/lib/extensions/icon-resolver' import CategoryBadge from '@/components/extensions/CategoryBadge' import { ArrowRight, Loader2 } from 'lucide-react' import type { SectorSlug, ExtensionDefinition } from '@/lib/extensions/types' interface Step3Props { sectorSlug: string | null onNext: (data: { enabled_extensions: { sector_slug: string; extension_slug: string }[] }) => void onBack: () => void isSaving: boolean } export default function Step3ExtensionSuggestions({ sectorSlug, onNext, onBack, isSaving }: Step3Props) { const generalSector = getSector('general') const selectedSector = sectorSlug ? getSector(sectorSlug as SectorSlug) : null const [toggles, setToggles] = useState>({}) const handleToggle = (ext: ExtensionDefinition) => { const key = `${ext.sector}/${ext.slug}` setToggles(prev => ({ ...prev, [key]: !prev[key] })) } const handleSubmit = () => { const enabled = Object.entries(toggles) .filter(([, enabled]) => enabled) .map(([key]) => { const [sector_slug, extension_slug] = key.split('/') return { sector_slug, extension_slug } }) onNext({ enabled_extensions: enabled }) } const handleSkip = () => { onNext({ enabled_extensions: [] }) } // Group: first general, then sector-specific const sections: { label: string; extensions: ExtensionDefinition[] }[] = [] if (generalSector) { sections.push({ label: generalSector.name, extensions: generalSector.extensions }) } if (selectedSector) { sections.push({ label: selectedSector.name, extensions: selectedSector.extensions }) } const enabledCount = Object.values(toggles).filter(Boolean).length return (

Välj dina tillägg

Aktivera de verktyg du vill använda. Du kan alltid ändra detta senare under Tillägg.

{sections.map(section => (

{section.label}

{section.extensions.map(ext => { const Icon = resolveIcon(ext.icon) const key = `${ext.sector}/${ext.slug}` const isEnabled = toggles[key] ?? false return (

{ext.name}

{ext.description}

handleToggle(ext)} />
) })}
))}
) }