From 3c51c3be85bb0d1bdb87ea0d6632f1c256912f27 Mon Sep 17 00:00:00 2001 From: Dimitri Staessens Date: Sun, 6 Oct 2019 21:37:45 +0200 Subject: build: Add some required modules for node --- node_modules/is-directory/index.js | 65 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 node_modules/is-directory/index.js (limited to 'node_modules/is-directory/index.js') diff --git a/node_modules/is-directory/index.js b/node_modules/is-directory/index.js new file mode 100644 index 0000000..9288d0f --- /dev/null +++ b/node_modules/is-directory/index.js @@ -0,0 +1,65 @@ +/*! + * is-directory + * + * Copyright (c) 2014-2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var fs = require('fs'); + +/** + * async + */ + +function isDirectory(filepath, cb) { + if (typeof cb !== 'function') { + throw new Error('expected a callback function'); + } + + if (typeof filepath !== 'string') { + cb(new Error('expected filepath to be a string')); + return; + } + + fs.stat(filepath, function(err, stats) { + if (err) { + if (err.code === 'ENOENT') { + cb(null, false); + return; + } + cb(err); + return; + } + cb(null, stats.isDirectory()); + }); +} + +/** + * sync + */ + +isDirectory.sync = function isDirectorySync(filepath) { + if (typeof filepath !== 'string') { + throw new Error('expected filepath to be a string'); + } + + try { + var stat = fs.statSync(filepath); + return stat.isDirectory(); + } catch (err) { + if (err.code === 'ENOENT') { + return false; + } else { + throw err; + } + } + return false; +}; + +/** + * Expose `isDirectory` + */ + +module.exports = isDirectory; -- cgit v1.2.3