From 559ab4192fdbd01576bc3c36145f19a04e29fdab Mon Sep 17 00:00:00 2001 From: Amit Sharma <74371312+Amit91848@users.noreply.github.com> Date: Mon, 22 Jan 2024 21:01:57 +0530 Subject: [PATCH] fix: team invite broken link (#13344) * fix: team invite broken link * default value fix --------- Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com> Co-authored-by: Keith Williams --- .../ee/teams/components/InviteLinkSettingsModal.tsx | 6 +++++- .../server/routers/viewer/teams/createInvite.handler.ts | 1 + .../routers/viewer/teams/setInviteExpiration.handler.ts | 6 ++++-- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/features/ee/teams/components/InviteLinkSettingsModal.tsx b/packages/features/ee/teams/components/InviteLinkSettingsModal.tsx index 538478ceec..3ca0b361d1 100644 --- a/packages/features/ee/teams/components/InviteLinkSettingsModal.tsx +++ b/packages/features/ee/teams/components/InviteLinkSettingsModal.tsx @@ -53,7 +53,11 @@ export default function InviteLinkSettingsModal(props: InvitationLinkSettingsMod ]; }, [t]); - const linkSettingsFormMethods = useForm(); + const linkSettingsFormMethods = useForm({ + defaultValues: { + expiresInDays: props.expiresInDays, + }, + }); const handleSubmit = (values: LinkSettingsForm) => { setInviteExpirationMutation.mutate({ diff --git a/packages/trpc/server/routers/viewer/teams/createInvite.handler.ts b/packages/trpc/server/routers/viewer/teams/createInvite.handler.ts index d1e6315fe2..688db8e48c 100644 --- a/packages/trpc/server/routers/viewer/teams/createInvite.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/createInvite.handler.ts @@ -41,6 +41,7 @@ export const createInviteHandler = async ({ ctx, input }: CreateInviteOptions) = identifier: `invite-link-for-teamId-${teamId}`, token, expires: new Date(new Date().setHours(168)), // +1 week, + expiresInDays: 7, teamId, }, }); diff --git a/packages/trpc/server/routers/viewer/teams/setInviteExpiration.handler.ts b/packages/trpc/server/routers/viewer/teams/setInviteExpiration.handler.ts index 28d0ba4676..1af519b064 100644 --- a/packages/trpc/server/routers/viewer/teams/setInviteExpiration.handler.ts +++ b/packages/trpc/server/routers/viewer/teams/setInviteExpiration.handler.ts @@ -29,13 +29,15 @@ export const setInviteExpirationHandler = async ({ ctx, input }: SetInviteExpira throw new TRPCError({ code: "UNAUTHORIZED" }); const oneDay = 24 * 60 * 60 * 1000; - const expires = expiresInDays ? new Date(Date.now() + expiresInDays * oneDay) : new Date(); + const expires = expiresInDays + ? new Date(Date.now() + expiresInDays * oneDay) + : new Date("9999-12-31T23:59:59Z"); //maximum possible date incase the link is set to never expire await prisma.verificationToken.update({ where: { token }, data: { expires, - expiresInDays, + expiresInDays: expiresInDays ? expiresInDays : null, }, }); };