Added possibility to run prettier against one specific directory to make our conversion easier
This commit is contained in:
parent
5f3a219e14
commit
930baeb92a
|
@ -43,3 +43,17 @@ yarn prettier-all-save
|
|||
Formats all files in the repository with Prettier. (This should only be used to test global rule updates otherwise you would end up with huge MR's).
|
||||
|
||||
The source of these Yarn scripts can be found in `/scripts/frontend/prettier.js`.
|
||||
|
||||
### Scripts during Conversion period
|
||||
|
||||
```
|
||||
node ./scripts/frontend/prettier.js check ./vendor/
|
||||
```
|
||||
|
||||
This will go over all files in a specific folder check it.
|
||||
|
||||
```
|
||||
node ./scripts/frontend/prettier.js save ./vendor/
|
||||
```
|
||||
|
||||
This will go over all files in a specific folder and save it.
|
||||
|
|
|
@ -9,6 +9,8 @@ const getStagedFiles = require('./frontend_script_utils').getStagedFiles;
|
|||
const mode = process.argv[2] || 'check';
|
||||
const shouldSave = mode === 'save' || mode === 'save-all';
|
||||
const allFiles = mode === 'check-all' || mode === 'save-all';
|
||||
let dirPath = process.argv[3] || '';
|
||||
if (dirPath.charAt(dirPath.length-1) !== '/') dirPath += '/';
|
||||
|
||||
const config = {
|
||||
patterns: ['**/*.js', '**/*.vue', '**/*.scss'],
|
||||
|
@ -39,9 +41,9 @@ prettierIgnore.add(
|
|||
|
||||
const availableExtensions = Object.keys(config.parsers);
|
||||
|
||||
console.log(`Loading ${allFiles ? 'All' : 'Staged'} Files ...`);
|
||||
console.log(`Loading ${allFiles ? 'All' : 'Selected'} Files ...`);
|
||||
|
||||
const stagedFiles = allFiles ? null : getStagedFiles(availableExtensions.map(ext => `*.${ext}`));
|
||||
const stagedFiles = allFiles || dirPath ? null : getStagedFiles(availableExtensions.map(ext => `*.${ext}`));
|
||||
|
||||
if (stagedFiles) {
|
||||
if (!stagedFiles.length || (stagedFiles.length === 1 && !stagedFiles[0])) {
|
||||
|
@ -60,6 +62,11 @@ if (allFiles) {
|
|||
const patterns = config.patterns;
|
||||
const globPattern = patterns.length > 1 ? `{${patterns.join(',')}}` : `${patterns.join(',')}`;
|
||||
files = glob.sync(globPattern, { ignore }).filter(f => allFiles || stagedFiles.includes(f));
|
||||
} else if (dirPath) {
|
||||
const ignore = config.ignore;
|
||||
const patterns = config.patterns.map((item) => {return dirPath + item;});
|
||||
const globPattern = patterns.length > 1 ? `{${patterns.join(',')}}` : `${patterns.join(',')}`;
|
||||
files = glob.sync(globPattern, { ignore });
|
||||
} else {
|
||||
files = stagedFiles.filter(f => availableExtensions.includes(f.split('.').pop()));
|
||||
}
|
||||
|
@ -73,7 +80,6 @@ if (!files.length) {
|
|||
|
||||
console.log(`${shouldSave ? 'Updating' : 'Checking'} ${files.length} file(s)`);
|
||||
|
||||
|
||||
files.forEach(file => {
|
||||
try {
|
||||
prettier
|
||||
|
|
Loading…
Reference in New Issue