42 lines
1.0 KiB
JavaScript
42 lines
1.0 KiB
JavaScript
"use strict";
|
|
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
exports.default = void 0;
|
|
|
|
var _url = require("url");
|
|
|
|
var _errors = require("../errors");
|
|
|
|
const parseProxyUrl = url => {
|
|
const urlTokens = (0, _url.parse)(url);
|
|
|
|
if (urlTokens.query !== null) {
|
|
throw new _errors.UnexpectedStateError('Unsupported `GLOBAL_AGENT.HTTP_PROXY` configuration value: URL must not have query.');
|
|
}
|
|
|
|
if (urlTokens.hash !== null) {
|
|
throw new _errors.UnexpectedStateError('Unsupported `GLOBAL_AGENT.HTTP_PROXY` configuration value: URL must not have hash.');
|
|
}
|
|
|
|
if (urlTokens.protocol !== 'http:') {
|
|
throw new _errors.UnexpectedStateError('Unsupported `GLOBAL_AGENT.HTTP_PROXY` configuration value: URL protocol must be "http:".');
|
|
}
|
|
|
|
let port = 80;
|
|
|
|
if (urlTokens.port) {
|
|
port = parseInt(urlTokens.port, 10);
|
|
}
|
|
|
|
return {
|
|
authorization: urlTokens.auth || null,
|
|
hostname: urlTokens.hostname,
|
|
port
|
|
};
|
|
};
|
|
|
|
var _default = parseProxyUrl;
|
|
exports.default = _default;
|
|
//# sourceMappingURL=parseProxyUrl.js.map
|