| 'use strict'; | 
|   | 
| const logger = require('webpack-log'); | 
| const colors = require('./colors'); | 
| const runOpen = require('./runOpen'); | 
|   | 
| // TODO: don't emit logs when webpack-dev-server is used via Node.js API | 
| function status(uri, options, log, useColor) { | 
|   if (options.quiet === true) { | 
|     // Add temporary logger to output just the status of the dev server | 
|     log = logger({ | 
|       name: 'wds', | 
|       level: 'info', | 
|       timestamp: options.logTime, | 
|     }); | 
|   } | 
|   | 
|   const contentBase = Array.isArray(options.contentBase) | 
|     ? options.contentBase.join(', ') | 
|     : options.contentBase; | 
|   | 
|   if (options.socket) { | 
|     log.info(`Listening to socket at ${colors.info(useColor, options.socket)}`); | 
|   } else { | 
|     log.info(`Project is running at ${colors.info(useColor, uri)}`); | 
|   } | 
|   | 
|   log.info( | 
|     `webpack output is served from ${colors.info(useColor, options.publicPath)}` | 
|   ); | 
|   | 
|   if (contentBase) { | 
|     log.info( | 
|       `Content not from webpack is served from ${colors.info( | 
|         useColor, | 
|         contentBase | 
|       )}` | 
|     ); | 
|   } | 
|   | 
|   if (options.historyApiFallback) { | 
|     log.info( | 
|       `404s will fallback to ${colors.info( | 
|         useColor, | 
|         options.historyApiFallback.index || '/index.html' | 
|       )}` | 
|     ); | 
|   } | 
|   | 
|   if (options.bonjour) { | 
|     log.info( | 
|       'Broadcasting "http" with subtype of "webpack" via ZeroConf DNS (Bonjour)' | 
|     ); | 
|   } | 
|   | 
|   if (options.open) { | 
|     runOpen(uri, options, log); | 
|   } | 
| } | 
|   | 
| module.exports = status; |