diff options
Diffstat (limited to 'src/utils/helpers/strings.ts')
| -rw-r--r-- | src/utils/helpers/strings.ts | 29 | 
1 files changed, 29 insertions, 0 deletions
| diff --git a/src/utils/helpers/strings.ts b/src/utils/helpers/strings.ts new file mode 100644 index 0000000..5d90161 --- /dev/null +++ b/src/utils/helpers/strings.ts @@ -0,0 +1,29 @@ +/** + * Convert a text into a slug or id. + * https://gist.github.com/codeguy/6684588#gistcomment-3332719 + * + * @param {string} text - A text to slugify. + * @returns {string} The slug. + */ +export const slugify = (text: string): string => { +  return text +    .toString() +    .normalize('NFD') +    .replace(/[\u0300-\u036f]/g, '') +    .toLowerCase() +    .trim() +    .replace(/\s+/g, '-') +    .replace(/[^\w\-]+/g, '-') +    .replace(/\-\-+/g, '-') +    .replace(/(^-)|(-$)/g, ''); +}; + +/** + * Capitalize the first letter of a string. + * + * @param {string} text - A text to capitalize. + * @returns {string} The capitalized text. + */ +export const capitalize = (text: string): string => { +  return text.replace(/^\w/, (firstLetter) => firstLetter.toUpperCase()); +}; | 
