52 lines
1.7 KiB
TypeScript
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;
|