1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-10-18 20:09:08 +02:00
unleash.unleash/src/lib/routes/admin-api/index.js

86 lines
2.9 KiB
JavaScript
Raw Normal View History

'use strict';
const Controller = require('../controller');
const FeatureController = require('./feature.js');
const FeatureTypeController = require('./feature-type.js');
const ArchiveController = require('./archive.js');
const EventController = require('./event.js');
const StrategyController = require('./strategy');
const MetricsController = require('./metrics');
2018-12-04 08:16:03 +01:00
const UserController = require('./user');
2019-03-12 10:46:08 +01:00
const ConfigController = require('./config');
const ContextController = require('./context');
const StateController = require('./state');
const TagController = require('./tag');
const TagTypeController = require('./tag-type');
const AddonController = require('./addon');
2021-03-29 19:58:11 +02:00
const ApiTokenController = require('./api-token-controller');
const EmailController = require('./email');
const UserAdminController = require('./user-admin');
2018-11-29 21:25:45 +01:00
const apiDef = require('./api-def.json');
const BootstrapController = require('./bootstrap-controller');
2018-11-29 21:25:45 +01:00
class AdminApi extends Controller {
2020-12-17 19:43:01 +01:00
constructor(config, services) {
super(config);
2018-11-29 21:25:45 +01:00
this.app.get('/', this.index);
2020-12-17 19:43:01 +01:00
this.app.use(
'/features',
new FeatureController(config, services).router,
);
this.app.use(
'/feature-types',
2020-12-17 19:43:01 +01:00
new FeatureTypeController(config, services).router,
);
this.app.use(
'/archive',
new ArchiveController(config, services).router,
);
this.app.use(
'/strategies',
new StrategyController(config, services).router,
);
this.app.use('/events', new EventController(config, services).router);
this.app.use(
'/metrics',
new MetricsController(config, services).router,
);
this.app.use('/user', new UserController(config, services).router);
this.app.use(
'/ui-config',
new ConfigController(config, services).router,
);
this.app.use(
'/ui-bootstrap',
new BootstrapController(config, services).router,
);
2020-12-17 19:43:01 +01:00
this.app.use(
'/context',
new ContextController(config, services).router,
);
2020-12-17 19:43:01 +01:00
this.app.use('/state', new StateController(config, services).router);
this.app.use('/tags', new TagController(config, services).router);
this.app.use(
'/tag-types',
new TagTypeController(config, services).router,
);
this.app.use('/addons', new AddonController(config, services).router);
2021-03-29 19:58:11 +02:00
this.app.use(
'/api-tokens',
new ApiTokenController(config, services).router,
);
this.app.use('/email', new EmailController(config, services).router);
this.app.use(
'/user-admin',
new UserAdminController(config, services).router,
);
2018-11-29 21:25:45 +01:00
}
index(req, res) {
res.json(apiDef);
}
}
module.exports = AdminApi;