Latest Threat Research:SANDWORM_MODE: Shai-Hulud-Style npm Worm Hijacks CI Workflows and Poisons AI Toolchains.Details
Socket
Book a DemoInstallSign in
Socket

@ffflorian/jszip-cli

Package Overview
Dependencies
Maintainers
1
Versions
97
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ffflorian/jszip-cli - npm Package Compare versions

Comparing version
1.2.2
to
1.3.0
+3
-2
dist/BuildService.d.ts

@@ -8,5 +8,7 @@ /// <reference types="node" />

private readonly options;
private readonly progressBar;
private entries;
private ignoreEntries;
private outputEntry;
outputFile: string | null;
compressedFilesCount: number;
constructor(options: Required<CLIOptions>);

@@ -17,3 +19,2 @@ add(rawEntries: string[]): BuildService;

private addFile;
private addLink;
private checkEntry;

@@ -20,0 +21,0 @@ private checkOutput;

+40
-55

@@ -41,2 +41,3 @@ "use strict";

var path = require("path");
var progress = require("progress");
var FileService_1 = require("./FileService");

@@ -47,2 +48,3 @@ var BuildService = /** @class */ (function () {

this.jszip = new JSZip();
this.options = options;
this.logger = logdown('jszip-cli/BuildService', {

@@ -53,6 +55,12 @@ logger: console,

this.logger.state = { isEnabled: options.verbose };
this.options = options;
this.entries = [];
this.ignoreEntries = this.options.ignoreEntries.map(function (entry) { return new RegExp(entry.replace('*', '.*')); });
this.outputEntry = this.options.outputEntry ? path.resolve(this.options.outputEntry) : null;
this.outputFile = this.options.outputEntry ? path.resolve(this.options.outputEntry) : null;
this.progressBar = new progress('Compressing [:bar] :percent :elapseds', {
complete: '=',
incomplete: ' ',
total: 100,
width: 20,
});
this.compressedFilesCount = 0;
}

@@ -72,3 +80,5 @@ BuildService.prototype.add = function (rawEntries) {

BuildService.prototype.getBuffer = function () {
var _this = this;
var compressionType = this.options.compressionLevel === 0 ? 'STORE' : 'DEFLATE';
var lastPercent = 0;
return this.jszip.generateAsync({

@@ -80,2 +90,9 @@ type: 'nodebuffer',

},
}, function (_a) {
var percent = _a.percent;
var diff = Math.floor(percent) - Math.floor(lastPercent);
if (diff && !_this.options.quiet) {
_this.progressBar.tick(diff);
lastPercent = Math.floor(percent);
}
});

@@ -98,7 +115,7 @@ };

data = _a.sent();
if (!this.outputEntry) return [3 /*break*/, 5];
if (!this.outputEntry.match(/\.\w+$/)) {
this.outputEntry = path.join(this.outputEntry, 'data.zip');
if (!this.outputFile) return [3 /*break*/, 5];
if (!this.outputFile.match(/\.\w+$/)) {
this.outputFile = path.join(this.outputFile, 'data.zip');
}
return [4 /*yield*/, this.fileService.writeFile(data, this.outputEntry)];
return [4 /*yield*/, this.fileService.writeFile(data, this.outputFile)];
case 4:

@@ -122,6 +139,6 @@ _a.sent();

resolvedPath = entry.resolvedPath, zipPath = entry.zipPath;
return [4 /*yield*/, FileService_1.fsPromise.readFile(resolvedPath)];
return [4 /*yield*/, this.fileService.readFile(resolvedPath)];
case 1:
fileData = _a.sent();
return [4 /*yield*/, FileService_1.fsPromise.lstat(resolvedPath)];
return [4 /*yield*/, this.fileService.fileStat(resolvedPath)];
case 2:

@@ -137,2 +154,3 @@ fileStat = _a.sent();

_a.sent();
this.compressedFilesCount++;
return [2 /*return*/];

@@ -143,29 +161,2 @@ }

};
BuildService.prototype.addLink = function (entry) {
return __awaiter(this, void 0, void 0, function () {
var resolvedPath, fileName, fileData, fileStat;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
resolvedPath = entry.resolvedPath;
fileName = path.basename(resolvedPath);
return [4 /*yield*/, FileService_1.fsPromise.readLink(entry.resolvedPath)];
case 1:
fileData = _a.sent();
return [4 /*yield*/, FileService_1.fsPromise.lstat(entry.resolvedPath)];
case 2:
fileStat = _a.sent();
return [4 /*yield*/, this.jszip.file(fileName, fileData, {
date: fileStat.mtime,
createFolders: true,
dosPermissions: fileStat.mode,
unixPermissions: fileStat.mode,
})];
case 3:
_a.sent();
return [2 /*return*/];
}
});
});
};
BuildService.prototype.checkEntry = function (entry) {

@@ -176,3 +167,3 @@ return __awaiter(this, void 0, void 0, function () {

switch (_a.label) {
case 0: return [4 /*yield*/, FileService_1.fsPromise.lstat(entry.resolvedPath)];
case 0: return [4 /*yield*/, this.fileService.fileStat(entry.resolvedPath)];
case 1:

@@ -190,20 +181,14 @@ fileStat = _a.sent();

_a.sent();
return [3 /*break*/, 8];
return [3 /*break*/, 6];
case 3:
if (!fileStat.isFile()) return [3 /*break*/, 5];
if (!(fileStat.isFile() || fileStat.isSymbolicLink())) return [3 /*break*/, 5];
return [4 /*yield*/, this.addFile(entry)];
case 4:
_a.sent();
return [3 /*break*/, 8];
return [3 /*break*/, 6];
case 5:
if (!fileStat.isSymbolicLink()) return [3 /*break*/, 7];
return [4 /*yield*/, this.addLink(entry)];
case 6:
_a.sent();
return [3 /*break*/, 8];
case 7:
this.logger.info("Unknown file type.", { fileStat: fileStat });
console.info("Can't read: " + entry.resolvedPath + ". Ignoring.");
_a.label = 8;
case 8: return [2 /*return*/];
_a.label = 6;
case 6: return [2 /*return*/];
}

@@ -219,22 +204,22 @@ });

case 0:
if (!this.outputEntry) return [3 /*break*/, 5];
if (!this.outputEntry.match(/\.\w+$/)) return [3 /*break*/, 3];
return [4 /*yield*/, this.fileService.dirExists(path.dirname(this.outputEntry))];
if (!this.outputFile) return [3 /*break*/, 5];
if (!this.outputFile.match(/\.\w+$/)) return [3 /*break*/, 3];
return [4 /*yield*/, this.fileService.dirExists(path.dirname(this.outputFile))];
case 1:
dirExists = _a.sent();
if (!dirExists) {
throw new Error("Directory \"" + path.dirname(this.outputEntry) + "\" doesn't exist or is not writable.");
throw new Error("Directory \"" + path.dirname(this.outputFile) + "\" doesn't exist or is not writable.");
}
return [4 /*yield*/, this.fileService.fileIsWritable(this.outputEntry)];
return [4 /*yield*/, this.fileService.fileIsWritable(this.outputFile)];
case 2:
fileIsWritable = _a.sent();
if (!fileIsWritable) {
throw new Error("File \"" + this.outputEntry + "\" already exists.");
throw new Error("File \"" + this.outputFile + "\" already exists.");
}
return [3 /*break*/, 5];
case 3: return [4 /*yield*/, this.fileService.dirExists(this.outputEntry)];
case 3: return [4 /*yield*/, this.fileService.dirExists(this.outputFile)];
case 4:
dirExists = _a.sent();
if (!dirExists) {
throw new Error("Directory \"" + this.outputEntry + "\" doesn't exist or is not writable.");
throw new Error("Directory \"" + this.outputFile + "\" doesn't exist or is not writable.");
}

@@ -241,0 +226,0 @@ _a.label = 5;

@@ -1,1 +0,1 @@

{"version":3,"file":"BuildService.js","sourceRoot":"","sources":["../src/BuildService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iCAAmC;AACnC,6BAA+B;AAC/B,2BAA6B;AAE7B,6CAAqD;AAErD;IASE,sBAAY,OAA6B;QACvC,IAAI,CAAC,WAAW,GAAG,IAAI,yBAAW,CAAC,OAAO,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,wBAAwB,EAAE;YAC9C,MAAM,EAAE,OAAO;YACf,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,EAAC,SAAS,EAAE,OAAO,CAAC,OAAO,EAAC,CAAC;QACjD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,UAAA,KAAK,IAAI,OAAA,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,EAApC,CAAoC,CAAC,CAAC;QACnG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9F,CAAC;IAEM,0BAAG,GAAV,UAAW,UAAoB;QAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAU,UAAU,CAAC,MAAM,cAAQ,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,mBAAe,CAAC,CAAC;QAC1G,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,UAAA,QAAQ;YACpC,IAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACzC,OAAO;gBACL,YAAY,cAAA;gBACZ,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,gCAAS,GAAhB;QACE,IAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QAElF,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;YAC9B,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,eAAe;YAC5B,kBAAkB,EAAE;gBAClB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB;aACrC;SACF,CAAC,CAAC;IACL,CAAC;IAEY,2BAAI,GAAjB;;;;;;4BACE,qBAAM,IAAI,CAAC,WAAW,EAAE,EAAA;;wBAAxB,SAAwB,CAAC;wBAEzB,qBAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK,IAAI,OAAA,KAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAtB,CAAsB,CAAC,CAAC,EAAA;;wBAApE,SAAoE,CAAC;wBACxD,qBAAM,IAAI,CAAC,SAAS,EAAE,EAAA;;wBAA7B,IAAI,GAAG,SAAsB;6BAE/B,IAAI,CAAC,WAAW,EAAhB,wBAAgB;wBAClB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;4BACrC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;yBAC5D;wBAED,qBAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,EAAA;;wBAAxD,SAAwD,CAAC;;;wBAEzD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;;4BAG7B,sBAAO,IAAI,EAAC;;;;KACb;IAEa,8BAAO,GAArB,UAAsB,KAAY;;;;;;wBACzB,YAAY,GAAa,KAAK,aAAlB,EAAE,OAAO,GAAI,KAAK,QAAT,CAAU;wBACrB,qBAAM,uBAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAA;;wBAAjD,QAAQ,GAAG,SAAsC;wBACtC,qBAAM,uBAAS,CAAC,KAAK,CAAC,YAAY,CAAC,EAAA;;wBAA9C,QAAQ,GAAG,SAAmC;wBAEpD,qBAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE;gCACvC,aAAa,EAAE,IAAI;gCACnB,IAAI,EAAE,QAAQ,CAAC,KAAK;gCACpB,gCAAgC;gCAChC,eAAe,EAAE,QAAQ,CAAC,IAAI;6BAC/B,CAAC,EAAA;;wBALF,SAKE,CAAC;;;;;KACJ;IAEa,8BAAO,GAArB,UAAsB,KAAY;;;;;;wBACzB,YAAY,GAAI,KAAK,aAAT,CAAU;wBACvB,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;wBAC5B,qBAAM,uBAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,EAAA;;wBAAvD,QAAQ,GAAG,SAA4C;wBAC5C,qBAAM,uBAAS,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,EAAA;;wBAApD,QAAQ,GAAG,SAAyC;wBAE1D,qBAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE;gCACxC,IAAI,EAAE,QAAQ,CAAC,KAAK;gCACpB,aAAa,EAAE,IAAI;gCACnB,cAAc,EAAE,QAAQ,CAAC,IAAI;gCAC7B,eAAe,EAAE,QAAQ,CAAC,IAAI;6BAC/B,CAAC,EAAA;;wBALF,SAKE,CAAC;;;;;KACJ;IAEa,iCAAU,GAAxB,UAAyB,KAAY;;;;;4BAClB,qBAAM,uBAAS,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,EAAA;;wBAApD,QAAQ,GAAG,SAAyC;wBACpD,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,UAAA,WAAW,IAAI,OAAA,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAA9C,CAA8C,CAAC,CAAC;wBAE/G,IAAI,aAAa,CAAC,MAAM,EAAE;4BACxB,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,WAAS,KAAK,CAAC,YAAY,gDAA6C,EACxE,aAAa,CAAC,GAAG,CAAC,UAAA,KAAK,IAAI,OAAA,MAAM,CAAC,KAAK,CAAC,EAAb,CAAa,CAAC,CAC1C,CAAC;4BACF,sBAAO;yBACR;wBAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAS,KAAK,CAAC,YAAY,8BAA2B,CAAC,CAAC;6BAErE,QAAQ,CAAC,WAAW,EAAE,EAAtB,wBAAsB;wBACxB,qBAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAA;;wBAAzB,SAAyB,CAAC;;;6BACjB,QAAQ,CAAC,MAAM,EAAE,EAAjB,wBAAiB;wBAC1B,qBAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAA;;wBAAzB,SAAyB,CAAC;;;6BACjB,QAAQ,CAAC,cAAc,EAAE,EAAzB,wBAAyB;wBAClC,qBAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAA;;wBAAzB,SAAyB,CAAC;;;wBAE1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAC,QAAQ,UAAA,EAAC,CAAC,CAAC;wBACnD,OAAO,CAAC,IAAI,CAAC,iBAAe,KAAK,CAAC,YAAY,gBAAa,CAAC,CAAC;;;;;;KAEhE;IAEa,kCAAW,GAAzB;;;;;;6BACM,IAAI,CAAC,WAAW,EAAhB,wBAAgB;6BACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAhC,wBAAgC;wBAChB,qBAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAA;;wBAA5E,SAAS,GAAG,SAAgE;wBAElF,IAAI,CAAC,SAAS,EAAE;4BACd,MAAM,IAAI,KAAK,CAAC,iBAAc,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,yCAAqC,CAAC,CAAC;yBACpG;wBAEsB,qBAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,EAAA;;wBAAxE,cAAc,GAAG,SAAuD;wBAC9E,IAAI,CAAC,cAAc,EAAE;4BACnB,MAAM,IAAI,KAAK,CAAC,YAAS,IAAI,CAAC,WAAW,uBAAmB,CAAC,CAAC;yBAC/D;;4BAEiB,qBAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,EAAA;;wBAA9D,SAAS,GAAG,SAAkD;wBAEpE,IAAI,CAAC,SAAS,EAAE;4BACd,MAAM,IAAI,KAAK,CAAC,iBAAc,IAAI,CAAC,WAAW,yCAAqC,CAAC,CAAC;yBACtF;;;;;;KAGN;IAEa,8BAAO,GAArB,UAAsB,KAAY;;;;;;wBAChC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAqB,KAAK,CAAC,YAAY,SAAM,CAAC,CAAC;wBAClD,qBAAM,uBAAS,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,EAAA;;wBAAnD,KAAK,GAAG,SAA2C;8BACjC,EAAL,eAAK;;;6BAAL,CAAA,mBAAK,CAAA;wBAAb,IAAI;wBACP,UAAU,GAAG,KAAK,CAAC,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC;wBACxC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;wBAC5D,qBAAM,IAAI,CAAC,UAAU,CAAC;gCACpB,YAAY,EAAE,eAAe;gCAC7B,OAAO,EAAE,UAAU;6BACpB,CAAC,EAAA;;wBAHF,SAGE,CAAC;;;wBANc,IAAK,CAAA;;;;;;KAQzB;IACH,mBAAC;AAAD,CAAC,AA3JD,IA2JC;AAEO,oCAAY"}
{"version":3,"file":"BuildService.js","sourceRoot":"","sources":["../src/BuildService.ts"],"names":[],"mappings":"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"}

@@ -18,3 +18,2 @@ #!/usr/bin/env node

var _a = require('../package.json'), name = _a.name, version = _a.version, description = _a.description;
program.on('command:*', function () { return program.help(); });
program

@@ -24,22 +23,34 @@ .name(name.replace(/^@[^/]+\//, ''))

.description(description)
.option('-l, --level <number>', 'Specify the compression level', 5)
.option('-o, --output <dir>', 'Specify the output directory (default: stdout)')
.option('-i, --ignore <entry>', 'Ignore a file or directory')
.option('-f, --force', 'Force overwriting files', false)
.option('-V, --verbose', 'Enable logging', false);
.option('-o, --output <dir>', 'set the output directory (default: stdout)')
.option('-i, --ignore <entry>', 'ignore a file or directory')
.option('-f, --force', 'force overwriting files (default: false)')
.option('-l, --level <number>', 'set the compression level', 5)
.option('-V, --verbose', 'enable verbose logging (default: false)')
.option('-q, --quiet', "Don't log anything (default: false)")
.on('command:*', function (args) {
console.error("\n error: invalid command `" + args[0] + "'\n");
process.exit(1);
});
program
.command('add')
.description('Add files to the ZIP archive.')
.option('-l, --level <number>', 'Specify the compression level', 5)
.option('-o, --output <dir>', 'Specify the output directory (default: stdout)')
.option('-i, --ignore <entry>', 'Ignore a file or directory')
.option('-f, --force', 'Force overwriting files', false)
.option('-V, --verbose', 'Enable logging', false)
.alias('a')
.description('add files to a new ZIP archive')
.option('-o, --output <dir>', 'set the output directory (default: stdout)')
.option('-i, --ignore <entry>', 'ignore a file or directory')
.option('-f, --force', 'force overwriting files (default: false)')
.option('-l, --level <number>', 'set the compression level', 5)
.option('-V, --verbose', 'enable verbose logging (default: false)')
.option('-q, --quiet', "Don't log anything (default: false)")
.arguments('<entries...>')
.action(function (entries, _a) {
var parent = _a.parent;
new _1.JSZipCLI(__assign({}, (parent.force && { force: parent.force }), (parent.ignore && { ignoreEntries: [parent.ignore] }), (parent.level && { compressionLevel: parent.level }), (parent.output && { outputEntry: parent.output }), (parent.verbose && { verbose: parent.verbose })))
new _1.JSZipCLI(__assign({}, (parent.force && { force: parent.force }), (parent.ignore && { ignoreEntries: [parent.ignore] }), (parent.level && { compressionLevel: parent.level }), (parent.output && { outputEntry: parent.output }), (parent.quiet && { quiet: parent.quiet }), (parent.verbose && { verbose: parent.verbose })))
.add(entries)
.save()
.then(function () { return parent.output && console.log('Done.'); })
.then(function (_a) {
var outputFile = _a.outputFile, compressedFilesCount = _a.compressedFilesCount;
return parent.output &&
!parent.quiet &&
console.log("Done compressing " + compressedFilesCount + " files to " + outputFile + ".");
})
.catch(function (error) {

@@ -52,15 +63,18 @@ console.error('Error:', error.message);

.command('extract')
.description('Extract files from ZIP archive(s).')
.option('-l, --level <number>', 'Specify the compression level', 5)
.option('-o, --output <dir>', 'Specify the output directory (default: stdout)')
.option('-i, --ignore <entry>', 'Ignore a file or directory')
.option('-V, --verbose', 'Enable logging', false)
.option('-f, --force', 'Force overwriting files', false)
.option('-V, --verbose', 'Enable logging', false)
.arguments('<archives...>')
.action(function (files, _a) {
.alias('e')
.description('extract files from ZIP archive(s)')
.option('-o, --output <dir>', 'set the output directory (default: stdout)')
.option('-i, --ignore <entry>', 'ignore a file or directory')
.option('-f, --force', 'force overwriting files (default: false)')
.option('-V, --verbose', 'enable verbose logging (default: false)')
.option('-q, --quiet', "Don't log anything (default: false)")
.arguments('[archives...]')
.action(function (archives, _a) {
var parent = _a.parent;
new _1.JSZipCLI(__assign({}, (parent.force && { force: parent.force }), (parent.ignore && { ignoreEntries: [parent.ignore] }), (parent.output && { outputEntry: parent.output }), (parent.verbose && { verbose: parent.verbose })))
.extract(files)
.then(function () { return parent.output && console.log('Done.'); })
new _1.JSZipCLI(__assign({}, (parent.force && { force: parent.force }), (parent.ignore && { ignoreEntries: [parent.ignore] }), (parent.output && { outputEntry: parent.output }), (parent.quiet && { quiet: parent.quiet }), (parent.verbose && { verbose: parent.verbose })))
.extract(archives)
.then(function (_a) {
var outputDir = _a.outputDir, extractedFilesCount = _a.extractedFilesCount;
return parent.output && !parent.quiet && console.log("Done extracting " + extractedFilesCount + " files to " + outputDir + ".");
})
.catch(function (error) {

@@ -72,5 +86,5 @@ console.error('Error:', error.message);

program.parse(process.argv);
if (!process.argv.slice(2).length) {
if (!program.args.length) {
program.help();
}
//# sourceMappingURL=cli.js.map

@@ -1,1 +0,1 @@

{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}

@@ -6,2 +6,5 @@ import { CLIOptions } from './Interfaces';

private readonly options;
private readonly progressBar;
outputDir: string | null;
extractedFilesCount: number;
constructor(options: Required<CLIOptions>);

@@ -8,0 +11,0 @@ extract(rawEntries: string[]): Promise<ExtractService>;

@@ -41,2 +41,3 @@ "use strict";

var path = require("path");
var progress = require("progress");
var FileService_1 = require("./FileService");

@@ -52,2 +53,10 @@ var ExtractService = /** @class */ (function () {

this.logger.state = { isEnabled: this.options.verbose };
this.outputDir = this.options.outputEntry ? path.resolve(this.options.outputEntry) : null;
this.progressBar = new progress('Extracting [:bar] :percent :elapseds', {
complete: '=',
incomplete: ' ',
total: 100,
width: 20,
});
this.extractedFilesCount = 0;
}

@@ -62,3 +71,3 @@ ExtractService.prototype.extract = function (rawEntries) {

_loop_1 = function (entry) {
var jszip, resolvedPath, data, entries;
var jszip, resolvedPath, data, entries, lastPercent;
return __generator(this, function (_a) {

@@ -68,4 +77,4 @@ switch (_a.label) {

jszip = new JSZip();
if (!this_1.options.outputEntry) return [3 /*break*/, 2];
return [4 /*yield*/, this_1.fileService.ensureDir(this_1.options.outputEntry)];
if (!this_1.outputDir) return [3 /*break*/, 2];
return [4 /*yield*/, this_1.fileService.ensureDir(this_1.outputDir)];
case 1:

@@ -83,3 +92,3 @@ _a.sent();

_a.sent();
if (!this_1.options.outputEntry) {
if (!this_1.outputDir) {
this_1.printStream(jszip.generateNodeStream());

@@ -89,10 +98,11 @@ return [2 /*return*/, { value: this_1 }];

jszip.forEach(function (filePath, entry) { return entries.push([filePath, entry]); });
return [4 /*yield*/, Promise.all(entries.map(function (_a) {
lastPercent = 0;
return [4 /*yield*/, Promise.all(entries.map(function (_a, index) {
var filePath = _a[0], entry = _a[1];
return __awaiter(_this, void 0, void 0, function () {
var resolvedFilePath, data_1;
var resolvedFilePath, data_1, diff;
return __generator(this, function (_b) {
switch (_b.label) {
case 0:
resolvedFilePath = path.join(this.options.outputEntry, filePath);
resolvedFilePath = path.join(this.outputDir, filePath);
if (!entry.dir) return [3 /*break*/, 2];

@@ -102,3 +112,3 @@ return [4 /*yield*/, this.fileService.ensureDir(resolvedFilePath)];

_b.sent();
return [3 /*break*/, 6];
return [3 /*break*/, 7];
case 2: return [4 /*yield*/, entry.async('nodebuffer')];

@@ -117,3 +127,11 @@ case 3:

_b.label = 6;
case 6: return [2 /*return*/];
case 6:
this.extractedFilesCount++;
diff = Math.floor(index / entries.length) - Math.floor(lastPercent);
if (diff && !this.options.quiet) {
this.progressBar.tick(diff);
lastPercent = Math.floor(index / entries.length);
}
_b.label = 7;
case 7: return [2 /*return*/];
}

@@ -120,0 +138,0 @@ });

@@ -1,1 +0,1 @@

{"version":3,"file":"ExtractService.js","sourceRoot":"","sources":["../src/ExtractService.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"ExtractService.js","sourceRoot":"","sources":["../src/ExtractService.ts"],"names":[],"mappings":"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"}

@@ -20,5 +20,7 @@ /// <reference types="node" />

ensureDir(dirPath: string): Promise<FileService>;
fileStat(filePath: string): Promise<fs.Stats>;
fileIsWritable(filePath: string): Promise<boolean>;
readFile(filePath: string): Promise<Buffer>;
writeFile(data: Buffer, filePath: string): Promise<FileService>;
}
export { fsPromise, FileService };

@@ -123,2 +123,9 @@ "use strict";

};
FileService.prototype.fileStat = function (filePath) {
return __awaiter(this, void 0, void 0, function () {
return __generator(this, function (_a) {
return [2 /*return*/, fsPromise.lstat(filePath)];
});
});
};
FileService.prototype.fileIsWritable = function (filePath) {

@@ -149,2 +156,21 @@ return __awaiter(this, void 0, void 0, function () {

};
FileService.prototype.readFile = function (filePath) {
return __awaiter(this, void 0, void 0, function () {
var fileStat;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, this.fileStat(filePath)];
case 1:
fileStat = _a.sent();
if (fileStat.isSymbolicLink()) {
return [2 /*return*/, fsPromise.readLink(filePath, { encoding: 'buffer' })];
}
else {
return [2 /*return*/, fsPromise.readFile(filePath)];
}
return [2 /*return*/];
}
});
});
};
FileService.prototype.writeFile = function (data, filePath) {

@@ -151,0 +177,0 @@ return __awaiter(this, void 0, void 0, function () {

@@ -1,1 +0,1 @@

{"version":3,"file":"FileService.js","sourceRoot":"","sources":["../src/FileService.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"FileService.js","sourceRoot":"","sources":["../src/FileService.ts"],"names":[],"mappings":"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"}

@@ -21,2 +21,3 @@ "use strict";

outputEntry: null,
quiet: false,
verbose: false,

@@ -23,0 +24,0 @@ };

@@ -1,1 +0,1 @@

{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AACA,+CAA4C;AAC5C,mDAAgD;AAEhD,IAAM,cAAc,GAAyB;IAC3C,KAAK,EAAE,KAAK;IACZ,aAAa,EAAE,EAAE;IACjB,gBAAgB,EAAE,CAAC;IACnB,WAAW,EAAE,IAAI;IACjB,OAAO,EAAE,KAAK;CACf,CAAC;AAEF;IAKE,kBAAY,OAAoC;QAApC,wBAAA,EAAA,wBAAoC;QAC9C,IAAI,CAAC,OAAO,gBAAO,cAAc,EAAK,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,YAAY,GAAG,IAAI,2BAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,cAAc,GAAG,IAAI,+BAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;IAEM,sBAAG,GAAV,UAAW,UAAoB;QAC7B,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;IAEM,0BAAO,GAAd,UAAe,UAAoB;QACjC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACjD,CAAC;IAEM,uBAAI,GAAX;QACE,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAClC,CAAC;IACH,eAAC;AAAD,CAAC,AAtBD,IAsBC;AAtBY,4BAAQ"}
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AACA,+CAA4C;AAC5C,mDAAgD;AAEhD,IAAM,cAAc,GAAyB;IAC3C,KAAK,EAAE,KAAK;IACZ,aAAa,EAAE,EAAE;IACjB,gBAAgB,EAAE,CAAC;IACnB,WAAW,EAAE,IAAI;IACjB,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,KAAK;CACf,CAAC;AAEF;IAKE,kBAAY,OAAoC;QAApC,wBAAA,EAAA,wBAAoC;QAC9C,IAAI,CAAC,OAAO,gBAAO,cAAc,EAAK,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,YAAY,GAAG,IAAI,2BAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,cAAc,GAAG,IAAI,+BAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;IAEM,sBAAG,GAAV,UAAW,UAAoB;QAC7B,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;IAEM,0BAAO,GAAd,UAAe,UAAoB;QACjC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACjD,CAAC;IAEM,uBAAI,GAAX;QACE,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAClC,CAAC;IACH,eAAC;AAAD,CAAC,AAtBD,IAsBC;AAtBY,4BAAQ"}

@@ -6,2 +6,3 @@ interface CLIOptions {

outputEntry?: string | null;
quiet?: boolean;
verbose?: boolean;

@@ -8,0 +9,0 @@ }

@@ -10,5 +10,7 @@ {

"@types/node": "10.9.4",
"@types/progress": "2.0.1",
"commander": "2.17.1",
"jszip": "3.1.5",
"logdown": "3.2.7"
"logdown": "3.2.7",
"progress": "2.0.0"
},

@@ -37,3 +39,3 @@ "description": "A zip CLI based on jszip.",

"types": "dist/index.d.ts",
"version": "1.2.2"
"version": "1.3.0"
}

@@ -18,14 +18,15 @@ # jszip-cli [![Build Status](https://api.travis-ci.org/ffflorian/jszip-cli.svg?branch=master)](https://travis-ci.org/ffflorian/jszip-cli/) [![Dependabot Status](https://api.dependabot.com/badges/status?host=github&repo=ffflorian/jszip-cli)](https://dependabot.com)

-v, --version output the version number
-l, --level <number> Specify the compression level (default: 5)
-o, --output <dir> Specify the output directory (default: stdout)
-i, --ignore <entry> Ignore a file or directory
-f, --force Force overwriting files
-V, --verbose Enable logging
-h, --help output usage information
-v, --version output the version number
-o, --output <dir> set the output directory (default: stdout)
-i, --ignore <entry> ignore a file or directory
-f, --force force overwriting files (default: false)
-l, --level <number> set the compression level (default: 5)
-V, --verbose enable verbose logging (default: false)
-q, --quiet Don't log anything (default: false)
-h, --help output usage information
Commands:
add [options] <entries...> Add files to the ZIP archive.
extract [options] <archives...> Extract files from ZIP archive(s).
add|a [options] <entries...> add files to a new ZIP archive
extract|e [options] [archives...] extract files from ZIP archive(s)
```

@@ -38,2 +39,4 @@

jszip-cli extract deploy.zip -o deployment_files/
jszip-cli add -i *.map dist/ package.json > deploy.zip
```