/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/browserify-crawl@0.3.8/index.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
const exorcist=require("exorcist"),zlib=require("zlib"),fs=require("fs-extra"),browserify=require("browserify"),watchify=require("watchify"),Uglify=require("uglify-js"),glob=require("glob"),path=require("path"),EventEmitter=require("events"),commonShake=require("common-shakeify");function compile(e,r,t){const i=Object.assign({cache:{},packageCache:{},plugin:[],debug:!0,entries:[e]},t.browserify||{});t.watch&&i.plugin.push(watchify),fs.ensureDirSync(path.dirname(r));const o=browserify(i);t.globalTransform&&t.globalTransform.forEach((e=>o.transform(e,{global:!0}))),bundle(r,t,o),o.on("update",(()=>{t.emitter.emit("update",e),bundle(r,t,o)}))}function bundle(e,r,t){const i=fs.createWriteStream(e);r.unassertify&&t.transform("unassertify"),r.uglifyify&&t.transform("uglifyify",{global:!0}),r.commonShakeify&&t.plugin(commonShake,{}),t.bundle().on("error",(function(e){r.emitter.emit("error",e),this.emit("end")})).pipe(exorcist(e+".map")).pipe(i),i.on("finish",((t,i,o)=>{t&&r.emitter.emit("error",t),r.emitter.emit("compile",e),r.compress?compress(e,r):checkCount(r)}))}function checkCount(e){e.compiledCount+=1,e.compiledCount===e.total&&e.emitter.emit("build",e.total)}function compress(e,r){const t=fs.readFileSync(e,"utf8"),i=fs.readFileSync(e+".map","utf8");uglify(e,t,i,r,(()=>{gzip(e,r,(()=>{r.emitter.emit("compress",e),checkCount(r)}))}))}function uglify(e,r,t,i,o){const n=path.basename(e),m=Uglify.minify(r,{sourceMap:{content:t,filename:n,url:n+".map"}});m.error&&i.emitter.emit("error",m.error),fs.writeFile(e,m.code,(r=>{r&&i.emitter.emit("error",r),fs.writeFile(e+".map",m.map,(e=>{e&&i.emitter.emit("error",e),o()}))}))}function gzip(e,r,t){const i=fs.createWriteStream(e+".gz");fs.createReadStream(e).pipe(zlib.createGzip()).pipe(i),i.on("error",(e=>{e&&r.emitter.emit("error",e)})),i.on("finish",(e=>{e&&r.emitter.emit("error",e),t()}))}module.exports=function(e){return["fileName","source","dest"].forEach((r=>{if(!e.hasOwnProperty(r))throw new TypeError("You must provide a "+r+" property in options")})),e.source=path.resolve(e.source),e.dest=path.resolve(e.dest),e.emitter=new EventEmitter,glob(e.source+"/**/"+e.fileName,{},((r,t)=>{r&&e.emitter.emit("error",r),e.compiledCount=0,e.total=t.length,t.forEach((r=>{e.emitter.emit("found",r);compile(r,path.join(e.dest,path.relative(e.source,r)),e)}))})),e.emitter};
//# sourceMappingURL=/sm/badd2dc342ff25df521ce9a79c6bd048d4982d5113b392a4f27572f7ba4b5acd.map