Gazebo_simulation-Frontend/node_modules/webpack-dev-server/lib/utils/createDomain.js

36 lines
850 B
JavaScript
Raw Normal View History

2020-12-21 11:29:31 -04:00
'use strict';
/* eslint-disable
no-nested-ternary,
multiline-ternary,
space-before-function-paren
*/
const url = require('url');
const ip = require('internal-ip');
function createDomain (options, server) {
const protocol = options.https ? 'https' : 'http';
const hostname = options.useLocalIp ? ip.v4.sync() || 'localhost' : options.host;
const port = options.socket
? 0
: server
? server.address().port
: 0;
// use explicitly defined public url
// (prefix with protocol if not explicitly given)
if (options.public) {
return /^[a-zA-Z]+:\/\//.test(options.public)
? `${options.public}`
: `${protocol}://${options.public}`;
}
// the formatted domain (url without path) of the webpack server
return url.format({
protocol,
hostname,
port
});
}
module.exports = createDomain;