feat(admin, i18n): enhance reports, draws, config, and player workflows
This commit is contained in:
@@ -1,6 +1,10 @@
|
||||
import { buildPageMetadata } from "@/lib/page-metadata";
|
||||
import { AdminPermissionGate } from "@/components/admin/admin-permission-gate";
|
||||
import { DrawDetailConsole } from "@/modules/draws/draw-detail-console";
|
||||
import { PRD_DRAW_ACCESS_ANY } from "@/lib/admin-prd";
|
||||
import type { Metadata } from "next";
|
||||
|
||||
export const metadata: Metadata = buildPageMetadata("draws", "drawDetail");
|
||||
|
||||
export default async function AdminDrawDetailPage(props: {
|
||||
params: Promise<{ drawId: string }>;
|
||||
|
||||
@@ -1,12 +1,7 @@
|
||||
import { notFound } from "next/navigation";
|
||||
import { AdminPermissionGate } from "@/components/admin/admin-permission-gate";
|
||||
import { PRD_REPORTS_VIEW_ACCESS_ANY } from "@/lib/admin-prd";
|
||||
import { notFound, redirect } from "next/navigation";
|
||||
import { buildPageMetadata } from "@/lib/page-metadata";
|
||||
import { ReportsConsole } from "@/modules/reports/reports-console";
|
||||
import type { Metadata } from "next";
|
||||
|
||||
type Category = "profit" | "wallet" | "risk" | "audit";
|
||||
|
||||
export const metadata: Metadata = buildPageMetadata("reports", "title");
|
||||
|
||||
export default async function AdminReportsCategoryPage({
|
||||
@@ -18,9 +13,5 @@ export default async function AdminReportsCategoryPage({
|
||||
if (!["profit", "wallet", "risk", "audit"].includes(category)) {
|
||||
notFound();
|
||||
}
|
||||
return (
|
||||
<AdminPermissionGate requiredAny={PRD_REPORTS_VIEW_ACCESS_ANY}>
|
||||
<ReportsConsole initialCategory={category as Category} />
|
||||
</AdminPermissionGate>
|
||||
);
|
||||
redirect("/admin/reports");
|
||||
}
|
||||
|
||||
@@ -1,13 +1,9 @@
|
||||
import type { ReactNode } from "react";
|
||||
import { ModuleScaffold } from "@/components/admin/module-scaffold";
|
||||
import { ReportsSubnav } from "@/modules/reports/reports-subnav";
|
||||
|
||||
export default function AdminReportsLayout({ children }: { children: ReactNode }) {
|
||||
return (
|
||||
<ModuleScaffold>
|
||||
<div className="sticky top-14 z-20 bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/80">
|
||||
<ReportsSubnav />
|
||||
</div>
|
||||
{children}
|
||||
</ModuleScaffold>
|
||||
);
|
||||
|
||||
@@ -1,16 +1,5 @@
|
||||
import { notFound } from "next/navigation";
|
||||
import { AdminPermissionGate } from "@/components/admin/admin-permission-gate";
|
||||
import { PRD_REPORTS_VIEW_ACCESS_ANY } from "@/lib/admin-prd";
|
||||
import { buildPageMetadata } from "@/lib/page-metadata";
|
||||
import { ReportsConsole } from "@/modules/reports/reports-console";
|
||||
import type { Metadata } from "next";
|
||||
import { redirect } from "next/navigation";
|
||||
|
||||
export const metadata: Metadata = buildPageMetadata("reports", "legacyTitle");
|
||||
|
||||
export default function AdminReportsLegacyPage(): React.ReactElement {
|
||||
return (
|
||||
<AdminPermissionGate requiredAny={PRD_REPORTS_VIEW_ACCESS_ANY}>
|
||||
<ReportsConsole initialCategory="legacy" />
|
||||
</AdminPermissionGate>
|
||||
);
|
||||
export default function AdminReportsLegacyPage() {
|
||||
redirect("/admin/reports/profit");
|
||||
}
|
||||
|
||||
@@ -1,5 +1,11 @@
|
||||
import { redirect } from "next/navigation";
|
||||
import { AdminPermissionGate } from "@/components/admin/admin-permission-gate";
|
||||
import { PRD_REPORTS_VIEW_ACCESS_ANY } from "@/lib/admin-prd";
|
||||
import { ReportsConsole } from "@/modules/reports/reports-console";
|
||||
|
||||
export default function AdminReportsPage() {
|
||||
redirect("/admin/reports/profit");
|
||||
return (
|
||||
<AdminPermissionGate requiredAny={PRD_REPORTS_VIEW_ACCESS_ANY}>
|
||||
<ReportsConsole />
|
||||
</AdminPermissionGate>
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user