3 Object.defineProperty(exports, "__esModule", {
7 var _sliceAnsi = require('slice-ansi');
9 var _sliceAnsi2 = _interopRequireDefault(_sliceAnsi);
11 var _stringWidth = require('string-width');
13 var _stringWidth2 = _interopRequireDefault(_stringWidth);
15 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18 * @param {string} input
19 * @param {number} size
22 exports.default = (input, size) => {
29 // https://regex101.com/r/gY5kZ1/1
30 const re = new RegExp('(^.{1,' + size + '}(\\s+|$))|(^.{1,' + (size - 1) + '}(\\\\|/|_|\\.|,|;|-))');
35 chunk = subject.match(re);
40 subject = (0, _sliceAnsi2.default)(subject, (0, _stringWidth2.default)(chunk));
44 chunk = (0, _sliceAnsi2.default)(subject, 0, size);
45 subject = (0, _sliceAnsi2.default)(subject, size);
49 } while ((0, _stringWidth2.default)(subject));