How to use the ansi-styles.codes function in ansi-styles

To help you get started, we’ve selected a few ansi-styles examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github chalk / slice-ansi / index.js View on Github external
const checkAnsi = (ansiCodes, isEscapes, endAnsiCode) => {
	let output = [];
	ansiCodes = [...ansiCodes];

	for (let ansiCode of ansiCodes) {
		const ansiCodeOrigin = ansiCode;
		if (ansiCode.match(';')) {
			ansiCode = ansiCode.split(';')[0][0] + '0';
		}

		const item = ansiStyles.codes.get(parseInt(ansiCode, 10));
		if (item) {
			const indexEscape = ansiCodes.indexOf(item.toString());
			if (indexEscape >= 0) {
				ansiCodes.splice(indexEscape, 1);
			} else {
				output.push(wrapAnsi(isEscapes ? item : ansiCodeOrigin));
			}
		} else if (isEscapes) {
			output.push(wrapAnsi(0));
			break;
		} else {
			output.push(wrapAnsi(ansiCodeOrigin));
		}
	}

	if (isEscapes) {
github zamotany / react-slate / packages / react-slate-core / src / utils / sliceAnsi.js View on Github external
++visible;
    }

    if (visible > begin && visible <= end) {
      output += x;
    } else if (
      visible === begin &&
      !insideEscape &&
      escapeCode !== undefined &&
      escapeCode !== END_CODE
    ) {
      output += wrapAnsi(escapeCode);
    } else if (visible >= end) {
      if (escapeCode !== undefined) {
        output += wrapAnsi(
          ansiStyles.codes.get(parseInt(escapeCode, 10)) || END_CODE
        );
      }
      break;
    }
  }

  return output;
};
github chalk / wrap-ansi / index.js View on Github external
if (options.trim !== false) {
		rows = rows.map(stringVisibleTrimSpacesRight);
	}

	pre = rows.join('\n');

	for (const [index, character] of [...pre].entries()) {
		ret += character;

		if (ESCAPES.has(character)) {
			const code = parseFloat(/\d[^m]*/.exec(pre.slice(index, index + 4)));
			escapeCode = code === END_CODE ? null : code;
		}

		const code = ansiStyles.codes.get(Number(escapeCode));

		if (escapeCode && code) {
			if (pre[index + 1] === '\n') {
				ret += wrapAnsi(code);
			} else if (character === '\n') {
				ret += wrapAnsi(escapeCode);
			}
		}
	}

	return ret;
};