diff options
| -rw-r--r-- | README.md | 11 | ||||
| -rw-r--r-- | src/datasources/senpy.js | 12 | ||||
| -rw-r--r-- | src/resolvers.js | 7 | ||||
| -rw-r--r-- | src/schema.js | 15 |
4 files changed, 41 insertions, 4 deletions
@@ -17,6 +17,17 @@ query { } languages language: language(language: "C") + boys: boys { + random: random { + language + image + } + me: me { + ip + } + languages + language: language(language: "C") + } } ``` diff --git a/src/datasources/senpy.js b/src/datasources/senpy.js index 0c3b8b6..869ec97 100644 --- a/src/datasources/senpy.js +++ b/src/datasources/senpy.js @@ -17,14 +17,26 @@ module.exports = class SenpyAPI extends RESTDataSource { return this.get("random"); } + async getBoysRandom() { + return this.get("boys/random"); + } + async getLanguages() { return this.get("languages"); } + async getBoysLanguages() { + return this.get("boys/languages"); + } + async getLanguage(language) { return this.get(`language/${language}`); } + async getBoysLanguage(language) { + return this.get(`boys/language/${language}`); + } + async getMe() { return this.get("me"); } diff --git a/src/resolvers.js b/src/resolvers.js index 2bfa56f..3077ea3 100644 --- a/src/resolvers.js +++ b/src/resolvers.js @@ -12,5 +12,12 @@ module.exports = { me: async (_source, {}, { dataSources }) => { return dataSources.senpyAPI.getMe(); }, + boys: async (_source, {}, { dataSources }) => { + return { + random: dataSources.senpyAPI.getBoysRandom(), + languages: dataSources.senpyAPI.getBoysLanguages(), + language: ({ language }) => dataSources.senpyAPI.getBoysLanguage(language), + }; + }, }, }; diff --git a/src/schema.js b/src/schema.js index 6509671..b535db9 100644 --- a/src/schema.js +++ b/src/schema.js @@ -9,11 +9,18 @@ module.exports = gql` type Me { ip: String! } + + type Boys { + random: Random! + languages: [String!]! + language(language: String!): [String!]! + } type Query { - random: Random - languages: [String] - language(language: String!): [String] - me: Me + random: Random! + languages: [String!]! + language(language: String!): [String!]! + me: Me! + boys: Boys! } `; |