From db8cd9e38fa356487704bfcb3e173d1c0add6d9b Mon Sep 17 00:00:00 2001 From: Roman Godmaire Date: Sat, 10 Feb 2024 15:00:14 -0500 Subject: [PATCH] fix: various lints --- plice/src/app.d.ts | 2 +- .../lib/server/db/__snapshots__/prisma.test.ts.snap | 1 + plice/src/lib/server/db/index.ts | 3 ++- plice/src/lib/server/db/mock.ts | 3 ++- plice/src/lib/server/db/prisma.ts | 5 +++-- plice/src/routes/+layout.server.ts | 2 +- plice/src/routes/login/+page.server.ts | 2 +- plice/src/routes/login/+page.svelte | 1 - plice/src/routes/page.server.test.ts | 6 +++--- plice/src/routes/signup/+page.server.ts | 2 +- plice/src/routes/signup/+page.svelte | 3 +-- plice/src/routes/track/[slug]/+page.server.ts | 12 +++--------- 12 files changed, 19 insertions(+), 23 deletions(-) diff --git a/plice/src/app.d.ts b/plice/src/app.d.ts index a4d6778..da21088 100644 --- a/plice/src/app.d.ts +++ b/plice/src/app.d.ts @@ -22,7 +22,7 @@ declare global { type DatabaseUserAttributes = { username: string; }; - type DatabaseSessionAttributes = {}; + type DatabaseSessionAttributes = null; } } diff --git a/plice/src/lib/server/db/__snapshots__/prisma.test.ts.snap b/plice/src/lib/server/db/__snapshots__/prisma.test.ts.snap index a6d6eb4..3e77cdb 100644 --- a/plice/src/lib/server/db/__snapshots__/prisma.test.ts.snap +++ b/plice/src/lib/server/db/__snapshots__/prisma.test.ts.snap @@ -31,6 +31,7 @@ exports[`homepage fetch 1`] = ` exports[`track page fetch 1`] = ` { "createdAt": 2024-01-12T13:10:10.419Z, + "id": 1, "producer": { "username": "fake", }, diff --git a/plice/src/lib/server/db/index.ts b/plice/src/lib/server/db/index.ts index 27c5a32..d7eeb7a 100644 --- a/plice/src/lib/server/db/index.ts +++ b/plice/src/lib/server/db/index.ts @@ -24,6 +24,7 @@ export interface Database { >; fetchTrackPageData: (trackId: number) => Promise<{ + id: number; title: string; createdAt: Date; producer: { @@ -42,5 +43,5 @@ export interface Database { } | null>; createTrack: (producerId: string, title: string) => Promise; createTrackVersion: (trackId: number) => Promise; - createComment: (versionId: number, producerId: string, content: string) => Promise<{}>; + createComment: (versionId: string, userId: string, content: string) => Promise; } diff --git a/plice/src/lib/server/db/mock.ts b/plice/src/lib/server/db/mock.ts index ff65d05..644ff08 100644 --- a/plice/src/lib/server/db/mock.ts +++ b/plice/src/lib/server/db/mock.ts @@ -1,6 +1,7 @@ import type { Database } from '$lib/server/db'; -export class MockHomepageFetch implements Database { +// TODO Flesh this out +export class MockGenericDatabase implements Database { fetchHomepageData = async (_producerId: string) => { const data = [ { diff --git a/plice/src/lib/server/db/prisma.ts b/plice/src/lib/server/db/prisma.ts index 8462c41..7d76082 100644 --- a/plice/src/lib/server/db/prisma.ts +++ b/plice/src/lib/server/db/prisma.ts @@ -54,6 +54,7 @@ export class DatabasePrisma implements Database { fetchTrackPageData = async (trackId: number) => { return await this.client.track.findUnique({ select: { + id: true, title: true, createdAt: true, producer: { @@ -104,8 +105,8 @@ export class DatabasePrisma implements Database { }); }; - createComment = async (versionId: number, producerId: string, content: string) => { + createComment = async (_versionId: string, _userId: string, _content: string) => { // TODO - return {}; + return null; }; } diff --git a/plice/src/routes/+layout.server.ts b/plice/src/routes/+layout.server.ts index 8f4534c..c700caf 100644 --- a/plice/src/routes/+layout.server.ts +++ b/plice/src/routes/+layout.server.ts @@ -2,6 +2,6 @@ import type { LayoutServerLoad } from './$types'; export const load: LayoutServerLoad = async ({ locals: { authReq } }) => { return { - isLoggedIn: authReq.validate() + isLoggedIn: (await authReq.validate()) !== null }; }; diff --git a/plice/src/routes/login/+page.server.ts b/plice/src/routes/login/+page.server.ts index fbb1f77..8b4f322 100644 --- a/plice/src/routes/login/+page.server.ts +++ b/plice/src/routes/login/+page.server.ts @@ -28,7 +28,7 @@ export const actions: Actions = { const session = await auth.createSession({ userId: key.userId, - attributes: {} + attributes: null }); authReq.setSession(session); diff --git a/plice/src/routes/login/+page.svelte b/plice/src/routes/login/+page.svelte index e4ed558..c87fdfb 100644 --- a/plice/src/routes/login/+page.svelte +++ b/plice/src/routes/login/+page.svelte @@ -23,7 +23,6 @@ type="text" name="username" placeholder="username" - value={form?.username ?? ''} aria-label="Username" autocomplete="username" required diff --git a/plice/src/routes/page.server.test.ts b/plice/src/routes/page.server.test.ts index 9e19c91..c4e469a 100644 --- a/plice/src/routes/page.server.test.ts +++ b/plice/src/routes/page.server.test.ts @@ -1,10 +1,10 @@ import { expect, test } from 'vitest'; import { load } from './+page.server'; -import { MockHomepageFetch } from '$lib/server/db/mock'; +import { MockGenericDatabase } from '$lib/server/db/mock'; test('anonymous homepage load', async () => { - const db = new MockHomepageFetch(); + const db = new MockGenericDatabase(); const locals = { // TODO: Replace with authentication adapter authReq: { @@ -20,7 +20,7 @@ test('anonymous homepage load', async () => { }); test('user homepage load', async () => { - const db = new MockHomepageFetch(); + const db = new MockGenericDatabase(); const locals = { // TODO: Replace with authentication adapter authReq: { diff --git a/plice/src/routes/signup/+page.server.ts b/plice/src/routes/signup/+page.server.ts index 93cf7c1..6f7d85e 100644 --- a/plice/src/routes/signup/+page.server.ts +++ b/plice/src/routes/signup/+page.server.ts @@ -38,7 +38,7 @@ export const actions: Actions = { const session = await auth.createSession({ userId: user.userId, - attributes: {} + attributes: null }); authReq.setSession(session); diff --git a/plice/src/routes/signup/+page.svelte b/plice/src/routes/signup/+page.svelte index f0e485d..abb61c3 100644 --- a/plice/src/routes/signup/+page.svelte +++ b/plice/src/routes/signup/+page.svelte @@ -4,8 +4,7 @@ export let form; - let username = form?.username ?? ''; - + let username = ''; let password = ''; let passwordIsInvalid: boolean | null = null; diff --git a/plice/src/routes/track/[slug]/+page.server.ts b/plice/src/routes/track/[slug]/+page.server.ts index 4e85272..7862d61 100644 --- a/plice/src/routes/track/[slug]/+page.server.ts +++ b/plice/src/routes/track/[slug]/+page.server.ts @@ -7,7 +7,7 @@ export const load: PageServerLoad = async ({ params: { slug }, locals: { databas error(404, 'Track not found'); } - let track = await database.fetchTrackPageData(trackId); + const track = await database.fetchTrackPageData(trackId); if (!track) { error(440, 'Track not found'); } @@ -22,17 +22,11 @@ export const actions: Actions = { const session = await authReq.validate(); if (!session) redirect(302, '/login'); - const trackId = parseInt(slug); + const versionId = slug; const formData = await request.formData(); const comment = formData.get('comment') as string; - const version = formData.get('version') as string; - const versionId = parseInt(version); - if (isNaN(versionId)) { - error(404, 'Invalid version'); - } - - database.createComment(trackId, versionId, comment); + database.createComment(versionId, session.user.userId, comment); } };