Permalink
Cannot retrieve contributors at this time
177 lines (144 sloc)
4.31 KB
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
codeql-action/node_modules/eslint-import-resolver-node/node_modules/debug/src/node.js
Go to fileThis commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
"use strict"; | |
/** | |
* Module dependencies. | |
*/ | |
var tty = require('tty'); | |
var 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 | |
var 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(function (key) { | |
return /^debug_/i.test(key); | |
}).reduce(function (obj, key) { | |
// Camel-case | |
var prop = key.substring(6).toLowerCase().replace(/_([a-z])/g, function (_, k) { | |
return k.toUpperCase(); | |
}); // Coerce string value into JS value | |
var 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) { | |
var name = this.namespace, | |
useColors = this.useColors; | |
if (useColors) { | |
var c = this.color; | |
var colorCode = "\x1B[3" + (c < 8 ? c : '8;5;' + c); | |
var prefix = " ".concat(colorCode, ";1m").concat(name, " \x1B[0m"); | |
args[0] = prefix + args[0].split('\n').join('\n' + prefix); | |
args.push(colorCode + 'm+' + module.exports.humanize(this.diff) + "\x1B[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() { | |
return process.stderr.write(util.format.apply(util, arguments) + '\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 = {}; | |
var keys = Object.keys(exports.inspectOpts); | |
for (var i = 0; i < keys.length; i++) { | |
debug.inspectOpts[keys[i]] = exports.inspectOpts[keys[i]]; | |
} | |
} | |
module.exports = require('./common')(exports); | |
var formatters = module.exports.formatters; | |
/** | |
* 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) | |
.split('\n') | |
.map(function (str) { return str.trim(); }) | |
.join(' '); | |
}; | |
/** | |
* 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); | |
}; |