sails-hook-swagger-ui
Version:
A Swagger UI Hook for sails-project-admin
42 lines • 1.21 kB
JavaScript
module.exports = function (sails) {
var loader = require('sails-util-micro-apps')(sails);
return {
defaults: {
__configKey__: {
enable: true,
exposeToGlobal: true,
_hookTimeout: 30 * 1000,
},
},
configure() {
loader.configure({
policies: `${__dirname}/api/policies`,
config: `${__dirname}/config`,
assets: `${__dirname}/assets`,
views: `${__dirname}/views`,
});
},
initialize(next) {
loader.inject({
models: `${__dirname}/api/models`,
helpers: `${__dirname}/api/helpers`,
services: `${__dirname}/api/services`,
responses: `${__dirname}/api/responses`,
controllers: `${__dirname}/api/controllers`,
}, err => next(err));
},
customMiddleware(express, app, multipleViews, sails) {
try {
var path = require('path');
var maxAge = sails.config.http.cache;
app.use('/assets', express.static(`${__dirname}/assets`, {
maxAge
}));
multipleViews(app, path.join(__dirname, 'views'));
} catch (e) {
sails.log.error('run hook customMiddleware error', e);
throw e;
}
},
};
};