31 lines
1.1 KiB
TypeScript
31 lines
1.1 KiB
TypeScript
import Link from "next/link";
|
|
import { getTranslations } from "next-intl/server";
|
|
import { Image } from "lucide-react";
|
|
import { AdminMediaGrid } from "@/components/admin/media-grid";
|
|
|
|
export default async function AdminMediaPage() {
|
|
const t = await getTranslations("pages.admin.media");
|
|
|
|
return (
|
|
<main>
|
|
<div className="flex items-center gap-3 mb-6">
|
|
<div className="w-10 h-10 rounded-xl bg-gradient-to-br from-[var(--admin-accent)]/20 to-[var(--admin-accent)]/5 grid place-items-center">
|
|
<Image size={20} className="text-[var(--admin-accent)]" />
|
|
</div>
|
|
<div className="flex-1">
|
|
<h1 className="m-0 text-xl font-extrabold text-[var(--admin-text)]">{t("title")}</h1>
|
|
<p className="m-0 text-xs text-[var(--admin-text-muted)] mt-0.5">{t("subtitle")}</p>
|
|
</div>
|
|
<Link
|
|
href="/admin/articles"
|
|
className="text-sm theme-text-muted dark:theme-text-muted"
|
|
style={{ fontSize: "0.88rem" }}
|
|
>
|
|
← {t("articles")}
|
|
</Link>
|
|
</div>
|
|
<AdminMediaGrid />
|
|
</main>
|
|
);
|
|
}
|