1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- 'use strict';
- var argv = process.argv;
- var terminator = argv.indexOf('--');
- var hasFlag = function (flag) {
- flag = '--' + flag;
- var pos = argv.indexOf(flag);
- return pos !== -1 && (terminator !== -1 ? pos < terminator : true);
- };
- module.exports = (function () {
- if ('FORCE_COLOR' in process.env) {
- return true;
- }
- if (hasFlag('no-color') ||
- hasFlag('no-colors') ||
- hasFlag('color=false')) {
- return false;
- }
- if (hasFlag('color') ||
- hasFlag('colors') ||
- hasFlag('color=true') ||
- hasFlag('color=always')) {
- return true;
- }
- if (process.stdout && !process.stdout.isTTY) {
- return false;
- }
- if (process.platform === 'win32') {
- return true;
- }
- if ('COLORTERM' in process.env) {
- return true;
- }
- if (process.env.TERM === 'dumb') {
- return false;
- }
- if (/^screen|^xterm|^vt100|color|ansi|cygwin|linux/i.test(process.env.TERM)) {
- return true;
- }
- return false;
- })();
|