Working on arthome

This commit is contained in:
2024-08-30 14:22:29 +02:00
parent a1e31a89a7
commit 396e8a6850
51 changed files with 2019 additions and 2290 deletions

View File

@@ -0,0 +1,18 @@
export default defineEventHandler(async (event) => {
try {
const user = await getUserSession(event)
const { id } = await getRouterParams(event)
await useDrizzle()
.delete(tables.categories)
.where(
and(
eq(tables.categories.id, id),
eq(tables.categories.userId, user.id),
),
)
return { statusCode: 200 }
}
catch (err) {
return { err }
}
})

View File

@@ -0,0 +1,28 @@
import { useValidatedBody } from 'h3-zod'
import { UpdateCategorySchema } from '~~/types/types'
export default defineEventHandler(async (event) => {
try {
const user = await getUserSession(event)
const { id } = await getRouterParams(event)
const body = await useValidatedBody(event, UpdateCategorySchema)
await useDrizzle()
.update(tables.categories)
.set({
name: body.name,
icon: body.icon,
color: body.color,
nameVisible: body.nameVisible,
})
.where(
and(
eq(tables.categories.id, id),
eq(tables.categories.userId, user.id),
),
)
return { statusCode: 200 }
}
catch (err) {
return { err }
}
})

View File

@@ -1,7 +1,10 @@
export default defineEventHandler(async (event) => {
const user = await getUserSession(event)
console.log('session', user)
return useDrizzle().query.categories.findMany({
where: eq(tables.users.id, user.id),
})
const user = await requireUserSession(event)
return useDrizzle()
.select()
.from(tables.categories)
.where(
eq(tables.categories.userId, user.user.id),
)
.orderBy(tables.categories.id, 'desc')
})

View File

@@ -0,0 +1,20 @@
import { useValidatedBody } from 'h3-zod'
import { CreateCategorySchema } from '~~/types/types'
export default defineEventHandler(async (event) => {
try {
const user = await getUserSession(event)
const body = await useValidatedBody(event, CreateCategorySchema)
await useDrizzle().insert(tables.categories).values({
name: body.name,
icon: body.icon,
color: body.color,
nameVisible: body.nameVisible,
userId: user.id,
})
return { statusCode: 200 }
}
catch (err) {
return { err }
}
})

View File

@@ -0,0 +1,16 @@
export default defineEventHandler(async (event) => {
try {
const { id } = await getRouterParams(event)
await useDrizzle()
.delete(tables.tabs)
.where(
and(
eq(tables.tabs.id, id),
),
)
return { statusCode: 200 }
}
catch (err) {
return { err }
}
})

View File

@@ -0,0 +1,29 @@
import { useValidatedBody } from 'h3-zod'
import { UpdateTabSchema } from '~~/types/types'
export default defineEventHandler(async (event) => {
try {
const { id } = await getRouterParams(event)
console.log(await readBody(event))
const body = await useValidatedBody(event, UpdateTabSchema)
await useDrizzle()
.update(tables.tabs)
.set({
name: body.name,
icon: body.icon,
color: body.color,
nameVisible: body.nameVisible,
link: body.link,
})
.where(
and(
eq(tables.tabs.id, id),
eq(tables.tabs.categoryId, body.categoryId),
),
)
return { statusCode: 200 }
}
catch (err) {
return { err }
}
})

View File

@@ -0,0 +1,6 @@
export default defineEventHandler(async () => {
return useDrizzle()
.select()
.from(tables.tabs)
.orderBy(tables.tabs.id, 'desc')
})

View File

@@ -0,0 +1,20 @@
import { useValidatedBody } from 'h3-zod'
import { CreateTabSchema } from '~~/types/types'
export default defineEventHandler(async (event) => {
try {
const body = await useValidatedBody(event, CreateTabSchema)
await useDrizzle().insert(tables.tabs).values({
name: body.name,
icon: body.icon,
color: body.color,
nameVisible: body.nameVisible,
categoryId: body.categoryId,
link: body.link,
})
return { statusCode: 200 }
}
catch (err) {
return { err }
}
})