Skip to content

Commit 038cde4

Browse files
committed
functionalize replacement and simplify calls
1 parent ac33cf7 commit 038cde4

File tree

1 file changed

+12
-17
lines changed

1 file changed

+12
-17
lines changed

src/files.js

Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -43,15 +43,15 @@ function readFile(path, fileName) {
4343

4444
/**
4545
* generate the file name
46-
* @param {string} newFileName
47-
* @param {string} templateFileName
46+
* @param {string} searchString
47+
* @param {string} replacement
4848
*/
49-
function generateFileName(newFileName, templateFileName) {
49+
function replaceKeys(searchString, replacement) {
5050
const replacementKeys = {
51-
COMPONENT_NAME: newFileName,
52-
component_name: newFileName.toLowerCase(),
53-
COMPONENT_CAP_NAME: newFileName.toUpperCase(),
54-
cOMPONENT_NAME: newFileName[0].toLowerCase() + newFileName.substr(1),
51+
COMPONENT_NAME: replacement,
52+
component_name: replacement.toLowerCase(),
53+
COMPONENT_CAP_NAME: replacement.toUpperCase(),
54+
cOMPONENT_NAME: replacement[0].toLowerCase() + replacement.substr(1),
5555
}
5656

5757
return Object.keys(replacementKeys).reduce(
@@ -62,7 +62,7 @@ function generateFileName(newFileName, templateFileName) {
6262
}
6363
return acc
6464
},
65-
templateFileName
65+
searchString
6666
)
6767
}
6868

@@ -81,12 +81,10 @@ async function generateFilesFromTemplate({ name, path, templatesPath }) {
8181
files.map(async (templateFileName) => {
8282
// Get the template content
8383
const content = await readFile(templatesPath, templateFileName)
84-
const replaced = content.replace(/COMPONENT_NAME/g, name)
85-
.replace(/component_name/g, name.toLowerCase())
86-
.replace(/COMPONENT_CAP_NAME/g, name.toUpperCase())
87-
.replace(/cOMPONENT_NAME/g, name[0].toLowerCase() + name.substr(1))
84+
const replaced = replaceKeys(content, name)
85+
8886
// Exist ?
89-
const newFileName = generateFileName(name, templateFileName)
87+
const newFileName = replaceKeys(templateFileName, name)
9088
// Write the new file with the new content
9189
fs.outputFile(`${outputPath}/${newFileName}`, replaced)
9290
})
@@ -110,10 +108,7 @@ function getFileNames(fileNames = [], componentName) {
110108

111109
const formattedFileNames = Object.keys(fileNames).reduce(
112110
(acc, curr) => {
113-
acc[curr] = fileNames[curr].replace(/COMPONENT_NAME/g, componentName)
114-
.replace(/component_name/g, componentName.toLowerCase())
115-
.replace(/COMPONENT_CAP_NAME/g, componentName.toUpperCase())
116-
.replace(/cOMPONENT_NAME/g, componentName[0].toUpperCase() + componentName.substr(1))
111+
acc[curr] = replaceKeys(fileNames[curr], componentName)
117112
return acc
118113
},
119114
{ ...defaultFileNames }

0 commit comments

Comments
 (0)