| 'use strict'; |
| |
| /* eslint-disable |
| global-require, |
| multiline-ternary, |
| space-before-function-paren |
| */ |
| const ADVANCED_GROUP = 'Advanced options:'; |
| const DISPLAY_GROUP = 'Stats options:'; |
| const SSL_GROUP = 'SSL options:'; |
| const CONNECTION_GROUP = 'Connection options:'; |
| const RESPONSE_GROUP = 'Response options:'; |
| const BASIC_GROUP = 'Basic options:'; |
| |
| const options = { |
| bonjour: { |
| type: 'boolean', |
| describe: 'Broadcasts the server via ZeroConf networking on start', |
| }, |
| lazy: { |
| type: 'boolean', |
| describe: 'Lazy', |
| }, |
| liveReload: { |
| type: 'boolean', |
| describe: 'Enables/Disables live reloading on changing files', |
| default: true, |
| }, |
| serveIndex: { |
| type: 'boolean', |
| describe: 'Enables/Disables serveIndex middleware', |
| default: true, |
| }, |
| inline: { |
| type: 'boolean', |
| default: true, |
| describe: |
| 'Inline mode (set to false to disable including client scripts like livereload)', |
| }, |
| progress: { |
| type: 'boolean', |
| describe: 'Print compilation progress in percentage', |
| group: BASIC_GROUP, |
| }, |
| 'hot-only': { |
| type: 'boolean', |
| describe: 'Do not refresh page if HMR fails', |
| group: ADVANCED_GROUP, |
| }, |
| stdin: { |
| type: 'boolean', |
| describe: 'close when stdin ends', |
| }, |
| open: { |
| type: 'string', |
| describe: 'Open the default browser, or optionally specify a browser name', |
| }, |
| useLocalIp: { |
| type: 'boolean', |
| describe: 'Open default browser with local IP', |
| }, |
| 'open-page': { |
| type: 'string', |
| describe: 'Open default browser with the specified page', |
| requiresArg: true, |
| }, |
| color: { |
| type: 'boolean', |
| alias: 'colors', |
| default: function supportsColor() { |
| // Use `require('supports-color').stdout` for supports-color >= 5.0.0. |
| // See https://github.com/webpack/webpack-dev-server/pull/1555. |
| return require('supports-color').stdout; |
| }, |
| group: DISPLAY_GROUP, |
| describe: 'Enables/Disables colors on the console', |
| }, |
| info: { |
| type: 'boolean', |
| group: DISPLAY_GROUP, |
| default: true, |
| describe: 'Info', |
| }, |
| quiet: { |
| type: 'boolean', |
| group: DISPLAY_GROUP, |
| describe: 'Quiet', |
| }, |
| 'client-log-level': { |
| type: 'string', |
| group: DISPLAY_GROUP, |
| default: 'info', |
| describe: |
| 'Log level in the browser (trace, debug, info, warn, error or silent)', |
| }, |
| https: { |
| type: 'boolean', |
| group: SSL_GROUP, |
| describe: 'HTTPS', |
| }, |
| http2: { |
| type: 'boolean', |
| group: SSL_GROUP, |
| describe: 'HTTP/2, must be used with HTTPS', |
| }, |
| key: { |
| type: 'string', |
| describe: 'Path to a SSL key.', |
| group: SSL_GROUP, |
| }, |
| cert: { |
| type: 'string', |
| describe: 'Path to a SSL certificate.', |
| group: SSL_GROUP, |
| }, |
| cacert: { |
| type: 'string', |
| describe: 'Path to a SSL CA certificate.', |
| group: SSL_GROUP, |
| }, |
| pfx: { |
| type: 'string', |
| describe: 'Path to a SSL pfx file.', |
| group: SSL_GROUP, |
| }, |
| 'pfx-passphrase': { |
| type: 'string', |
| describe: 'Passphrase for pfx file.', |
| group: SSL_GROUP, |
| }, |
| 'content-base': { |
| type: 'string', |
| describe: 'A directory or URL to serve HTML content from.', |
| group: RESPONSE_GROUP, |
| }, |
| 'watch-content-base': { |
| type: 'boolean', |
| describe: 'Enable live-reloading of the content-base.', |
| group: RESPONSE_GROUP, |
| }, |
| 'history-api-fallback': { |
| type: 'boolean', |
| describe: 'Fallback to /index.html for Single Page Applications.', |
| group: RESPONSE_GROUP, |
| }, |
| compress: { |
| type: 'boolean', |
| describe: 'Enable gzip compression', |
| group: RESPONSE_GROUP, |
| }, |
| port: { |
| describe: 'The port', |
| group: CONNECTION_GROUP, |
| }, |
| 'disable-host-check': { |
| type: 'boolean', |
| describe: 'Will not check the host', |
| group: CONNECTION_GROUP, |
| }, |
| socket: { |
| type: 'String', |
| describe: 'Socket to listen', |
| group: CONNECTION_GROUP, |
| }, |
| public: { |
| type: 'string', |
| describe: 'The public hostname/ip address of the server', |
| group: CONNECTION_GROUP, |
| }, |
| host: { |
| type: 'string', |
| default: 'localhost', |
| describe: 'The hostname/ip address the server will bind to', |
| group: CONNECTION_GROUP, |
| }, |
| 'allowed-hosts': { |
| type: 'string', |
| describe: |
| 'A comma-delimited string of hosts that are allowed to access the dev server', |
| group: CONNECTION_GROUP, |
| }, |
| }; |
| |
| module.exports = options; |