diff options
| author | Wes Bos <wesbos@gmail.com> | 2018-02-02 15:23:20 -0500 |
|---|---|---|
| committer | Wes Bos <wesbos@gmail.com> | 2018-02-02 15:23:20 -0500 |
| commit | eabff7cd396d1f37ceb929e666f082ce57f07919 (patch) | |
| tree | 6fbd487688ee9e53bada734288994c35b732150e /backend/src | |
| parent | cd0b07b3adb36fb5ec098f9e511ab45d774fee7b (diff) | |
updateS
Diffstat (limited to 'backend/src')
| -rw-r--r-- | backend/src/generated/prisma.graphql | 22 | ||||
| -rw-r--r-- | backend/src/index.js | 10 | ||||
| -rw-r--r-- | backend/src/resolvers/Mutation.js | 31 | ||||
| -rw-r--r-- | backend/src/resolvers/Query.js | 18 | ||||
| -rw-r--r-- | backend/src/schema.graphql | 20 |
5 files changed, 87 insertions, 14 deletions
diff --git a/backend/src/generated/prisma.graphql b/backend/src/generated/prisma.graphql index 50aaa97..e59a1c9 100644 --- a/backend/src/generated/prisma.graphql +++ b/backend/src/generated/prisma.graphql @@ -30,6 +30,7 @@ type User implements Node { posts(where: PostWhereInput, orderBy: PostOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [Post!] website: String age: Int + dummy: String } @@ -420,6 +421,7 @@ input UserCreateInput { name: String! website: String age: Int + dummy: String posts: PostCreateManyWithoutAuthorInput } @@ -434,6 +436,7 @@ input UserCreateWithoutPostsInput { name: String! website: String age: Int + dummy: String } type UserEdge { @@ -454,6 +457,8 @@ enum UserOrderByInput { website_DESC age_ASC age_DESC + dummy_ASC + dummy_DESC updatedAt_ASC updatedAt_DESC createdAt_ASC @@ -467,6 +472,7 @@ type UserPreviousValues { name: String! website: String age: Int + dummy: String } type UserSubscriptionPayload { @@ -492,6 +498,7 @@ input UserUpdateInput { name: String website: String age: Int + dummy: String posts: PostUpdateManyWithoutAuthorInput } @@ -510,6 +517,7 @@ input UserUpdateWithoutPostsDataInput { name: String website: String age: Int + dummy: String } input UserUpdateWithoutPostsInput { @@ -604,6 +612,20 @@ input UserWhereInput { age_lte: Int age_gt: Int age_gte: Int + dummy: String + dummy_not: String + dummy_in: [String!] + dummy_not_in: [String!] + dummy_lt: String + dummy_lte: String + dummy_gt: String + dummy_gte: String + dummy_contains: String + dummy_not_contains: String + dummy_starts_with: String + dummy_not_starts_with: String + dummy_ends_with: String + dummy_not_ends_with: String posts_every: PostWhereInput posts_some: PostWhereInput posts_none: PostWhereInput diff --git a/backend/src/index.js b/backend/src/index.js index c73cb74..fefe598 100644 --- a/backend/src/index.js +++ b/backend/src/index.js @@ -24,10 +24,10 @@ const server = new GraphQLServer({ }), }); -// This is an example of custom express middlware -server.express.use((req, res, next) => { - console.log("Hi I'm middlware"); - next(); -}); +// // This is an example of custom express middlware +// server.express.use((req, res, next) => { +// // console.log("Hi I'm middlware"); +// next(); +// }); server.start(() => console.log('Server is running on http://localhost:4000')); diff --git a/backend/src/resolvers/Mutation.js b/backend/src/resolvers/Mutation.js index 2796cf8..fbae6fe 100644 --- a/backend/src/resolvers/Mutation.js +++ b/backend/src/resolvers/Mutation.js @@ -35,8 +35,35 @@ const mutations = { }, // Creation of Post Mutations - createItem: forwardTo('db'), - deleteItem: forwardTo('db'), + async createItem(parent, args, ctx, info) { + return ctx.db.mutation.createItem({ data: { ...args } }, info); + }, + + async deleteItem(parent, args, ctx, info) { + console.log('gonna delete one'); + console.log(args); + return ctx.db.mutation.deleteItem( + { + where: { + id: args.id, + }, + }, + info + ); + }, + + async updateItem(parent, args, ctx, info) { + console.log('Updating an item'); + const updates = { ...args }; + delete updates.id; + return ctx.db.mutation.updateItem({ + where: { id: args.id }, + data: { + ...updates, + }, + }); + }, + async createDraft(parent, { title, text }, ctx, info) { // const userId = getUserId(ctx); const userId = getUserId(ctx); diff --git a/backend/src/resolvers/Query.js b/backend/src/resolvers/Query.js index 9d9d142..a2eb749 100644 --- a/backend/src/resolvers/Query.js +++ b/backend/src/resolvers/Query.js @@ -1,18 +1,26 @@ const { getUserId, Context } = require('../utils'); +const { forwardTo } = require('prisma-binding'); const Query = { + items(parent, args, ctx, info) { + // check auth + return ctx.db.query.items({ ...args }, info); + }, + + itemsConnection: forwardTo('db'), + feed(parent, args, ctx, info) { - return ctx.db.query.posts({ where: { isPublished: true } }, info); + return ctx.db.query.posts({}, info); }, drafts(parent, args, ctx, info) { - const id = getUserId(ctx); + // const id = getUserId(ctx); const where = { isPublished: false, - author: { - id, - }, + // author: { + // id, + // }, }; return ctx.db.query.posts({ where }, info); diff --git a/backend/src/schema.graphql b/backend/src/schema.graphql index 788d490..993236e 100644 --- a/backend/src/schema.graphql +++ b/backend/src/schema.graphql @@ -1,10 +1,25 @@ -# import Post, Item, ItemCreateInput from './generated/prisma.graphql' +# import ItemWhereInput, ItemOrderByInput, allItems, Post, Item, ItemCreateInput, ItemOrderByInput, ItemWhereInput from './generated/prisma.graphql' type Query { feed: [Post!]! drafts: [Post!]! post(id: ID!): Post! me: User + itemsConnection( + where: ItemWhereInput + orderBy: ItemOrderByInput + skip: Int + after: String + before: String + first: Int + last: Int + ): ItemConnection! + items( + where: ItemWhereInput + orderBy: ItemOrderByInput + skip: Int + first: Int + ): [Item]! } # import Mutation from './generated/prisma.graphql' @@ -16,8 +31,9 @@ type Mutation { publish(id: ID!): Post! deletePost(id: ID!): Post! updatePost(id: ID!, title: String, text: String): Post! - createItem(data: ItemCreateInput): Item! + createItem(title: String, description: String, price: Int): Item! deleteItem(id: ID!): Item! + updateItem(id: ID!, title: String, description: String, price: Int): Item! } type AuthPayload { |
