You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							63 lines
						
					
					
						
							1.0 KiB
						
					
					
				
			
		
		
	
	
							63 lines
						
					
					
						
							1.0 KiB
						
					
					
				
 | 
						|
var Promise = require('any-promise')
 | 
						|
var fs
 | 
						|
try {
 | 
						|
  fs = require('graceful-fs')
 | 
						|
} catch(err) {
 | 
						|
  fs = require('fs')
 | 
						|
}
 | 
						|
 | 
						|
var api = [
 | 
						|
  'appendFile',
 | 
						|
  'chmod',
 | 
						|
  'chown',
 | 
						|
  'close',
 | 
						|
  'fchmod',
 | 
						|
  'fchown',
 | 
						|
  'fdatasync',
 | 
						|
  'fstat',
 | 
						|
  'fsync',
 | 
						|
  'ftruncate',
 | 
						|
  'futimes',
 | 
						|
  'lchown',
 | 
						|
  'link',
 | 
						|
  'lstat',
 | 
						|
  'mkdir',
 | 
						|
  'open',
 | 
						|
  'read',
 | 
						|
  'readFile',
 | 
						|
  'readdir',
 | 
						|
  'readlink',
 | 
						|
  'realpath',
 | 
						|
  'rename',
 | 
						|
  'rmdir',
 | 
						|
  'stat',
 | 
						|
  'symlink',
 | 
						|
  'truncate',
 | 
						|
  'unlink',
 | 
						|
  'utimes',
 | 
						|
  'write',
 | 
						|
  'writeFile'
 | 
						|
]
 | 
						|
 | 
						|
typeof fs.access === 'function' && api.push('access')
 | 
						|
typeof fs.copyFile === 'function' && api.push('copyFile')
 | 
						|
typeof fs.mkdtemp === 'function' && api.push('mkdtemp')
 | 
						|
 | 
						|
require('thenify-all').withCallback(fs, exports, api)
 | 
						|
 | 
						|
exports.exists = function (filename, callback) {
 | 
						|
  // callback
 | 
						|
  if (typeof callback === 'function') {
 | 
						|
    return fs.stat(filename, function (err) {
 | 
						|
      callback(null, !err);
 | 
						|
    })
 | 
						|
  }
 | 
						|
  // or promise
 | 
						|
  return new Promise(function (resolve) {
 | 
						|
    fs.stat(filename, function (err) {
 | 
						|
      resolve(!err)
 | 
						|
    })
 | 
						|
  })
 | 
						|
}
 |