3 Object.defineProperty(exports, "__esModule", {
7 var _lodash = require('lodash');
9 var _lodash2 = _interopRequireDefault(_lodash);
11 var _stringWidth = require('string-width');
13 var _stringWidth2 = _interopRequireDefault(_stringWidth);
15 var _wrapWord = require('./wrapWord');
17 var _wrapWord2 = _interopRequireDefault(_wrapWord);
19 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22 * @param {string} value
23 * @param {number} columnWidth
24 * @param {boolean} useWrapWord
27 exports.default = function (value, columnWidth) {
28 let useWrapWord = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
30 if (!_lodash2.default.isString(value)) {
31 throw new TypeError('Value must be a string.');
34 if (!Number.isInteger(columnWidth)) {
35 throw new TypeError('Column width must be an integer.');
38 if (columnWidth < 1) {
39 throw new Error('Column width must be greater than 0.');
43 return (0, _wrapWord2.default)(value, columnWidth).length;
46 return Math.ceil((0, _stringWidth2.default)(value) / columnWidth);