55 lines
854 B
TypeScript
55 lines
854 B
TypeScript
export const schema = gql`
|
|
type Social {
|
|
id: Int!
|
|
name: String!
|
|
type: Handle!
|
|
username: String!
|
|
}
|
|
|
|
enum Handle {
|
|
x
|
|
threads
|
|
instagram
|
|
facebook
|
|
tiktok
|
|
youtube
|
|
steam
|
|
discord
|
|
twitch
|
|
linkedin
|
|
matrix
|
|
github
|
|
gitea
|
|
forgejo
|
|
gitlab
|
|
bitbucket
|
|
leetcode
|
|
email
|
|
phone
|
|
custom
|
|
}
|
|
|
|
type Query {
|
|
socials: [Social!]! @skipAuth
|
|
social(id: Int!): Social @skipAuth
|
|
}
|
|
|
|
input CreateSocialInput {
|
|
name: String!
|
|
type: Handle!
|
|
username: String!
|
|
}
|
|
|
|
input UpdateSocialInput {
|
|
name: String
|
|
type: Handle
|
|
username: String
|
|
}
|
|
|
|
type Mutation {
|
|
createSocial(input: CreateSocialInput!): Social! @requireAuth
|
|
updateSocial(id: Int!, input: UpdateSocialInput!): Social! @requireAuth
|
|
deleteSocial(id: Int!): Social! @requireAuth
|
|
}
|
|
`
|