Titles with a cool effect

This commit is contained in:
Ahmed Al-Taiar
2024-10-04 23:13:44 -04:00
parent 8671f47e91
commit e5f9bbd462
19 changed files with 367 additions and 91 deletions

View File

@@ -0,0 +1,16 @@
/*
Warnings:
- You are about to drop the `Title` table. If the table is not empty, all the data it contains will be lost.
*/
-- DropTable
DROP TABLE "Title";
-- CreateTable
CREATE TABLE "Titles" (
"id" SERIAL NOT NULL,
"titles" TEXT[] DEFAULT ARRAY[]::TEXT[],
CONSTRAINT "Titles_pkey" PRIMARY KEY ("id")
);

View File

@@ -63,9 +63,9 @@ model Resume {
fileId String
}
model Title {
id Int @id @default(autoincrement())
title String
model Titles {
id Int @id @default(autoincrement())
titles String[] @default([])
}
model Tag {

View File

@@ -0,0 +1,18 @@
export const schema = gql`
type Titles {
id: Int!
titles: [String]!
}
type Query {
titles: Titles! @skipAuth
}
input UpdateTitlesInput {
titles: [String]!
}
type Mutation {
updateTitles(input: UpdateTitlesInput!): Titles! @requireAuth
}
`

View File

@@ -1,25 +0,0 @@
export const schema = gql`
type Title {
id: Int!
title: String!
}
type Query {
titles: [Title!]! @skipAuth
title(id: Int!): Title @skipAuth
}
input CreateTitleInput {
title: String!
}
input UpdateTitleInput {
title: String
}
type Mutation {
createTitle(input: CreateTitleInput!): Title! @requireAuth
updateTitle(id: Int!, input: UpdateTitleInput!): Title! @requireAuth
deleteTitle(id: Int!): Title! @requireAuth
}
`

View File

@@ -0,0 +1,11 @@
import type { QueryResolvers, MutationResolvers } from 'types/graphql'
import { db } from 'src/lib/db'
export const titles: QueryResolvers['titles'] = () => db.titles.findFirst()
export const updateTitles: MutationResolvers['updateTitles'] = ({ input }) =>
db.titles.update({
data: input,
where: { id: 1 },
})

View File

@@ -1,26 +0,0 @@
import type { QueryResolvers, MutationResolvers } from 'types/graphql'
import { db } from 'src/lib/db'
export const titles: QueryResolvers['titles'] = () => db.title.findMany()
export const title: QueryResolvers['title'] = ({ id }) =>
db.title.findUnique({
where: { id },
})
export const createTitle: MutationResolvers['createTitle'] = ({ input }) =>
db.title.create({
data: input,
})
export const updateTitle: MutationResolvers['updateTitle'] = ({ id, input }) =>
db.title.update({
data: input,
where: { id },
})
export const deleteTitle: MutationResolvers['deleteTitle'] = ({ id }) =>
db.title.delete({
where: { id },
})