mirror of
https://github.com/formbricks/formbricks.git
synced 2026-01-23 18:59:14 -06:00
fix build error on vercel, fix types in invite api
This commit is contained in:
@@ -15,7 +15,7 @@ import { PaperAirplaneIcon, TrashIcon } from "@heroicons/react/24/outline";
|
||||
import { useState } from "react";
|
||||
import AddMemberModal from "./AddMemberModal";
|
||||
|
||||
export function EditMembers({ environmentId }) {
|
||||
export function EditMemberships({ environmentId }) {
|
||||
const { team, isErrorTeam, isLoadingTeam, mutateTeam } = useTeam(environmentId);
|
||||
|
||||
const [isAddMemberModalOpen, setAddMemberModalOpen] = useState(false);
|
||||
@@ -53,7 +53,7 @@ export function EditMembers({ environmentId }) {
|
||||
}
|
||||
|
||||
if (isErrorTeam) {
|
||||
console.log(isErrorTeam);
|
||||
console.error(isErrorTeam);
|
||||
return <div>Error</div>;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import SettingsCard from "../SettingsCard";
|
||||
import SettingsTitle from "../SettingsTitle";
|
||||
import { EditMembers } from "./EditMembers";
|
||||
import { EditMemberships } from "./EditMemberships";
|
||||
import { EditTeamName } from "./EditTeamName";
|
||||
|
||||
export default function MembersSettingsPage({ params }) {
|
||||
@@ -8,7 +8,7 @@ export default function MembersSettingsPage({ params }) {
|
||||
<div>
|
||||
<SettingsTitle title="Team Members" />
|
||||
<SettingsCard title="Manage members" description="Add or remove members in your team.">
|
||||
<EditMembers environmentId={params.environmentId} />
|
||||
<EditMemberships environmentId={params.environmentId} />
|
||||
</SettingsCard>
|
||||
<SettingsCard title="Team Name" description="Change the name of your team. Just in case.">
|
||||
<EditTeamName />
|
||||
|
||||
@@ -2,28 +2,6 @@ import { getSessionOrUser } from "@/lib/api/apiHelper";
|
||||
import { prisma } from "@formbricks/database";
|
||||
import type { NextApiRequest, NextApiResponse } from "next";
|
||||
|
||||
type Member = {
|
||||
user?: {
|
||||
name: string | null;
|
||||
email: string;
|
||||
};
|
||||
accepted: boolean;
|
||||
userId: string;
|
||||
role: any;
|
||||
name?: string;
|
||||
email?: string;
|
||||
};
|
||||
|
||||
type Invite = {
|
||||
accepted: boolean;
|
||||
id?: string;
|
||||
inviteId?: string;
|
||||
name: string | null;
|
||||
email: string;
|
||||
acceptorId: string | null;
|
||||
role: any;
|
||||
};
|
||||
|
||||
export default async function handle(req: NextApiRequest, res: NextApiResponse) {
|
||||
// Check Authentication
|
||||
const user: any = await getSessionOrUser(req, res);
|
||||
@@ -67,7 +45,7 @@ export default async function handle(req: NextApiRequest, res: NextApiResponse)
|
||||
});
|
||||
}
|
||||
|
||||
const members: Member[] = await prisma.membership.findMany({
|
||||
const membersData = await prisma.membership.findMany({
|
||||
where: { teamId },
|
||||
select: {
|
||||
user: {
|
||||
@@ -81,13 +59,17 @@ export default async function handle(req: NextApiRequest, res: NextApiResponse)
|
||||
role: true,
|
||||
},
|
||||
});
|
||||
members.forEach((member: Member) => {
|
||||
member.name = member.user?.name || "";
|
||||
member.email = member.user?.email || "";
|
||||
delete member.user;
|
||||
const members = membersData.map((member) => {
|
||||
return {
|
||||
name: member.user?.name || "",
|
||||
email: member.user?.email || "",
|
||||
userId: member.userId,
|
||||
accepted: member.accepted,
|
||||
role: member.role,
|
||||
};
|
||||
});
|
||||
|
||||
const invitees: Invite[] = await prisma.invite.findMany({
|
||||
const inviteeData = await prisma.invite.findMany({
|
||||
where: { teamId, accepted: false },
|
||||
select: {
|
||||
id: true,
|
||||
@@ -98,9 +80,15 @@ export default async function handle(req: NextApiRequest, res: NextApiResponse)
|
||||
accepted: true,
|
||||
},
|
||||
});
|
||||
invitees.forEach((invite: Invite) => {
|
||||
invite.inviteId = invite.id;
|
||||
delete invite.id;
|
||||
const invitees = inviteeData.map((invite) => {
|
||||
return {
|
||||
name: invite.name,
|
||||
email: invite.email,
|
||||
inviteId: invite.id,
|
||||
acceptorId: invite.acceptorId,
|
||||
role: invite.role,
|
||||
accepted: invite.accepted,
|
||||
};
|
||||
});
|
||||
|
||||
return res.json({ members, invitees, teamId });
|
||||
|
||||
Reference in New Issue
Block a user