import Layout from "@/components/High/Layout"; import useUser from "@/hooks/useUser"; import useUsers from "@/hooks/useUsers"; import {sessionOptions} from "@/lib/session"; import useFilterStore from "@/stores/listFilterStore"; import {withIronSessionSsr} from "iron-session/next"; import Head from "next/head"; import {useRouter} from "next/router"; import {useEffect} from "react"; import {BsArrowLeft} from "react-icons/bs"; import {ToastContainer} from "react-toastify"; import UserList from "../(admin)/Lists/UserList"; export const getServerSideProps = withIronSessionSsr(({req, res}) => { const user = req.session.user; const envVariables: {[key: string]: string} = {}; Object.keys(process.env) .filter((x) => x.startsWith("NEXT_PUBLIC")) .forEach((x: string) => { envVariables[x] = process.env[x]!; }); if (!user || !user.isVerified) { return { redirect: { destination: "/login", permanent: false, }, }; } return { props: {user: req.session.user, envVariables}, }; }, sessionOptions); export default function UsersListPage() { const {user} = useUser(); const [filters, clearFilters] = useFilterStore((state) => [state.userFilters, state.clearUserFilters]); const router = useRouter(); return ( <>