mirror of
https://github.com/apache/cordova-android.git
synced 2026-04-23 00:00:09 +08:00
updated bundled node_modules
This commit is contained in:
+106
-13
@@ -563,7 +563,7 @@ function patch(a, loose) {
|
||||
|
||||
exports.compare = compare;
|
||||
function compare(a, b, loose) {
|
||||
return new SemVer(a, loose).compare(b);
|
||||
return new SemVer(a, loose).compare(new SemVer(b, loose));
|
||||
}
|
||||
|
||||
exports.compareLoose = compareLoose;
|
||||
@@ -704,11 +704,59 @@ Comparator.prototype.test = function(version) {
|
||||
return cmp(version, this.operator, this.semver, this.loose);
|
||||
};
|
||||
|
||||
Comparator.prototype.intersects = function(comp, loose) {
|
||||
if (!(comp instanceof Comparator)) {
|
||||
throw new TypeError('a Comparator is required');
|
||||
}
|
||||
|
||||
var rangeTmp;
|
||||
|
||||
if (this.operator === '') {
|
||||
rangeTmp = new Range(comp.value, loose);
|
||||
return satisfies(this.value, rangeTmp, loose);
|
||||
} else if (comp.operator === '') {
|
||||
rangeTmp = new Range(this.value, loose);
|
||||
return satisfies(comp.semver, rangeTmp, loose);
|
||||
}
|
||||
|
||||
var sameDirectionIncreasing =
|
||||
(this.operator === '>=' || this.operator === '>') &&
|
||||
(comp.operator === '>=' || comp.operator === '>');
|
||||
var sameDirectionDecreasing =
|
||||
(this.operator === '<=' || this.operator === '<') &&
|
||||
(comp.operator === '<=' || comp.operator === '<');
|
||||
var sameSemVer = this.semver.version === comp.semver.version;
|
||||
var differentDirectionsInclusive =
|
||||
(this.operator === '>=' || this.operator === '<=') &&
|
||||
(comp.operator === '>=' || comp.operator === '<=');
|
||||
var oppositeDirectionsLessThan =
|
||||
cmp(this.semver, '<', comp.semver, loose) &&
|
||||
((this.operator === '>=' || this.operator === '>') &&
|
||||
(comp.operator === '<=' || comp.operator === '<'));
|
||||
var oppositeDirectionsGreaterThan =
|
||||
cmp(this.semver, '>', comp.semver, loose) &&
|
||||
((this.operator === '<=' || this.operator === '<') &&
|
||||
(comp.operator === '>=' || comp.operator === '>'));
|
||||
|
||||
return sameDirectionIncreasing || sameDirectionDecreasing ||
|
||||
(sameSemVer && differentDirectionsInclusive) ||
|
||||
oppositeDirectionsLessThan || oppositeDirectionsGreaterThan;
|
||||
};
|
||||
|
||||
|
||||
exports.Range = Range;
|
||||
function Range(range, loose) {
|
||||
if ((range instanceof Range) && range.loose === loose)
|
||||
return range;
|
||||
if (range instanceof Range) {
|
||||
if (range.loose === loose) {
|
||||
return range;
|
||||
} else {
|
||||
return new Range(range.raw, loose);
|
||||
}
|
||||
}
|
||||
|
||||
if (range instanceof Comparator) {
|
||||
return new Range(range.value, loose);
|
||||
}
|
||||
|
||||
if (!(this instanceof Range))
|
||||
return new Range(range, loose);
|
||||
@@ -783,6 +831,22 @@ Range.prototype.parseRange = function(range) {
|
||||
return set;
|
||||
};
|
||||
|
||||
Range.prototype.intersects = function(range, loose) {
|
||||
if (!(range instanceof Range)) {
|
||||
throw new TypeError('a Range is required');
|
||||
}
|
||||
|
||||
return this.set.some(function(thisComparators) {
|
||||
return thisComparators.every(function(thisComparator) {
|
||||
return range.set.some(function(rangeComparators) {
|
||||
return rangeComparators.every(function(rangeComparator) {
|
||||
return thisComparator.intersects(rangeComparator, loose);
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
// Mostly just for testing and legacy API reasons
|
||||
exports.toComparators = toComparators;
|
||||
function toComparators(range, loose) {
|
||||
@@ -1087,20 +1151,42 @@ function satisfies(version, range, loose) {
|
||||
|
||||
exports.maxSatisfying = maxSatisfying;
|
||||
function maxSatisfying(versions, range, loose) {
|
||||
return versions.filter(function(version) {
|
||||
return satisfies(version, range, loose);
|
||||
}).sort(function(a, b) {
|
||||
return rcompare(a, b, loose);
|
||||
})[0] || null;
|
||||
var max = null;
|
||||
var maxSV = null;
|
||||
try {
|
||||
var rangeObj = new Range(range, loose);
|
||||
} catch (er) {
|
||||
return null;
|
||||
}
|
||||
versions.forEach(function (v) {
|
||||
if (rangeObj.test(v)) { // satisfies(v, range, loose)
|
||||
if (!max || maxSV.compare(v) === -1) { // compare(max, v, true)
|
||||
max = v;
|
||||
maxSV = new SemVer(max, loose);
|
||||
}
|
||||
}
|
||||
})
|
||||
return max;
|
||||
}
|
||||
|
||||
exports.minSatisfying = minSatisfying;
|
||||
function minSatisfying(versions, range, loose) {
|
||||
return versions.filter(function(version) {
|
||||
return satisfies(version, range, loose);
|
||||
}).sort(function(a, b) {
|
||||
return compare(a, b, loose);
|
||||
})[0] || null;
|
||||
var min = null;
|
||||
var minSV = null;
|
||||
try {
|
||||
var rangeObj = new Range(range, loose);
|
||||
} catch (er) {
|
||||
return null;
|
||||
}
|
||||
versions.forEach(function (v) {
|
||||
if (rangeObj.test(v)) { // satisfies(v, range, loose)
|
||||
if (!min || minSV.compare(v) === 1) { // compare(min, v, true)
|
||||
min = v;
|
||||
minSV = new SemVer(min, loose);
|
||||
}
|
||||
}
|
||||
})
|
||||
return min;
|
||||
}
|
||||
|
||||
exports.validRange = validRange;
|
||||
@@ -1201,3 +1287,10 @@ function prerelease(version, loose) {
|
||||
var parsed = parse(version, loose);
|
||||
return (parsed && parsed.prerelease.length) ? parsed.prerelease : null;
|
||||
}
|
||||
|
||||
exports.intersects = intersects;
|
||||
function intersects(r1, r2, loose) {
|
||||
r1 = new Range(r1, loose)
|
||||
r2 = new Range(r2, loose)
|
||||
return r1.intersects(r2)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user