import type { NextApiRequest, NextApiResponse } from "next"; import { getServerSession } from "next-auth/next"; import { authOptions } from "pages/api/auth/[...nextauth]"; import getLinks from "@/lib/api/controllers/links/getLinks"; import postLink from "@/lib/api/controllers/links/postLink"; type Data = { response: object[] | string; }; export default async function ( req: NextApiRequest, res: NextApiResponse ) { const session = await getServerSession(req, res, authOptions); if (!session?.user?.email) { return res.status(401).json({ response: "You must be logged in." }); } // Check if user is unauthorized to the collection (If isn't owner or doesn't has the required permission...) // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! if (req.method === "GET") return await getLinks(req, res, session); if (req.method === "POST") return await postLink(req, res, session); }