kura
Version:
The FileSystem API abstraction library.
24 lines (21 loc) • 694 B
text/typescript
import { EntryAsync } from "./EntryAsync";
import { DirectoryReader, Entry } from "./filesystem";
import { FileSystemAsync } from "./FileSystemAsync";
import { createEntry } from "./FileSystemUtil";
export class DirectoryReaderAsync {
constructor(
private fileSystemAsync: FileSystemAsync,
private directoryReader: DirectoryReader
) {}
public readEntries(): Promise<EntryAsync<Entry>[]> {
return new Promise<EntryAsync<Entry>[]>((resolve, reject) => {
this.directoryReader.readEntries(
(entries) =>
resolve(
entries.map((entry) => createEntry(this.fileSystemAsync, entry))
),
(err) => reject(err)
);
});
}
}