From c1b99c6e5556303b619ced877de4cc640e6ed950 Mon Sep 17 00:00:00 2001 From: vincanger <70215737+vincanger@users.noreply.github.com> Date: Tue, 12 Dec 2023 12:26:23 -0500 Subject: [PATCH] add landing page features & fix gpt response --- app/src/client/app/AccountPage.tsx | 12 +++- app/src/client/app/GptPage.tsx | 19 +++--- app/src/client/landing-page/LandingPage.tsx | 64 ++++++++++++------- .../client/landing-page/contentSections.ts | 5 ++ app/src/server/actions.ts | 10 ++- 5 files changed, 72 insertions(+), 38 deletions(-) diff --git a/app/src/client/app/AccountPage.tsx b/app/src/client/app/AccountPage.tsx index bb5a003..cf234b7 100644 --- a/app/src/client/app/AccountPage.tsx +++ b/app/src/client/app/AccountPage.tsx @@ -1,3 +1,4 @@ +import { useState, useEffect } from 'react'; import { User } from '@wasp/entities'; import { useQuery } from '@wasp/queries'; import getGptResponses from '@wasp/queries/getGptResponses'; @@ -7,8 +8,14 @@ import { STRIPE_CUSTOMER_PORTAL_LINK } from '@wasp/shared/constants'; import { TierIds } from '@wasp/shared/constants'; export default function AccountPage({ user }: { user: User }) { + const [ lastGptResponse, setLastGptResponse ] = useState([]); const { data: gptResponses, isLoading: isLoadingGptResponses } = useQuery(getGptResponses); + useEffect(() => { + if (gptResponses && gptResponses.length > 0) { + setLastGptResponse(gptResponses[gptResponses.length - 1].content.split('\n')); + } + }, [gptResponses]); return (
@@ -51,11 +58,10 @@ export default function AccountPage({ user }: { user: User }) {
Most Recent GPT Response
-
+
{isLoadingGptResponses ? 'Loading...' - : !!gptResponses && gptResponses.length > 0 - ? gptResponses[gptResponses.length - 1].content + : lastGptResponse.length > 0 ? lastGptResponse.map((str) =>

{str}

) : "You don't have any at this time."}
diff --git a/app/src/client/app/GptPage.tsx b/app/src/client/app/GptPage.tsx index cf5037f..642967a 100644 --- a/app/src/client/app/GptPage.tsx +++ b/app/src/client/app/GptPage.tsx @@ -5,7 +5,7 @@ import useAuth from '@wasp/auth/useAuth'; export default function GptPage() { const [temperature, setTemperature] = useState(1); - const [response, setResponse] = useState(''); + const [response, setResponse] = useState([]); const { data: user } = useAuth(); @@ -18,11 +18,12 @@ export default function GptPage() { try { const response = await generateGptResponse({ instructions, command, temperature }); if (response) { - setResponse(response.content); + setResponse(response.split('\n')); + console.log(response) } - } catch (e) { - alert('Something went wrong. Please try again.'); - console.error(e); + } catch (error: any) { + alert(error.message); + console.error(error); } }; @@ -124,7 +125,7 @@ export default function GptPage() {