diff options
Diffstat (limited to 'tools/node_modules/eslint/node_modules/cli-width/index.js')
-rw-r--r-- | tools/node_modules/eslint/node_modules/cli-width/index.js | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/tools/node_modules/eslint/node_modules/cli-width/index.js b/tools/node_modules/eslint/node_modules/cli-width/index.js new file mode 100644 index 0000000000..de939f3194 --- /dev/null +++ b/tools/node_modules/eslint/node_modules/cli-width/index.js @@ -0,0 +1,49 @@ +'use strict'; + +exports = module.exports = cliWidth; + +function normalizeOpts(options) { + var defaultOpts = { + defaultWidth: 0, + output: process.stdout, + tty: require('tty') + }; + + if (!options) { + return defaultOpts; + } else { + Object.keys(defaultOpts).forEach(function (key) { + if (!options[key]) { + options[key] = defaultOpts[key]; + } + }); + + return options; + } +} + +function cliWidth(options) { + var opts = normalizeOpts(options); + + if (opts.output.getWindowSize) { + return opts.output.getWindowSize()[0] || opts.defaultWidth; + } else { + if (opts.tty.getWindowSize) { + return opts.tty.getWindowSize()[1] || opts.defaultWidth; + } else { + if (opts.output.columns) { + return opts.output.columns; + } else { + if (process.env.CLI_WIDTH) { + var width = parseInt(process.env.CLI_WIDTH, 10); + + if (!isNaN(width) && width !== 0) { + return width; + } + } + } + + return opts.defaultWidth; + } + } +}; |