25 lines
466 B
JavaScript
25 lines
466 B
JavaScript
|
'use strict';
|
||
|
var fs = require('fs');
|
||
|
var Promise = require('pinkie-promise');
|
||
|
|
||
|
module.exports = function (fp) {
|
||
|
var fn = typeof fs.access === 'function' ? fs.access : fs.stat;
|
||
|
|
||
|
return new Promise(function (resolve) {
|
||
|
fn(fp, function (err) {
|
||
|
resolve(!err);
|
||
|
});
|
||
|
});
|
||
|
};
|
||
|
|
||
|
module.exports.sync = function (fp) {
|
||
|
var fn = typeof fs.accessSync === 'function' ? fs.accessSync : fs.statSync;
|
||
|
|
||
|
try {
|
||
|
fn(fp);
|
||
|
return true;
|
||
|
} catch (err) {
|
||
|
return false;
|
||
|
}
|
||
|
};
|