filter-scan-dir 1.5.5 → 1.5.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +9 -7
- package/dist/index.js +7 -5
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { Dirent, Stats } from "fs";
|
|
|
3
3
|
/**
|
|
4
4
|
* type of the 3rd argument for the filter callback
|
|
5
5
|
*/
|
|
6
|
-
export
|
|
6
|
+
export type ExtrasData = {
|
|
7
7
|
/** name of the file being considered */
|
|
8
8
|
file: string;
|
|
9
9
|
/** path to the directory being processed that contains the file */
|
|
@@ -18,11 +18,13 @@ export declare type ExtrasData = {
|
|
|
18
18
|
ext: string;
|
|
19
19
|
/** file name without the extension */
|
|
20
20
|
noExt: string;
|
|
21
|
+
/** files in the directory */
|
|
22
|
+
files: (string | Dirent)[];
|
|
21
23
|
};
|
|
22
24
|
/**
|
|
23
25
|
* Info from the filter callback to indicate what to do next
|
|
24
26
|
*/
|
|
25
|
-
export
|
|
27
|
+
export type FilterInfo = {
|
|
26
28
|
/** name of the group to add the file or directory (if grouping is enabled) */
|
|
27
29
|
group?: string;
|
|
28
30
|
/** if `true` then skip the file or directory, else add it */
|
|
@@ -39,7 +41,7 @@ export declare type FilterInfo = {
|
|
|
39
41
|
* - _string_ - name of the group to add the file or directory (if grouping is enabled)
|
|
40
42
|
* - _FilterInfo_ - see type {@link FilterInfo} for details
|
|
41
43
|
*/
|
|
42
|
-
export
|
|
44
|
+
export type FilterResult = boolean | string | FilterInfo;
|
|
43
45
|
/**
|
|
44
46
|
* filter callback for file or directory entry
|
|
45
47
|
* @param file - name of the file/dir being considered
|
|
@@ -48,11 +50,11 @@ export declare type FilterResult = boolean | string | FilterInfo;
|
|
|
48
50
|
* first level directory.
|
|
49
51
|
* @param extras - extras data
|
|
50
52
|
*/
|
|
51
|
-
export
|
|
53
|
+
export type FilterCallback = (file: string, path: string, extras: ExtrasData) => FilterResult;
|
|
52
54
|
/**
|
|
53
55
|
* Options for filterScanDir
|
|
54
56
|
*/
|
|
55
|
-
export
|
|
57
|
+
export type Options = {
|
|
56
58
|
/** current working directory to start scanning */
|
|
57
59
|
cwd?: string;
|
|
58
60
|
/**
|
|
@@ -108,7 +110,7 @@ export declare type Options = {
|
|
|
108
110
|
/**
|
|
109
111
|
* options specifically to set grouping flag `true` to enable grouping of files
|
|
110
112
|
*/
|
|
111
|
-
export
|
|
113
|
+
export type GroupingOptions = {
|
|
112
114
|
/**
|
|
113
115
|
* enable grouping of files
|
|
114
116
|
* This is default to disabled, so it's only expecting `true` to enable it.
|
|
@@ -121,7 +123,7 @@ export declare type GroupingOptions = {
|
|
|
121
123
|
* - The default `files` group will contain all files not assigned a group
|
|
122
124
|
* - All other files with a group will be assigned to that field
|
|
123
125
|
*/
|
|
124
|
-
export
|
|
126
|
+
export type GroupingResult = {
|
|
125
127
|
files: string[];
|
|
126
128
|
} & Record<string, string[]>;
|
|
127
129
|
/**
|
package/dist/index.js
CHANGED
|
@@ -19,7 +19,7 @@ const util_2 = require("./util");
|
|
|
19
19
|
* @param options
|
|
20
20
|
* @returns
|
|
21
21
|
*/
|
|
22
|
-
function makeExtrasData(file, fullFile, path, stat, options) {
|
|
22
|
+
function makeExtrasData(file, fullFile, path, stat, files, options) {
|
|
23
23
|
const dirFile = options._join2(path, file);
|
|
24
24
|
const ix = file.lastIndexOf(".");
|
|
25
25
|
if (ix > 0) {
|
|
@@ -31,6 +31,7 @@ function makeExtrasData(file, fullFile, path, stat, options) {
|
|
|
31
31
|
dirFile,
|
|
32
32
|
ext: file.substring(ix),
|
|
33
33
|
noExt: file.substring(0, ix),
|
|
34
|
+
files,
|
|
34
35
|
};
|
|
35
36
|
}
|
|
36
37
|
else {
|
|
@@ -42,6 +43,7 @@ function makeExtrasData(file, fullFile, path, stat, options) {
|
|
|
42
43
|
dirFile,
|
|
43
44
|
ext: "",
|
|
44
45
|
noExt: file,
|
|
46
|
+
files,
|
|
45
47
|
};
|
|
46
48
|
}
|
|
47
49
|
}
|
|
@@ -146,11 +148,11 @@ function walkSync(path, options, level = 0) {
|
|
|
146
148
|
if (options.fullStat) {
|
|
147
149
|
const fullFile = options._join2(dir, file);
|
|
148
150
|
const stat = fs_1.default.lstatSync(fullFile);
|
|
149
|
-
extras = makeExtrasData(file, fullFile, path, stat, options);
|
|
151
|
+
extras = makeExtrasData(file, fullFile, path, stat, files, options);
|
|
150
152
|
}
|
|
151
153
|
else {
|
|
152
154
|
const fullFile = options._join2(dir, file.name);
|
|
153
|
-
extras = makeExtrasData(file.name, fullFile, path, file, options);
|
|
155
|
+
extras = makeExtrasData(file.name, fullFile, path, file, files, options);
|
|
154
156
|
}
|
|
155
157
|
if (extras.stat.isDirectory()) {
|
|
156
158
|
dirs.push(extras);
|
|
@@ -211,11 +213,11 @@ async function walk(path, options, level = 0) {
|
|
|
211
213
|
if (options.fullStat) {
|
|
212
214
|
const fullFile = options._join2(dir, file);
|
|
213
215
|
const stat = await asyncLStat(fullFile);
|
|
214
|
-
extras = makeExtrasData(file, fullFile, path, stat, options);
|
|
216
|
+
extras = makeExtrasData(file, fullFile, path, stat, files, options);
|
|
215
217
|
}
|
|
216
218
|
else {
|
|
217
219
|
const fullFile = options._join2(dir, file.name);
|
|
218
|
-
extras = makeExtrasData(file.name, fullFile, path, file, options);
|
|
220
|
+
extras = makeExtrasData(file.name, fullFile, path, file, files, options);
|
|
219
221
|
}
|
|
220
222
|
if (extras.stat.isDirectory()) {
|
|
221
223
|
dirs.push(extras);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,oFAAoF;;;;;;AAEpF,4CAAuC;AACvC,gDAAwB;AACxB,gDAAwB;AACxB,iCAAkD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|