12345678910111213141516171819202122232425262728293031 |
- '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 {
- return 'file'
- }
- return (stats && stats.isDirectory()) ? 'dir' : 'file'
- }
-
- module.exports = {
- symlinkType,
- symlinkTypeSync
- }
|