From 9b98ca4f642a9aefc21a2eb2d2881d785d7a1ccb Mon Sep 17 00:00:00 2001 From: Matti Nannt Date: Wed, 9 Aug 2023 16:05:15 +0200 Subject: [PATCH] Fix thank you screen is disabled after completing a survey (#670) --- .../[environmentId]/settings/profile/actions.ts | 4 ++-- apps/web/lib/linkSurvey/linkSurvey.ts | 1 + packages/types/v1/profile.ts | 9 ++++++++- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/apps/web/app/(app)/environments/[environmentId]/settings/profile/actions.ts b/apps/web/app/(app)/environments/[environmentId]/settings/profile/actions.ts index bc067a2fcf..35109c294e 100644 --- a/apps/web/app/(app)/environments/[environmentId]/settings/profile/actions.ts +++ b/apps/web/app/(app)/environments/[environmentId]/settings/profile/actions.ts @@ -1,9 +1,9 @@ "use server"; import { updateProfile, deleteProfile } from "@formbricks/lib/services/profile"; -import { Prisma } from "@prisma/client"; +import { TProfileUpdateInput } from "@formbricks/types/v1/profile"; -export async function profileEditAction(userId: string, data: Prisma.UserUpdateInput) { +export async function profileEditAction(userId: string, data: Partial) { return await updateProfile(userId, data); } diff --git a/apps/web/lib/linkSurvey/linkSurvey.ts b/apps/web/lib/linkSurvey/linkSurvey.ts index 03c858c524..00e9215bab 100644 --- a/apps/web/lib/linkSurvey/linkSurvey.ts +++ b/apps/web/lib/linkSurvey/linkSurvey.ts @@ -241,6 +241,7 @@ export const useLinkSurveyUtils = (survey: Survey) => { const nextQuestionId = getNextQuestionId(answer); if (nextQuestionId === "end") { + setLoadingElement(false); setProgress(1); setFinished(true); clearStoredResponses(survey.id); diff --git a/packages/types/v1/profile.ts b/packages/types/v1/profile.ts index 0cbee578db..9ee7bc9e3c 100644 --- a/packages/types/v1/profile.ts +++ b/packages/types/v1/profile.ts @@ -2,10 +2,17 @@ import z from "zod"; export const ZProfile = z.object({ id: z.string(), - name: z.string().nullish(), + name: z.string().nullable(), email: z.string(), createdAt: z.date(), updatedAt: z.date(), }); export type TProfile = z.infer; + +export const ZProfileUpdateInput = z.object({ + name: z.string().optional(), + email: z.string().optional(), +}); + +export type TProfileUpdateInput = z.infer;