mirror of
				https://github.com/musix-org/musix-oss
				synced 2025-11-04 03:39:32 +00:00 
			
		
		
		
	Modules
This commit is contained in:
		
							
								
								
									
										264
									
								
								node_modules/debug/src/browser.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										264
									
								
								node_modules/debug/src/browser.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,264 @@
 | 
			
		||||
/* eslint-env browser */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * This is the web browser implementation of `debug()`.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
exports.log = log;
 | 
			
		||||
exports.formatArgs = formatArgs;
 | 
			
		||||
exports.save = save;
 | 
			
		||||
exports.load = load;
 | 
			
		||||
exports.useColors = useColors;
 | 
			
		||||
exports.storage = localstorage();
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Colors.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
exports.colors = [
 | 
			
		||||
	'#0000CC',
 | 
			
		||||
	'#0000FF',
 | 
			
		||||
	'#0033CC',
 | 
			
		||||
	'#0033FF',
 | 
			
		||||
	'#0066CC',
 | 
			
		||||
	'#0066FF',
 | 
			
		||||
	'#0099CC',
 | 
			
		||||
	'#0099FF',
 | 
			
		||||
	'#00CC00',
 | 
			
		||||
	'#00CC33',
 | 
			
		||||
	'#00CC66',
 | 
			
		||||
	'#00CC99',
 | 
			
		||||
	'#00CCCC',
 | 
			
		||||
	'#00CCFF',
 | 
			
		||||
	'#3300CC',
 | 
			
		||||
	'#3300FF',
 | 
			
		||||
	'#3333CC',
 | 
			
		||||
	'#3333FF',
 | 
			
		||||
	'#3366CC',
 | 
			
		||||
	'#3366FF',
 | 
			
		||||
	'#3399CC',
 | 
			
		||||
	'#3399FF',
 | 
			
		||||
	'#33CC00',
 | 
			
		||||
	'#33CC33',
 | 
			
		||||
	'#33CC66',
 | 
			
		||||
	'#33CC99',
 | 
			
		||||
	'#33CCCC',
 | 
			
		||||
	'#33CCFF',
 | 
			
		||||
	'#6600CC',
 | 
			
		||||
	'#6600FF',
 | 
			
		||||
	'#6633CC',
 | 
			
		||||
	'#6633FF',
 | 
			
		||||
	'#66CC00',
 | 
			
		||||
	'#66CC33',
 | 
			
		||||
	'#9900CC',
 | 
			
		||||
	'#9900FF',
 | 
			
		||||
	'#9933CC',
 | 
			
		||||
	'#9933FF',
 | 
			
		||||
	'#99CC00',
 | 
			
		||||
	'#99CC33',
 | 
			
		||||
	'#CC0000',
 | 
			
		||||
	'#CC0033',
 | 
			
		||||
	'#CC0066',
 | 
			
		||||
	'#CC0099',
 | 
			
		||||
	'#CC00CC',
 | 
			
		||||
	'#CC00FF',
 | 
			
		||||
	'#CC3300',
 | 
			
		||||
	'#CC3333',
 | 
			
		||||
	'#CC3366',
 | 
			
		||||
	'#CC3399',
 | 
			
		||||
	'#CC33CC',
 | 
			
		||||
	'#CC33FF',
 | 
			
		||||
	'#CC6600',
 | 
			
		||||
	'#CC6633',
 | 
			
		||||
	'#CC9900',
 | 
			
		||||
	'#CC9933',
 | 
			
		||||
	'#CCCC00',
 | 
			
		||||
	'#CCCC33',
 | 
			
		||||
	'#FF0000',
 | 
			
		||||
	'#FF0033',
 | 
			
		||||
	'#FF0066',
 | 
			
		||||
	'#FF0099',
 | 
			
		||||
	'#FF00CC',
 | 
			
		||||
	'#FF00FF',
 | 
			
		||||
	'#FF3300',
 | 
			
		||||
	'#FF3333',
 | 
			
		||||
	'#FF3366',
 | 
			
		||||
	'#FF3399',
 | 
			
		||||
	'#FF33CC',
 | 
			
		||||
	'#FF33FF',
 | 
			
		||||
	'#FF6600',
 | 
			
		||||
	'#FF6633',
 | 
			
		||||
	'#FF9900',
 | 
			
		||||
	'#FF9933',
 | 
			
		||||
	'#FFCC00',
 | 
			
		||||
	'#FFCC33'
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Currently only WebKit-based Web Inspectors, Firefox >= v31,
 | 
			
		||||
 * and the Firebug extension (any Firefox version) are known
 | 
			
		||||
 * to support "%c" CSS customizations.
 | 
			
		||||
 *
 | 
			
		||||
 * TODO: add a `localStorage` variable to explicitly enable/disable colors
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
// eslint-disable-next-line complexity
 | 
			
		||||
function useColors() {
 | 
			
		||||
	// NB: In an Electron preload script, document will be defined but not fully
 | 
			
		||||
	// initialized. Since we know we're in Chrome, we'll just detect this case
 | 
			
		||||
	// explicitly
 | 
			
		||||
	if (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {
 | 
			
		||||
		return true;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// Internet Explorer and Edge do not support colors.
 | 
			
		||||
	if (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) {
 | 
			
		||||
		return false;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// Is webkit? http://stackoverflow.com/a/16459606/376773
 | 
			
		||||
	// document is undefined in react-native: https://github.com/facebook/react-native/pull/1632
 | 
			
		||||
	return (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||
 | 
			
		||||
		// Is firebug? http://stackoverflow.com/a/398120/376773
 | 
			
		||||
		(typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||
 | 
			
		||||
		// Is firefox >= v31?
 | 
			
		||||
		// https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
 | 
			
		||||
		(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31) ||
 | 
			
		||||
		// Double check webkit in userAgent just in case we are in a worker
 | 
			
		||||
		(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Colorize log arguments if enabled.
 | 
			
		||||
 *
 | 
			
		||||
 * @api public
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
function formatArgs(args) {
 | 
			
		||||
	args[0] = (this.useColors ? '%c' : '') +
 | 
			
		||||
		this.namespace +
 | 
			
		||||
		(this.useColors ? ' %c' : ' ') +
 | 
			
		||||
		args[0] +
 | 
			
		||||
		(this.useColors ? '%c ' : ' ') +
 | 
			
		||||
		'+' + module.exports.humanize(this.diff);
 | 
			
		||||
 | 
			
		||||
	if (!this.useColors) {
 | 
			
		||||
		return;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	const c = 'color: ' + this.color;
 | 
			
		||||
	args.splice(1, 0, c, 'color: inherit');
 | 
			
		||||
 | 
			
		||||
	// The final "%c" is somewhat tricky, because there could be other
 | 
			
		||||
	// arguments passed either before or after the %c, so we need to
 | 
			
		||||
	// figure out the correct index to insert the CSS into
 | 
			
		||||
	let index = 0;
 | 
			
		||||
	let lastC = 0;
 | 
			
		||||
	args[0].replace(/%[a-zA-Z%]/g, match => {
 | 
			
		||||
		if (match === '%%') {
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
		index++;
 | 
			
		||||
		if (match === '%c') {
 | 
			
		||||
			// We only are interested in the *last* %c
 | 
			
		||||
			// (the user may have provided their own)
 | 
			
		||||
			lastC = index;
 | 
			
		||||
		}
 | 
			
		||||
	});
 | 
			
		||||
 | 
			
		||||
	args.splice(lastC, 0, c);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Invokes `console.log()` when available.
 | 
			
		||||
 * No-op when `console.log` is not a "function".
 | 
			
		||||
 *
 | 
			
		||||
 * @api public
 | 
			
		||||
 */
 | 
			
		||||
function log(...args) {
 | 
			
		||||
	// This hackery is required for IE8/9, where
 | 
			
		||||
	// the `console.log` function doesn't have 'apply'
 | 
			
		||||
	return typeof console === 'object' &&
 | 
			
		||||
		console.log &&
 | 
			
		||||
		console.log(...args);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Save `namespaces`.
 | 
			
		||||
 *
 | 
			
		||||
 * @param {String} namespaces
 | 
			
		||||
 * @api private
 | 
			
		||||
 */
 | 
			
		||||
function save(namespaces) {
 | 
			
		||||
	try {
 | 
			
		||||
		if (namespaces) {
 | 
			
		||||
			exports.storage.setItem('debug', namespaces);
 | 
			
		||||
		} else {
 | 
			
		||||
			exports.storage.removeItem('debug');
 | 
			
		||||
		}
 | 
			
		||||
	} catch (error) {
 | 
			
		||||
		// Swallow
 | 
			
		||||
		// XXX (@Qix-) should we be logging these?
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Load `namespaces`.
 | 
			
		||||
 *
 | 
			
		||||
 * @return {String} returns the previously persisted debug modes
 | 
			
		||||
 * @api private
 | 
			
		||||
 */
 | 
			
		||||
function load() {
 | 
			
		||||
	let r;
 | 
			
		||||
	try {
 | 
			
		||||
		r = exports.storage.getItem('debug');
 | 
			
		||||
	} catch (error) {
 | 
			
		||||
		// Swallow
 | 
			
		||||
		// XXX (@Qix-) should we be logging these?
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// If debug isn't set in LS, and we're in Electron, try to load $DEBUG
 | 
			
		||||
	if (!r && typeof process !== 'undefined' && 'env' in process) {
 | 
			
		||||
		r = process.env.DEBUG;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return r;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Localstorage attempts to return the localstorage.
 | 
			
		||||
 *
 | 
			
		||||
 * This is necessary because safari throws
 | 
			
		||||
 * when a user disables cookies/localstorage
 | 
			
		||||
 * and you attempt to access it.
 | 
			
		||||
 *
 | 
			
		||||
 * @return {LocalStorage}
 | 
			
		||||
 * @api private
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
function localstorage() {
 | 
			
		||||
	try {
 | 
			
		||||
		// TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context
 | 
			
		||||
		// The Browser also has localStorage in the global context.
 | 
			
		||||
		return localStorage;
 | 
			
		||||
	} catch (error) {
 | 
			
		||||
		// Swallow
 | 
			
		||||
		// XXX (@Qix-) should we be logging these?
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
module.exports = require('./common')(exports);
 | 
			
		||||
 | 
			
		||||
const {formatters} = module.exports;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
formatters.j = function (v) {
 | 
			
		||||
	try {
 | 
			
		||||
		return JSON.stringify(v);
 | 
			
		||||
	} catch (error) {
 | 
			
		||||
		return '[UnexpectedJSONParseError]: ' + error.message;
 | 
			
		||||
	}
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										266
									
								
								node_modules/debug/src/common.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										266
									
								
								node_modules/debug/src/common.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,266 @@
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * This is the common logic for both the Node.js and web browser
 | 
			
		||||
 * implementations of `debug()`.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
function setup(env) {
 | 
			
		||||
	createDebug.debug = createDebug;
 | 
			
		||||
	createDebug.default = createDebug;
 | 
			
		||||
	createDebug.coerce = coerce;
 | 
			
		||||
	createDebug.disable = disable;
 | 
			
		||||
	createDebug.enable = enable;
 | 
			
		||||
	createDebug.enabled = enabled;
 | 
			
		||||
	createDebug.humanize = require('ms');
 | 
			
		||||
 | 
			
		||||
	Object.keys(env).forEach(key => {
 | 
			
		||||
		createDebug[key] = env[key];
 | 
			
		||||
	});
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	* Active `debug` instances.
 | 
			
		||||
	*/
 | 
			
		||||
	createDebug.instances = [];
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	* The currently active debug mode names, and names to skip.
 | 
			
		||||
	*/
 | 
			
		||||
 | 
			
		||||
	createDebug.names = [];
 | 
			
		||||
	createDebug.skips = [];
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	* Map of special "%n" handling functions, for the debug "format" argument.
 | 
			
		||||
	*
 | 
			
		||||
	* Valid key names are a single, lower or upper-case letter, i.e. "n" and "N".
 | 
			
		||||
	*/
 | 
			
		||||
	createDebug.formatters = {};
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	* Selects a color for a debug namespace
 | 
			
		||||
	* @param {String} namespace The namespace string for the for the debug instance to be colored
 | 
			
		||||
	* @return {Number|String} An ANSI color code for the given namespace
 | 
			
		||||
	* @api private
 | 
			
		||||
	*/
 | 
			
		||||
	function selectColor(namespace) {
 | 
			
		||||
		let hash = 0;
 | 
			
		||||
 | 
			
		||||
		for (let i = 0; i < namespace.length; i++) {
 | 
			
		||||
			hash = ((hash << 5) - hash) + namespace.charCodeAt(i);
 | 
			
		||||
			hash |= 0; // Convert to 32bit integer
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		return createDebug.colors[Math.abs(hash) % createDebug.colors.length];
 | 
			
		||||
	}
 | 
			
		||||
	createDebug.selectColor = selectColor;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	* Create a debugger with the given `namespace`.
 | 
			
		||||
	*
 | 
			
		||||
	* @param {String} namespace
 | 
			
		||||
	* @return {Function}
 | 
			
		||||
	* @api public
 | 
			
		||||
	*/
 | 
			
		||||
	function createDebug(namespace) {
 | 
			
		||||
		let prevTime;
 | 
			
		||||
 | 
			
		||||
		function debug(...args) {
 | 
			
		||||
			// Disabled?
 | 
			
		||||
			if (!debug.enabled) {
 | 
			
		||||
				return;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			const self = debug;
 | 
			
		||||
 | 
			
		||||
			// Set `diff` timestamp
 | 
			
		||||
			const curr = Number(new Date());
 | 
			
		||||
			const ms = curr - (prevTime || curr);
 | 
			
		||||
			self.diff = ms;
 | 
			
		||||
			self.prev = prevTime;
 | 
			
		||||
			self.curr = curr;
 | 
			
		||||
			prevTime = curr;
 | 
			
		||||
 | 
			
		||||
			args[0] = createDebug.coerce(args[0]);
 | 
			
		||||
 | 
			
		||||
			if (typeof args[0] !== 'string') {
 | 
			
		||||
				// Anything else let's inspect with %O
 | 
			
		||||
				args.unshift('%O');
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			// Apply any `formatters` transformations
 | 
			
		||||
			let index = 0;
 | 
			
		||||
			args[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => {
 | 
			
		||||
				// If we encounter an escaped % then don't increase the array index
 | 
			
		||||
				if (match === '%%') {
 | 
			
		||||
					return match;
 | 
			
		||||
				}
 | 
			
		||||
				index++;
 | 
			
		||||
				const formatter = createDebug.formatters[format];
 | 
			
		||||
				if (typeof formatter === 'function') {
 | 
			
		||||
					const val = args[index];
 | 
			
		||||
					match = formatter.call(self, val);
 | 
			
		||||
 | 
			
		||||
					// Now we need to remove `args[index]` since it's inlined in the `format`
 | 
			
		||||
					args.splice(index, 1);
 | 
			
		||||
					index--;
 | 
			
		||||
				}
 | 
			
		||||
				return match;
 | 
			
		||||
			});
 | 
			
		||||
 | 
			
		||||
			// Apply env-specific formatting (colors, etc.)
 | 
			
		||||
			createDebug.formatArgs.call(self, args);
 | 
			
		||||
 | 
			
		||||
			const logFn = self.log || createDebug.log;
 | 
			
		||||
			logFn.apply(self, args);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		debug.namespace = namespace;
 | 
			
		||||
		debug.enabled = createDebug.enabled(namespace);
 | 
			
		||||
		debug.useColors = createDebug.useColors();
 | 
			
		||||
		debug.color = selectColor(namespace);
 | 
			
		||||
		debug.destroy = destroy;
 | 
			
		||||
		debug.extend = extend;
 | 
			
		||||
		// Debug.formatArgs = formatArgs;
 | 
			
		||||
		// debug.rawLog = rawLog;
 | 
			
		||||
 | 
			
		||||
		// env-specific initialization logic for debug instances
 | 
			
		||||
		if (typeof createDebug.init === 'function') {
 | 
			
		||||
			createDebug.init(debug);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		createDebug.instances.push(debug);
 | 
			
		||||
 | 
			
		||||
		return debug;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	function destroy() {
 | 
			
		||||
		const index = createDebug.instances.indexOf(this);
 | 
			
		||||
		if (index !== -1) {
 | 
			
		||||
			createDebug.instances.splice(index, 1);
 | 
			
		||||
			return true;
 | 
			
		||||
		}
 | 
			
		||||
		return false;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	function extend(namespace, delimiter) {
 | 
			
		||||
		const newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace);
 | 
			
		||||
		newDebug.log = this.log;
 | 
			
		||||
		return newDebug;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	* Enables a debug mode by namespaces. This can include modes
 | 
			
		||||
	* separated by a colon and wildcards.
 | 
			
		||||
	*
 | 
			
		||||
	* @param {String} namespaces
 | 
			
		||||
	* @api public
 | 
			
		||||
	*/
 | 
			
		||||
	function enable(namespaces) {
 | 
			
		||||
		createDebug.save(namespaces);
 | 
			
		||||
 | 
			
		||||
		createDebug.names = [];
 | 
			
		||||
		createDebug.skips = [];
 | 
			
		||||
 | 
			
		||||
		let i;
 | 
			
		||||
		const split = (typeof namespaces === 'string' ? namespaces : '').split(/[\s,]+/);
 | 
			
		||||
		const len = split.length;
 | 
			
		||||
 | 
			
		||||
		for (i = 0; i < len; i++) {
 | 
			
		||||
			if (!split[i]) {
 | 
			
		||||
				// ignore empty strings
 | 
			
		||||
				continue;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			namespaces = split[i].replace(/\*/g, '.*?');
 | 
			
		||||
 | 
			
		||||
			if (namespaces[0] === '-') {
 | 
			
		||||
				createDebug.skips.push(new RegExp('^' + namespaces.substr(1) + '$'));
 | 
			
		||||
			} else {
 | 
			
		||||
				createDebug.names.push(new RegExp('^' + namespaces + '$'));
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		for (i = 0; i < createDebug.instances.length; i++) {
 | 
			
		||||
			const instance = createDebug.instances[i];
 | 
			
		||||
			instance.enabled = createDebug.enabled(instance.namespace);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	* Disable debug output.
 | 
			
		||||
	*
 | 
			
		||||
	* @return {String} namespaces
 | 
			
		||||
	* @api public
 | 
			
		||||
	*/
 | 
			
		||||
	function disable() {
 | 
			
		||||
		const namespaces = [
 | 
			
		||||
			...createDebug.names.map(toNamespace),
 | 
			
		||||
			...createDebug.skips.map(toNamespace).map(namespace => '-' + namespace)
 | 
			
		||||
		].join(',');
 | 
			
		||||
		createDebug.enable('');
 | 
			
		||||
		return namespaces;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	* Returns true if the given mode name is enabled, false otherwise.
 | 
			
		||||
	*
 | 
			
		||||
	* @param {String} name
 | 
			
		||||
	* @return {Boolean}
 | 
			
		||||
	* @api public
 | 
			
		||||
	*/
 | 
			
		||||
	function enabled(name) {
 | 
			
		||||
		if (name[name.length - 1] === '*') {
 | 
			
		||||
			return true;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		let i;
 | 
			
		||||
		let len;
 | 
			
		||||
 | 
			
		||||
		for (i = 0, len = createDebug.skips.length; i < len; i++) {
 | 
			
		||||
			if (createDebug.skips[i].test(name)) {
 | 
			
		||||
				return false;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		for (i = 0, len = createDebug.names.length; i < len; i++) {
 | 
			
		||||
			if (createDebug.names[i].test(name)) {
 | 
			
		||||
				return true;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		return false;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	* Convert regexp to namespace
 | 
			
		||||
	*
 | 
			
		||||
	* @param {RegExp} regxep
 | 
			
		||||
	* @return {String} namespace
 | 
			
		||||
	* @api private
 | 
			
		||||
	*/
 | 
			
		||||
	function toNamespace(regexp) {
 | 
			
		||||
		return regexp.toString()
 | 
			
		||||
			.substring(2, regexp.toString().length - 2)
 | 
			
		||||
			.replace(/\.\*\?$/, '*');
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	* Coerce `val`.
 | 
			
		||||
	*
 | 
			
		||||
	* @param {Mixed} val
 | 
			
		||||
	* @return {Mixed}
 | 
			
		||||
	* @api private
 | 
			
		||||
	*/
 | 
			
		||||
	function coerce(val) {
 | 
			
		||||
		if (val instanceof Error) {
 | 
			
		||||
			return val.stack || val.message;
 | 
			
		||||
		}
 | 
			
		||||
		return val;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	createDebug.enable(createDebug.load());
 | 
			
		||||
 | 
			
		||||
	return createDebug;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
module.exports = setup;
 | 
			
		||||
							
								
								
									
										10
									
								
								node_modules/debug/src/index.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								node_modules/debug/src/index.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,10 @@
 | 
			
		||||
/**
 | 
			
		||||
 * Detect Electron renderer / nwjs process, which is node, but we should
 | 
			
		||||
 * treat as a browser.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
if (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) {
 | 
			
		||||
	module.exports = require('./browser.js');
 | 
			
		||||
} else {
 | 
			
		||||
	module.exports = require('./node.js');
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										257
									
								
								node_modules/debug/src/node.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										257
									
								
								node_modules/debug/src/node.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,257 @@
 | 
			
		||||
/**
 | 
			
		||||
 * Module dependencies.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
const tty = require('tty');
 | 
			
		||||
const util = require('util');
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * This is the Node.js implementation of `debug()`.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
exports.init = init;
 | 
			
		||||
exports.log = log;
 | 
			
		||||
exports.formatArgs = formatArgs;
 | 
			
		||||
exports.save = save;
 | 
			
		||||
exports.load = load;
 | 
			
		||||
exports.useColors = useColors;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Colors.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
exports.colors = [6, 2, 3, 4, 5, 1];
 | 
			
		||||
 | 
			
		||||
try {
 | 
			
		||||
	// Optional dependency (as in, doesn't need to be installed, NOT like optionalDependencies in package.json)
 | 
			
		||||
	// eslint-disable-next-line import/no-extraneous-dependencies
 | 
			
		||||
	const supportsColor = require('supports-color');
 | 
			
		||||
 | 
			
		||||
	if (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) {
 | 
			
		||||
		exports.colors = [
 | 
			
		||||
			20,
 | 
			
		||||
			21,
 | 
			
		||||
			26,
 | 
			
		||||
			27,
 | 
			
		||||
			32,
 | 
			
		||||
			33,
 | 
			
		||||
			38,
 | 
			
		||||
			39,
 | 
			
		||||
			40,
 | 
			
		||||
			41,
 | 
			
		||||
			42,
 | 
			
		||||
			43,
 | 
			
		||||
			44,
 | 
			
		||||
			45,
 | 
			
		||||
			56,
 | 
			
		||||
			57,
 | 
			
		||||
			62,
 | 
			
		||||
			63,
 | 
			
		||||
			68,
 | 
			
		||||
			69,
 | 
			
		||||
			74,
 | 
			
		||||
			75,
 | 
			
		||||
			76,
 | 
			
		||||
			77,
 | 
			
		||||
			78,
 | 
			
		||||
			79,
 | 
			
		||||
			80,
 | 
			
		||||
			81,
 | 
			
		||||
			92,
 | 
			
		||||
			93,
 | 
			
		||||
			98,
 | 
			
		||||
			99,
 | 
			
		||||
			112,
 | 
			
		||||
			113,
 | 
			
		||||
			128,
 | 
			
		||||
			129,
 | 
			
		||||
			134,
 | 
			
		||||
			135,
 | 
			
		||||
			148,
 | 
			
		||||
			149,
 | 
			
		||||
			160,
 | 
			
		||||
			161,
 | 
			
		||||
			162,
 | 
			
		||||
			163,
 | 
			
		||||
			164,
 | 
			
		||||
			165,
 | 
			
		||||
			166,
 | 
			
		||||
			167,
 | 
			
		||||
			168,
 | 
			
		||||
			169,
 | 
			
		||||
			170,
 | 
			
		||||
			171,
 | 
			
		||||
			172,
 | 
			
		||||
			173,
 | 
			
		||||
			178,
 | 
			
		||||
			179,
 | 
			
		||||
			184,
 | 
			
		||||
			185,
 | 
			
		||||
			196,
 | 
			
		||||
			197,
 | 
			
		||||
			198,
 | 
			
		||||
			199,
 | 
			
		||||
			200,
 | 
			
		||||
			201,
 | 
			
		||||
			202,
 | 
			
		||||
			203,
 | 
			
		||||
			204,
 | 
			
		||||
			205,
 | 
			
		||||
			206,
 | 
			
		||||
			207,
 | 
			
		||||
			208,
 | 
			
		||||
			209,
 | 
			
		||||
			214,
 | 
			
		||||
			215,
 | 
			
		||||
			220,
 | 
			
		||||
			221
 | 
			
		||||
		];
 | 
			
		||||
	}
 | 
			
		||||
} catch (error) {
 | 
			
		||||
	// Swallow - we only care if `supports-color` is available; it doesn't have to be.
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Build up the default `inspectOpts` object from the environment variables.
 | 
			
		||||
 *
 | 
			
		||||
 *   $ DEBUG_COLORS=no DEBUG_DEPTH=10 DEBUG_SHOW_HIDDEN=enabled node script.js
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
exports.inspectOpts = Object.keys(process.env).filter(key => {
 | 
			
		||||
	return /^debug_/i.test(key);
 | 
			
		||||
}).reduce((obj, key) => {
 | 
			
		||||
	// Camel-case
 | 
			
		||||
	const prop = key
 | 
			
		||||
		.substring(6)
 | 
			
		||||
		.toLowerCase()
 | 
			
		||||
		.replace(/_([a-z])/g, (_, k) => {
 | 
			
		||||
			return k.toUpperCase();
 | 
			
		||||
		});
 | 
			
		||||
 | 
			
		||||
	// Coerce string value into JS value
 | 
			
		||||
	let val = process.env[key];
 | 
			
		||||
	if (/^(yes|on|true|enabled)$/i.test(val)) {
 | 
			
		||||
		val = true;
 | 
			
		||||
	} else if (/^(no|off|false|disabled)$/i.test(val)) {
 | 
			
		||||
		val = false;
 | 
			
		||||
	} else if (val === 'null') {
 | 
			
		||||
		val = null;
 | 
			
		||||
	} else {
 | 
			
		||||
		val = Number(val);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	obj[prop] = val;
 | 
			
		||||
	return obj;
 | 
			
		||||
}, {});
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Is stdout a TTY? Colored output is enabled when `true`.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
function useColors() {
 | 
			
		||||
	return 'colors' in exports.inspectOpts ?
 | 
			
		||||
		Boolean(exports.inspectOpts.colors) :
 | 
			
		||||
		tty.isatty(process.stderr.fd);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Adds ANSI color escape codes if enabled.
 | 
			
		||||
 *
 | 
			
		||||
 * @api public
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
function formatArgs(args) {
 | 
			
		||||
	const {namespace: name, useColors} = this;
 | 
			
		||||
 | 
			
		||||
	if (useColors) {
 | 
			
		||||
		const c = this.color;
 | 
			
		||||
		const colorCode = '\u001B[3' + (c < 8 ? c : '8;5;' + c);
 | 
			
		||||
		const prefix = `  ${colorCode};1m${name} \u001B[0m`;
 | 
			
		||||
 | 
			
		||||
		args[0] = prefix + args[0].split('\n').join('\n' + prefix);
 | 
			
		||||
		args.push(colorCode + 'm+' + module.exports.humanize(this.diff) + '\u001B[0m');
 | 
			
		||||
	} else {
 | 
			
		||||
		args[0] = getDate() + name + ' ' + args[0];
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function getDate() {
 | 
			
		||||
	if (exports.inspectOpts.hideDate) {
 | 
			
		||||
		return '';
 | 
			
		||||
	}
 | 
			
		||||
	return new Date().toISOString() + ' ';
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Invokes `util.format()` with the specified arguments and writes to stderr.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
function log(...args) {
 | 
			
		||||
	return process.stderr.write(util.format(...args) + '\n');
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Save `namespaces`.
 | 
			
		||||
 *
 | 
			
		||||
 * @param {String} namespaces
 | 
			
		||||
 * @api private
 | 
			
		||||
 */
 | 
			
		||||
function save(namespaces) {
 | 
			
		||||
	if (namespaces) {
 | 
			
		||||
		process.env.DEBUG = namespaces;
 | 
			
		||||
	} else {
 | 
			
		||||
		// If you set a process.env field to null or undefined, it gets cast to the
 | 
			
		||||
		// string 'null' or 'undefined'. Just delete instead.
 | 
			
		||||
		delete process.env.DEBUG;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Load `namespaces`.
 | 
			
		||||
 *
 | 
			
		||||
 * @return {String} returns the previously persisted debug modes
 | 
			
		||||
 * @api private
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
function load() {
 | 
			
		||||
	return process.env.DEBUG;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Init logic for `debug` instances.
 | 
			
		||||
 *
 | 
			
		||||
 * Create a new `inspectOpts` object in case `useColors` is set
 | 
			
		||||
 * differently for a particular `debug` instance.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
function init(debug) {
 | 
			
		||||
	debug.inspectOpts = {};
 | 
			
		||||
 | 
			
		||||
	const keys = Object.keys(exports.inspectOpts);
 | 
			
		||||
	for (let i = 0; i < keys.length; i++) {
 | 
			
		||||
		debug.inspectOpts[keys[i]] = exports.inspectOpts[keys[i]];
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
module.exports = require('./common')(exports);
 | 
			
		||||
 | 
			
		||||
const {formatters} = module.exports;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Map %o to `util.inspect()`, all on a single line.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
formatters.o = function (v) {
 | 
			
		||||
	this.inspectOpts.colors = this.useColors;
 | 
			
		||||
	return util.inspect(v, this.inspectOpts)
 | 
			
		||||
		.replace(/\s*\n\s*/g, ' ');
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Map %O to `util.inspect()`, allowing multiple lines if needed.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
formatters.O = function (v) {
 | 
			
		||||
	this.inspectOpts.colors = this.useColors;
 | 
			
		||||
	return util.inspect(v, this.inspectOpts);
 | 
			
		||||
};
 | 
			
		||||
		Reference in New Issue
	
	Block a user