Sha256: 4940a32fec63c60ba79727dac6544f5728ff5d91a4bf086996335b07bcc947a4

Contents?: true

Size: 808 Bytes

Versions: 26

Compression:

Stored size: 808 Bytes

Contents

'use strict';

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 || 'localhost';

  // eslint-disable-next-line no-nested-ternary
  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;

Version data entries

26 entries across 25 versions & 8 rubygems

Version Path
optimacms-0.1.61 spec/dummy/node_modules/webpack-dev-server/lib/utils/createDomain.js
disco_app-0.18.0 test/dummy/node_modules/webpack-dev-server/lib/utils/createDomain.js
disco_app-0.18.2 test/dummy/node_modules/webpack-dev-server/lib/utils/createDomain.js
disco_app-0.16.1 test/dummy/node_modules/webpack-dev-server/lib/utils/createDomain.js
disco_app-0.15.2 test/dummy/node_modules/webpack-dev-server/lib/utils/createDomain.js
disco_app-0.18.4 test/dummy/node_modules/webpack-dev-server/lib/utils/createDomain.js
disco_app-0.18.1 test/dummy/node_modules/webpack-dev-server/lib/utils/createDomain.js
disco_app-0.12.7.pre.puma.pre.3 test/dummy/node_modules/webpack-dev-server/lib/utils/createDomain.js
disco_app-0.14.0 test/dummy/node_modules/webpack-dev-server/lib/utils/createDomain.js
disco_app-0.13.6.pre.puma.pre.3 test/dummy/node_modules/webpack-dev-server/lib/utils/createDomain.js
tang-0.2.1 spec/tang_app/node_modules/webpack-dev-server/lib/utils/createDomain.js
groonga-client-model-6.0.0 test/apps/rails6.0.3.5/node_modules/webpack-dev-server/lib/utils/createDomain.js
groonga-client-model-6.0.0 test/apps/rails6.1.3/node_modules/webpack-dev-server/lib/utils/createDomain.js
ruby2js-4.0.4 lib/tasks/testrails/node_modules/webpack-dev-server/lib/utils/createDomain.js
ruby2js-4.0.3 lib/tasks/testrails/node_modules/webpack-dev-server/lib/utils/createDomain.js
tang-0.2.0 spec/tang_app/node_modules/webpack-dev-server/lib/utils/createDomain.js
tang-0.1.0 spec/tang_app/node_modules/webpack-dev-server/lib/utils/createDomain.js
tang-0.0.9 spec/tang_app/node_modules/webpack-dev-server/lib/utils/createDomain.js
enju_library-0.3.8 spec/dummy/node_modules/webpack-dev-server/lib/utils/createDomain.js
jester-data-8.0.0 node_modules/webpack-dev-server/lib/utils/createDomain.js