// books.json
[
  {
    "title": "malza's coding",
    "author": "malza",
    "url": "<http://malza.com>",
    "bookId": 1
  },
  {
    "title": "zzangA's coding",
    "author": "zzangA",
    "url": "<http://zzangA.com>",
    "bookId": 2
  }
]
// bookId 와 bookTitle 로 원하는 책만 가져온다.
const typeDefs = gql`
  type Book {
    title: String
    author: String
    url: String
    bookId: Int
  }

  type Query {
    books: [Book]
    bookId(bookId: Int): Book
    bookTitle(title: String): Book
  }
`;

const resolvers = {
  Query: {
    // books: () => books,
    books: () => {
      return JSON.parse(readFileSync(join(__dirname, "books.json")).toString());
    },
    bookId: (parent, args, context, info) => {
      const books = JSON.parse(
        readFileSync(join(__dirname, "books.json")).toString()
      );
      return books.find((book) => book.title === args.title);
    },
    bookTitle: (parent, args, context, info) => {
      const books = JSON.parse(
        readFileSync(join(__dirname, "books.json")).toString()
      );
      return books.find((book) => args.title === book.title);
    },
  },
};