2026-01-07 15:41:36 +01:00

32 lines
1.1 KiB
TypeScript

import AdminResourceList from "@/app/features/AdminList/AdminResourceList";
import { IAddModalField } from "@/app/components/AddModal/types";
import { PERMISSION_FIELDS } from "../constants";
import { fetchAdminResource } from "@/app/services/adminResources";
export default async function PermissionsPage() {
let initialData = null;
try {
initialData = await fetchAdminResource({
resource: "permissions",
pagination: { page: 1, limit: 100 },
});
} catch (error) {
console.error("Failed to fetch permissions server-side:", error);
// Continue without initial data - component will fetch client-side
}
return (
<AdminResourceList
title="Permissions"
endpoint="/api/dashboard/admin/permissions"
responseCollectionKeys={["permissions", "data", "items"]}
primaryLabelKeys={["name", "permissionName", "title", "description"]}
chipKeys={["status", "scope", "category"]}
addModalFields={PERMISSION_FIELDS as IAddModalField[]}
showEnabledToggle={true}
initialData={initialData}
/>
);
}