Files
payload/src/utilities/formatLabels.ts
2020-11-20 15:23:32 -05:00

30 lines
767 B
TypeScript

import pluralize from 'pluralize';
const capitalizeFirstLetter = (string) => string.charAt(0).toUpperCase() + string.slice(1);
const toWords = (inputString) => {
const notNullString = inputString || '';
const trimmedString = notNullString.trim();
const arrayOfStrings = trimmedString.split(/[\s-]/);
const splitStringsArray = [];
arrayOfStrings.forEach((tempString) => {
if (tempString !== '') {
const splitWords = tempString.split(/(?=[A-Z])/).join(' ');
splitStringsArray.push(capitalizeFirstLetter(splitWords));
}
});
return splitStringsArray.join(' ');
};
const formatLabels = ((input) => {
const words = toWords(input);
return {
singular: words,
plural: pluralize(words),
};
});
export default formatLabels;