diff --git a/packages/features/ee/teams/components/TeamList.tsx b/packages/features/ee/teams/components/TeamList.tsx index 9cd893b95d..ee2918e80d 100644 --- a/packages/features/ee/teams/components/TeamList.tsx +++ b/packages/features/ee/teams/components/TeamList.tsx @@ -75,22 +75,6 @@ export default function TeamList(props: Props) { child: t("invite"), }} /> - {/* @TODO: uncomment once managed event types is live - } - variant="basic" - title={t("create_a_managed_event")} - description={t("create_a_one_one_template")} - actionButton={{ - href: - "/event-types?dialog=new-eventtype&eventPage=team%2F" + - team.slug + - "&teamId=" + - team.id + - "&managed=true", - child: t("create"), - }} - /> */} } variant="basic" diff --git a/packages/features/ee/teams/components/TeamListItem.tsx b/packages/features/ee/teams/components/TeamListItem.tsx index 6be6a2344d..047695419f 100644 --- a/packages/features/ee/teams/components/TeamListItem.tsx +++ b/packages/features/ee/teams/components/TeamListItem.tsx @@ -13,6 +13,7 @@ import type { RouterOutputs } from "@calcom/trpc/react"; import { trpc } from "@calcom/trpc/react"; import { Avatar, + Badge, Button, ButtonGroup, ConfirmationDialogContent, @@ -104,11 +105,15 @@ export default function TeamListItem(props: Props) {
{team.name} - {team.slug - ? orgBranding - ? `${orgBranding.fullDomain}/${team.slug}` - : `${process.env.NEXT_PUBLIC_WEBSITE_URL}/team/${team.slug}` - : "Unpublished team"} + {team.slug ? ( + orgBranding ? ( + `${orgBranding.fullDomain}/${team.slug}` + ) : ( + `${process.env.NEXT_PUBLIC_WEBSITE_URL}/team/${team.slug}` + ) + ) : ( + {t("upgrade")} + )}
@@ -180,13 +185,17 @@ export default function TeamListItem(props: Props) { )}
{!isInvitee ? ( - - {teamInfo} - + team.slug ? ( + + {teamInfo} + + ) : ( + {teamInfo} + ) ) : ( teamInfo )} @@ -388,3 +397,26 @@ const TeamPublishButton = ({ teamId }: { teamId: number }) => { ); }; + +const TeamPublishSection = ({ children, teamId }: { children: React.ReactNode; teamId: number }) => { + const router = useRouter(); + const publishTeamMutation = trpc.viewer.teams.publish.useMutation({ + onSuccess(data) { + router.push(data.url); + }, + onError: (error) => { + showToast(error.message, "error"); + }, + }); + + return ( + + ); +}; diff --git a/packages/features/ee/teams/components/TeamsListing.tsx b/packages/features/ee/teams/components/TeamsListing.tsx index 5b909484c7..53fa8b4b94 100644 --- a/packages/features/ee/teams/components/TeamsListing.tsx +++ b/packages/features/ee/teams/components/TeamsListing.tsx @@ -102,7 +102,6 @@ export function TeamsListing() {
)} - {title} `${NAMESPACE}.${s}`; export const viewerTeamsRouter = router({ // Retrieves team by id - get: authedProcedure.input(ZGetInputSchema).query(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.get) { - UNSTABLE_HANDLER_CACHE.get = await import("./get.handler").then((mod) => mod.getHandler); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.get) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.get({ - ctx, - input, - }); + get: authedProcedure.input(ZGetInputSchema).query(async (opts) => { + const handler = await importHandler(namespaced("get"), () => import("./get.handler")); + return handler(opts); }), - // Returns teams I a member of - list: authedProcedure.query(async ({ ctx }) => { - if (!UNSTABLE_HANDLER_CACHE.list) { - UNSTABLE_HANDLER_CACHE.list = await import("./list.handler").then((mod) => mod.listHandler); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.list) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.list({ - ctx, - }); + list: authedProcedure.query(async (opts) => { + const handler = await importHandler(namespaced("list"), () => import("./list.handler")); + return handler(opts); }), // Returns Teams I am a owner/admin of - listOwnedTeams: authedProcedure.query(async ({ ctx }) => { - if (!UNSTABLE_HANDLER_CACHE.listOwnedTeams) { - UNSTABLE_HANDLER_CACHE.listOwnedTeams = await import("./listOwnedTeams.handler").then( - (mod) => mod.listOwnedTeamsHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.listOwnedTeams) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.listOwnedTeams({ - ctx, - }); + listOwnedTeams: authedProcedure.query(async (opts) => { + const handler = await importHandler(namespaced("list"), () => import("./list.handler")); + return handler(opts); }), - - create: authedProcedure.input(ZCreateInputSchema).mutation(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.create) { - UNSTABLE_HANDLER_CACHE.create = await import("./create.handler").then((mod) => mod.createHandler); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.create) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.create({ - ctx, - input, - }); + create: authedProcedure.input(ZCreateInputSchema).mutation(async (opts) => { + const handler = await importHandler(namespaced("create"), () => import("./create.handler")); + return handler(opts); }), - // Allows team owner to update team metadata - update: authedProcedure.input(ZUpdateInputSchema).mutation(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.update) { - UNSTABLE_HANDLER_CACHE.update = await import("./update.handler").then((mod) => mod.updateHandler); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.update) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.update({ - ctx, - input, - }); + update: authedProcedure.input(ZUpdateInputSchema).mutation(async (opts) => { + const handler = await importHandler(namespaced("update"), () => import("./update.handler")); + return handler(opts); }), - - delete: authedProcedure.input(ZDeleteInputSchema).mutation(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.delete) { - UNSTABLE_HANDLER_CACHE.delete = await import("./delete.handler").then((mod) => mod.deleteHandler); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.delete) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.delete({ - ctx, - input, - }); + delete: authedProcedure.input(ZDeleteInputSchema).mutation(async (opts) => { + const handler = await importHandler(namespaced("delete"), () => import("./delete.handler")); + return handler(opts); }), - - removeMember: authedProcedure.input(ZRemoveMemberInputSchema).mutation(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.removeMember) { - UNSTABLE_HANDLER_CACHE.removeMember = await import("./removeMember.handler").then( - (mod) => mod.removeMemberHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.removeMember) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.removeMember({ - ctx, - input, - }); + removeMember: authedProcedure.input(ZRemoveMemberInputSchema).mutation(async (opts) => { + const handler = await importHandler(namespaced("removeMember"), () => import("./removeMember.handler")); + return handler(opts); }), - - inviteMember: authedProcedure.input(ZInviteMemberInputSchema).mutation(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.inviteMember) { - UNSTABLE_HANDLER_CACHE.inviteMember = await import("./inviteMember/inviteMember.handler").then( - (mod) => mod.inviteMemberHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.inviteMember) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.inviteMember({ - ctx, - input, - }); + inviteMember: authedProcedure.input(ZInviteMemberInputSchema).mutation(async (opts) => { + const handler = await importHandler( + namespaced("inviteMember"), + () => import("./inviteMember/inviteMember.handler") + ); + return handler(opts); }), - - acceptOrLeave: authedProcedure.input(ZAcceptOrLeaveInputSchema).mutation(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.acceptOrLeave) { - UNSTABLE_HANDLER_CACHE.acceptOrLeave = await import("./acceptOrLeave.handler").then( - (mod) => mod.acceptOrLeaveHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.acceptOrLeave) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.acceptOrLeave({ - ctx, - input, - }); + acceptOrLeave: authedProcedure.input(ZAcceptOrLeaveInputSchema).mutation(async (opts) => { + const handler = await importHandler(namespaced("acceptOrLeave"), () => import("./acceptOrLeave.handler")); + return handler(opts); }), - - changeMemberRole: authedProcedure.input(ZChangeMemberRoleInputSchema).mutation(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.changeMemberRole) { - UNSTABLE_HANDLER_CACHE.changeMemberRole = await import("./changeMemberRole.handler").then( - (mod) => mod.changeMemberRoleHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.changeMemberRole) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.changeMemberRole({ - ctx, - input, - }); + changeMemberRole: authedProcedure.input(ZChangeMemberRoleInputSchema).mutation(async (opts) => { + const handler = await importHandler( + namespaced("changeMemberRole"), + () => import("./changeMemberRole.handler") + ); + return handler(opts); }), - - getMemberAvailability: authedProcedure - .input(ZGetMemberAvailabilityInputSchema) - .query(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.getMemberAvailability) { - UNSTABLE_HANDLER_CACHE.getMemberAvailability = await import("./getMemberAvailability.handler").then( - (mod) => mod.getMemberAvailabilityHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.getMemberAvailability) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.getMemberAvailability({ - ctx, - input, - }); - }), - - getMembershipbyUser: authedProcedure - .input(ZGetMembershipbyUserInputSchema) - .query(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.getMembershipbyUser) { - UNSTABLE_HANDLER_CACHE.getMembershipbyUser = await import("./getMembershipbyUser.handler").then( - (mod) => mod.getMembershipbyUserHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.getMembershipbyUser) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.getMembershipbyUser({ - ctx, - input, - }); - }), - - updateMembership: authedProcedure.input(ZUpdateMembershipInputSchema).mutation(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.updateMembership) { - UNSTABLE_HANDLER_CACHE.updateMembership = await import("./updateMembership.handler").then( - (mod) => mod.updateMembershipHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.updateMembership) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.updateMembership({ - ctx, - input, - }); + getMemberAvailability: authedProcedure.input(ZGetMemberAvailabilityInputSchema).query(async (opts) => { + const handler = await importHandler( + namespaced("getMemberAvailability"), + () => import("./getMemberAvailability.handler") + ); + return handler(opts); }), - - publish: authedProcedure.input(ZPublishInputSchema).mutation(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.publish) { - UNSTABLE_HANDLER_CACHE.publish = await import("./publish.handler").then((mod) => mod.publishHandler); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.publish) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.publish({ - ctx, - input, - }); + getMembershipbyUser: authedProcedure.input(ZGetMembershipbyUserInputSchema).query(async (opts) => { + const handler = await importHandler( + namespaced("getMembershipbyUser"), + () => import("./getMembershipbyUser.handler") + ); + return handler(opts); + }), + updateMembership: authedProcedure.input(ZUpdateMembershipInputSchema).mutation(async (opts) => { + const handler = await importHandler( + namespaced("updateMembership"), + () => import("./updateMembership.handler") + ); + return handler(opts); + }), + publish: authedProcedure.input(ZPublishInputSchema).mutation(async (opts) => { + const handler = await importHandler(namespaced("publish"), () => import("./publish.handler")); + return handler(opts); }), - /** This is a temporal endpoint so we can progressively upgrade teams to the new billing system. */ - getUpgradeable: authedProcedure.query(async ({ ctx }) => { - if (!UNSTABLE_HANDLER_CACHE.getUpgradeable) { - UNSTABLE_HANDLER_CACHE.getUpgradeable = await import("./getUpgradeable.handler").then( - (mod) => mod.getUpgradeableHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.getUpgradeable) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.getUpgradeable({ - ctx, - }); + getUpgradeable: authedProcedure.query(async (opts) => { + const handler = await importHandler( + namespaced("getUpgradeable"), + () => import("./getUpgradeable.handler") + ); + return handler(opts); }), - - listMembers: authedProcedure.input(ZListMembersInputSchema).query(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.listMembers) { - UNSTABLE_HANDLER_CACHE.listMembers = await import("./listMembers.handler").then( - (mod) => mod.listMembersHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.listMembers) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.listMembers({ - ctx, - input, - }); + listMembers: authedProcedure.input(ZListMembersInputSchema).query(async (opts) => { + const handler = await importHandler(namespaced("listMembers"), () => import("./listMembers.handler")); + return handler(opts); }), - - hasTeamPlan: authedProcedure.query(async ({ ctx }) => { - if (!UNSTABLE_HANDLER_CACHE.hasTeamPlan) { - UNSTABLE_HANDLER_CACHE.hasTeamPlan = await import("./hasTeamPlan.handler").then( - (mod) => mod.hasTeamPlanHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.hasTeamPlan) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.hasTeamPlan({ - ctx, - }); + hasTeamPlan: authedProcedure.query(async (opts) => { + const handler = await importHandler(namespaced("hasTeamPlan"), () => import("./hasTeamPlan.handler")); + return handler(opts); }), - - listInvites: authedProcedure.query(async ({ ctx }) => { - if (!UNSTABLE_HANDLER_CACHE.listInvites) { - UNSTABLE_HANDLER_CACHE.listInvites = await import("./listInvites.handler").then( - (mod) => mod.listInvitesHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.listInvites) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.listInvites({ - ctx, - }); + listInvites: authedProcedure.query(async (opts) => { + const handler = await importHandler(namespaced("listInvites"), () => import("./listInvites.handler")); + return handler(opts); }), - - createInvite: authedProcedure.input(ZCreateInviteInputSchema).mutation(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.createInvite) { - UNSTABLE_HANDLER_CACHE.createInvite = await import("./createInvite.handler").then( - (mod) => mod.createInviteHandler - ); - } - - if (!UNSTABLE_HANDLER_CACHE.createInvite) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.createInvite({ - ctx, - input, - }); + createInvite: authedProcedure.input(ZCreateInviteInputSchema).mutation(async (opts) => { + const handler = await importHandler(namespaced("createInvite"), () => import("./createInvite.handler")); + return handler(opts); }), - - setInviteExpiration: authedProcedure - .input(ZSetInviteExpirationInputSchema) - .mutation(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.setInviteExpiration) { - UNSTABLE_HANDLER_CACHE.setInviteExpiration = await import("./setInviteExpiration.handler").then( - (mod) => mod.setInviteExpirationHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.setInviteExpiration) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.setInviteExpiration({ - ctx, - input, - }); - }), - deleteInvite: authedProcedure.input(ZDeleteInviteInputSchema).mutation(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.deleteInvite) { - UNSTABLE_HANDLER_CACHE.deleteInvite = await import("./deleteInvite.handler").then( - (mod) => mod.deleteInviteHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.deleteInvite) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.deleteInvite({ - ctx, - input, - }); + setInviteExpiration: authedProcedure.input(ZSetInviteExpirationInputSchema).mutation(async (opts) => { + const handler = await importHandler( + namespaced("setInviteExpiration"), + () => import("./setInviteExpiration.handler") + ); + return handler(opts); }), - inviteMemberByToken: authedProcedure - .input(ZInviteMemberByTokenSchemaInputSchema) - .mutation(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.inviteMemberByToken) { - UNSTABLE_HANDLER_CACHE.inviteMemberByToken = await import("./inviteMemberByToken.handler").then( - (mod) => mod.inviteMemberByTokenHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.inviteMemberByToken) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.inviteMemberByToken({ - ctx, - input, - }); - }), - hasEditPermissionForUser: authedProcedure - .input(ZHasEditPermissionForUserSchema) - .query(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.hasEditPermissionForUser) { - UNSTABLE_HANDLER_CACHE.hasEditPermissionForUser = await import( - "./hasEditPermissionForUser.handler" - ).then((mod) => mod.hasEditPermissionForUser); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.hasEditPermissionForUser) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.hasEditPermissionForUser({ - ctx, - input, - }); - }), - resendInvitation: authedProcedure.input(ZResendInvitationInputSchema).mutation(async ({ ctx, input }) => { - if (!UNSTABLE_HANDLER_CACHE.resendInvitation) { - UNSTABLE_HANDLER_CACHE.resendInvitation = await import("./resendInvitation.handler").then( - (mod) => mod.resendInvitationHandler - ); - } - - // Unreachable code but required for type safety - if (!UNSTABLE_HANDLER_CACHE.resendInvitation) { - throw new Error("Failed to load handler"); - } - - return UNSTABLE_HANDLER_CACHE.resendInvitation({ - ctx, - input, - }); + deleteInvite: authedProcedure.input(ZDeleteInviteInputSchema).mutation(async (opts) => { + const handler = await importHandler(namespaced("deleteInvite"), () => import("./deleteInvite.handler")); + return handler(opts); + }), + inviteMemberByToken: authedProcedure.input(ZInviteMemberByTokenSchemaInputSchema).mutation(async (opts) => { + const handler = await importHandler( + namespaced("inviteMemberByToken"), + () => import("./inviteMemberByToken.handler") + ); + return handler(opts); + }), + hasEditPermissionForUser: authedProcedure.input(ZHasEditPermissionForUserSchema).query(async (opts) => { + const handler = await importHandler( + namespaced("hasEditPermissionForUser"), + () => import("./hasEditPermissionForUser.handler") + ); + return handler(opts); + }), + resendInvitation: authedProcedure.input(ZResendInvitationInputSchema).mutation(async (opts) => { + const handler = await importHandler( + namespaced("resendInvitation"), + () => import("./resendInvitation.handler") + ); + return handler(opts); }), }); diff --git a/packages/trpc/server/routers/viewer/teams/acceptOrLeave.handler.ts b/packages/trpc/server/routers/viewer/teams/acceptOrLeave.handler.ts index d15e4dba47..9e25f31a02 100644 --- a/packages/trpc/server/routers/viewer/teams/acceptOrLeave.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/acceptOrLeave.handler.ts @@ -48,3 +48,5 @@ export const acceptOrLeaveHandler = async ({ ctx, input }: AcceptOrLeaveOptions) } } }; + +export default acceptOrLeaveHandler; diff --git a/packages/trpc/server/routers/viewer/teams/changeMemberRole.handler.ts b/packages/trpc/server/routers/viewer/teams/changeMemberRole.handler.ts index f2a6f23861..290a1be923 100644 --- a/packages/trpc/server/routers/viewer/teams/changeMemberRole.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/changeMemberRole.handler.ts @@ -71,3 +71,5 @@ export const changeMemberRoleHandler = async ({ ctx, input }: ChangeMemberRoleOp // Sync Services: Close.com closeComUpsertTeamUser(membership.team, membership.user, membership.role); }; + +export default changeMemberRoleHandler; diff --git a/packages/trpc/server/routers/viewer/teams/create.handler.ts b/packages/trpc/server/routers/viewer/teams/create.handler.ts index 4c3ffffd18..77e20a5f13 100644 --- a/packages/trpc/server/routers/viewer/teams/create.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/create.handler.ts @@ -117,3 +117,5 @@ export const createHandler = async ({ ctx, input }: CreateOptions) => { team: createdTeam, }; }; + +export default createHandler; diff --git a/packages/trpc/server/routers/viewer/teams/createInvite.handler.ts b/packages/trpc/server/routers/viewer/teams/createInvite.handler.ts index 380882ab55..1dc192b300 100644 --- a/packages/trpc/server/routers/viewer/teams/createInvite.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/createInvite.handler.ts @@ -59,3 +59,5 @@ async function getInviteLink(token = "", isOrg = false, orgMembers = 0) { if (isOrg || orgMembers > 0) return orgInviteLink; return teamInviteLink; } + +export default createInviteHandler; diff --git a/packages/trpc/server/routers/viewer/teams/delete.handler.ts b/packages/trpc/server/routers/viewer/teams/delete.handler.ts index 29d7d07c17..26c0f2dbe1 100644 --- a/packages/trpc/server/routers/viewer/teams/delete.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/delete.handler.ts @@ -82,3 +82,5 @@ export const deleteHandler = async ({ ctx, input }: DeleteOptions) => { // Sync Services: Close.cm closeComDeleteTeam(deletedTeam); }; + +export default deleteHandler; diff --git a/packages/trpc/server/routers/viewer/teams/deleteInvite.handler.ts b/packages/trpc/server/routers/viewer/teams/deleteInvite.handler.ts index 5a92545dcb..78d2c9ca20 100644 --- a/packages/trpc/server/routers/viewer/teams/deleteInvite.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/deleteInvite.handler.ts @@ -31,3 +31,5 @@ export const deleteInviteHandler = async ({ ctx, input }: DeleteInviteOptions) = await prisma.verificationToken.delete({ where: { id: verificationToken.id } }); }; + +export default deleteInviteHandler; diff --git a/packages/trpc/server/routers/viewer/teams/get.handler.ts b/packages/trpc/server/routers/viewer/teams/get.handler.ts index 6cc6c52db5..ca6256d448 100644 --- a/packages/trpc/server/routers/viewer/teams/get.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/get.handler.ts @@ -36,3 +36,5 @@ export const getHandler = async ({ ctx, input }: GetOptions) => { }, }; }; + +export default getHandler; diff --git a/packages/trpc/server/routers/viewer/teams/getMemberAvailability.handler.ts b/packages/trpc/server/routers/viewer/teams/getMemberAvailability.handler.ts index 3545e6e321..0d7922a0dc 100644 --- a/packages/trpc/server/routers/viewer/teams/getMemberAvailability.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/getMemberAvailability.handler.ts @@ -54,3 +54,5 @@ export const getMemberAvailabilityHandler = async ({ ctx, input }: GetMemberAvai { user: member.user } ); }; + +export default getMemberAvailabilityHandler; diff --git a/packages/trpc/server/routers/viewer/teams/getMembershipbyUser.handler.ts b/packages/trpc/server/routers/viewer/teams/getMembershipbyUser.handler.ts index 55794cb47f..eeedb362aa 100644 --- a/packages/trpc/server/routers/viewer/teams/getMembershipbyUser.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/getMembershipbyUser.handler.ts @@ -29,3 +29,5 @@ export const getMembershipbyUserHandler = async ({ ctx, input }: GetMembershipby }, }); }; + +export default getMembershipbyUserHandler; diff --git a/packages/trpc/server/routers/viewer/teams/getUpgradeable.handler.ts b/packages/trpc/server/routers/viewer/teams/getUpgradeable.handler.ts index 7587867e34..941c77a11e 100644 --- a/packages/trpc/server/routers/viewer/teams/getUpgradeable.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/getUpgradeable.handler.ts @@ -43,3 +43,5 @@ export const getUpgradeableHandler = async ({ ctx }: GetUpgradeableOptions) => { }); return teams; }; + +export default getUpgradeableHandler; diff --git a/packages/trpc/server/routers/viewer/teams/hasEditPermissionForUser.handler.ts b/packages/trpc/server/routers/viewer/teams/hasEditPermissionForUser.handler.ts index 882e922e30..ae5b9bc66c 100644 --- a/packages/trpc/server/routers/viewer/teams/hasEditPermissionForUser.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/hasEditPermissionForUser.handler.ts @@ -17,3 +17,5 @@ export const hasEditPermissionForUser = async ({ ctx, input }: HasEditPermission input, }); }; + +export default hasEditPermissionForUser; diff --git a/packages/trpc/server/routers/viewer/teams/hasTeamPlan.handler.ts b/packages/trpc/server/routers/viewer/teams/hasTeamPlan.handler.ts index 882876515c..f8c757b624 100644 --- a/packages/trpc/server/routers/viewer/teams/hasTeamPlan.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/hasTeamPlan.handler.ts @@ -23,3 +23,5 @@ export const hasTeamPlanHandler = async ({ ctx }: HasTeamPlanOptions) => { }); return { hasTeamPlan: !!hasTeamPlan }; }; + +export default hasTeamPlanHandler; diff --git a/packages/trpc/server/routers/viewer/teams/inviteMember/inviteMember.handler.ts b/packages/trpc/server/routers/viewer/teams/inviteMember/inviteMember.handler.ts index deb8a55019..35e882bdf8 100644 --- a/packages/trpc/server/routers/viewer/teams/inviteMember/inviteMember.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/inviteMember/inviteMember.handler.ts @@ -140,3 +140,5 @@ export const inviteMemberHandler = async ({ ctx, input }: InviteMemberOptions) = } return input; }; + +export default inviteMemberHandler; diff --git a/packages/trpc/server/routers/viewer/teams/inviteMemberByToken.handler.ts b/packages/trpc/server/routers/viewer/teams/inviteMemberByToken.handler.ts index 5518a18ec1..5f1d533c31 100644 --- a/packages/trpc/server/routers/viewer/teams/inviteMemberByToken.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/inviteMemberByToken.handler.ts @@ -64,3 +64,5 @@ export const inviteMemberByTokenHandler = async ({ ctx, input }: InviteMemberByT return verificationToken.team.name; }; + +export default inviteMemberByTokenHandler; diff --git a/packages/trpc/server/routers/viewer/teams/list.handler.ts b/packages/trpc/server/routers/viewer/teams/list.handler.ts index 44220804aa..31a53fdd48 100644 --- a/packages/trpc/server/routers/viewer/teams/list.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/list.handler.ts @@ -41,3 +41,5 @@ export const listHandler = async ({ ctx }: ListOptions) => { inviteToken: inviteTokens.find((token) => token.identifier === `invite-link-for-teamId-${_team.id}`), })); }; + +export default listHandler; diff --git a/packages/trpc/server/routers/viewer/teams/listInvites.handler.ts b/packages/trpc/server/routers/viewer/teams/listInvites.handler.ts index d4ffed6217..5d266f692b 100644 --- a/packages/trpc/server/routers/viewer/teams/listInvites.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/listInvites.handler.ts @@ -18,3 +18,5 @@ export const listInvitesHandler = async ({ ctx }: ListInvitesOptions) => { }, }); }; + +export default listInvitesHandler; diff --git a/packages/trpc/server/routers/viewer/teams/listMembers.handler.ts b/packages/trpc/server/routers/viewer/teams/listMembers.handler.ts index 29291c5723..8def528dca 100644 --- a/packages/trpc/server/routers/viewer/teams/listMembers.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/listMembers.handler.ts @@ -54,3 +54,5 @@ export const listMembersHandler = async ({ ctx, input }: ListMembersOptions) => return Object.values(users); }; + +export default listMembersHandler; diff --git a/packages/trpc/server/routers/viewer/teams/publish.handler.ts b/packages/trpc/server/routers/viewer/teams/publish.handler.ts index 5bb5dbb195..48e2e6e781 100644 --- a/packages/trpc/server/routers/viewer/teams/publish.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/publish.handler.ts @@ -157,3 +157,5 @@ export const publishHandler = async ({ ctx, input }: PublishOptions) => { message: "Team published successfully", }; }; + +export default publishHandler; diff --git a/packages/trpc/server/routers/viewer/teams/removeMember.handler.ts b/packages/trpc/server/routers/viewer/teams/removeMember.handler.ts index 96b7b3cc9d..31927231ef 100644 --- a/packages/trpc/server/routers/viewer/teams/removeMember.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/removeMember.handler.ts @@ -121,3 +121,5 @@ export const removeMemberHandler = async ({ ctx, input }: RemoveMemberOptions) = closeComDeleteTeamMembership(membership.user); if (IS_TEAM_BILLING_ENABLED) await updateQuantitySubscriptionFromStripe(input.teamId); }; + +export default removeMemberHandler; diff --git a/packages/trpc/server/routers/viewer/teams/resendInvitation.handler.ts b/packages/trpc/server/routers/viewer/teams/resendInvitation.handler.ts index a7c0cc9bd5..e7a58bd9ca 100644 --- a/packages/trpc/server/routers/viewer/teams/resendInvitation.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/resendInvitation.handler.ts @@ -58,3 +58,5 @@ export const resendInvitationHandler = async ({ ctx, input }: InviteMemberOption return input; }; + +export default resendInvitationHandler; diff --git a/packages/trpc/server/routers/viewer/teams/setInviteExpiration.handler.ts b/packages/trpc/server/routers/viewer/teams/setInviteExpiration.handler.ts index cbba00e2f1..28d0ba4676 100644 --- a/packages/trpc/server/routers/viewer/teams/setInviteExpiration.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/setInviteExpiration.handler.ts @@ -39,3 +39,5 @@ export const setInviteExpirationHandler = async ({ ctx, input }: SetInviteExpira }, }); }; + +export default setInviteExpirationHandler; diff --git a/packages/trpc/server/routers/viewer/teams/update.handler.ts b/packages/trpc/server/routers/viewer/teams/update.handler.ts index ff5692f0ac..bcb9fbce9e 100644 --- a/packages/trpc/server/routers/viewer/teams/update.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/update.handler.ts @@ -97,3 +97,5 @@ export const updateHandler = async ({ ctx, input }: UpdateOptions) => { darkBrandColor: updatedTeam.darkBrandColor, }; }; + +export default updateHandler; diff --git a/packages/trpc/server/routers/viewer/teams/updateMembership.handler.ts b/packages/trpc/server/routers/viewer/teams/updateMembership.handler.ts index 9a1b1cac9d..4b42b4a53f 100644 --- a/packages/trpc/server/routers/viewer/teams/updateMembership.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/updateMembership.handler.ts @@ -32,3 +32,5 @@ export const updateMembershipHandler = async ({ ctx, input }: UpdateMembershipOp }, }); }; + +export default updateMembershipHandler;