| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 | | 'use strict' |  |   |  | const fs = require('graceful-fs') |  |   |  | function symlinkType (srcpath, type, callback) { |  |   callback = (typeof type === 'function') ? type : callback |  |   type = (typeof type === 'function') ? false : type |  |   if (type) return callback(null, type) |  |   fs.lstat(srcpath, (err, stats) => { |  |     if (err) return callback(null, 'file') |  |     type = (stats && stats.isDirectory()) ? 'dir' : 'file' |  |     callback(null, type) |  |   }) |  | } |  |   |  | function symlinkTypeSync (srcpath, type) { |  |   let stats |  |   |  |   if (type) return type |  |   try { |  |     stats = fs.lstatSync(srcpath) |  |   } catch (e) { |  |     return 'file' |  |   } |  |   return (stats && stats.isDirectory()) ? 'dir' : 'file' |  | } |  |   |  | module.exports = { |  |   symlinkType, |  |   symlinkTypeSync |  | } | 
 |