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, }, }); };