UNPKG

ae-biu

Version:

Born For AE, Born To Do

76 lines (65 loc) 2.01 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = getUrls; var _address = require('address'); var _address2 = _interopRequireDefault(_address); var _url = require('url'); var _url2 = _interopRequireDefault(_url); var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function getUrls(host, port) { var urls = prepareUrls('http', host, port); return { local: urls.localUrlForTerminal, network: urls.lanUrlForTerminal }; } function prepareUrls(protocol, host, port, pathname) { var formatUrl = function formatUrl(hostname) { return _url2.default.format({ protocol: protocol, hostname: hostname, port: port, pathname: pathname || '/' }); }; var prettyPrintUrl = function prettyPrintUrl(hostname) { return _url2.default.format({ protocol: protocol, hostname: hostname, port: _chalk2.default.bold(port), pathname: pathname || '/' }); }; var isUnspecifiedHost = host === '0.0.0.0' || host === '::'; var prettyHost = void 0, lanUrlForConfig = void 0, lanUrlForTerminal = void 0; if (isUnspecifiedHost) { prettyHost = 'localhost'; try { lanUrlForConfig = _address2.default.ip(); if (lanUrlForConfig) { if (/^10[.]|^172[.](1[6-9]|2[0-9]|3[0-1])[.]|^192[.]168[.]/.test(lanUrlForConfig)) { lanUrlForTerminal = prettyPrintUrl(lanUrlForConfig); } else { lanUrlForConfig = undefined; } } } catch (_e) {} } else { prettyHost = host; } var localUrlForTerminal = prettyPrintUrl(prettyHost); var localUrlForBrowser = formatUrl(prettyHost); return { lanUrlForConfig: lanUrlForConfig, lanUrlForTerminal: lanUrlForTerminal, localUrlForTerminal: localUrlForTerminal, localUrlForBrowser: localUrlForBrowser }; } module.exports = exports['default'];