index.js 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. import loggerFactory from '~/utils/logger';
  2. import * as userActivation from './user-activation';
  3. import injectUserRegistrationOrderByTokenMiddleware from '../../middlewares/inject-user-registration-order-by-token-middleware';
  4. import pageListing from './page-listing';
  5. const logger = loggerFactory('growi:routes:apiv3'); // eslint-disable-line no-unused-vars
  6. const express = require('express');
  7. const router = express.Router();
  8. module.exports = (crowi) => {
  9. // add custom functions to express response
  10. require('./response')(express, crowi);
  11. router.use('/healthcheck', require('./healthcheck')(crowi));
  12. // admin
  13. router.use('/admin-home', require('./admin-home')(crowi));
  14. router.use('/markdown-setting', require('./markdown-setting')(crowi));
  15. router.use('/app-settings', require('./app-settings')(crowi));
  16. router.use('/customize-setting', require('./customize-setting')(crowi));
  17. router.use('/notification-setting', require('./notification-setting')(crowi));
  18. router.use('/users', require('./users')(crowi));
  19. router.use('/user-groups', require('./user-group')(crowi));
  20. router.use('/export', require('./export')(crowi));
  21. router.use('/import', require('./import')(crowi));
  22. router.use('/search', require('./search')(crowi));
  23. router.use('/in-app-notification', require('./in-app-notification')(crowi));
  24. router.use('/personal-setting', require('./personal-setting')(crowi));
  25. router.use('/user-group-relations', require('./user-group-relation')(crowi));
  26. router.use('/mongo', require('./mongo')(crowi));
  27. router.use('/statistics', require('./statistics')(crowi));
  28. router.use('/security-setting', require('./security-setting')(crowi));
  29. router.use('/search', require('./search')(crowi));
  30. router.use('/page', require('./page')(crowi));
  31. router.use('/pages', require('./pages')(crowi));
  32. router.use('/revisions', require('./revisions')(crowi));
  33. router.use('/page-listing', pageListing(crowi));
  34. router.use('/share-links', require('./share-links')(crowi));
  35. router.use('/bookmarks', require('./bookmarks')(crowi));
  36. router.use('/attachment', require('./attachment')(crowi));
  37. router.use('/slack-integration', require('./slack-integration')(crowi));
  38. router.use('/slack-integration-settings', require('./slack-integration-settings')(crowi));
  39. router.use('/slack-integration-legacy-settings', require('./slack-integration-legacy-settings')(crowi));
  40. router.use('/staffs', require('./staffs')(crowi));
  41. router.use('/forgot-password', require('./forgot-password')(crowi));
  42. const user = require('../user')(crowi, null);
  43. router.get('/check_username', user.api.checkUsername);
  44. router.post('/complete-registration',
  45. injectUserRegistrationOrderByTokenMiddleware,
  46. userActivation.completeRegistrationRules(),
  47. userActivation.validateCompleteRegistration,
  48. userActivation.completeRegistrationAction(crowi));
  49. router.use('/user-ui-settings', require('./user-ui-settings')(crowi));
  50. return router;
  51. };