import { Toolbox } from "lucide-react"; import Image from "next/image"; import { AdminActions, UserActions, } from "~/components/servizio/annuncio_actions"; import { Card, CardContent, CardHeader, CardTitle } from "~/components/ui/card"; import { handleConsegna } from "~/lib/annuncio_details"; import { getStorageUrl } from "~/lib/storage_utils"; import { cn, formatCurrency } from "~/lib/utils"; import { useTranslation } from "~/providers/I18nProvider"; import { useServizio, useServizioAnnuncio } from "~/providers/ServizioProvider"; import type { AnnuncioRicerca } from "~/server/controllers/annunci.controller"; import { Button } from "../ui/button"; import { Collapsible, CollapsibleContent, CollapsibleTrigger, } from "../ui/collapsible"; import { AnnuncioDettaglio, TipoBadge } from "./annuncio_dettaglio"; export const AnnuncioCard = ({ className }: { className?: string }) => { const { isAdmin } = useServizio(); const { data } = useServizioAnnuncio(); return ( ) : ( ) } /> ); }; export const BasicAnnuncioCard = ({ interactions, className, data, }: { interactions?: React.ReactNode; className?: string; data: AnnuncioRicerca; }) => { return ( Annuncio {data.codice}
{interactions}
); }; export const AnnuncioDisplay = ({ data, className, }: { data: AnnuncioRicerca; className?: string; }) => { const { t } = useTranslation(); return (
{data.codice}
{data.titolo_it}
{handleConsegna({ aggiornamento: t.card.in_aggiornamento, consegna: data.consegna, consegna_da: t.card.consegna_da, mesi: t.parametri.mesi, subito: t.card.consegna_subito, })} {formatCurrency(data.prezzo / 1e2)}
); };