diff options
author | Minteck <contact@minteck.org> | 2023-01-10 14:54:04 +0100 |
---|---|---|
committer | Minteck <contact@minteck.org> | 2023-01-10 14:54:04 +0100 |
commit | 99c1d9af689e5325f3cf535c4007b3aeb8325229 (patch) | |
tree | e663b3c2ebdbd67c818ac0c5147f0ce1d2463cda /school/node_modules/pronote-api/src/server/schemas/index.js | |
parent | 9871b03912fc28ad38b4037ebf26a78aa937baba (diff) | |
download | pluralconnect-99c1d9af689e5325f3cf535c4007b3aeb8325229.tar.gz pluralconnect-99c1d9af689e5325f3cf535c4007b3aeb8325229.tar.bz2 pluralconnect-99c1d9af689e5325f3cf535c4007b3aeb8325229.zip |
Update - This is an automated commit
Diffstat (limited to 'school/node_modules/pronote-api/src/server/schemas/index.js')
-rw-r--r-- | school/node_modules/pronote-api/src/server/schemas/index.js | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/school/node_modules/pronote-api/src/server/schemas/index.js b/school/node_modules/pronote-api/src/server/schemas/index.js new file mode 100644 index 0000000..099d358 --- /dev/null +++ b/school/node_modules/pronote-api/src/server/schemas/index.js @@ -0,0 +1,40 @@ +const path = require('path'); +const fs = require('fs').promises; + +const { buildSchema } = require('graphql'); + +const date = require('../date'); + +const SCHEMAS = ['student', 'parent']; + +async function readFile(name) +{ + const file = path.join(__dirname, name); + const content = await fs.readFile(file); + + return content.toString(); +} + +async function readSchema(common, name) +{ + const content = await readFile(name + '.graphql'); + const schema = buildSchema(common + '\n' + content); + + Object.assign(schema._typeMap.Date, date); + + return schema; +} + +async function getSchemas() +{ + const common = await readFile('common.graphql'); + const result = {}; + + for (const schema of SCHEMAS) { + result[schema] = await readSchema(common, schema); + } + + return result; +} + +module.exports = getSchemas; |