HEX
Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.30
System: Linux iZj6c1151k3ad370bosnmsZ 3.10.0-1160.76.1.el7.x86_64 #1 SMP Wed Aug 10 16:21:17 UTC 2022 x86_64
User: root (0)
PHP: 7.4.30
Disabled: NONE
Upload Files
File: /var/www/html/sparkle/wp-content/plugins/aftership-woocommerce-tracking/build.js
(async ()=> {
    const fs = require('fs');
    const archiver = require('archiver');

    // 定义需要打包的目录和文件数组
    const directories = ['assets', 'includes', 'templates', 'views', 'woo-includes'];
    const files = ['aftership.php', 'aftership-woocommerce-tracking.php', 'readme.txt'];

    // 创建一个输出流,用于保存生成的 zip 文件
    const build = './build/aftership-woocommerce-tracking.zip';
    if (fs.existsSync(build)) {
        fs.unlinkSync(build);
    }
    const outputZip = fs.createWriteStream(build);

    // 创建一个 archiver 实例,并设置打包类型为 zip
    const archive = archiver('zip', {
        zlib: { level: 9 } // 设置压缩级别为最高
    });

    // 将输出流连接到 archiver 实例中
    archive.pipe(outputZip);

    // 循环遍历需要打包的目录,并添加到 archiver 实例中
    directories.forEach((dir) => {
        archive.directory(dir);
    });

    // 循环遍历需要打包的文件,并添加到 archiver 实例中
    files.forEach((file) => {
        archive.file(file);
    });

    // 完成打包操作
    archive.finalize();

})()