import Image from "next/image";
import { AnnuncioActions } from "~/components/servizio/annuncio_actions";
import { Interactions } from "~/components/servizio/interactions";
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 { useServizioAnnuncio } from "~/providers/ServizioProvider";
import type { AnnuncioRicerca } from "~/server/controllers/annunci.controller";
import { AnnuncioDettaglio, TipoBadge } from "./annuncio_dettaglio";
export const AnnuncioCard = ({
className,
confirming,
}: {
className?: string;
confirming?: boolean;
}) => {
const { data } = useServizioAnnuncio();
return (
}
className={className}
confirming={confirming}
data={{
...data,
modificato_il: data.modificato_il ? new Date(data.modificato_il) : null,
media_updated_at: data.media_updated_at
? new Date(data.media_updated_at)
: null,
}}
interactions={}
/>
);
};
export const AnnuncioDisplay = ({
data,
confirming,
}: {
data: AnnuncioRicerca;
confirming?: boolean;
}) => {
const { t } = useTranslation();
return (
{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)}
);
};
export const BasicAnnuncioCard = ({
actions,
interactions,
className,
data,
confirming,
}: {
actions?: React.ReactNode;
interactions?: React.ReactNode;
className?: string;
data: AnnuncioRicerca;
confirming?: boolean;
}) => {
return (
Annuncio {data.codice}
{actions}
);
};