Skip to content

Commit 9d8dc0c

Browse files
committed
refactor(excludes): centralize directory exclusion lists
1 parent 9eb018b commit 9d8dc0c

File tree

1 file changed

+33
-37
lines changed

1 file changed

+33
-37
lines changed

index.js

Lines changed: 33 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,34 @@ const path = require('path');
88
const { execSync } = require('child_process');
99
const packageJson = require('./package.json');
1010

11+
// Define common directories to exclude
12+
const COMMON_EXCLUDE_DIRS = [
13+
'node_modules',
14+
'.git',
15+
'vendor',
16+
'.next',
17+
'dist',
18+
'build',
19+
'.husky',
20+
'public',
21+
'docs',
22+
'assets/fonts',
23+
'assets/images',
24+
'assets/svg',
25+
'src/assets/images',
26+
'assets/icons',
27+
'languages',
28+
];
29+
30+
// Define common file patterns to exclude
31+
const COMMON_EXCLUDE_FILES = [
32+
'package-lock.json',
33+
'composer.lock',
34+
'yarn.lock',
35+
'*.min.js',
36+
'*.min.css'
37+
];
38+
1139
// Get the current directory name for default output file
1240
const getCurrentDirectoryName = () => {
1341
const currentPath = process.cwd();
@@ -56,23 +84,7 @@ function formatSize(bytes) {
5684
function scanDirectory(rootDir) {
5785
const items = [];
5886
// Default directories to skip during scanning
59-
const skipDirs = [
60-
'node_modules',
61-
'.git',
62-
'vendor',
63-
'.next',
64-
'dist',
65-
'build',
66-
'.husky',
67-
'public',
68-
'docs',
69-
'assets/fonts',
70-
'assets/images',
71-
'assets/svg',
72-
'src/assets/images',
73-
'assets/icons',
74-
'languages',
75-
];
87+
const skipDirs = [...COMMON_EXCLUDE_DIRS];
7688

7789
// Add extra exclude directories from command line
7890
if (options.extraExclude) {
@@ -252,26 +264,10 @@ async function main() {
252264

253265
// Default excludes
254266
const defaultExcludes = [
255-
'node_modules/**',
256-
'vendor/**',
257-
'.git/**',
258-
'.next/**',
259-
'.husky/**',
260-
'dist/**',
261-
'build/**',
262-
'public/**',
263-
'docs/**',
264-
'assets/fonts/**',
265-
'assets/images/**',
266-
'assets/svg/**',
267-
'src/assets/images/**',
268-
'assets/icons/**',
269-
'languages/**',
270-
'package-lock.json',
271-
'composer.lock',
272-
'yarn.lock',
273-
'*.min.js',
274-
'*.min.css'
267+
// Add directory patterns with /**
268+
...COMMON_EXCLUDE_DIRS.map(dir => `${dir}/**`),
269+
// Add file patterns
270+
...COMMON_EXCLUDE_FILES
275271
];
276272

277273
// Add extra exclude patterns from command line to defaultExcludes

0 commit comments

Comments
 (0)