-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.js
34 lines (31 loc) · 1.03 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import { readdir, readFileSync } from "fs";
import { compressBR, compressGZ, writeToFile } from "./compression.js";
const srcFolder = "./src";
const brotliFolder = "./brotli/";
const gzipFolder = "./gzip/";
/**
* @description
* @param {any} srcFolder
* @param {any} err
* @param {any} fileNames
* @returns {any}
*/
readdir(srcFolder, (err, fileNames) => {
//Read all files from src folder and compress it
fileNames.forEach(function(fileName) {
//Brotli compression
let brCompressed = compressBR(readFileSync("src/" + fileName));
if (brCompressed) {
writeToFile(brotliFolder + fileName, brCompressed);
} else {
console.log(`Brotli compression failed for ${fileName}`);
}
//GZIP compression
let gzipCompressed = compressGZ(readFileSync("src/" + fileName));
if (gzipCompressed) {
writeToFile(gzipFolder + fileName, gzipCompressed);
} else {
console.log(`GZIP compression failed for ${fileName}`);
}
});
});