2025-02-19 00:34:19 +01:00

52 lines
1.7 KiB
TypeScript

import express from 'express';
import passport from 'passport';
// Route imports
import testRoute from './test.js';
import versionRoute from './version.js'
import userRoute from './user.js';
import userRoute_schema from './user_schema.js';
// import content_route from './content.js';
// import content_schema from './content_schema.js';
// import * as content_s3_sub_route from './content_s3_sub.js';
// import * as content_s3_sub_schema from './content_s3_sub_schema.js';
// Router base is '/api/v1'
const Router = express.Router({ strict: false });
// All empty strings are undefined (not null!) values (body)
Router.use('*', function (req, res, next) {
for (let key in req.body) {
if (req.body[key] === '') {
req.body[key] = undefined;
}
}
next();
});
// All api routes lowercase! Yea I know but when strict: true it matters.
Router.route('/user').get(userRoute.get).post(userRoute.post).patch(userRoute.patch).delete(userRoute.del);
Router.route('/user/describe').get(userRoute_schema);
// Router.route('/content').get(content_route.get).post(content_route.post).patch(content_route.patch).delete(content_route.del);
// Router.route('/content/describe').get(content_schema);
// Router.route('/content/downloadurl').get(content_s3_sub_route.get_downloadurl);
// Router.route('/content/uploadurl').get(content_s3_sub_route.get_uploadurl);
// Router.route('/content/downloadurl/describe').get(content_s3_sub_schema.get_describe_downloadurl);
// Router.route('/content/uploadurl/describe').get(content_s3_sub_schema.get_describe_uploadurl);
Router.route('/version').get(versionRoute.get);
//Router.use('/search', search_routes);
Router.route('/test').get(testRoute.get);
export default Router;