summaryrefslogtreecommitdiff
path: root/node_modules/@electron/get/dist/esm/proxy.js
blob: 8063ef236477a360d560b1d63306b59750109fa7 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import * as debug from 'debug';
import { getEnv, setEnv } from './utils';
const d = debug('@electron/get:proxy');
/**
 * Initializes a third-party proxy module for HTTP(S) requests.
 */
export function initializeProxy() {
    try {
        // Code originally from https://github.com/yeoman/yo/blob/b2eea87e/lib/cli.js#L19-L28
        const MAJOR_NODEJS_VERSION = parseInt(process.version.slice(1).split('.')[0], 10);
        if (MAJOR_NODEJS_VERSION >= 10) {
            // See: https://github.com/electron/get/pull/214#discussion_r798845713
            const env = getEnv('GLOBAL_AGENT_');
            setEnv('GLOBAL_AGENT_HTTP_PROXY', env('HTTP_PROXY'));
            setEnv('GLOBAL_AGENT_HTTPS_PROXY', env('HTTPS_PROXY'));
            setEnv('GLOBAL_AGENT_NO_PROXY', env('NO_PROXY'));
            // `global-agent` works with Node.js v10 and above.
            require('global-agent').bootstrap();
        }
        else {
            // `global-tunnel-ng` works with Node.js v10 and below.
            require('global-tunnel-ng').initialize();
        }
    }
    catch (e) {
        d('Could not load either proxy modules, built-in proxy support not available:', e);
    }
}
//# sourceMappingURL=proxy.js.map