summaryrefslogtreecommitdiff
path: root/school/node_modules/pronote-api/src/server/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'school/node_modules/pronote-api/src/server/index.js')
-rw-r--r--school/node_modules/pronote-api/src/server/index.js47
1 files changed, 0 insertions, 47 deletions
diff --git a/school/node_modules/pronote-api/src/server/index.js b/school/node_modules/pronote-api/src/server/index.js
deleted file mode 100644
index 1693e1c..0000000
--- a/school/node_modules/pronote-api/src/server/index.js
+++ /dev/null
@@ -1,47 +0,0 @@
-const { graphql } = require('graphql');
-
-const http = require('./http');
-const context = require('./context');
-const getSchemas = require('./schemas');
-const { login, logout, getSession } = require('./auth');
-
-async function start(host, port)
-{
- const schemas = await getSchemas();
-
- await http(host, port, {
- graphql: ({ query, variables }, token) => handle(token, schemas, query, context, variables),
- login: params => login(params),
- logout: (_, token) => logout(token)
- });
-}
-
-async function handle(token, schemas, query, context, variables)
-{
- if (!token) {
- throw {
- http: 401,
- message: 'Missing \'Token\' header'
- };
- }
-
- if (!query) {
- throw {
- http: 400,
- message: 'Missing \'query\' field or \'Content-Type: application/json\' header'
- };
- }
-
- const session = getSession(token);
- if (!session) {
- throw {
- http: 401,
- message: 'Unknown session token'
- };
- }
-
- const schema = schemas[session.type.name];
- return await graphql(schema, query, context(session), null, variables);
-}
-
-module.exports = start;