UNPKG

1.64 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3const deps_1 = require("./deps");
4const debug = require('debug')('util');
5function compare(...props) {
6 return (a, b) => {
7 for (let prop of props) {
8 if (a[prop] === undefined)
9 return -1;
10 if (b[prop] === undefined)
11 return 1;
12 if (a[prop] < b[prop])
13 return -1;
14 if (a[prop] > b[prop])
15 return 1;
16 }
17 return 0;
18 };
19}
20exports.compare = compare;
21function wait(ms, unref = false) {
22 return new Promise(resolve => {
23 let t = setTimeout(resolve, ms);
24 if (unref)
25 t.unref();
26 });
27}
28exports.wait = wait;
29function timeout(p, ms) {
30 return Promise.race([p, wait(ms, true).then(() => debug('timed out'))]);
31}
32exports.timeout = timeout;
33function undefault(obj) {
34 if (obj.__esModule === true)
35 return obj.default;
36 return obj;
37}
38exports.undefault = undefault;
39function objEntries(input) {
40 if (!input)
41 return [];
42 return Object.keys(input).map(k => [k, input[k]]);
43}
44exports.objEntries = objEntries;
45function objValues(input) {
46 return objEntries(input).map(([, v]) => v);
47}
48exports.objValues = objValues;
49function minorVersionGreater(fromString, toString) {
50 const from = deps_1.default.semver.parse(fromString);
51 const to = deps_1.default.semver.parse(toString);
52 if (from.major < to.major)
53 return true;
54 if (from.major === to.major && from.minor < to.minor)
55 return true;
56 return false;
57}
58exports.minorVersionGreater = minorVersionGreater;