"use client"; import { Tag, BookOpen } from "lucide-react"; import { PoolManager } from "./PoolManager"; import { addTaxonomyValue, removeTaxonomyValue } from "@/app/admin/impostazioni/actions"; type FieldDef = { id: string; label: string }; const OFFER_FIELDS: FieldDef[] = [ { id: "offer_categoria", label: "Categoria" }, { id: "offer_ticket", label: "Ticket" }, { id: "offer_tipo", label: "Tipo" }, { id: "offer_obiettivo", label: "Obiettivo" }, ]; const CATALOG_FIELDS: FieldDef[] = [ { id: "service_fase", label: "Fase" }, { id: "service_offerta", label: "Offerta" }, { id: "service_pacchetto", label: "Pacchetto" }, ]; function Section({ icon, title, subtitle, fields, pools, }: { icon: React.ReactNode; title: string; subtitle: string; fields: FieldDef[]; pools: Record; }) { return (
{icon}

{title}

{subtitle}

{fields.map((f) => ( addTaxonomyValue(f.id, v)} onRemove={(v) => removeTaxonomyValue(f.id, v)} /> ))}
); } export function TaxonomyManager({ pools }: { pools: Record }) { return (
} title="Tassonomie Offerte" subtitle="Valori dei campi Categoria, Ticket, Tipo e Obiettivo dell'editor offerte." fields={OFFER_FIELDS} pools={pools} />
} title="Tassonomie Catalogo" subtitle="Valori dei campi Fase, Offerta e Pacchetto del catalogo servizi." fields={CATALOG_FIELDS} pools={pools} />

I valori si sincronizzano ovunque: creandone uno dall'editor offerte o dal catalogo comparirà qui automaticamente. Eliminando un valore da qui viene rimosso ovunque sia usato.

); }