UNPKG

rafale

Version:

Deploy every services, everywhere, in just a few seconds

1 lines 2.31 kB
var fs=require("fs"),pth=require("path");fs.existsSync=fs.existsSync||pth.existsSync,module.exports=function(){function t(t){var n=t.split(i)[0];t.split(i).forEach(function(t){if(t&&":"!=t.substr(-1,1)){n+=i+t;var r;try{r=fs.statSync(n)}catch(e){fs.mkdirSync(n)}if(r&&r.isFile())throw f.FILE_IN_THE_WAY.replace("%s",n)}})}function n(t,r,e){"boolean"==typeof r&&(e=r,r=void 0);var f=[];return fs.readdirSync(t).forEach(function(s){var c=pth.join(t,s);fs.statSync(c).isDirectory()&&e&&(f=f.concat(n(c,r,e))),(!r||r.test(c))&&f.push(pth.normalize(c)+(fs.statSync(c).isDirectory()?i:""))}),f}var r=[],e=require("./constants"),f=require("./errors"),i=pth.normalize("/");return{makeDir:function(n){t(n)},crc32:function(t){var n=new Buffer(4);if(!r.length)for(var e=0;256>e;e++){for(var f=e,i=8;--i>=0;)0!=(1&f)?f=3988292384^f>>>1:f>>>=1;0>f&&(n.writeInt32LE(f,0),f=n.readUInt32LE(0)),r[e]=f}for(var s=0,c=0,o=t.length,u=~s;--o>=0;)u=r[255&(u^t[c++])]^u>>>8;return s=~u,n.writeInt32LE(4294967295&s,0),n.readUInt32LE(0)},methodToString:function(t){switch(t){case e.STORED:return"STORED ("+t+")";case e.DEFLATED:return"DEFLATED ("+t+")";default:return"UNSUPPORTED ("+t+")"}},writeFileTo:function(n,r,e,f){if(fs.existsSync(n)){if(!e)return!1;var i=fs.statSync(n);if(i.isDirectory())return!1}var s=pth.dirname(n);fs.existsSync(s)||t(s);var c;try{c=fs.openSync(n,"w",438)}catch(o){fs.chmodSync(n,438),c=fs.openSync(n,"w",438)}return c&&(fs.writeSync(c,r,0,r.length,0),fs.closeSync(c)),fs.chmodSync(n,f||438),!0},writeFileToAsync:function(n,r,e,f,i){"function"==typeof f&&(i=f,f=void 0),fs.exists(n,function(s){return s&&!e?i(!1):void fs.stat(n,function(e,c){if(s&&c.isDirectory())return i(!1);var o=pth.dirname(n);fs.exists(o,function(e){e||t(o),fs.open(n,"w",438,function(t,e){t?fs.chmod(n,438,function(t){fs.open(n,"w",438,function(t,e){fs.write(e,r,0,r.length,0,function(t,r,s){fs.close(e,function(t){fs.chmod(n,f||438,function(){i(!0)})})})})}):e?fs.write(e,r,0,r.length,0,function(t,r,s){fs.close(e,function(t){fs.chmod(n,f||438,function(){i(!0)})})}):fs.chmod(n,f||438,function(){i(!0)})})})})})},findFiles:function(t){return n(t,!0)},getAttributes:function(t){},setAttributes:function(t){},toBuffer:function(t){return Buffer.isBuffer(t)?t:0==t.length?new Buffer(0):new Buffer(t,"utf8")},Constants:e,Errors:f}}();