Skip to content

Commit a1ff059

Browse files
committed
feat: fix lessons questions files, context, schema enhance
1 parent 720d96e commit a1ff059

File tree

52 files changed

+473
-35
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

52 files changed

+473
-35
lines changed

prisma/schema.prisma

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,6 @@ datasource db {
99
shadowDatabaseUrl = env("POSTGRES_URL_NON_POOLING")
1010
}
1111

12-
model Todo {
13-
id String @id @default(cuid())
14-
task String
15-
userId String
16-
completed Boolean @default(false)
17-
createdAt DateTime @default(now())
18-
updatedAt DateTime @updatedAt
19-
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
20-
}
21-
2212
model Account {
2313
id String @id @default(cuid())
2414
userId String
@@ -47,7 +37,6 @@ model User {
4737
image String?
4838
createdAt DateTime @default(now())
4939
accounts Account[]
50-
Todo Todo[]
5140
CompletedQuizzes CompletedQuizzes[]
5241
}
5342

@@ -60,3 +49,8 @@ model CompletedQuizzes {
6049
updatedAt DateTime @updatedAt
6150
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
6251
}
52+
53+
model Lessons {
54+
id String @id @default(cuid())
55+
quizFileName String @unique
56+
}

prisma/seed.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { hash } from "bcryptjs";
44
const prisma = new PrismaClient();
55

66
async function main() {
7-
const password = (await hash("password123", 12)) as string;
7+
const password = await hash("password123", 12);
88
const user = await prisma.user.upsert({
99
where: { email: "[email protected]" },
1010
update: {},

src/contexts/AppContext.tsx

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { api } from "@/utils/api";
12
import { useSession } from "next-auth/react";
23
import { createContext, useState } from "react";
34

@@ -18,9 +19,24 @@ export const AppContext = createContext(initialState);
1819
function Context({ children }: ContextProps) {
1920
const [message, setMessage] = useState("");
2021
const { data: sessionData } = useSession();
22+
const [fetchNow, setFetchNow] = useState(true);
2123

2224
console.log({ sessionData });
2325

26+
// Requests
27+
// - All
28+
const {
29+
// data: completedQuizzesAllData,
30+
// isLoading: completedQuizzesAllIsLoading,
31+
// refetch: refetchCompletedQuizzesAll,
32+
} = api.completedQuizzes.all.useQuery(
33+
undefined, // no input
34+
{
35+
// Disable request if no session data
36+
enabled: sessionData?.user !== undefined && fetchNow,
37+
},
38+
);
39+
2440
return (
2541
<AppContext.Provider value={{ message, setMessage }}>
2642
{children}

src/pages/getting-started.tsx

Lines changed: 2 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ import { CONTENT_PATH } from "@/lib/constants";
2525
import { useEffect, useState } from "react";
2626
import { api } from "@/utils/api";
2727
import { useSession } from "next-auth/react";
28-
import { useAccount } from "wagmi";
2928

3029
export interface Lesson {
3130
frontMatter: any;
@@ -85,13 +84,11 @@ const GettingStarted: React.FC<Lessons> = ({ lessons }) => {
8584
const [fetchNow, setFetchNow] = useState(true);
8685
const { data: sessionData } = useSession();
8786

88-
const { address } = useAccount();
89-
9087
// Requests
9188
// - All
9289
const {
9390
data: completedQuizzesAllData,
94-
isLoading: completedQuizzesAllIsLoading,
91+
// isLoading: completedQuizzesAllIsLoading,
9592
// refetch: refetchCompletedQuizzesAll,
9693
} = api.completedQuizzes.all.useQuery(
9794
undefined, // no input
@@ -110,15 +107,6 @@ const GettingStarted: React.FC<Lessons> = ({ lessons }) => {
110107
}, {});
111108

112109
if (sessionData?.user !== undefined && !!completedQuizzesAllData) {
113-
console.log(
114-
"1 ",
115-
{ completedQuizzesAllData },
116-
{
117-
a: !completedQuizzesAllIsLoading,
118-
b: !!completedQuizzesAllData,
119-
},
120-
);
121-
122110
const completedSlugs: string[] = completedQuizzesAllData?.map(
123111
(quiz: any) =>
124112
quiz.lesson
@@ -137,20 +125,11 @@ const GettingStarted: React.FC<Lessons> = ({ lessons }) => {
137125

138126
setFormattedLessons({ ...result, projects: completedQuizzes });
139127
setFetchNow(false);
140-
console.log("1");
141128
} else {
142129
setFormattedLessons(result);
143130
// setFetchNow(false);
144-
console.log("2");
145131
}
146-
}, [
147-
completedQuizzesAllData,
148-
completedQuizzesAllIsLoading,
149-
lessons,
150-
sessionData,
151-
]);
152-
153-
console.log({ address });
132+
}, [completedQuizzesAllData, lessons, sessionData]);
154133

155134
// useEffect(() => {
156135
// if (address) { // DEV_NOTE: Trying to update the list of completed quizzes when the user changes their wallet address

0 commit comments

Comments
 (0)