UNPKG

case-transformer

Version:

We often need to convert cases like camelCase to kebab-case , PascalCase to snake_case and so on. because in some frontend or backend technologies have some restrictions in case naming. In this case , we can directly rename them. But the best idea would b

31 lines (24 loc) 813 B
let PascalCase = (word, toCase) => { let lettersWithoutFirst = word.match(/[A-Z][a-z]+/g) let firstLetter = word.slice(0,word.indexOf(lettersWithoutFirst[0])) let letters = [firstLetter] lettersWithoutFirst.forEach(letter => { letters.push(letter) }) if (toCase == 'snake_case') { return letters.join('_').toLowerCase() } else if (toCase == 'MACRO_CASE') { return letters.join('_').toUpperCase() } else if (toCase == 'kebab-case') { return letters.join('-').toLowerCase() } else if (toCase == 'COBOL-CASE') { return letters.join('-').toUpperCase() } else if (toCase == 'camelCase') { return word[0].toLowerCase() + word.slice(1) } } module.exports = PascalCase