stream-bypass/tasks/bundle.ts
2022-06-14 20:50:51 +02:00

28 lines
731 B
TypeScript

const fs = require('fs')
const path = require('path')
const yazl = require('yazl')
function walkDirectory(dir, callback) {
for (const file of fs.readdirSync(dir)) {
const filePath = path.join(dir, file)
fs.statSync(filePath).isDirectory() ? walkDirectory(filePath, callback) : callback(filePath)
}
}
async function bundle_zip() {
const zipfile = new yazl.ZipFile()
walkDirectory('build', (path) => {
zipfile.addFile(path, path.substring(6))
})
zipfile.end()
fs.mkdirSync('dist', {recursive: true})
zipfile.outputStream.pipe(fs.createWriteStream(`dist/stream_bypass-v${process.env.npm_package_version}.zip`))
}
async function bundle() {
await bundle_zip()
}
bundle()