| 12345678910111213141516171819202122232425262728293031323334353637 | 
							- 'use strict';
 
- const open = require('opn');
 
- const isAbsoluteUrl = require('is-absolute-url');
 
- function runOpen(uri, options, log) {
 
-   // https://github.com/webpack/webpack-dev-server/issues/1990
 
-   let openOptions = { wait: false };
 
-   let openOptionValue = '';
 
-   if (typeof options.open === 'string') {
 
-     openOptions = Object.assign({}, openOptions, { app: options.open });
 
-     openOptionValue = `: "${options.open}"`;
 
-   } else if (typeof options.open === 'object') {
 
-     openOptions = options.open;
 
-     openOptionValue = `: "${JSON.stringify(options.open)}"`;
 
-   }
 
-   const pages =
 
-     typeof options.openPage === 'string'
 
-       ? [options.openPage]
 
-       : options.openPage || [''];
 
-   return Promise.all(
 
-     pages.map((page) => {
 
-       const pageUrl = page && isAbsoluteUrl(page) ? page : `${uri}${page}`;
 
-       return open(pageUrl, openOptions).catch(() => {
 
-         log.warn(
 
-           `Unable to open "${pageUrl}" in browser${openOptionValue}. If you are running in a headless environment, please do not use the --open flag`
 
-         );
 
-       });
 
-     })
 
-   );
 
- }
 
- module.exports = runOpen;
 
 
  |