Sha256: 727212db2d8991c5754e578269b17cdaccdf5840c597e1733bb52435136a9ff9
Contents?: true
Size: 782 Bytes
Versions: 26
Compression:
Stored size: 782 Bytes
Contents
import cliWidth from 'cli-width'; import wrapAnsi from 'wrap-ansi'; import { readline } from './hook-engine.mjs'; /** * Force line returns at specific width. This function is ANSI code friendly and it'll * ignore invisible codes during width calculation. * @param {string} content * @param {number} width * @return {string} */ export function breakLines(content, width) { return content .split('\n') .flatMap((line) => wrapAnsi(line, width, { trim: false, hard: true }) .split('\n') .map((str) => str.trimEnd())) .join('\n'); } /** * Returns the width of the active readline, or 80 as default value. * @returns {number} */ export function readlineWidth() { return cliWidth({ defaultWidth: 80, output: readline().output }); }
Version data entries
26 entries across 26 versions & 1 rubygems