УглубитьсяВВыбраннуюДиректорию = мир => { const номер = мир.номерВыбранногоФайла; const директория = мир.списокФайловТекущейДиректории[номер]; мир.директория = мир.директория + директория + "/"; мир.уведомить("изменили директорию"); }; // // // // ОпределитьТипВыбранногоФайла = мир => { const номер = мир.номерВыбранногоФайла; const свойство = мир.свойстваФайловТекущейДиректории[номер]; if (свойство.isDirectory()) { мир.уведомить("тип выбранного файла директория"); } else { мир.уведомить("тип выбранного файла файл"); } }; // // // // ОтобразитьСписокФайловТекущейДиректории = мир => { var список = []; const файлы = мир.списокФайловТекущейДиректории; const свойства = мир.свойстваФайловТекущейДиректории; for (var н in файлы) { const свойство = свойства[н]; const окончание = свойство.isDirectory() ? "/" : ""; const файл = файлы[н] + окончание; список.push(файл); } мир.списокФайлов = список; мир.уведомить("изменили список файлов"); }; // // // // ПолучитьСвойстваФайловТекущейДиректории = мир => { const список = мир.списокФайловТекущейДиректории; (async() => { try { var свойстваФайлов = []; for (var н in список) { const имя = список[н]; const путь = мир.директория + имя; const свойства = await мир.фс.promises.stat(путь); свойстваФайлов.push(свойства); } мир.свойстваФайловТекущейДиректории = свойстваФайлов; мир.уведомить("получили свойства файлов текущей директории"); } catch (ошибка) { мир.ошибкаОперацииФС = ошибка.code; мир.уведомить("ошибка операции файловой системы"); } })(); }; // // // // ПолучитьСписокФайловТекущейДиректории = мир => { (async() => { try { const список = await мир.фс.promises.readdir(мир.директория); мир.списокФайловТекущейДиректории = список; мир.уведомить("получили список файлов текущей директории"); } catch (ошибка) { мир.ошибкаОперацииФС = ошибка.code; мир.уведомить("ошибка операции файловой системы"); } })(); }; // // // // ЗадатьТекущуюДиректориюКорнем = мир => { мир.директория = "/"; мир.уведомить("изменили директорию"); }; // // // // СоздатьФайловуюСистему = мир => { мир.фс = new LightningFS("AMYP"); };