aboutsummaryrefslogtreecommitdiff
path: root/node_modules/nexe/lib/util.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/nexe/lib/util.js')
-rw-r--r--node_modules/nexe/lib/util.js103
1 files changed, 103 insertions, 0 deletions
diff --git a/node_modules/nexe/lib/util.js b/node_modules/nexe/lib/util.js
new file mode 100644
index 0000000..112846d
--- /dev/null
+++ b/node_modules/nexe/lib/util.js
@@ -0,0 +1,103 @@
+"use strict";
+var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
+ return new (P || (P = Promise))(function (resolve, reject) {
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
+ });
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+const fs_1 = require("fs");
+const child_process_1 = require("child_process");
+const util_1 = require("util");
+const rimraf = require("rimraf");
+const rimrafAsync = util_1.promisify(rimraf);
+exports.rimrafAsync = rimrafAsync;
+exports.STDIN_FLAG = '[stdin]';
+function each(list, action) {
+ return __awaiter(this, void 0, void 0, function* () {
+ const l = yield list;
+ return Promise.all(l.map(action));
+ });
+}
+exports.each = each;
+function wrap(code) {
+ return '!(function () {' + code + '})();';
+}
+exports.wrap = wrap;
+function falseOnEnoent(e) {
+ if (e.code === 'ENOENT') {
+ return false;
+ }
+ throw e;
+}
+function padRight(str, l) {
+ return (str + ' '.repeat(l)).substr(0, l);
+}
+exports.padRight = padRight;
+const bound = function bound(target, propertyKey, descriptor) {
+ const configurable = true;
+ return {
+ configurable,
+ get() {
+ const value = descriptor.value.bind(this);
+ Object.defineProperty(this, propertyKey, {
+ configurable,
+ value,
+ writable: true,
+ });
+ return value;
+ },
+ };
+};
+exports.bound = bound;
+function dequote(input) {
+ input = input.trim();
+ const singleQuote = input.startsWith("'") && input.endsWith("'");
+ const doubleQuote = input.startsWith('"') && input.endsWith('"');
+ if (singleQuote || doubleQuote) {
+ return input.slice(1).slice(0, -1);
+ }
+ return input;
+}
+exports.dequote = dequote;
+const readFileAsync = util_1.promisify(fs_1.readFile);
+exports.readFileAsync = readFileAsync;
+const writeFileAsync = util_1.promisify(fs_1.writeFile);
+exports.writeFileAsync = writeFileAsync;
+const statAsync = util_1.promisify(fs_1.stat);
+exports.statAsync = statAsync;
+const execFileAsync = util_1.promisify(child_process_1.execFile);
+exports.execFileAsync = execFileAsync;
+const isWindows = process.platform === 'win32';
+exports.isWindows = isWindows;
+function pathExistsAsync(path) {
+ return statAsync(path)
+ .then((x) => true)
+ .catch(falseOnEnoent);
+}
+exports.pathExistsAsync = pathExistsAsync;
+function isDirectoryAsync(path) {
+ return statAsync(path)
+ .then((x) => x.isDirectory())
+ .catch(falseOnEnoent);
+}
+exports.isDirectoryAsync = isDirectoryAsync;
+/**
+ * @param version See if this version is greather than the second one
+ * @param operand Version to compare against
+ */
+function semverGt(version, operand) {
+ const [cMajor, cMinor, cPatch] = version.split('.').map(Number);
+ let [major, minor, patch] = operand.split('.').map(Number);
+ if (!minor)
+ minor = 0;
+ if (!patch)
+ patch = 0;
+ return (cMajor > major ||
+ (cMajor === major && cMinor > minor) ||
+ (cMajor === major && cMinor === minor && cPatch > patch));
+}
+exports.semverGt = semverGt;