-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathindex.js
More file actions
51 lines (38 loc) · 1.08 KB
/
index.js
File metadata and controls
51 lines (38 loc) · 1.08 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
let caseOf = require('./modules/caseOf')
let snake_case = require('./modules/snake_case')
let MACRO_CASE = require('./modules/MACRO_CASE')
let kebab_case = require('./modules/kebab-case')
let COBOL_CASE = require('./modules/COBOL-CASE')
let camelCase = require('./modules/camelCase')
let PascalCase = require('./modules/PascalCase')
let transformCase = (word, toCase) => {
let fromCase = caseOf(word)
if (fromCase == toCase) {
return word
}
else if (fromCase == "snake_case") {
return snake_case(word, toCase)
}
else if (fromCase == "MACRO_CASE") {
return MACRO_CASE(word, toCase)
}
else if (fromCase == "kebab-case") {
return kebab_case(word, toCase)
}
else if (fromCase == "COBOL-CASE") {
return COBOL_CASE(word, toCase)
}
else if (fromCase == "camelCase") {
return camelCase(word, toCase)
}
else if (fromCase == "PascalCase") {
return PascalCase(word, toCase)
}
else {
return word.toLowerCase()
}
}
module.exports = {
transformCase,
caseOf
}