import DeleteUserModal from "@/components/ModalContent/DeleteUserModal"; import { User as U } from "@prisma/client"; import { TFunction } from "i18next"; interface User extends U { subscriptions: { active: boolean; }; } type UserModal = { isOpen: boolean; userId: number | null; }; const UserListing = ( users: User[], deleteUserModal: UserModal, setDeleteUserModal: Function, t: TFunction<"translation", undefined> ) => { return (
{process.env.NEXT_PUBLIC_EMAIL_PROVIDER === "true" && ( )} {process.env.NEXT_PUBLIC_STRIPE === "true" && ( )} {users.map((user, index) => ( {process.env.NEXT_PUBLIC_EMAIL_PROVIDER === "true" && ( )} {process.env.NEXT_PUBLIC_STRIPE === "true" && ( )} ))}
{t("username")}{t("email")}{t("subscribed")}{t("created_at")}
{index + 1} {user.username ? user.username : {t("not_available")}} {user.email} {user.subscriptions?.active ? ( ) : ( )} {new Date(user.createdAt).toLocaleString()}
{deleteUserModal.isOpen && deleteUserModal.userId ? ( setDeleteUserModal({ isOpen: false, userId: null })} userId={deleteUserModal.userId} /> ) : null}
); }; export default UserListing;