import { getLocale, getTranslations } from "next-intl/server";
import { Pill } from "@/components/mockup-ui";
import { formatDateKey, formatInstantDate } from "@/lib/trial/dates";
import { computeTrialState, type TenantTrialRow } from "@/server/services/trial/state";
/** L15 Testphase: plan badge(s) in the platform tenant list ("Test bis …", "abgelaufen – nur lesen", "Löschung am …"). */
export async function TrialBadge({ tenant }: { tenant: TenantTrialRow }) {
const [t, locale] = await Promise.all([getTranslations("trial.platform"), getLocale()]);
if (tenant.trialDeletedAt) return {t("badgeDeleted")};
const state = computeTrialState(tenant);
if (!state.isTrial) return {t("badgeFull")};
return (
{state.expired ? {t("badgeExpired")} : {t("badgeUntil", { date: formatDateKey(state.endDateKey!, locale) })}}
{state.deletionDueAt && {t("badgeDeletion", { date: formatInstantDate(state.deletionDueAt, locale) })}}
);
}