Skip to content

Commit

Permalink
Installing and using graphql-tools@7.0.2 to separate files by typeDef…
Browse files Browse the repository at this point in the history
…s, queries, mutations and merge them to schema.js
  • Loading branch information
Mason3144 committed Aug 15, 2022
1 parent 5e2e394 commit fc995c7
Show file tree
Hide file tree
Showing 12 changed files with 4,776 additions and 372 deletions.
4 changes: 4 additions & 0 deletions client.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
import { PrismaClient } from "@prisma/client";
const client = new PrismaClient();

export default client;
11 changes: 11 additions & 0 deletions movies/movies.mutations.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import client from "../client.js";

export default {
Mutation: {
createMovie: (_, { title, year, genre }) =>
client.movie.create({ data: { title, year, genre } }),
deleteMovie: (_, { id }) => client.movie.delete({ where: { id } }),
updateMovie: (_, { id, title, year, genre }) =>
client.movie.update({ where: { id }, data: { title, year, genre } }),
},
};
8 changes: 8 additions & 0 deletions movies/movies.queries.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
import client from "../client.js";

export default {
Query: {
movies: () => client.movie.findMany(),
movie: (_, { id }) => client.movie.findUnique({ where: { id } }),
},
};
22 changes: 22 additions & 0 deletions movies/movies.typeDefs.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
import { gql } from "apollo-server";

export default gql`
type Movie {
id: Int!
title: String!
year: Int!
genre: String
createdAt: String
updatedAt: String
}
type Query {
movies: [Movie]
movie(id: Int!): Movie
}
type Mutation {
createMovie(title: String!, year: Int!, genre: String): Movie
deleteMovie(id: Int!): Movie
updateMovie(id: Int!, title: String, year: Int, genre: String): Movie
}
`;

0 comments on commit fc995c7

Please sign in to comment.