diff options
Diffstat (limited to 'node_modules/asar/lib/crawlfs.js')
-rw-r--r-- | node_modules/asar/lib/crawlfs.js | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/node_modules/asar/lib/crawlfs.js b/node_modules/asar/lib/crawlfs.js deleted file mode 100644 index a26c3eb..0000000 --- a/node_modules/asar/lib/crawlfs.js +++ /dev/null @@ -1,41 +0,0 @@ -'use strict' - -const { promisify } = require('util') - -const fs = require('./wrapped-fs') -const glob = promisify(require('glob')) - -async function determineFileType (filename) { - const stat = await fs.lstat(filename) - if (stat.isFile()) { - return { type: 'file', stat } - } else if (stat.isDirectory()) { - return { type: 'directory', stat } - } else if (stat.isSymbolicLink()) { - return { type: 'link', stat } - } -} - -module.exports = async function (dir, options) { - const metadata = {} - const crawled = await glob(dir, options) - const results = await Promise.all(crawled.map(async filename => [filename, await determineFileType(filename)])) - const links = [] - const filenames = results.map(([filename, type]) => { - if (type) { - metadata[filename] = type - if (type.type === 'link') links.push(filename) - } - return filename - }).filter((filename) => { - // Newer glob can return files inside symlinked directories, to avoid - // those appearing in archives we need to manually exclude theme here - const exactLinkIndex = links.findIndex(link => filename === link) - return links.every((link, index) => { - if (index === exactLinkIndex) return true - return !filename.startsWith(link) - }) - }) - return [filenames, metadata] -} -module.exports.determineFileType = determineFileType |