1- const oasTools = require ( 'oas-tools' ) ;
1+ const oasTools = require ( '@ oas-tools/core ' ) ;
22const path = require ( 'path' ) ;
3- const { promisify } = require ( 'util' ) ;
43const { ipCheck } = require ( 'arsenal' ) ;
54const config = require ( '../config' ) ;
65const { logger, buildRequestLogger } = require ( '../utils' ) ;
@@ -9,33 +8,40 @@ const { translateAndAuthorize } = require('../vault');
98const metricHandlers = require ( './metrics' ) ;
109
1110const oasOptions = {
12- controllers : path . join ( __dirname , './API/' ) ,
13- checkControllers : true ,
14- loglevel : config . logging . level === 'trace' ? 'debug' : 'info' , // oasTools is very verbose
15- customLogger : logger ,
16- customErrorHandling : true ,
17- strict : true ,
18- router : true ,
19- validator : true ,
20- docs : {
21- apiDocs : '/openapi.json' ,
22- apiDocsPrefix : '' ,
11+ packageJSON : path . join ( __dirname , '../../package.json' ) ,
12+ oasFile : path . join ( __dirname , '../../openapi.yaml' ) ,
13+ logger : {
14+ level : config . logging . level === 'trace' ? 'debug' : 'info' , // oasTools is very verbose
15+ customLogger : logger ,
16+ } ,
17+ middleware : {
18+ router : {
19+ controllers : path . join ( __dirname , './API/' ) ,
20+ disable : false ,
21+ } ,
22+ validator : {
23+ strict : true ,
24+ requestValidation : true ,
25+ responseValidation : true ,
26+ } ,
27+ swagger : {
28+ disable : true ,
29+ path : '/_/docs' ,
30+ } ,
31+ error : {
32+ disable : false ,
33+ } ,
2334 } ,
2435 ignoreUnknownFormats : true ,
2536} ;
2637
2738// If in development mode, enable the swagger ui
2839if ( config . development ) {
29- oasOptions . docs = {
30- swaggerUi : '/_/docs' ,
31- swaggerUiPrefix : '' ,
32- ...oasOptions . docs ,
33- } ;
40+ oasOptions . middleware . swagger . disable = false ;
3441}
3542
3643async function initializeOasTools ( spec , app ) {
37- oasTools . configure ( oasOptions ) ;
38- return promisify ( oasTools . initialize ) ( spec , app ) ;
44+ return oasTools . initialize ( app , oasOptions ) ;
3945}
4046
4147function loggerMiddleware ( req , res , next ) {
0 commit comments