inDirectory static method
Loads an OpfsFileSystem in the desired root
directory, which must be
a Dart wrapper around a FileSystemDirectoryHandle.
Implementation
static Future<OpfsFileSystem> inDirectory(Object root) async {
Future<FileSystemSyncAccessHandle> open(String name) async {
final handle = await (root as FileSystemDirectoryHandle)
.openFile(name, create: true);
return await handle.createSyncAccessHandle();
}
final meta = await open('meta');
meta.truncate(2);
final files = {
for (final type in FileType.values) type: await open(type.name)
};
return OpfsFileSystem._(meta, files);
}