Skip to content

Commit 0f58878

Browse files
authored
🐛 Fix(cli): filters optional (#178)
1 parent ee1a314 commit 0f58878

1 file changed

Lines changed: 13 additions & 11 deletions

File tree

src/utils/initUtils.ts

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -19,19 +19,21 @@ const generate = async (ctx: IPicGo, options: IOptions): Promise<any> => {
1919
answers = await ctx.cmd.inquirer.prompt(opts.prompts)
2020
}
2121
let _files: string[] = await globby(['**/*'], { cwd: source, dot: true }) // get files' name array
22-
_files = _files.filter((item: string) => {
23-
let glob = ''
24-
Object.keys(opts.filters).forEach((key: string) => {
25-
if (match(item, key, { dot: true })) {
26-
glob = item
22+
23+
const filterKeys = Object.keys(opts.filters || {})
24+
if (filterKeys.length > 0) {
25+
_files = _files.filter((item: string) => {
26+
let glob = ''
27+
for (const key of filterKeys) {
28+
if (match(item, key, { dot: true })) {
29+
glob = item
30+
break
31+
}
2732
}
33+
return glob ? filters(ctx, opts.filters[glob], answers) : true
2834
})
29-
if (glob) { // find a filter expression
30-
return filters(ctx, opts.filters[glob], answers)
31-
} else {
32-
return true
33-
}
34-
})
35+
}
36+
3537
if (_files.length === 0) {
3638
return ctx.log.warn('Template files not found!')
3739
}

0 commit comments

Comments
 (0)