Easy swagger-ui (v3) drop-in plugin for hapi to be used with hapi-swaggered.
Supports hapi 17.x and up
For earlier versions check hapi-swaggered-ui 2.x (current default/latest
npm install hapi-swaggered --save)
npm install hapi-swaggered-ui@next
title: string, title of swagger ui
path: string, optional path where the docs should be located at (e.g. '/docs', defaults to: null)
basePath: string, optional url base path (e.g. used to fix reverse proxy routes)
swaggerEndpoint: Override the auto-detection of hapi-swaggered with a specific URL. (not recommended in use with hapi-swaggered; optional)
swaggerOptions: object (according to swagger-ui)
operationsSorter: Apply a sort to the operation list of each API. It can be 'alpha' (sort by paths alphanumerically), 'method' (sort by HTTP method), null (server side sorting) or a custom function (see link above).
docExpansion: Controls how the API listing is displayed. It can be set to 'none' (default), 'list' (shows operations for each resource), or 'full' (fully expanded: shows operations and their details).
validatorUrl: By default, Swagger-UI attempts to validate specs against swagger.io's online validator (disabled for localhost). You can use this parameter to set a different validator URL, for example for locally deployed validators (Validator Badge). Setting it to false will disable validation. This parameter is relevant for Swagger 2.0 specs only.
- In addition the following options are supported:
modelPropertyMacro- have a look at swagger-ui
authorization: object - can be null or false to disable authorization through swagger-ui (e.g. in case of public apis without auth)
scope: string, 'query' or 'header'
field: string, name of the field
valuePrefix: string, prefix fields value (e.g. with 'bearer ')
defaultValue: string, default value of the api-key field
placeholder: string, placeholder of the api-key field
auth: object, auth options as specified in route options (hapi docs), will be applied to all registered plugin routes
defaultTags: array of strings, will be passed to the specs endpoint through the query param 'tags' (hapi-swaggered feature: tag filtering)
Since hapi-swaggered exposes its plugin configuration hapi-swaggered-ui should find it's swagger endpoint automatically. In case you want to use hapi-swaggered-ui without hapi-swaggered (or the auto-detection doesn't work) you can manually set the swagger endpoint by the swaggerEndpoint option. In addition the page title can be changed through the option title.
May have a look at the example listed at https://github.com/z0mt3c/hapi-swaggered