Tons of Solutions Engineering work done today for the rest of the CS team! Headway, Howard Hanna, Engels, Brighton, etc. Also completed Datasnippers auth flow and worked on Anthology's script. Cloned Anthology's courses (900..) and will clone Full Story on Monday.
This commit is contained in:
87
Scripts/node_modules/pac-resolver/dist/index.js
generated
vendored
Normal file
87
Scripts/node_modules/pac-resolver/dist/index.js
generated
vendored
Normal file
@ -0,0 +1,87 @@
|
||||
"use strict";
|
||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.sandbox = exports.createPacResolver = void 0;
|
||||
const degenerator_1 = require("degenerator");
|
||||
/**
|
||||
* Built-in PAC functions.
|
||||
*/
|
||||
const dateRange_1 = __importDefault(require("./dateRange"));
|
||||
const dnsDomainIs_1 = __importDefault(require("./dnsDomainIs"));
|
||||
const dnsDomainLevels_1 = __importDefault(require("./dnsDomainLevels"));
|
||||
const dnsResolve_1 = __importDefault(require("./dnsResolve"));
|
||||
const isInNet_1 = __importDefault(require("./isInNet"));
|
||||
const isPlainHostName_1 = __importDefault(require("./isPlainHostName"));
|
||||
const isResolvable_1 = __importDefault(require("./isResolvable"));
|
||||
const localHostOrDomainIs_1 = __importDefault(require("./localHostOrDomainIs"));
|
||||
const myIpAddress_1 = __importDefault(require("./myIpAddress"));
|
||||
const shExpMatch_1 = __importDefault(require("./shExpMatch"));
|
||||
const timeRange_1 = __importDefault(require("./timeRange"));
|
||||
const weekdayRange_1 = __importDefault(require("./weekdayRange"));
|
||||
/**
|
||||
* Returns an asynchronous `FindProxyForURL()` function
|
||||
* from the given JS string (from a PAC file).
|
||||
*/
|
||||
function createPacResolver(qjs, _str, _opts = {}) {
|
||||
const str = Buffer.isBuffer(_str) ? _str.toString('utf8') : _str;
|
||||
// The sandbox to use for the `vm` context.
|
||||
const context = {
|
||||
...exports.sandbox,
|
||||
..._opts.sandbox,
|
||||
};
|
||||
// Construct the array of async function names to add `await` calls to.
|
||||
const names = Object.keys(context).filter((k) => isAsyncFunction(context[k]));
|
||||
const opts = {
|
||||
filename: 'proxy.pac',
|
||||
names,
|
||||
..._opts,
|
||||
sandbox: context,
|
||||
};
|
||||
// Compile the JS `FindProxyForURL()` function into an async function.
|
||||
const resolver = (0, degenerator_1.compile)(qjs, str, 'FindProxyForURL', opts);
|
||||
function FindProxyForURL(url, _host) {
|
||||
const urlObj = typeof url === 'string' ? new URL(url) : url;
|
||||
const host = _host || urlObj.hostname;
|
||||
if (!host) {
|
||||
throw new TypeError('Could not determine `host`');
|
||||
}
|
||||
return resolver(urlObj.href, host);
|
||||
}
|
||||
Object.defineProperty(FindProxyForURL, 'toString', {
|
||||
value: () => resolver.toString(),
|
||||
enumerable: false,
|
||||
});
|
||||
return FindProxyForURL;
|
||||
}
|
||||
exports.createPacResolver = createPacResolver;
|
||||
exports.sandbox = Object.freeze({
|
||||
alert: (message = '') => console.log('%s', message),
|
||||
dateRange: dateRange_1.default,
|
||||
dnsDomainIs: dnsDomainIs_1.default,
|
||||
dnsDomainLevels: dnsDomainLevels_1.default,
|
||||
dnsResolve: dnsResolve_1.default,
|
||||
isInNet: isInNet_1.default,
|
||||
isPlainHostName: isPlainHostName_1.default,
|
||||
isResolvable: isResolvable_1.default,
|
||||
localHostOrDomainIs: localHostOrDomainIs_1.default,
|
||||
myIpAddress: myIpAddress_1.default,
|
||||
shExpMatch: shExpMatch_1.default,
|
||||
timeRange: timeRange_1.default,
|
||||
weekdayRange: weekdayRange_1.default,
|
||||
});
|
||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||
function isAsyncFunction(v) {
|
||||
if (typeof v !== 'function')
|
||||
return false;
|
||||
// Native `AsyncFunction`
|
||||
if (v.constructor.name === 'AsyncFunction')
|
||||
return true;
|
||||
// TypeScript compiled
|
||||
if (String(v).indexOf('__awaiter(') !== -1)
|
||||
return true;
|
||||
// Legacy behavior - set `async` property on the function
|
||||
return Boolean(v.async);
|
||||
}
|
||||
//# sourceMappingURL=index.js.map
|
||||
Reference in New Issue
Block a user