1 line
7.1 KiB
JSON
1 line
7.1 KiB
JSON
{"ast":null,"code":"'use strict';\n\nfunction formatHostname(hostname) {\n // canonicalize the hostname, so that 'oogle.com' won't match 'google.com'\n return hostname.replace(/^\\.*/, '.').toLowerCase();\n}\n\nfunction parseNoProxyZone(zone) {\n zone = zone.trim().toLowerCase();\n var zoneParts = zone.split(':', 2);\n var zoneHost = formatHostname(zoneParts[0]);\n var zonePort = zoneParts[1];\n var hasPort = zone.indexOf(':') > -1;\n return {\n hostname: zoneHost,\n port: zonePort,\n hasPort: hasPort\n };\n}\n\nfunction uriInNoProxy(uri, noProxy) {\n var port = uri.port || (uri.protocol === 'https:' ? '443' : '80');\n var hostname = formatHostname(uri.hostname);\n var noProxyList = noProxy.split(','); // iterate through the noProxyList until it finds a match.\n\n return noProxyList.map(parseNoProxyZone).some(function (noProxyZone) {\n var isMatchedAt = hostname.indexOf(noProxyZone.hostname);\n var hostnameMatched = isMatchedAt > -1 && isMatchedAt === hostname.length - noProxyZone.hostname.length;\n\n if (noProxyZone.hasPort) {\n return port === noProxyZone.port && hostnameMatched;\n }\n\n return hostnameMatched;\n });\n}\n\nfunction getProxyFromURI(uri) {\n // Decide the proper request proxy to use based on the request URI object and the\n // environmental variables (NO_PROXY, HTTP_PROXY, etc.)\n // respect NO_PROXY environment variables (see: https://lynx.invisible-island.net/lynx2.8.7/breakout/lynx_help/keystrokes/environments.html)\n var noProxy = process.env.NO_PROXY || process.env.no_proxy || ''; // if the noProxy is a wildcard then return null\n\n if (noProxy === '*') {\n return null;\n } // if the noProxy is not empty and the uri is found return null\n\n\n if (noProxy !== '' && uriInNoProxy(uri, noProxy)) {\n return null;\n } // Check for HTTP or HTTPS Proxy in environment Else default to null\n\n\n if (uri.protocol === 'http:') {\n return process.env.HTTP_PROXY || process.env.http_proxy || null;\n }\n\n if (uri.protocol === 'https:') {\n return process.env.HTTPS_PROXY || process.env.https_proxy || process.env.HTTP_PROXY || process.env.http_proxy || null;\n } // if none of that works, return null\n // (What uri protocol are you using then?)\n\n\n return null;\n}\n\nmodule.exports = getProxyFromURI;","map":{"version":3,"sources":["/Users/tylerkoenig/Code/personal/react-scss2/node_modules/request/lib/getProxyFromURI.js"],"names":["formatHostname","hostname","replace","toLowerCase","parseNoProxyZone","zone","trim","zoneParts","split","zoneHost","zonePort","hasPort","indexOf","port","uriInNoProxy","uri","noProxy","protocol","noProxyList","map","some","noProxyZone","isMatchedAt","hostnameMatched","length","getProxyFromURI","process","env","NO_PROXY","no_proxy","HTTP_PROXY","http_proxy","HTTPS_PROXY","https_proxy","module","exports"],"mappings":"AAAA;;AAEA,SAASA,cAAT,CAAyBC,QAAzB,EAAmC;AACjC;AACA,SAAOA,QAAQ,CAACC,OAAT,CAAiB,MAAjB,EAAyB,GAAzB,EAA8BC,WAA9B,EAAP;AACD;;AAED,SAASC,gBAAT,CAA2BC,IAA3B,EAAiC;AAC/BA,EAAAA,IAAI,GAAGA,IAAI,CAACC,IAAL,GAAYH,WAAZ,EAAP;AAEA,MAAII,SAAS,GAAGF,IAAI,CAACG,KAAL,CAAW,GAAX,EAAgB,CAAhB,CAAhB;AACA,MAAIC,QAAQ,GAAGT,cAAc,CAACO,SAAS,CAAC,CAAD,CAAV,CAA7B;AACA,MAAIG,QAAQ,GAAGH,SAAS,CAAC,CAAD,CAAxB;AACA,MAAII,OAAO,GAAGN,IAAI,CAACO,OAAL,CAAa,GAAb,IAAoB,CAAC,CAAnC;AAEA,SAAO;AAACX,IAAAA,QAAQ,EAAEQ,QAAX;AAAqBI,IAAAA,IAAI,EAAEH,QAA3B;AAAqCC,IAAAA,OAAO,EAAEA;AAA9C,GAAP;AACD;;AAED,SAASG,YAAT,CAAuBC,GAAvB,EAA4BC,OAA5B,EAAqC;AACnC,MAAIH,IAAI,GAAGE,GAAG,CAACF,IAAJ,KAAaE,GAAG,CAACE,QAAJ,KAAiB,QAAjB,GAA4B,KAA5B,GAAoC,IAAjD,CAAX;AACA,MAAIhB,QAAQ,GAAGD,cAAc,CAACe,GAAG,CAACd,QAAL,CAA7B;AACA,MAAIiB,WAAW,GAAGF,OAAO,CAACR,KAAR,CAAc,GAAd,CAAlB,CAHmC,CAKnC;;AACA,SAAOU,WAAW,CAACC,GAAZ,CAAgBf,gBAAhB,EAAkCgB,IAAlC,CAAuC,UAAUC,WAAV,EAAuB;AACnE,QAAIC,WAAW,GAAGrB,QAAQ,CAACW,OAAT,CAAiBS,WAAW,CAACpB,QAA7B,CAAlB;AACA,QAAIsB,eAAe,GACjBD,WAAW,GAAG,CAAC,CAAf,IACGA,WAAW,KAAKrB,QAAQ,CAACuB,MAAT,GAAkBH,WAAW,CAACpB,QAAZ,CAAqBuB,MAF5D;;AAKA,QAAIH,WAAW,CAACV,OAAhB,EAAyB;AACvB,aAAQE,IAAI,KAAKQ,WAAW,CAACR,IAAtB,IAA+BU,eAAtC;AACD;;AAED,WAAOA,eAAP;AACD,GAZM,CAAP;AAaD;;AAED,SAASE,eAAT,CAA0BV,GAA1B,EAA+B;AAC7B;AACA;AACA;AAEA,MAAIC,OAAO,GAAGU,OAAO,CAACC,GAAR,CAAYC,QAAZ,IAAwBF,OAAO,CAACC,GAAR,CAAYE,QAApC,IAAgD,EAA9D,CAL6B,CAO7B;;AAEA,MAAIb,OAAO,KAAK,GAAhB,EAAqB;AACnB,WAAO,IAAP;AACD,GAX4B,CAa7B;;;AAEA,MAAIA,OAAO,KAAK,EAAZ,IAAkBF,YAAY,CAACC,GAAD,EAAMC,OAAN,CAAlC,EAAkD;AAChD,WAAO,IAAP;AACD,GAjB4B,CAmB7B;;;AAEA,MAAID,GAAG,CAACE,QAAJ,KAAiB,OAArB,EAA8B;AAC5B,WAAOS,OAAO,CAACC,GAAR,CAAYG,UAAZ,IACLJ,OAAO,CAACC,GAAR,CAAYI,UADP,IACqB,IAD5B;AAED;;AAED,MAAIhB,GAAG,CAACE,QAAJ,KAAiB,QAArB,EAA+B;AAC7B,WAAOS,OAAO,CAACC,GAAR,CAAYK,WAAZ,IACLN,OAAO,CAACC,GAAR,CAAYM,WADP,IAELP,OAAO,CAACC,GAAR,CAAYG,UAFP,IAGLJ,OAAO,CAACC,GAAR,CAAYI,UAHP,IAGqB,IAH5B;AAID,GA/B4B,CAiC7B;AACA;;;AAEA,SAAO,IAAP;AACD;;AAEDG,MAAM,CAACC,OAAP,GAAiBV,eAAjB","sourcesContent":["'use strict'\n\nfunction formatHostname (hostname) {\n // canonicalize the hostname, so that 'oogle.com' won't match 'google.com'\n return hostname.replace(/^\\.*/, '.').toLowerCase()\n}\n\nfunction parseNoProxyZone (zone) {\n zone = zone.trim().toLowerCase()\n\n var zoneParts = zone.split(':', 2)\n var zoneHost = formatHostname(zoneParts[0])\n var zonePort = zoneParts[1]\n var hasPort = zone.indexOf(':') > -1\n\n return {hostname: zoneHost, port: zonePort, hasPort: hasPort}\n}\n\nfunction uriInNoProxy (uri, noProxy) {\n var port = uri.port || (uri.protocol === 'https:' ? '443' : '80')\n var hostname = formatHostname(uri.hostname)\n var noProxyList = noProxy.split(',')\n\n // iterate through the noProxyList until it finds a match.\n return noProxyList.map(parseNoProxyZone).some(function (noProxyZone) {\n var isMatchedAt = hostname.indexOf(noProxyZone.hostname)\n var hostnameMatched = (\n isMatchedAt > -1 &&\n (isMatchedAt === hostname.length - noProxyZone.hostname.length)\n )\n\n if (noProxyZone.hasPort) {\n return (port === noProxyZone.port) && hostnameMatched\n }\n\n return hostnameMatched\n })\n}\n\nfunction getProxyFromURI (uri) {\n // Decide the proper request proxy to use based on the request URI object and the\n // environmental variables (NO_PROXY, HTTP_PROXY, etc.)\n // respect NO_PROXY environment variables (see: https://lynx.invisible-island.net/lynx2.8.7/breakout/lynx_help/keystrokes/environments.html)\n\n var noProxy = process.env.NO_PROXY || process.env.no_proxy || ''\n\n // if the noProxy is a wildcard then return null\n\n if (noProxy === '*') {\n return null\n }\n\n // if the noProxy is not empty and the uri is found return null\n\n if (noProxy !== '' && uriInNoProxy(uri, noProxy)) {\n return null\n }\n\n // Check for HTTP or HTTPS Proxy in environment Else default to null\n\n if (uri.protocol === 'http:') {\n return process.env.HTTP_PROXY ||\n process.env.http_proxy || null\n }\n\n if (uri.protocol === 'https:') {\n return process.env.HTTPS_PROXY ||\n process.env.https_proxy ||\n process.env.HTTP_PROXY ||\n process.env.http_proxy || null\n }\n\n // if none of that works, return null\n // (What uri protocol are you using then?)\n\n return null\n}\n\nmodule.exports = getProxyFromURI\n"]},"metadata":{},"sourceType":"script"} |