@ffflorian/jszip-cli
Advanced tools
| import { TerminalOptions } from './interfaces'; | ||
| declare class BuildService { | ||
| outputFile: string | null; | ||
| compressedFilesCount: number; | ||
| private readonly fileService; | ||
@@ -10,8 +12,6 @@ private readonly ignoreEntries; | ||
| private entries; | ||
| outputFile: string | null; | ||
| compressedFilesCount: number; | ||
| constructor(options: Required<TerminalOptions>); | ||
| add(rawEntries: string[]): BuildService; | ||
| save(): Promise<BuildService>; | ||
| private getBuffer; | ||
| save(): Promise<BuildService>; | ||
| private addFile; | ||
@@ -18,0 +18,0 @@ private addLink; |
+158
-286
@@ -10,38 +10,11 @@ "use strict"; | ||
| }; | ||
| var __generator = (this && this.__generator) || function (thisArg, body) { | ||
| var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; | ||
| return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; | ||
| function verb(n) { return function (v) { return step([n, v]); }; } | ||
| function step(op) { | ||
| if (f) throw new TypeError("Generator is already executing."); | ||
| while (_) try { | ||
| if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; | ||
| if (y = 0, t) op = [op[0] & 2, t.value]; | ||
| switch (op[0]) { | ||
| case 0: case 1: t = op; break; | ||
| case 4: _.label++; return { value: op[1], done: false }; | ||
| case 5: _.label++; y = op[1]; op = [0]; continue; | ||
| case 7: op = _.ops.pop(); _.trys.pop(); continue; | ||
| default: | ||
| if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } | ||
| if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } | ||
| if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } | ||
| if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } | ||
| if (t[2]) _.ops.pop(); | ||
| _.trys.pop(); continue; | ||
| } | ||
| op = body.call(thisArg, _); | ||
| } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } | ||
| if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; | ||
| } | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| var fs = require("fs-extra"); | ||
| var JSZip = require("jszip"); | ||
| var logdown = require("logdown"); | ||
| var path = require("path"); | ||
| var progress = require("progress"); | ||
| var FileService_1 = require("./FileService"); | ||
| var BuildService = /** @class */ (function () { | ||
| function BuildService(options) { | ||
| const fs = require("fs-extra"); | ||
| const JSZip = require("jszip"); | ||
| const logdown = require("logdown"); | ||
| const path = require("path"); | ||
| const progress = require("progress"); | ||
| const FileService_1 = require("./FileService"); | ||
| class BuildService { | ||
| constructor(options) { | ||
| this.fileService = new FileService_1.FileService(options); | ||
@@ -56,3 +29,3 @@ this.jszip = new JSZip(); | ||
| this.entries = []; | ||
| this.ignoreEntries = this.options.ignoreEntries.map(function (entry) { return new RegExp(entry.replace('*', '.*')); }); | ||
| this.ignoreEntries = this.options.ignoreEntries.map(entry => new RegExp(entry.replace('*', '.*'))); | ||
| this.outputFile = this.options.outputEntry ? path.resolve(this.options.outputEntry) : null; | ||
@@ -67,9 +40,9 @@ this.progressBar = new progress('Compressing [:bar] :percent :elapseds', { | ||
| } | ||
| BuildService.prototype.add = function (rawEntries) { | ||
| this.logger.info("Adding " + rawEntries.length + " entr" + (rawEntries.length === 1 ? 'y' : 'ies') + " to ZIP file."); | ||
| this.entries = rawEntries.map(function (rawEntry) { | ||
| var resolvedPath = path.resolve(rawEntry); | ||
| var baseName = path.basename(rawEntry); | ||
| add(rawEntries) { | ||
| this.logger.info(`Adding ${rawEntries.length} entr${rawEntries.length === 1 ? 'y' : 'ies'} to ZIP file.`); | ||
| this.entries = rawEntries.map(rawEntry => { | ||
| const resolvedPath = path.resolve(rawEntry); | ||
| const baseName = path.basename(rawEntry); | ||
| return { | ||
| resolvedPath: resolvedPath, | ||
| resolvedPath, | ||
| zipPath: baseName, | ||
@@ -79,7 +52,24 @@ }; | ||
| return this; | ||
| }; | ||
| BuildService.prototype.getBuffer = function () { | ||
| var _this = this; | ||
| var compressionType = this.options.compressionLevel === 0 ? 'STORE' : 'DEFLATE'; | ||
| var lastPercent = 0; | ||
| } | ||
| save() { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| yield this.checkOutput(); | ||
| yield Promise.all(this.entries.map(entry => this.checkEntry(entry))); | ||
| const data = yield this.getBuffer(); | ||
| if (this.outputFile) { | ||
| if (!this.outputFile.match(/\.\w+$/)) { | ||
| this.outputFile = path.join(this.outputFile, 'data.zip'); | ||
| } | ||
| this.logger.info(`Saving finished zip file to "${this.outputFile}" ...`); | ||
| yield this.fileService.writeFile(data, this.outputFile); | ||
| } | ||
| else { | ||
| process.stdout.write(data); | ||
| } | ||
| return this; | ||
| }); | ||
| } | ||
| getBuffer() { | ||
| const compressionType = this.options.compressionLevel === 0 ? 'STORE' : 'DEFLATE'; | ||
| let lastPercent = 0; | ||
| return this.jszip.generateAsync({ | ||
@@ -91,256 +81,138 @@ compression: compressionType, | ||
| 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); | ||
| }, ({ percent }) => { | ||
| const diff = Math.floor(percent) - Math.floor(lastPercent); | ||
| if (diff && !this.options.quiet) { | ||
| this.progressBar.tick(diff); | ||
| lastPercent = Math.floor(percent); | ||
| } | ||
| }); | ||
| }; | ||
| BuildService.prototype.save = function () { | ||
| return __awaiter(this, void 0, void 0, function () { | ||
| var data; | ||
| var _this = this; | ||
| return __generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: return [4 /*yield*/, this.checkOutput()]; | ||
| case 1: | ||
| _a.sent(); | ||
| return [4 /*yield*/, Promise.all(this.entries.map(function (entry) { return _this.checkEntry(entry); }))]; | ||
| case 2: | ||
| _a.sent(); | ||
| return [4 /*yield*/, this.getBuffer()]; | ||
| case 3: | ||
| data = _a.sent(); | ||
| if (!this.outputFile) return [3 /*break*/, 5]; | ||
| if (!this.outputFile.match(/\.\w+$/)) { | ||
| this.outputFile = path.join(this.outputFile, 'data.zip'); | ||
| } | ||
| this.logger.info("Saving finished zip file to \"" + this.outputFile + "\" ..."); | ||
| return [4 /*yield*/, this.fileService.writeFile(data, this.outputFile)]; | ||
| case 4: | ||
| _a.sent(); | ||
| return [3 /*break*/, 6]; | ||
| case 5: | ||
| process.stdout.write(data); | ||
| _a.label = 6; | ||
| case 6: return [2 /*return*/, this]; | ||
| } | ||
| addFile(entry, isLink = false) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| const { resolvedPath, zipPath } = entry; | ||
| let fileStat; | ||
| let fileData; | ||
| try { | ||
| fileData = isLink ? yield fs.readlink(resolvedPath) : yield fs.readFile(resolvedPath); | ||
| fileStat = yield fs.lstat(resolvedPath); | ||
| } | ||
| catch (error) { | ||
| if (!this.options.quiet) { | ||
| console.info(`Can't read file "${entry.resolvedPath}". Ignoring.`); | ||
| } | ||
| this.logger.info(error); | ||
| return; | ||
| } | ||
| this.logger.info(`Adding file "${resolvedPath}" to ZIP file ...`); | ||
| yield this.jszip.file(zipPath, fileData, { | ||
| createFolders: true, | ||
| date: fileStat.mtime, | ||
| //dosPermissions: fileStat.mode, | ||
| unixPermissions: fileStat.mode, | ||
| }); | ||
| this.compressedFilesCount++; | ||
| }); | ||
| }; | ||
| BuildService.prototype.addFile = function (entry, isLink) { | ||
| if (isLink === void 0) { isLink = false; } | ||
| return __awaiter(this, void 0, void 0, function () { | ||
| var resolvedPath, zipPath, fileStat, fileData, _a, error_1; | ||
| return __generator(this, function (_b) { | ||
| switch (_b.label) { | ||
| case 0: | ||
| resolvedPath = entry.resolvedPath, zipPath = entry.zipPath; | ||
| _b.label = 1; | ||
| case 1: | ||
| _b.trys.push([1, 7, , 8]); | ||
| if (!isLink) return [3 /*break*/, 3]; | ||
| return [4 /*yield*/, fs.readlink(resolvedPath)]; | ||
| case 2: | ||
| _a = _b.sent(); | ||
| return [3 /*break*/, 5]; | ||
| case 3: return [4 /*yield*/, fs.readFile(resolvedPath)]; | ||
| case 4: | ||
| _a = _b.sent(); | ||
| _b.label = 5; | ||
| case 5: | ||
| fileData = _a; | ||
| return [4 /*yield*/, fs.lstat(resolvedPath)]; | ||
| case 6: | ||
| fileStat = _b.sent(); | ||
| return [3 /*break*/, 8]; | ||
| case 7: | ||
| error_1 = _b.sent(); | ||
| if (!this.options.quiet) { | ||
| console.info("Can't read file \"" + entry.resolvedPath + "\". Ignoring."); | ||
| } | ||
| this.logger.info(error_1); | ||
| return [2 /*return*/]; | ||
| case 8: | ||
| this.logger.info("Adding file \"" + resolvedPath + "\" to ZIP file ..."); | ||
| return [4 /*yield*/, this.jszip.file(zipPath, fileData, { | ||
| createFolders: true, | ||
| date: fileStat.mtime, | ||
| //dosPermissions: fileStat.mode, | ||
| unixPermissions: fileStat.mode, | ||
| })]; | ||
| case 9: | ||
| _b.sent(); | ||
| this.compressedFilesCount++; | ||
| return [2 /*return*/]; | ||
| } | ||
| addLink(entry) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| const { resolvedPath, zipPath } = entry; | ||
| if (this.options.dereferenceLinks) { | ||
| let realPath; | ||
| try { | ||
| realPath = yield fs.realpath(resolvedPath); | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| BuildService.prototype.addLink = function (entry) { | ||
| return __awaiter(this, void 0, void 0, function () { | ||
| var resolvedPath, zipPath, realPath, error_2; | ||
| return __generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| resolvedPath = entry.resolvedPath, zipPath = entry.zipPath; | ||
| if (!this.options.dereferenceLinks) return [3 /*break*/, 6]; | ||
| realPath = void 0; | ||
| _a.label = 1; | ||
| case 1: | ||
| _a.trys.push([1, 3, , 4]); | ||
| return [4 /*yield*/, fs.realpath(resolvedPath)]; | ||
| case 2: | ||
| realPath = _a.sent(); | ||
| return [3 /*break*/, 4]; | ||
| case 3: | ||
| error_2 = _a.sent(); | ||
| if (!this.options.quiet) { | ||
| console.info("Can't read link \"" + entry.resolvedPath + "\". Ignoring."); | ||
| } | ||
| this.logger.info(error_2); | ||
| return [2 /*return*/]; | ||
| case 4: | ||
| this.logger.info("Found real path \"" + realPath + " for symbolic link\"."); | ||
| return [4 /*yield*/, this.checkEntry({ | ||
| resolvedPath: realPath, | ||
| zipPath: zipPath, | ||
| })]; | ||
| case 5: | ||
| _a.sent(); | ||
| return [3 /*break*/, 8]; | ||
| case 6: return [4 /*yield*/, this.addFile(entry, true)]; | ||
| case 7: | ||
| _a.sent(); | ||
| _a.label = 8; | ||
| case 8: return [2 /*return*/]; | ||
| catch (error) { | ||
| if (!this.options.quiet) { | ||
| console.info(`Can't read link "${entry.resolvedPath}". Ignoring.`); | ||
| } | ||
| this.logger.info(error); | ||
| return; | ||
| } | ||
| }); | ||
| this.logger.info(`Found real path "${realPath} for symbolic link".`); | ||
| yield this.checkEntry({ | ||
| resolvedPath: realPath, | ||
| zipPath, | ||
| }); | ||
| } | ||
| else { | ||
| yield this.addFile(entry, true); | ||
| } | ||
| }); | ||
| }; | ||
| BuildService.prototype.checkEntry = function (entry) { | ||
| return __awaiter(this, void 0, void 0, function () { | ||
| var fileStat, error_3, ignoreEntries; | ||
| return __generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| _a.trys.push([0, 2, , 3]); | ||
| return [4 /*yield*/, fs.lstat(entry.resolvedPath)]; | ||
| case 1: | ||
| fileStat = _a.sent(); | ||
| return [3 /*break*/, 3]; | ||
| case 2: | ||
| error_3 = _a.sent(); | ||
| if (!this.options.quiet) { | ||
| console.info("Can't read file \"" + entry.resolvedPath + "\". Ignoring."); | ||
| } | ||
| this.logger.info(error_3); | ||
| return [2 /*return*/]; | ||
| case 3: | ||
| ignoreEntries = this.ignoreEntries.filter(function (ignoreEntry) { return Boolean(entry.resolvedPath.match(ignoreEntry)); }); | ||
| if (ignoreEntries.length) { | ||
| this.logger.info("Found " + entry.resolvedPath + ". Not adding since it's on the ignore list:", ignoreEntries.map(function (entry) { return String(entry); })); | ||
| return [2 /*return*/]; | ||
| } | ||
| if (!fileStat.isDirectory()) return [3 /*break*/, 5]; | ||
| this.logger.info("Found directory \"" + entry.resolvedPath + "\"."); | ||
| return [4 /*yield*/, this.walkDir(entry)]; | ||
| case 4: | ||
| _a.sent(); | ||
| return [3 /*break*/, 10]; | ||
| case 5: | ||
| if (!fileStat.isFile()) return [3 /*break*/, 7]; | ||
| this.logger.info("Found file \"" + entry.resolvedPath + "\"."); | ||
| return [4 /*yield*/, this.addFile(entry)]; | ||
| case 6: | ||
| _a.sent(); | ||
| return [3 /*break*/, 10]; | ||
| case 7: | ||
| if (!fileStat.isSymbolicLink()) return [3 /*break*/, 9]; | ||
| this.logger.info("Found symbolic link \"" + entry.resolvedPath + "\"."); | ||
| return [4 /*yield*/, this.addLink(entry)]; | ||
| case 8: | ||
| _a.sent(); | ||
| return [3 /*break*/, 10]; | ||
| case 9: | ||
| this.logger.info("Unknown file type.", { fileStat: fileStat }); | ||
| if (!this.options.quiet) { | ||
| console.info("Can't read file \"" + entry.resolvedPath + "\". Ignoring."); | ||
| } | ||
| _a.label = 10; | ||
| case 10: return [2 /*return*/]; | ||
| } | ||
| checkEntry(entry) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| let fileStat; | ||
| try { | ||
| fileStat = yield fs.lstat(entry.resolvedPath); | ||
| } | ||
| catch (error) { | ||
| if (!this.options.quiet) { | ||
| console.info(`Can't read file "${entry.resolvedPath}". Ignoring.`); | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| BuildService.prototype.checkOutput = function () { | ||
| return __awaiter(this, void 0, void 0, function () { | ||
| var dirExists, fileIsWritable, dirExists; | ||
| return __generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| 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.outputFile) + "\" doesn't exist or is not writable."); | ||
| } | ||
| return [4 /*yield*/, this.fileService.fileIsWritable(this.outputFile)]; | ||
| case 2: | ||
| fileIsWritable = _a.sent(); | ||
| if (!fileIsWritable) { | ||
| throw new Error("File \"" + this.outputFile + "\" already exists."); | ||
| } | ||
| return [3 /*break*/, 5]; | ||
| case 3: return [4 /*yield*/, this.fileService.dirExists(this.outputFile)]; | ||
| case 4: | ||
| dirExists = _a.sent(); | ||
| if (!dirExists) { | ||
| throw new Error("Directory \"" + this.outputFile + "\" doesn't exist or is not writable."); | ||
| } | ||
| _a.label = 5; | ||
| case 5: return [2 /*return*/]; | ||
| this.logger.info(error); | ||
| return; | ||
| } | ||
| const ignoreEntries = this.ignoreEntries.filter(ignoreEntry => Boolean(entry.resolvedPath.match(ignoreEntry))); | ||
| if (ignoreEntries.length) { | ||
| this.logger.info(`Found ${entry.resolvedPath}. Not adding since it's on the ignore list:`, ignoreEntries.map(entry => String(entry))); | ||
| return; | ||
| } | ||
| if (fileStat.isDirectory()) { | ||
| this.logger.info(`Found directory "${entry.resolvedPath}".`); | ||
| yield this.walkDir(entry); | ||
| } | ||
| else if (fileStat.isFile()) { | ||
| this.logger.info(`Found file "${entry.resolvedPath}".`); | ||
| yield this.addFile(entry); | ||
| } | ||
| else if (fileStat.isSymbolicLink()) { | ||
| this.logger.info(`Found symbolic link "${entry.resolvedPath}".`); | ||
| yield this.addLink(entry); | ||
| } | ||
| else { | ||
| this.logger.info(`Unknown file type.`, { fileStat }); | ||
| if (!this.options.quiet) { | ||
| console.info(`Can't read file "${entry.resolvedPath}". Ignoring.`); | ||
| } | ||
| }); | ||
| } | ||
| }); | ||
| }; | ||
| BuildService.prototype.walkDir = function (entry) { | ||
| return __awaiter(this, void 0, void 0, function () { | ||
| var dirEntries, _i, dirEntries_1, dirEntry, newZipPath, newResolvedPath; | ||
| return __generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| this.logger.info("Walking directory " + entry.resolvedPath + " ..."); | ||
| return [4 /*yield*/, fs.readdir(entry.resolvedPath)]; | ||
| case 1: | ||
| dirEntries = _a.sent(); | ||
| _i = 0, dirEntries_1 = dirEntries; | ||
| _a.label = 2; | ||
| case 2: | ||
| if (!(_i < dirEntries_1.length)) return [3 /*break*/, 5]; | ||
| dirEntry = dirEntries_1[_i]; | ||
| newZipPath = entry.zipPath + "/" + dirEntry; | ||
| newResolvedPath = path.join(entry.resolvedPath, dirEntry); | ||
| return [4 /*yield*/, this.checkEntry({ | ||
| resolvedPath: newResolvedPath, | ||
| zipPath: newZipPath, | ||
| })]; | ||
| case 3: | ||
| _a.sent(); | ||
| _a.label = 4; | ||
| case 4: | ||
| _i++; | ||
| return [3 /*break*/, 2]; | ||
| case 5: return [2 /*return*/]; | ||
| } | ||
| checkOutput() { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| if (this.outputFile) { | ||
| if (this.outputFile.match(/\.\w+$/)) { | ||
| const dirExists = yield this.fileService.dirExists(path.dirname(this.outputFile)); | ||
| if (!dirExists) { | ||
| throw new Error(`Directory "${path.dirname(this.outputFile)}" doesn't exist or is not writable.`); | ||
| } | ||
| const fileIsWritable = yield this.fileService.fileIsWritable(this.outputFile); | ||
| if (!fileIsWritable) { | ||
| throw new Error(`File "${this.outputFile}" already exists.`); | ||
| } | ||
| } | ||
| }); | ||
| else { | ||
| const dirExists = yield this.fileService.dirExists(this.outputFile); | ||
| if (!dirExists) { | ||
| throw new Error(`Directory "${this.outputFile}" doesn't exist or is not writable.`); | ||
| } | ||
| } | ||
| } | ||
| }); | ||
| }; | ||
| return BuildService; | ||
| }()); | ||
| } | ||
| walkDir(entry) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| this.logger.info(`Walking directory ${entry.resolvedPath} ...`); | ||
| const dirEntries = yield fs.readdir(entry.resolvedPath); | ||
| for (const dirEntry of dirEntries) { | ||
| const newZipPath = `${entry.zipPath}/${dirEntry}`; | ||
| const newResolvedPath = path.join(entry.resolvedPath, dirEntry); | ||
| yield this.checkEntry({ | ||
| resolvedPath: newResolvedPath, | ||
| zipPath: newZipPath, | ||
| }); | ||
| } | ||
| }); | ||
| } | ||
| } | ||
| exports.BuildService = BuildService; | ||
| //# sourceMappingURL=BuildService.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"BuildService.js","sourceRoot":"","sources":["../src/BuildService.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"BuildService.js","sourceRoot":"","sources":["../src/BuildService.ts"],"names":[],"mappings":"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"} |
+6
-0
@@ -0,1 +1,7 @@ | ||
| ## [2.3.1](https://github.com/ffflorian/jszip-cli/compare/v2.3.0...v2.3.1) (2019-06-13) | ||
| ### Bug Fixes | ||
| - package.json path in CLI ([ad5eea9](https://github.com/ffflorian/jszip-cli/commit/ad5eea9)) | ||
| # [2.3.0](https://github.com/ffflorian/jszip-cli/compare/v2.2.0...v2.3.0) (2019-06-12) | ||
@@ -2,0 +8,0 @@ |
+30
-45
| #!/usr/bin/env node | ||
| "use strict"; | ||
| var __assign = (this && this.__assign) || function () { | ||
| __assign = Object.assign || function(t) { | ||
| for (var s, i = 1, n = arguments.length; i < n; i++) { | ||
| s = arguments[i]; | ||
| for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) | ||
| t[p] = s[p]; | ||
| } | ||
| return t; | ||
| }; | ||
| return __assign.apply(this, arguments); | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| var program = require("commander"); | ||
| var fs = require("fs-extra"); | ||
| var path = require("path"); | ||
| var JSZipCLI_1 = require("./JSZipCLI"); | ||
| var defaultPackageJsonPath = path.join(__dirname, 'package.json'); | ||
| var packageJsonPath = fs.existsSync(defaultPackageJsonPath) | ||
| const program = require("commander"); | ||
| const fs = require("fs-extra"); | ||
| const path = require("path"); | ||
| const JSZipCLI_1 = require("./JSZipCLI"); | ||
| const defaultPackageJsonPath = path.join(__dirname, 'package.json'); | ||
| const packageJsonPath = fs.existsSync(defaultPackageJsonPath) | ||
| ? defaultPackageJsonPath | ||
| : path.join(__dirname, '../package.json'); | ||
| var _a = fs.readJSONSync(packageJsonPath), description = _a.description, name = _a.name, version = _a.version; | ||
| const { description, name, version } = fs.readJSONSync(packageJsonPath); | ||
| program | ||
| .name(name.replace(/^@[^/]+\//, '')) | ||
| .description(description) | ||
| .option('--noconfig', "don't look for a configuration file") | ||
| .option('-c, --config <path>', "use a configuration file (default: .jsziprc.json)") | ||
| .option('--noconfig', `don't look for a configuration file`) | ||
| .option('-c, --config <path>', `use a configuration file (default: .jsziprc.json)`) | ||
| .option('-o, --output <dir>', 'set the output directory (default: stdout)') | ||
@@ -35,6 +24,6 @@ .option('-i, --ignore <entry>', 'ignore a file or directory') | ||
| .option('-V, --verbose', 'enable verbose logging (default: false)') | ||
| .option('-q, --quiet', "don't log anything (default: false)") | ||
| .option('-q, --quiet', `don't log anything (default: false)`) | ||
| .version(version, '-v, --version') | ||
| .on('command:*', function (args) { | ||
| console.error("\n error: invalid command `" + args[0] + "'\n"); | ||
| .on('command:*', args => { | ||
| console.error(`\n error: invalid command \`${args[0]}'\n`); | ||
| process.exit(1); | ||
@@ -46,4 +35,4 @@ }); | ||
| .description('add files and directories to a new ZIP archive') | ||
| .option('--noconfig', "don't look for a configuration file") | ||
| .option('-c, --config <path>', "use a configuration file (default: .jsziprc.json)") | ||
| .option('--noconfig', `don't look for a configuration file`) | ||
| .option('-c, --config <path>', `use a configuration file (default: .jsziprc.json)`) | ||
| .option('-o, --output <dir>', 'set the output directory (default: stdout)') | ||
@@ -55,17 +44,15 @@ .option('-i, --ignore <entry>', 'ignore a file or directory') | ||
| .option('-V, --verbose', 'enable verbose logging (default: false)') | ||
| .option('-q, --quiet', "don't log anything excluding errors (default: false)") | ||
| .option('-q, --quiet', `don't log anything excluding errors (default: false)`) | ||
| .arguments('[entries...]') | ||
| .action(function (entries, _a) { | ||
| var parent = _a.parent; | ||
| .action((entries, { parent }) => { | ||
| try { | ||
| new JSZipCLI_1.JSZipCLI(__assign({}, (parent.level && { compressionLevel: parent.level }), ((parent.config && { configFile: parent.config }) || (parent.noconfig && { configFile: false })), (parent.dereference && { dereferenceLinks: parent.dereference }), (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 }))) | ||
| new JSZipCLI_1.JSZipCLI(Object.assign({}, (parent.level && { compressionLevel: parent.level }), ((parent.config && { configFile: parent.config }) || (parent.noconfig && { configFile: false })), (parent.dereference && { dereferenceLinks: parent.dereference }), (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 }))) | ||
| .add(entries) | ||
| .save() | ||
| .then(function (_a) { | ||
| var outputFile = _a.outputFile, compressedFilesCount = _a.compressedFilesCount; | ||
| .then(({ outputFile, compressedFilesCount }) => { | ||
| if (parent.output && !parent.quiet) { | ||
| console.log("Done compressing " + compressedFilesCount + " files to \"" + outputFile + "\"."); | ||
| console.log(`Done compressing ${compressedFilesCount} files to "${outputFile}".`); | ||
| } | ||
| }) | ||
| .catch(function (error) { | ||
| .catch(error => { | ||
| console.error('Error:', error.message); | ||
@@ -84,4 +71,4 @@ process.exit(1); | ||
| .description('extract files and directories from ZIP archive(s)') | ||
| .option('--noconfig', "don't look for a configuration file", false) | ||
| .option('-c, --config <path>', "use a configuration file (default: .jsziprc.json)") | ||
| .option('--noconfig', `don't look for a configuration file`, false) | ||
| .option('-c, --config <path>', `use a configuration file (default: .jsziprc.json)`) | ||
| .option('-o, --output <dir>', 'set the output directory (default: stdout)') | ||
@@ -91,16 +78,14 @@ .option('-i, --ignore <entry>', 'ignore a file or directory') | ||
| .option('-V, --verbose', 'enable verbose logging (default: false)') | ||
| .option('-q, --quiet', "don't log anything excluding errors (default: false)") | ||
| .option('-q, --quiet', `don't log anything excluding errors (default: false)`) | ||
| .arguments('<archives...>') | ||
| .action(function (archives, _a) { | ||
| var parent = _a.parent; | ||
| .action((archives, { parent }) => { | ||
| try { | ||
| new JSZipCLI_1.JSZipCLI(__assign({}, ((parent.config && { configFile: parent.config }) || (parent.noconfig && { configFile: false })), (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 }))) | ||
| new JSZipCLI_1.JSZipCLI(Object.assign({}, ((parent.config && { configFile: parent.config }) || (parent.noconfig && { configFile: false })), (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; | ||
| .then(({ outputDir, extractedFilesCount }) => { | ||
| if (parent.output && !parent.quiet) { | ||
| console.log("Done extracting " + extractedFilesCount + " files to \"" + outputDir + "\"."); | ||
| console.log(`Done extracting ${extractedFilesCount} files to "${outputDir}".`); | ||
| } | ||
| }) | ||
| .catch(function (error) { | ||
| .catch(error => { | ||
| console.error('Error:', error.message); | ||
@@ -122,5 +107,5 @@ process.exit(1); | ||
| try { | ||
| new JSZipCLI_1.JSZipCLI(__assign({ configFile: program.config || true }, (program.force && { force: program.force }), (program.ignore && { ignoreEntries: [program.ignore] }), (program.output && { outputEntry: program.output }), (program.quiet && { quiet: program.quiet }), (program.verbose && { verbose: program.verbose }))) | ||
| new JSZipCLI_1.JSZipCLI(Object.assign({ configFile: program.config || true }, (program.force && { force: program.force }), (program.ignore && { ignoreEntries: [program.ignore] }), (program.output && { outputEntry: program.output }), (program.quiet && { quiet: program.quiet }), (program.verbose && { verbose: program.verbose }))) | ||
| .fileMode() | ||
| .catch(function (error) { | ||
| .catch(error => { | ||
| console.error('Error:', error.message); | ||
@@ -127,0 +112,0 @@ process.exit(1); |
+1
-1
@@ -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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"} |
| import { TerminalOptions } from './interfaces'; | ||
| declare class ExtractService { | ||
| outputDir: string | null; | ||
| extractedFilesCount: number; | ||
| private readonly logger; | ||
| private readonly options; | ||
| private readonly progressBar; | ||
| outputDir: string | null; | ||
| extractedFilesCount: number; | ||
| constructor(options: Required<TerminalOptions>); | ||
@@ -9,0 +9,0 @@ extract(rawEntries: string[]): Promise<ExtractService>; |
+57
-155
@@ -10,38 +10,11 @@ "use strict"; | ||
| }; | ||
| var __generator = (this && this.__generator) || function (thisArg, body) { | ||
| var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; | ||
| return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; | ||
| function verb(n) { return function (v) { return step([n, v]); }; } | ||
| function step(op) { | ||
| if (f) throw new TypeError("Generator is already executing."); | ||
| while (_) try { | ||
| if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; | ||
| if (y = 0, t) op = [op[0] & 2, t.value]; | ||
| switch (op[0]) { | ||
| case 0: case 1: t = op; break; | ||
| case 4: _.label++; return { value: op[1], done: false }; | ||
| case 5: _.label++; y = op[1]; op = [0]; continue; | ||
| case 7: op = _.ops.pop(); _.trys.pop(); continue; | ||
| default: | ||
| if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } | ||
| if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } | ||
| if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } | ||
| if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } | ||
| if (t[2]) _.ops.pop(); | ||
| _.trys.pop(); continue; | ||
| } | ||
| op = body.call(thisArg, _); | ||
| } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } | ||
| if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; | ||
| } | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| var fs = require("fs-extra"); | ||
| var JSZip = require("jszip"); | ||
| var logdown = require("logdown"); | ||
| var os = require("os"); | ||
| var path = require("path"); | ||
| var progress = require("progress"); | ||
| var ExtractService = /** @class */ (function () { | ||
| function ExtractService(options) { | ||
| const fs = require("fs-extra"); | ||
| const JSZip = require("jszip"); | ||
| const logdown = require("logdown"); | ||
| const os = require("os"); | ||
| const path = require("path"); | ||
| const progress = require("progress"); | ||
| class ExtractService { | ||
| constructor(options) { | ||
| this.options = options; | ||
@@ -62,128 +35,57 @@ this.logger = logdown('jszip-cli/ExtractService', { | ||
| } | ||
| ExtractService.prototype.extract = function (rawEntries) { | ||
| return __awaiter(this, void 0, void 0, function () { | ||
| var isWin32, _loop_1, this_1, _i, rawEntries_1, entry, state_1; | ||
| var _this = this; | ||
| return __generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| isWin32 = os.platform() === 'win32'; | ||
| _loop_1 = function (entry) { | ||
| var jszip, resolvedPath, data, entries, lastPercent; | ||
| return __generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| jszip = new JSZip(); | ||
| if (!this_1.outputDir) return [3 /*break*/, 2]; | ||
| return [4 /*yield*/, fs.ensureDir(this_1.outputDir)]; | ||
| case 1: | ||
| _a.sent(); | ||
| _a.label = 2; | ||
| case 2: | ||
| resolvedPath = path.resolve(entry); | ||
| return [4 /*yield*/, fs.readFile(resolvedPath)]; | ||
| case 3: | ||
| data = _a.sent(); | ||
| entries = []; | ||
| return [4 /*yield*/, jszip.loadAsync(data, { createFolders: true })]; | ||
| case 4: | ||
| _a.sent(); | ||
| if (!!this_1.outputDir) return [3 /*break*/, 6]; | ||
| return [4 /*yield*/, this_1.printStream(jszip.generateNodeStream())]; | ||
| case 5: | ||
| _a.sent(); | ||
| return [2 /*return*/, { value: this_1 }]; | ||
| case 6: | ||
| jszip.forEach(function (filePath, entry) { return entries.push([filePath, entry]); }); | ||
| 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, diff, _b, _c; | ||
| return __generator(this, function (_d) { | ||
| switch (_d.label) { | ||
| case 0: | ||
| resolvedFilePath = path.join(this.outputDir, filePath); | ||
| if (!entry.dir) return [3 /*break*/, 2]; | ||
| return [4 /*yield*/, fs.ensureDir(resolvedFilePath)]; | ||
| case 1: | ||
| _d.sent(); | ||
| return [3 /*break*/, 5]; | ||
| case 2: return [4 /*yield*/, entry.async('nodebuffer')]; | ||
| case 3: | ||
| data_1 = _d.sent(); | ||
| return [4 /*yield*/, fs.writeFile(resolvedFilePath, data_1, { | ||
| encoding: 'utf-8', | ||
| })]; | ||
| case 4: | ||
| _d.sent(); | ||
| 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); | ||
| } | ||
| _d.label = 5; | ||
| case 5: | ||
| if (!isWin32) return [3 /*break*/, 8]; | ||
| _b = entry.dosPermissions; | ||
| if (!_b) return [3 /*break*/, 7]; | ||
| return [4 /*yield*/, fs.chmod(resolvedFilePath, entry.dosPermissions)]; | ||
| case 6: | ||
| _b = (_d.sent()); | ||
| _d.label = 7; | ||
| case 7: | ||
| _b; | ||
| return [3 /*break*/, 11]; | ||
| case 8: | ||
| _c = entry.unixPermissions; | ||
| if (!_c) return [3 /*break*/, 10]; | ||
| return [4 /*yield*/, fs.chmod(resolvedFilePath, entry.unixPermissions)]; | ||
| case 9: | ||
| _c = (_d.sent()); | ||
| _d.label = 10; | ||
| case 10: | ||
| _c; | ||
| _d.label = 11; | ||
| case 11: return [2 /*return*/]; | ||
| } | ||
| }); | ||
| }); | ||
| }))]; | ||
| case 7: | ||
| _a.sent(); | ||
| return [2 /*return*/]; | ||
| } | ||
| }); | ||
| }; | ||
| this_1 = this; | ||
| _i = 0, rawEntries_1 = rawEntries; | ||
| _a.label = 1; | ||
| case 1: | ||
| if (!(_i < rawEntries_1.length)) return [3 /*break*/, 4]; | ||
| entry = rawEntries_1[_i]; | ||
| return [5 /*yield**/, _loop_1(entry)]; | ||
| case 2: | ||
| state_1 = _a.sent(); | ||
| if (typeof state_1 === "object") | ||
| return [2 /*return*/, state_1.value]; | ||
| _a.label = 3; | ||
| case 3: | ||
| _i++; | ||
| return [3 /*break*/, 1]; | ||
| case 4: return [2 /*return*/, this]; | ||
| extract(rawEntries) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| const isWin32 = os.platform() === 'win32'; | ||
| for (const entry of rawEntries) { | ||
| const jszip = new JSZip(); | ||
| if (this.outputDir) { | ||
| yield fs.ensureDir(this.outputDir); | ||
| } | ||
| }); | ||
| const resolvedPath = path.resolve(entry); | ||
| const data = yield fs.readFile(resolvedPath); | ||
| const entries = []; | ||
| yield jszip.loadAsync(data, { createFolders: true }); | ||
| if (!this.outputDir) { | ||
| yield this.printStream(jszip.generateNodeStream()); | ||
| return this; | ||
| } | ||
| jszip.forEach((filePath, entry) => entries.push([filePath, entry])); | ||
| let lastPercent = 0; | ||
| yield Promise.all(entries.map(([filePath, entry], index) => __awaiter(this, void 0, void 0, function* () { | ||
| const resolvedFilePath = path.join(this.outputDir, filePath); | ||
| if (entry.dir) { | ||
| yield fs.ensureDir(resolvedFilePath); | ||
| } | ||
| else { | ||
| const data = yield entry.async('nodebuffer'); | ||
| yield fs.writeFile(resolvedFilePath, data, { | ||
| encoding: 'utf-8', | ||
| }); | ||
| this.extractedFilesCount++; | ||
| const diff = Math.floor(index / entries.length) - Math.floor(lastPercent); | ||
| if (diff && !this.options.quiet) { | ||
| this.progressBar.tick(diff); | ||
| lastPercent = Math.floor(index / entries.length); | ||
| } | ||
| } | ||
| if (isWin32) { | ||
| entry.dosPermissions && (yield fs.chmod(resolvedFilePath, entry.dosPermissions)); | ||
| } | ||
| else { | ||
| entry.unixPermissions && (yield fs.chmod(resolvedFilePath, entry.unixPermissions)); | ||
| } | ||
| }))); | ||
| } | ||
| return this; | ||
| }); | ||
| }; | ||
| ExtractService.prototype.printStream = function (fileStream) { | ||
| return new Promise(function (resolve, reject) { | ||
| var stream = fileStream.pipe(process.stdout); | ||
| } | ||
| printStream(fileStream) { | ||
| return new Promise((resolve, reject) => { | ||
| const stream = fileStream.pipe(process.stdout); | ||
| stream.on('finish', resolve); | ||
| stream.on('error', reject); | ||
| }); | ||
| }; | ||
| return ExtractService; | ||
| }()); | ||
| } | ||
| } | ||
| exports.ExtractService = ExtractService; | ||
| //# sourceMappingURL=ExtractService.js.map |
@@ -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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"} |
+64
-132
@@ -10,35 +10,8 @@ "use strict"; | ||
| }; | ||
| var __generator = (this && this.__generator) || function (thisArg, body) { | ||
| var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; | ||
| return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; | ||
| function verb(n) { return function (v) { return step([n, v]); }; } | ||
| function step(op) { | ||
| if (f) throw new TypeError("Generator is already executing."); | ||
| while (_) try { | ||
| if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; | ||
| if (y = 0, t) op = [op[0] & 2, t.value]; | ||
| switch (op[0]) { | ||
| case 0: case 1: t = op; break; | ||
| case 4: _.label++; return { value: op[1], done: false }; | ||
| case 5: _.label++; y = op[1]; op = [0]; continue; | ||
| case 7: op = _.ops.pop(); _.trys.pop(); continue; | ||
| default: | ||
| if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } | ||
| if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } | ||
| if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } | ||
| if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } | ||
| if (t[2]) _.ops.pop(); | ||
| _.trys.pop(); continue; | ||
| } | ||
| op = body.call(thisArg, _); | ||
| } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } | ||
| if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; | ||
| } | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| var fs = require("fs-extra"); | ||
| var logdown = require("logdown"); | ||
| var path = require("path"); | ||
| var FileService = /** @class */ (function () { | ||
| function FileService(options) { | ||
| const fs = require("fs-extra"); | ||
| const logdown = require("logdown"); | ||
| const path = require("path"); | ||
| class FileService { | ||
| constructor(options) { | ||
| this.options = options; | ||
@@ -51,110 +24,69 @@ this.logger = logdown('jszip-cli/FileService', { | ||
| } | ||
| FileService.prototype.dirExists = function (dirPath) { | ||
| return __awaiter(this, void 0, void 0, function () { | ||
| var error_1, error_2; | ||
| return __generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| _a.trys.push([0, 6, , 9]); | ||
| return [4 /*yield*/, fs.access(dirPath, fs.constants.F_OK)]; | ||
| case 1: | ||
| _a.sent(); | ||
| _a.label = 2; | ||
| case 2: | ||
| _a.trys.push([2, 4, , 5]); | ||
| return [4 /*yield*/, fs.access(dirPath, fs.constants.W_OK)]; | ||
| case 3: | ||
| _a.sent(); | ||
| return [2 /*return*/, true]; | ||
| case 4: | ||
| error_1 = _a.sent(); | ||
| this.logger.info("Directory \"" + dirPath + "\" exists but is not writable."); | ||
| return [2 /*return*/, false]; | ||
| case 5: return [3 /*break*/, 9]; | ||
| case 6: | ||
| error_2 = _a.sent(); | ||
| this.logger.info("Directory \"" + dirPath + "\" doesn't exist.", this.options.force ? 'Creating.' : 'Not creating.'); | ||
| if (!this.options.force) return [3 /*break*/, 8]; | ||
| return [4 /*yield*/, fs.ensureDir(dirPath)]; | ||
| case 7: | ||
| _a.sent(); | ||
| return [2 /*return*/, true]; | ||
| case 8: return [2 /*return*/, false]; | ||
| case 9: return [2 /*return*/]; | ||
| dirExists(dirPath) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| try { | ||
| yield fs.access(dirPath, fs.constants.F_OK); | ||
| try { | ||
| yield fs.access(dirPath, fs.constants.W_OK); | ||
| return true; | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| FileService.prototype.fileIsReadable = function (filePath) { | ||
| return __awaiter(this, void 0, void 0, function () { | ||
| var dirExists, error_3; | ||
| return __generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: return [4 /*yield*/, this.dirExists(path.dirname(filePath))]; | ||
| case 1: | ||
| dirExists = _a.sent(); | ||
| if (!dirExists) return [3 /*break*/, 5]; | ||
| _a.label = 2; | ||
| case 2: | ||
| _a.trys.push([2, 4, , 5]); | ||
| return [4 /*yield*/, fs.access(filePath, fs.constants.F_OK | fs.constants.R_OK)]; | ||
| case 3: | ||
| _a.sent(); | ||
| return [2 /*return*/, true]; | ||
| case 4: | ||
| error_3 = _a.sent(); | ||
| return [2 /*return*/, false]; | ||
| case 5: return [2 /*return*/, false]; | ||
| catch (error) { | ||
| this.logger.info(`Directory "${dirPath}" exists but is not writable.`); | ||
| return false; | ||
| } | ||
| }); | ||
| } | ||
| catch (error) { | ||
| this.logger.info(`Directory "${dirPath}" doesn't exist.`, this.options.force ? 'Creating.' : 'Not creating.'); | ||
| if (this.options.force) { | ||
| yield fs.ensureDir(dirPath); | ||
| return true; | ||
| } | ||
| return false; | ||
| } | ||
| }); | ||
| }; | ||
| FileService.prototype.fileIsWritable = function (filePath) { | ||
| return __awaiter(this, void 0, void 0, function () { | ||
| var dirName, dirExists, error_4; | ||
| return __generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| dirName = path.dirname(filePath); | ||
| return [4 /*yield*/, this.dirExists(dirName)]; | ||
| case 1: | ||
| dirExists = _a.sent(); | ||
| if (!dirExists) return [3 /*break*/, 5]; | ||
| _a.label = 2; | ||
| case 2: | ||
| _a.trys.push([2, 4, , 5]); | ||
| return [4 /*yield*/, fs.access(filePath, fs.constants.F_OK | fs.constants.R_OK)]; | ||
| case 3: | ||
| _a.sent(); | ||
| this.logger.info("File \"" + filePath + "\" already exists.", this.options.force ? 'Forcing overwrite.' : 'Not overwriting.'); | ||
| return [2 /*return*/, this.options.force]; | ||
| case 4: | ||
| error_4 = _a.sent(); | ||
| return [2 /*return*/, true]; | ||
| case 5: return [2 /*return*/, false]; | ||
| } | ||
| fileIsReadable(filePath) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| const dirExists = yield this.dirExists(path.dirname(filePath)); | ||
| if (dirExists) { | ||
| try { | ||
| yield fs.access(filePath, fs.constants.F_OK | fs.constants.R_OK); | ||
| return true; | ||
| } | ||
| }); | ||
| catch (error) { | ||
| return false; | ||
| } | ||
| } | ||
| return false; | ||
| }); | ||
| }; | ||
| FileService.prototype.writeFile = function (data, filePath) { | ||
| return __awaiter(this, void 0, void 0, function () { | ||
| var fileIsWritable; | ||
| return __generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: return [4 /*yield*/, this.fileIsWritable(filePath)]; | ||
| case 1: | ||
| fileIsWritable = _a.sent(); | ||
| if (!fileIsWritable) return [3 /*break*/, 3]; | ||
| return [4 /*yield*/, fs.writeFile(filePath, data)]; | ||
| case 2: | ||
| _a.sent(); | ||
| return [2 /*return*/, this]; | ||
| case 3: throw new Error("File \"" + this.options.outputEntry + "\" already exists."); | ||
| } | ||
| fileIsWritable(filePath) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| const dirName = path.dirname(filePath); | ||
| const dirExists = yield this.dirExists(dirName); | ||
| if (dirExists) { | ||
| try { | ||
| yield fs.access(filePath, fs.constants.F_OK | fs.constants.R_OK); | ||
| this.logger.info(`File "${filePath}" already exists.`, this.options.force ? 'Forcing overwrite.' : 'Not overwriting.'); | ||
| return this.options.force; | ||
| } | ||
| }); | ||
| catch (error) { | ||
| return true; | ||
| } | ||
| } | ||
| return false; | ||
| }); | ||
| }; | ||
| return FileService; | ||
| }()); | ||
| } | ||
| writeFile(data, filePath) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| const fileIsWritable = yield this.fileIsWritable(filePath); | ||
| if (fileIsWritable) { | ||
| yield fs.writeFile(filePath, data); | ||
| return this; | ||
| } | ||
| throw new Error(`File "${this.options.outputEntry}" already exists.`); | ||
| }); | ||
| } | ||
| } | ||
| exports.FileService = FileService; | ||
| //# sourceMappingURL=FileService.js.map |
@@ -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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"} |
+1
-1
@@ -13,3 +13,2 @@ import { BuildService } from './BuildService'; | ||
| constructor(options?: TerminalOptions); | ||
| private checkConfigFile; | ||
| /** | ||
@@ -33,2 +32,3 @@ * Add files and directories to the ZIP file. | ||
| save(): Promise<BuildService>; | ||
| private checkConfigFile; | ||
| } |
+68
-114
| "use strict"; | ||
| var __assign = (this && this.__assign) || function () { | ||
| __assign = Object.assign || function(t) { | ||
| for (var s, i = 1, n = arguments.length; i < n; i++) { | ||
| s = arguments[i]; | ||
| for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) | ||
| t[p] = s[p]; | ||
| } | ||
| return t; | ||
| }; | ||
| return __assign.apply(this, arguments); | ||
| }; | ||
| var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
@@ -21,35 +10,8 @@ return new (P || (P = Promise))(function (resolve, reject) { | ||
| }; | ||
| var __generator = (this && this.__generator) || function (thisArg, body) { | ||
| var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; | ||
| return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; | ||
| function verb(n) { return function (v) { return step([n, v]); }; } | ||
| function step(op) { | ||
| if (f) throw new TypeError("Generator is already executing."); | ||
| while (_) try { | ||
| if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; | ||
| if (y = 0, t) op = [op[0] & 2, t.value]; | ||
| switch (op[0]) { | ||
| case 0: case 1: t = op; break; | ||
| case 4: _.label++; return { value: op[1], done: false }; | ||
| case 5: _.label++; y = op[1]; op = [0]; continue; | ||
| case 7: op = _.ops.pop(); _.trys.pop(); continue; | ||
| default: | ||
| if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } | ||
| if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } | ||
| if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } | ||
| if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } | ||
| if (t[2]) _.ops.pop(); | ||
| _.trys.pop(); continue; | ||
| } | ||
| op = body.call(thisArg, _); | ||
| } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } | ||
| if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; | ||
| } | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| var cosmiconfig = require("cosmiconfig"); | ||
| var logdown = require("logdown"); | ||
| var BuildService_1 = require("./BuildService"); | ||
| var ExtractService_1 = require("./ExtractService"); | ||
| var defaultOptions = { | ||
| const cosmiconfig = require("cosmiconfig"); | ||
| const logdown = require("logdown"); | ||
| const BuildService_1 = require("./BuildService"); | ||
| const ExtractService_1 = require("./ExtractService"); | ||
| const defaultOptions = { | ||
| compressionLevel: 5, | ||
@@ -64,4 +26,4 @@ configFile: true, | ||
| }; | ||
| var JSZipCLI = /** @class */ (function () { | ||
| function JSZipCLI(options) { | ||
| class JSZipCLI { | ||
| constructor(options) { | ||
| this.terminalOptions = options; | ||
@@ -73,3 +35,3 @@ this.logger = logdown('jszip-cli/index', { | ||
| this.configExplorer = cosmiconfig('jszip'); | ||
| this.options = __assign({}, defaultOptions, this.terminalOptions); | ||
| this.options = Object.assign({}, defaultOptions, this.terminalOptions); | ||
| this.logger.state = { isEnabled: this.options.verbose }; | ||
@@ -81,33 +43,2 @@ this.checkConfigFile(); | ||
| } | ||
| JSZipCLI.prototype.checkConfigFile = function () { | ||
| if (!this.options.configFile) { | ||
| this.logger.info('Not using any configuration file.'); | ||
| return; | ||
| } | ||
| var configResult = null; | ||
| if (typeof this.options.configFile === 'string') { | ||
| try { | ||
| configResult = this.configExplorer.loadSync(this.options.configFile); | ||
| } | ||
| catch (error) { | ||
| throw new Error("Can't read configuration file: " + error.message); | ||
| } | ||
| } | ||
| else if (this.options.configFile === true) { | ||
| try { | ||
| configResult = this.configExplorer.searchSync(); | ||
| } | ||
| catch (error) { | ||
| this.logger.error(error); | ||
| } | ||
| } | ||
| if (!configResult || configResult.isEmpty) { | ||
| this.logger.info('Not using any configuration file.'); | ||
| return; | ||
| } | ||
| var configFileData = configResult.config; | ||
| this.logger.info("Using configuration file " + configResult.filepath); | ||
| this.options = __assign({}, defaultOptions, configFileData, this.terminalOptions); | ||
| this.logger.state = { isEnabled: this.options.verbose }; | ||
| }; | ||
| /** | ||
@@ -118,3 +49,3 @@ * Add files and directories to the ZIP file. | ||
| */ | ||
| JSZipCLI.prototype.add = function (rawEntries) { | ||
| add(rawEntries) { | ||
| if (!rawEntries || !rawEntries.length) { | ||
@@ -129,3 +60,3 @@ if (this.options.entries) { | ||
| return this.buildService.add(rawEntries); | ||
| }; | ||
| } | ||
| /** | ||
@@ -136,3 +67,3 @@ * Add files and directories to the ZIP file. | ||
| */ | ||
| JSZipCLI.prototype.extract = function (rawEntries) { | ||
| extract(rawEntries) { | ||
| if (!rawEntries || !rawEntries.length) { | ||
@@ -147,3 +78,3 @@ if (this.options.entries) { | ||
| return this.extractService.extract(rawEntries); | ||
| }; | ||
| } | ||
| /** | ||
@@ -153,39 +84,62 @@ * Run in file mode - reads entries and settings from configuration file. | ||
| */ | ||
| JSZipCLI.prototype.fileMode = function () { | ||
| return __awaiter(this, void 0, void 0, function () { | ||
| var _a, outputFile, compressedFilesCount, _b, outputDir, extractedFilesCount; | ||
| return __generator(this, function (_c) { | ||
| switch (_c.label) { | ||
| case 0: | ||
| if (!this.options.mode && !this.configFile) { | ||
| throw new Error('No configuration file and no mode specified.'); | ||
| } | ||
| if (!(this.options.mode === 'add')) return [3 /*break*/, 2]; | ||
| return [4 /*yield*/, this.add().save()]; | ||
| case 1: | ||
| _a = _c.sent(), outputFile = _a.outputFile, compressedFilesCount = _a.compressedFilesCount; | ||
| if (this.options.outputEntry && !this.options.quiet) { | ||
| console.log("Done compressing " + compressedFilesCount + " files to \"" + outputFile + "\"."); | ||
| } | ||
| return [2 /*return*/, this]; | ||
| case 2: | ||
| if (!(this.options.mode === 'extract')) return [3 /*break*/, 4]; | ||
| return [4 /*yield*/, this.extract()]; | ||
| case 3: | ||
| _b = _c.sent(), outputDir = _b.outputDir, extractedFilesCount = _b.extractedFilesCount; | ||
| if (this.options.outputEntry && !this.options.quiet) { | ||
| console.log("Done extracting " + extractedFilesCount + " files to \"" + outputDir + "\"."); | ||
| } | ||
| return [2 /*return*/, this]; | ||
| case 4: throw new Error('No or invalid mode in configuration file defined.'); | ||
| fileMode() { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| if (!this.options.mode && !this.configFile) { | ||
| throw new Error('No configuration file and no mode specified.'); | ||
| } | ||
| if (this.options.mode === 'add') { | ||
| const { outputFile, compressedFilesCount } = yield this.add().save(); | ||
| if (this.options.outputEntry && !this.options.quiet) { | ||
| console.log(`Done compressing ${compressedFilesCount} files to "${outputFile}".`); | ||
| } | ||
| }); | ||
| return this; | ||
| } | ||
| else if (this.options.mode === 'extract') { | ||
| const { outputDir, extractedFilesCount } = yield this.extract(); | ||
| if (this.options.outputEntry && !this.options.quiet) { | ||
| console.log(`Done extracting ${extractedFilesCount} files to "${outputDir}".`); | ||
| } | ||
| return this; | ||
| } | ||
| else { | ||
| throw new Error('No or invalid mode in configuration file defined.'); | ||
| } | ||
| }); | ||
| }; | ||
| JSZipCLI.prototype.save = function () { | ||
| } | ||
| save() { | ||
| return this.buildService.save(); | ||
| }; | ||
| return JSZipCLI; | ||
| }()); | ||
| } | ||
| checkConfigFile() { | ||
| if (!this.options.configFile) { | ||
| this.logger.info('Not using any configuration file.'); | ||
| return; | ||
| } | ||
| let configResult = null; | ||
| if (typeof this.options.configFile === 'string') { | ||
| try { | ||
| configResult = this.configExplorer.loadSync(this.options.configFile); | ||
| } | ||
| catch (error) { | ||
| throw new Error(`Can't read configuration file: ${error.message}`); | ||
| } | ||
| } | ||
| else if (this.options.configFile === true) { | ||
| try { | ||
| configResult = this.configExplorer.searchSync(); | ||
| } | ||
| catch (error) { | ||
| this.logger.error(error); | ||
| } | ||
| } | ||
| if (!configResult || configResult.isEmpty) { | ||
| this.logger.info('Not using any configuration file.'); | ||
| return; | ||
| } | ||
| const configFileData = configResult.config; | ||
| this.logger.info(`Using configuration file ${configResult.filepath}`); | ||
| this.options = Object.assign({}, defaultOptions, configFileData, this.terminalOptions); | ||
| this.logger.state = { isEnabled: this.options.verbose }; | ||
| } | ||
| } | ||
| exports.JSZipCLI = JSZipCLI; | ||
| //# sourceMappingURL=JSZipCLI.js.map |
+1
-1
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"JSZipCLI.js","sourceRoot":"","sources":["../src/JSZipCLI.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA4C;AAC5C,iCAAmC;AACnC,+CAA4C;AAC5C,mDAAgD;AAGhD,IAAM,cAAc,GAA8B;IAChD,gBAAgB,EAAE,CAAC;IACnB,UAAU,EAAE,IAAI;IAChB,gBAAgB,EAAE,KAAK;IACvB,KAAK,EAAE,KAAK;IACZ,aAAa,EAAE,EAAE;IACjB,WAAW,EAAE,IAAI;IACjB,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,KAAK;CACf,CAAC;AAEF;IASE,kBAAY,OAAyB;QACnC,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE;YACvC,MAAM,EAAE,OAAO;YACf,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;QAE3C,IAAI,CAAC,OAAO,gBAAO,cAAc,EAAK,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,EAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAC,CAAC;QAEtD,IAAI,CAAC,eAAe,EAAE,CAAC;QAEvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAEjD,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;IAEO,kCAAe,GAAvB;QACE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;YACtD,OAAO;SACR;QAED,IAAI,YAAY,GAAkC,IAAI,CAAC;QAEvD,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,KAAK,QAAQ,EAAE;YAC/C,IAAI;gBACF,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;aACtE;YAAC,OAAO,KAAK,EAAE;gBACd,MAAM,IAAI,KAAK,CAAC,oCAAkC,KAAK,CAAC,OAAS,CAAC,CAAC;aACpE;SACF;aAAM,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE;YAC3C,IAAI;gBACF,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;aACjD;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;aAC1B;SACF;QAED,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,OAAO,EAAE;YACzC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;YACtD,OAAO;SACR;QAED,IAAM,cAAc,GAAG,YAAY,CAAC,MAA2B,CAAC;QAEhE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA4B,YAAY,CAAC,QAAU,CAAC,CAAC;QAEtE,IAAI,CAAC,OAAO,gBAAO,cAAc,EAAK,cAAc,EAAK,IAAI,CAAC,eAAe,CAAC,CAAC;QAC/E,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,EAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAC,CAAC;IACxD,CAAC;IAED;;;;OAIG;IACI,sBAAG,GAAV,UAAW,UAAqB;QAC9B,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YACrC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;gBACxB,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;aACnC;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;aACvC;SACF;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACI,0BAAO,GAAd,UAAe,UAAqB;QAClC,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YACrC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;gBACxB,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;aACnC;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;aAC3C;SACF;QACD,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACjD,CAAC;IAED;;;OAGG;IACU,2BAAQ,GAArB;;;;;;wBACE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;4BAC1C,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;yBACjE;6BACG,CAAA,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK,CAAA,EAA3B,wBAA2B;wBACc,qBAAM,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,EAAA;;wBAA5D,KAAqC,SAAuB,EAA3D,UAAU,gBAAA,EAAE,oBAAoB,0BAAA;wBAEvC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;4BACnD,OAAO,CAAC,GAAG,CAAC,sBAAoB,oBAAoB,oBAAc,UAAU,QAAI,CAAC,CAAC;yBACnF;wBAED,sBAAO,IAAI,EAAC;;6BACH,CAAA,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAA,EAA/B,wBAA+B;wBACC,qBAAM,IAAI,CAAC,OAAO,EAAE,EAAA;;wBAAvD,KAAmC,SAAoB,EAAtD,SAAS,eAAA,EAAE,mBAAmB,yBAAA;wBAErC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;4BACnD,OAAO,CAAC,GAAG,CAAC,qBAAmB,mBAAmB,oBAAc,SAAS,QAAI,CAAC,CAAC;yBAChF;wBAED,sBAAO,IAAI,EAAC;4BAEZ,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;;;;KAExE;IAEM,uBAAI,GAAX;QACE,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAClC,CAAC;IACH,eAAC;AAAD,CAAC,AA/HD,IA+HC;AA/HY,4BAAQ"} | ||
| {"version":3,"file":"JSZipCLI.js","sourceRoot":"","sources":["../src/JSZipCLI.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAA4C;AAC5C,mCAAmC;AACnC,iDAA4C;AAC5C,qDAAgD;AAGhD,MAAM,cAAc,GAA8B;IAChD,gBAAgB,EAAE,CAAC;IACnB,UAAU,EAAE,IAAI;IAChB,gBAAgB,EAAE,KAAK;IACvB,KAAK,EAAE,KAAK;IACZ,aAAa,EAAE,EAAE;IACjB,WAAW,EAAE,IAAI;IACjB,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,KAAK;CACf,CAAC;AAEF,MAAa,QAAQ;IASnB,YAAY,OAAyB;QACnC,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE;YACvC,MAAM,EAAE,OAAO;YACf,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;QAE3C,IAAI,CAAC,OAAO,qBAAO,cAAc,EAAK,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,EAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAC,CAAC;QAEtD,IAAI,CAAC,eAAe,EAAE,CAAC;QAEvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAEjD,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;IAED;;;;OAIG;IACI,GAAG,CAAC,UAAqB;QAC9B,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YACrC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;gBACxB,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;aACnC;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;aACvC;SACF;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACI,OAAO,CAAC,UAAqB;QAClC,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YACrC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;gBACxB,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;aACnC;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;aAC3C;SACF;QACD,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACjD,CAAC;IAED;;;OAGG;IACU,QAAQ;;YACnB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBAC1C,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;aACjE;YACD,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE;gBAC/B,MAAM,EAAC,UAAU,EAAE,oBAAoB,EAAC,GAAG,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;gBAEnE,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;oBACnD,OAAO,CAAC,GAAG,CAAC,oBAAoB,oBAAoB,cAAc,UAAU,IAAI,CAAC,CAAC;iBACnF;gBAED,OAAO,IAAI,CAAC;aACb;iBAAM,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE;gBAC1C,MAAM,EAAC,SAAS,EAAE,mBAAmB,EAAC,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;gBAE9D,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;oBACnD,OAAO,CAAC,GAAG,CAAC,mBAAmB,mBAAmB,cAAc,SAAS,IAAI,CAAC,CAAC;iBAChF;gBAED,OAAO,IAAI,CAAC;aACb;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;aACtE;QACH,CAAC;KAAA;IAEM,IAAI;QACT,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAClC,CAAC;IAEO,eAAe;QACrB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;YACtD,OAAO;SACR;QAED,IAAI,YAAY,GAAkC,IAAI,CAAC;QAEvD,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,KAAK,QAAQ,EAAE;YAC/C,IAAI;gBACF,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;aACtE;YAAC,OAAO,KAAK,EAAE;gBACd,MAAM,IAAI,KAAK,CAAC,kCAAkC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;aACpE;SACF;aAAM,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE;YAC3C,IAAI;gBACF,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;aACjD;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;aAC1B;SACF;QAED,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,OAAO,EAAE;YACzC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;YACtD,OAAO;SACR;QAED,MAAM,cAAc,GAAG,YAAY,CAAC,MAA2B,CAAC;QAEhE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEtE,IAAI,CAAC,OAAO,qBAAO,cAAc,EAAK,cAAc,EAAK,IAAI,CAAC,eAAe,CAAC,CAAC;QAC/E,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,EAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAC,CAAC;IACxD,CAAC;CACF;AA/HD,4BA+HC"} |
+21
-13
@@ -9,4 +9,4 @@ { | ||
| "cosmiconfig": "5.2.1", | ||
| "fs-extra": "8.0.1", | ||
| "jszip": "3.2.1", | ||
| "fs-extra": "8.1.0", | ||
| "jszip": "3.2.2", | ||
| "logdown": "3.2.8", | ||
@@ -18,7 +18,9 @@ "progress": "2.0.3" | ||
| "@ffflorian/prettier-config": "0.0.5", | ||
| "@ffflorian/tslint-config": "0.2.2", | ||
| "@ffflorian/semantic-release-config": "0.1.2", | ||
| "@ffflorian/tslint-config": "0.4.0", | ||
| "@semantic-release/changelog": "3.0.4", | ||
| "@semantic-release/git": "7.0.12", | ||
| "@semantic-release/git": "7.0.16", | ||
| "@semantic-release/npm": "5.1.13", | ||
| "@types/cosmiconfig": "5.0.3", | ||
| "@types/fs-extra": "7.0.0", | ||
| "@types/fs-extra": "8.0.0", | ||
| "@types/jasmine": "3.3.13", | ||
@@ -28,15 +30,18 @@ "@types/jszip": "3.1.6", | ||
| "@types/progress": "2.0.3", | ||
| "husky": "2.4.1", | ||
| "husky": "3.0.0", | ||
| "jasmine": "3.4.0", | ||
| "lint-staged": "8.2.0", | ||
| "lint-staged": "9.2.0", | ||
| "prettier": "1.18.2", | ||
| "publish-flat": "1.1.2", | ||
| "publish-flat": "1.2.4", | ||
| "rimraf": "2.6.3", | ||
| "semantic-release": "15.13.16", | ||
| "ts-node": "8.2.0", | ||
| "tslint": "5.17.0", | ||
| "semantic-release": "15.13.18", | ||
| "ts-node": "8.3.0", | ||
| "tslint": "5.18.0", | ||
| "tslint-config-prettier": "1.18.0", | ||
| "tslint-plugin-prettier": "2.0.1", | ||
| "typescript": "3.5.1" | ||
| "typescript": "3.5.3" | ||
| }, | ||
| "engines": { | ||
| "node": ">= 10.9" | ||
| }, | ||
| "files": [ | ||
@@ -89,2 +94,5 @@ "BuildService.d.ts", | ||
| "prettier": "@ffflorian/prettier-config", | ||
| "release": { | ||
| "extends": "@ffflorian/semantic-release-config" | ||
| }, | ||
| "repository": "https://github.com/ffflorian/jszip-cli.git", | ||
@@ -108,3 +116,3 @@ "scripts": { | ||
| }, | ||
| "version": "2.3.1" | ||
| "version": "3.0.0" | ||
| } |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
7
-12.5%61185
-28.12%24
9.09%759
-31.87%1
Infinity%+ Added
+ Added
- Removed
- Removed
Updated
Updated