@spaced-out/ui-design-system
Version:
Sense UI components library
31 lines (30 loc) • 965 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.truncateString = exports.formatWord = exports.escapeRegExp = exports.capitalize = exports.appendPx = void 0;
const capitalize = word => {
if (!word) {
return '';
}
return word.toLowerCase().replace(/\w/, firstLetter => firstLetter.toUpperCase());
};
exports.capitalize = capitalize;
const escapeRegExp = str => str.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&');
exports.escapeRegExp = escapeRegExp;
const formatWord = (word, count) => count === 1 ? word : word + 's';
exports.formatWord = formatWord;
const truncateString = (inputString, maxLength) => {
if (inputString.length > maxLength) {
return inputString.substring(0, maxLength - 3) + '...';
}
return inputString;
};
exports.truncateString = truncateString;
const appendPx = value => {
if (typeof value === 'number') {
return `${value}px`;
}
return value ?? '';
};
exports.appendPx = appendPx;