aboutsummaryrefslogtreecommitdiff
path: root/node_modules/@kwsites/file-exists/dist/src/index.js
diff options
context:
space:
mode:
authorMinteck <contact@minteck.org>2022-02-12 10:33:06 +0100
committerMinteck <contact@minteck.org>2022-02-12 10:33:06 +0100
commit01160246e4a0c0052181c72a53737e356ea7d02d (patch)
treec6f8ea675f9147d4c06ef503697fb35d58493991 /node_modules/@kwsites/file-exists/dist/src/index.js
parentaf898a152a14e31bdbcbbedb952ad333697553ef (diff)
downloadtwilight-01160246e4a0c0052181c72a53737e356ea7d02d.tar.gz
twilight-01160246e4a0c0052181c72a53737e356ea7d02d.tar.bz2
twilight-01160246e4a0c0052181c72a53737e356ea7d02d.zip
First commit
Diffstat (limited to 'node_modules/@kwsites/file-exists/dist/src/index.js')
-rw-r--r--node_modules/@kwsites/file-exists/dist/src/index.js55
1 files changed, 55 insertions, 0 deletions
diff --git a/node_modules/@kwsites/file-exists/dist/src/index.js b/node_modules/@kwsites/file-exists/dist/src/index.js
new file mode 100644
index 0000000..8a41c70
--- /dev/null
+++ b/node_modules/@kwsites/file-exists/dist/src/index.js
@@ -0,0 +1,55 @@
+"use strict";
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+const fs_1 = require("fs");
+const debug_1 = __importDefault(require("debug"));
+const log = debug_1.default('@kwsites/file-exists');
+function check(path, isFile, isDirectory) {
+ log(`checking %s`, path);
+ try {
+ const stat = fs_1.statSync(path);
+ if (stat.isFile() && isFile) {
+ log(`[OK] path represents a file`);
+ return true;
+ }
+ if (stat.isDirectory() && isDirectory) {
+ log(`[OK] path represents a directory`);
+ return true;
+ }
+ log(`[FAIL] path represents something other than a file or directory`);
+ return false;
+ }
+ catch (e) {
+ if (e.code === 'ENOENT') {
+ log(`[FAIL] path is not accessible: %o`, e);
+ return false;
+ }
+ log(`[FATAL] %o`, e);
+ throw e;
+ }
+}
+/**
+ * Synchronous validation of a path existing either as a file or as a directory.
+ *
+ * @param {string} path The path to check
+ * @param {number} type One or both of the exported numeric constants
+ */
+function exists(path, type = exports.READABLE) {
+ return check(path, (type & exports.FILE) > 0, (type & exports.FOLDER) > 0);
+}
+exports.exists = exists;
+/**
+ * Constant representing a file
+ */
+exports.FILE = 1;
+/**
+ * Constant representing a folder
+ */
+exports.FOLDER = 2;
+/**
+ * Constant representing either a file or a folder
+ */
+exports.READABLE = exports.FILE + exports.FOLDER;
+//# sourceMappingURL=index.js.map \ No newline at end of file