cross-7zip
Version:
Cross-platform 7-Zip for Node.js
2 lines (1 loc) • 3.93 kB
JavaScript
;var d=Object.defineProperty;var U=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames,z=Object.getOwnPropertySymbols;var O=Object.prototype.hasOwnProperty,E=Object.prototype.propertyIsEnumerable;var S=(t,i,n)=>i in t?d(t,i,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[i]=n,f=(t,i)=>{for(var n in i||(i={}))O.call(i,n)&&S(t,n,i[n]);if(z)for(var n of z(i))E.call(i,n)&&S(t,n,i[n]);return t};var $=(t,i)=>{for(var n in i)d(t,n,{get:i[n],enumerable:!0})},I=(t,i,n,r)=>{if(i&&typeof i=="object"||typeof i=="function")for(let e of y(i))!O.call(t,e)&&e!==n&&d(t,e,{get:()=>i[e],enumerable:!(r=U(i,e))||r.enumerable});return t};var F=t=>I(d({},"__esModule",{value:!0}),t);var c=(t,i,n)=>new Promise((r,e)=>{var w=a=>{try{g(n.next(a))}catch(Z){e(Z)}},P=a=>{try{g(n.throw(a))}catch(Z){e(Z)}},g=a=>a.done?r(a.value):Promise.resolve(a.value).then(w,P);g((n=n.apply(t,i)).next())});var L={};$(L,{SevenUnzip:()=>u,SevenZip:()=>m,sevenUnzip:()=>T,sevenUnzipSync:()=>j,sevenZip:()=>D,sevenZipSync:()=>N});module.exports=F(L);var l=require("child_process");var o=require("path"),p=(0,o.join)(__dirname,"..","7zip"),s=new Map;s.set("linux_arm",(0,o.join)(p,"linux_arm_7z"));s.set("linux_arm64",(0,o.join)(p,"linux_arm64_7z"));s.set("linux_ia32",(0,o.join)(p,"linux_ia32_7z"));s.set("linux_x64",(0,o.join)(p,"linux_x64_7z"));s.set("win32_arm64",(0,o.join)(p,"win32_arm64_7z.exe"));s.set("win32_ia32",(0,o.join)(p,"win32_ia32_7z.exe"));s.set("win32_x64",(0,o.join)(p,"win32_x64_7z.exe"));s.set("darwin_arm64",(0,o.join)(p,"darwin_7z"));s.set("darwin_ia32",(0,o.join)(p,"darwin_7z"));s.set("darwin_x64",(0,o.join)(p,"darwin_7z"));var b={maxBuffer:1/0,windowsHide:!0};function _(t,i){return c(this,null,function*(){return new Promise((n,r)=>{(0,l.execFile)(t,i,b,e=>{if(e)return r(new Error(e.message));n()})})})}function x(t,i){(0,l.execFileSync)(t,i,b)}function v(){let{platform:t,arch:i}=process;return s.get(`${t}_${i}`)}var M={archive:"",destination:""},u=class{get command(){return v()}get args(){let{archive:i,destination:n,password:r}=this._options;return["x",i,`-o${n}`,r?`-p${r}`:""].filter(e=>!!e)}constructor(i){this._options=f(f({},M),i)}setArchive(i){return this._options.archive=i,this}setDestination(i){return this._options.destination=i,this}setPassword(i){return this._options.password=i,this}toString(){return[this.command,...this.args].map(i=>`"${i}"`).join(" ")}run(){return c(this,null,function*(){let{command:i,args:n}=this;if(!i)throw new Error("7-Zip executable not found.");return _(i,n)})}runSync(){let{command:i,args:n}=this;if(!i)throw new Error("7-Zip executable not found.");x(i,n)}};var h=require("rimraf");var A={destination:"",files:[]},m=class{get command(){return v()}get args(){let{destination:i,files:n,level:r,password:e}=this._options;return["a",i,...n,r?`-mx${Math.max(1,Math.min(r,9))}`:"",e?`-p${e}`:"",e?"-mhe=on":""].filter(w=>!!w)}constructor(i){this._options=f(f({},A),i)}setDestination(i){return this._options.destination=i,this}setFiles(i){return this._options.files=i,this}setLevel(i){return this._options.level=i,this}setOverwrite(i=!0){return this._options.overwrite=i,this}setPassword(i){return this._options.password=i,this}toString(){return[this.command,...this.args].map(i=>`"${i}"`).join(" ")}run(){return c(this,null,function*(){let{command:i,args:n}=this,{destination:r,overwrite:e}=this._options;if(!i)throw new Error("7-Zip executable not found.");return e?(0,h.rimraf)(r).then(()=>_(i,n)):_(i,n)})}runSync(){let{command:i,args:n}=this,{destination:r,overwrite:e}=this._options;if(!i)throw new Error("7-Zip executable not found.");e&&(0,h.rimrafSync)(r),x(i,n)}};function D(t){return c(this,null,function*(){return new m(t).run()})}function T(t){return c(this,null,function*(){return new u(t).run()})}function N(t){new m(t).runSync()}function j(t){new u(t).runSync()}0&&(module.exports={SevenUnzip,SevenZip,sevenUnzip,sevenUnzipSync,sevenZip,sevenZipSync});