Промежуточный коммит, загрузка и обработка файла книги

This commit is contained in:
Book Pauk
2019-01-12 17:38:21 +07:00
parent 6aeb589e16
commit 42ae088df3
3 changed files with 120 additions and 2 deletions

View File

@@ -0,0 +1,35 @@
const fs = require('fs-extra');
const decompress = require('decompress');
const FileDetector = require('./FileDetector');
class FileDecompressor {
constructor() {
this.detector = new FileDetector();
}
async decompressFile(filename, outputDir) {
const fileType = await this.detector.detectFile(filename);
if (!(fileType.ext == 'zip' || fileType.ext == 'bz2'))
return filename;
const files = await decompress(filename, outputDir);
let result = filename;
let max = 0;
if (!files.length) {
//ищем файл с максимальным размером
for (let file of files) {
const stats = await fs.stat(file);
if (stats.size > max) {
result = file;
max = stats.size;
}
}
}
return result;
}
}
module.exports = FileDecompressor;