| 
<?php
 return [
 'default' => 'default',
 'documentations' => [
 'default' => [
 'api' => [
 'title' => 'L5 Swagger UI',
 ],
 
 'routes' => [
 /*
 * Route for accessing api documentation interface
 */
 'api' => 'api/documentation',
 ],
 'paths' => [
 /*
 * Edit to include full URL in ui for assets
 */
 'use_absolute_path' => env('L5_SWAGGER_USE_ABSOLUTE_PATH', true),
 
 /*
 * File name of the generated json documentation file
 */
 'docs_json' => 'api-docs.json',
 
 /*
 * File name of the generated YAML documentation file
 */
 'docs_yaml' => 'api-docs.yaml',
 
 /*
 * Set this to `json` or `yaml` to determine which documentation file to use in UI
 */
 'format_to_use_for_docs' => env('L5_FORMAT_TO_USE_FOR_DOCS', 'json'),
 
 /*
 * Absolute paths to directory containing the swagger annotations are stored.
 */
 'annotations' => [
 base_path('app'),
 ],
 
 ],
 ],
 ],
 'defaults' => [
 'routes' => [
 /*
 * Route for accessing parsed swagger annotations.
 */
 'docs' => 'docs',
 
 /*
 * Route for Oauth2 authentication callback.
 */
 'oauth2_callback' => 'api/oauth2-callback',
 
 /*
 * Middleware allows to prevent unexpected access to API documentation
 */
 'middleware' => [
 'api' => [],
 'asset' => [],
 'docs' => [],
 'oauth2_callback' => [],
 ],
 
 /*
 * Route Group options
 */
 'group_options' => [],
 ],
 
 'paths' => [
 /*
 * Absolute path to location where parsed annotations will be stored
 */
 'docs' => storage_path('api-docs'),
 
 /*
 * Absolute path to directory where to export views
 */
 'views' => base_path('resources/views/vendor/l5-swagger'),
 
 /*
 * Edit to set the api's base path
 */
 'base' => env('L5_SWAGGER_BASE_PATH', null),
 
 /*
 * Edit to set path where swagger ui assets should be stored
 */
 'swagger_ui_assets_path' => env('L5_SWAGGER_UI_ASSETS_PATH', 'vendor/swagger-api/swagger-ui/dist/'),
 
 /*
 * Absolute path to directories that should be exclude from scanning
 * @deprecated Please use `scanOptions.exclude`
 * `scanOptions.exclude` overwrites this
 */
 'excludes' => [],
 ],
 
 'scanOptions' => [
 /**
 * analyser: defaults to \OpenApi\StaticAnalyser .
 *
 * @see \OpenApi\scan
 */
 'analyser' => null,
 
 /**
 * analysis: defaults to a new \OpenApi\Analysis .
 *
 * @see \OpenApi\scan
 */
 'analysis' => null,
 
 /**
 * Custom query path processors classes.
 *
 * @link https://github.com/zircote/swagger-php/tree/master/Examples/schema-query-parameter-processor
 * @see \OpenApi\scan
 */
 'processors' => [
 // new \App\SwaggerProcessors\SchemaQueryParameter(),
 ],
 
 /**
 * pattern: string       $pattern File pattern(s) to scan (default: *.php) .
 *
 * @see \OpenApi\scan
 */
 'pattern' => null,
 
 /*
 * Absolute path to directories that should be exclude from scanning
 * @note This option overwrites `paths.excludes`
 * @see \OpenApi\scan
 */
 'exclude' => [],
 ],
 
 /*
 * API security definitions. Will be generated into documentation file.
 */
 'securityDefinitions' => [
 'securitySchemes' => [
 'bearer' => [ // Unique name of security
 'type' => 'apiKey', // Valid values are "basic", "apiKey" or "oauth2".
 'description' => 'Bearer token, Ex: Bearer <token>',
 'name' => 'Authorization', // The name of the header or query parameter to be used.
 'in' => 'header', // The location of the API key. Valid values are "query" or "header".
 'bearerFormat' => 'JWT',
 ],
 ],
 'security' => [
 /*
 * Examples of Securities
 */
 [
 'bearer' => [ // Unique name of security
 'type' => 'apiKey', // Valid values are "basic", "apiKey" or "oauth2".
 'description' => 'Bearer token, Ex: Bearer <token>',
 'name' => 'Authorization', // The name of the header or query parameter to be used.
 'in' => 'header', // The location of the API key. Valid values are "query" or "header".
 'scheme' => 'bearer',
 ],
 ],
 ],
 ],
 
 /*
 * Set this to `true` in development mode so that docs would be regenerated on each request
 * Set this to `false` to disable swagger generation on production
 */
 'generate_always' => env('L5_SWAGGER_GENERATE_ALWAYS', false),
 
 /*
 * Set this to `true` to generate a copy of documentation in yaml format
 */
 'generate_yaml_copy' => env('L5_SWAGGER_GENERATE_YAML_COPY', false),
 
 /*
 * Edit to trust the proxy's ip address - needed for AWS Load Balancer
 * string[]
 */
 'proxy' => false,
 
 /*
 * Configs plugin allows to fetch external configs instead of passing them to SwaggerUIBundle.
 * See more at: https://github.com/swagger-api/swagger-ui#configs-plugin
 */
 'additional_config_url' => null,
 
 /*
 * Apply a sort to the operation list of each API. It can be 'alpha' (sort by paths alphanumerically),
 * 'method' (sort by HTTP method).
 * Default is the order returned by the server unchanged.
 */
 'operations_sort' => env('L5_SWAGGER_OPERATIONS_SORT', null),
 
 /*
 * Pass the validatorUrl parameter to SwaggerUi init on the JS side.
 * A null value here disables validation.
 */
 'validator_url' => null,
 
 /*
 * Swagger UI configuration parameters
 */
 'ui' => [
 'display' => [
 /*
 * Controls the default expansion setting for the operations and tags. It can be :
 * 'list' (expands only the tags),
 * 'full' (expands the tags and operations),
 * 'none' (expands nothing).
 */
 'doc_expansion' => env('L5_SWAGGER_UI_DOC_EXPANSION', 'none'),
 
 /**
 * If set, enables filtering. The top bar will show an edit box that
 * you can use to filter the tagged operations that are shown. Can be
 * Boolean to enable or disable, or a string, in which case filtering
 * will be enabled using that string as the filter expression. Filtering
 * is case-sensitive matching the filter expression anywhere inside
 * the tag.
 */
 'filter' => env('L5_SWAGGER_UI_FILTERS', true), // true | false
 ],
 
 'authorization' => [
 /*
 * If set to true, it persists authorization data, and it would not be lost on browser close/refresh
 */
 'persist_authorization' => env('L5_SWAGGER_UI_PERSIST_AUTHORIZATION', false),
 ],
 ],
 /*
 * Constants which can be used in annotations
 */
 'constants' => [
 'L5_SWAGGER_CONST_HOST' => env('L5_SWAGGER_CONST_HOST', 'http://my-default-host.com'),
 ],
 ],
 ];
 
 |