diff --git a/.gitignore b/.gitignore index b4ca9e0..e69de29 100644 --- a/.gitignore +++ b/.gitignore @@ -1,135 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -lerna-debug.log* -.pnpm-debug.log* - -# Diagnostic reports (https://nodejs.org/api/report.html) -report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json - -# Runtime data -pids -*.pid -*.seed -*.pid.lock - -# Directory for instrumented libs generated by jscoverage/JSCover -lib-cov - -# Coverage directory used by tools like istanbul -coverage -*.lcov - -# nyc test coverage -.nyc_output - -# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) -.grunt - -# Bower dependency directory (https://bower.io/) -bower_components - -# node-waf configuration -.lock-wscript - -# Compiled binary addons (https://nodejs.org/api/addons.html) -build/Release - -# Dependency directories -node_modules/ -jspm_packages/ - -# Snowpack dependency directory (https://snowpack.dev/) -web_modules/ - -# TypeScript cache -*.tsbuildinfo - -# Optional npm cache directory -.npm - -# Optional eslint cache -.eslintcache - -# Optional stylelint cache -.stylelintcache - -# Microbundle cache -.rpt2_cache/ -.rts2_cache_cjs/ -.rts2_cache_es/ -.rts2_cache_umd/ - -# Optional REPL history -.node_repl_history - -# Output of 'npm pack' -*.tgz - -# Yarn Integrity file -.yarn-integrity - -# dotenv environment variable files -.env -.env.development.local -.env.test.local -.env.production.local -.env.local - -# parcel-bundler cache (https://parceljs.org/) -.cache -.parcel-cache - -# Next.js build output -.next -out - -# Nuxt.js build / generate output -.nuxt -dist - -# Gatsby files -.cache/ -# Comment in the public line in if your project uses Gatsby and not Next.js -# https://nextjs.org/blog/next-9-1#public-directory-support -# public - -# vuepress build output -.vuepress/dist - -# vuepress v2.x temp and cache directory -.temp -.cache - -# Docusaurus cache and generated files -.docusaurus - -# Serverless directories -.serverless/ - -# FuseBox cache -.fusebox/ - -# DynamoDB Local files -.dynamodb/ - -# TernJS port file -.tern-port - -# Stores VSCode versions used for testing VSCode extensions -.vscode -.vscode-test - -# yarn v2 -.yarn/cache -.yarn/unplugged -.yarn/build-state.yml -.yarn/install-state.gz -.pnp.* - -# node-gyp -build/ -lib/ \ No newline at end of file diff --git a/index.js b/index.js index 69e02c7..90e6c12 100644 --- a/index.js +++ b/index.js @@ -172,26 +172,28 @@ function buildCommandArgs(operation, parameters, algorithm = undefined) arguments.push(`"${parameters.destination}"`); arguments.push(`"${parameters.dir}"`); - if (algorithm === '7z') + switch (algorithm) { - arguments.push('-m0=LZMA2'); - - if (parameters.level !== undefined) - arguments.push(`-mx${parameters.level}`); - - if (parameters.password !== undefined) - arguments.push(`-p${parameters.password}`) - } - - if (algorithm === 'zip') - { - if (parameters.is64 !== undefined && parameters.is64) - arguments.push('-mm=Deflate64'); - else - arguments.push('-mm=Deflate'); - - if (parameters.level !== undefined) - arguments.push(`-mx${parameters.level}`); + case '7z': + case 'xz': + arguments.push('-m0=LZMA2'); + + if (parameters.level !== undefined) + arguments.push(`-mx=${parameters.level}`); + + if (parameters.password !== undefined) + arguments.push(`-p${parameters.password}`) + break; + + case 'zip': + if (parameters.is64 !== undefined && parameters.is64) + arguments.push('-mm=Deflate64'); + else + arguments.push('-mm=Deflate'); + + if (parameters.level !== undefined) + arguments.push(`-mx=${parameters.level}`); + break; } break; @@ -219,7 +221,7 @@ function parseProgress(data) const dataArr = data.split(' '); return { - progress: parseInt(dataArr[dataArr.length - 4].slice(0, -1), 10), - fileProcessed: dataArr[dataArr.length - 1], + progress: parseInt(dataArr[0].slice(0, -1), 10), + fileProcessed: dataArr.slice(3).join(' '), } } \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 6f0201d..df7df05 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@steezcram/sevenzip", - "version": "1.1.3", + "version": "1.1.4", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@steezcram/sevenzip", - "version": "1.1.3", + "version": "1.1.4", "license": "MIT", "dependencies": { "7zip-bin": "^5.2.0"