electron/spec/get-files.ts

15 lines
440 B
TypeScript

import { once } from 'node:events';
import * as walkdir from 'walkdir';
export async function getFiles (directoryPath: string, { filter = null }: {filter?: ((file: string) => boolean) | null} = {}) {
const files: string[] = [];
const walker = walkdir(directoryPath, {
no_recurse: true
});
walker.on('file', (file) => {
if (!filter || filter(file)) { files.push(file); }
});
await once(walker, 'end');
return files;
}