You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
"use strict";
Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0;
var _sliceAnsi = _interopRequireDefault(require("slice-ansi"));
var _stringWidth = _interopRequireDefault(require("string-width"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/** * @param {string} input * @param {number} size * @returns {Array} */ const wrapWord = (input, size) => { let subject; subject = input; const chunks = []; // https://regex101.com/r/gY5kZ1/1
const re = new RegExp('(^.{1,' + size + '}(\\s+|$))|(^.{1,' + (size - 1) + '}(\\\\|/|_|\\.|,|;|-))');
do { let chunk; chunk = subject.match(re);
if (chunk) { chunk = chunk[0]; subject = (0, _sliceAnsi.default)(subject, (0, _stringWidth.default)(chunk)); chunk = chunk.trim(); } else { chunk = (0, _sliceAnsi.default)(subject, 0, size); subject = (0, _sliceAnsi.default)(subject, size); }
chunks.push(chunk); } while ((0, _stringWidth.default)(subject));
return chunks; };
var _default = wrapWord; exports.default = _default; //# sourceMappingURL=wrapWord.js.map
|