initial commit

This commit is contained in:
Hunter Johnston
2023-02-04 11:44:27 -05:00
commit b15148ca19
31 changed files with 2560 additions and 0 deletions

View File

@@ -0,0 +1,57 @@
import type { Actions, PageServerLoad } from "./$types"
import { prisma } from "$lib/server/prisma"
import { fail } from "@sveltejs/kit"
export const load: PageServerLoad = async () => {
return {
articles: await prisma.article.findMany(),
}
}
export const actions: Actions = {
createArticle: async ({ request }) => {
const { title, content } = Object.fromEntries(await request.formData()) as {
title: string
content: string
}
try {
await prisma.article.create({
data: {
title,
content,
},
})
} catch (err) {
console.error(err)
return fail(500, { message: "Could not create the article." })
}
return {
status: 201,
}
},
deleteArticle: async ({ url }) => {
const id = url.searchParams.get("id")
if (!id) {
return fail(400, { message: "Invalid request" })
}
try {
await prisma.article.delete({
where: {
id: Number(id),
},
})
} catch (err) {
console.error(err)
return fail(500, {
message: "Something went wrong deleting your article",
})
}
return {
status: 200,
}
},
}