/* eslint-disable @next/next/no-img-element */ import Head from "next/head"; import { withIronSessionSsr } from "iron-session/next"; import { sessionOptions } from "@/lib/session"; import { shouldRedirectHome } from "@/utils/navigation.disabled"; import { Permission } from "@/interfaces/permissions"; import { getPermissionDocs } from "@/utils/permissions.be"; import { User } from "@/interfaces/user"; import Layout from "@/components/High/Layout"; import Link from "next/link"; export const getServerSideProps = withIronSessionSsr(async ({ req }) => { const user = req.session.user; if (!user || !user.isVerified) { return { redirect: { destination: "/login", permanent: false, }, }; } if (shouldRedirectHome(user)) { return { redirect: { destination: "/", permanent: false, }, }; } // Fetch data from external API const permissions: Permission[] = await getPermissionDocs(); console.log("Permissions", permissions); // const res = await fetch("api/permissions"); // const permissions: Permission[] = await res.json(); // Pass data to the page via props return { props: { // permissions: permissions.map((p) => ({ id: p.id, type: p.type })), permissions: permissions.map((p) => { const { users, ...rest } = p; return rest; }), user: req.session.user, }, }; }, sessionOptions); interface Props { permissions: Permission[]; user: User; } export default function Page(props: Props) { console.log("Props", props); const { permissions, user } = props; return ( <>