(casing: 'pascal' | 'camel' | 'snake' | 'none', originalName: string)
| 1 | export function resolveNameCasing(casing: 'pascal' | 'camel' | 'snake' | 'none', originalName: string) { |
| 2 | let name = originalName; |
| 3 | const fieldPrefix = /[0-9]/g.test(name.charAt(0)) ? '_' : ''; |
| 4 | |
| 5 | switch (casing) { |
| 6 | case 'pascal': |
| 7 | name = toPascalCase(originalName); |
| 8 | break; |
| 9 | case 'camel': |
| 10 | name = toCamelCase(originalName); |
| 11 | break; |
| 12 | case 'snake': |
| 13 | name = toSnakeCase(originalName); |
| 14 | break; |
| 15 | } |
| 16 | |
| 17 | return { |
| 18 | modified: name !== originalName || fieldPrefix !== '', |
| 19 | name: `${fieldPrefix}${name}`, |
| 20 | }; |
| 21 | } |
| 22 | |
| 23 | function isAllUpperCase(str: string): boolean { |
| 24 | return str === str.toUpperCase(); |
no test coverage detected