vega 0.2.6 → 0.2.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/lib/vega/spec.rb +3 -3
- data/lib/vega/version.rb +1 -1
- data/vendor/assets/javascripts/vega-embed.js +632 -558
- data/vendor/assets/javascripts/vega-lite.js +382 -167
- data/vendor/assets/javascripts/vega.js +1295 -700
- metadata +3 -3
@@ -27,8 +27,8 @@
|
|
27
27
|
|
28
28
|
/*!
|
29
29
|
* https://github.com/Starcounter-Jack/JSON-Patch
|
30
|
-
* (c) 2017 Joachim Wester
|
31
|
-
* MIT
|
30
|
+
* (c) 2017-2022 Joachim Wester
|
31
|
+
* MIT licensed
|
32
32
|
*/
|
33
33
|
var __extends = undefined && undefined.__extends || function () {
|
34
34
|
var extendStatics = function (d, b) {
|
@@ -60,13 +60,13 @@
|
|
60
60
|
}
|
61
61
|
function _objectKeys(obj) {
|
62
62
|
if (Array.isArray(obj)) {
|
63
|
-
var
|
63
|
+
var keys_1 = new Array(obj.length);
|
64
64
|
|
65
|
-
for (var k = 0; k <
|
66
|
-
|
65
|
+
for (var k = 0; k < keys_1.length; k++) {
|
66
|
+
keys_1[k] = "" + k;
|
67
67
|
}
|
68
68
|
|
69
|
-
return
|
69
|
+
return keys_1;
|
70
70
|
}
|
71
71
|
|
72
72
|
if (Object.keys) {
|
@@ -154,8 +154,8 @@
|
|
154
154
|
|
155
155
|
if (obj) {
|
156
156
|
if (Array.isArray(obj)) {
|
157
|
-
for (var
|
158
|
-
if (hasUndefined(obj[
|
157
|
+
for (var i_1 = 0, len = obj.length; i_1 < len; i_1++) {
|
158
|
+
if (hasUndefined(obj[i_1])) {
|
159
159
|
return true;
|
160
160
|
}
|
161
161
|
}
|
@@ -483,8 +483,8 @@
|
|
483
483
|
key = unescapePathComponent(key);
|
484
484
|
}
|
485
485
|
|
486
|
-
if (banPrototypeModifications && key == '__proto__') {
|
487
|
-
throw new TypeError('JSON-Patch: modifying `__proto__` prop is banned for security reasons, if this was on purpose, please set `banPrototypeModifications` flag false and pass it to this function. More info in fast-json-patch README');
|
486
|
+
if (banPrototypeModifications && (key == '__proto__' || key == 'prototype' && t > 0 && keys[t - 1] == 'constructor')) {
|
487
|
+
throw new TypeError('JSON-Patch: modifying `__proto__` or `constructor/prototype` prop is banned for security reasons, if this was on purpose, please set `banPrototypeModifications` flag false and pass it to this function. More info in fast-json-patch README');
|
488
488
|
}
|
489
489
|
|
490
490
|
if (validateOperation) {
|
@@ -766,7 +766,7 @@
|
|
766
766
|
|
767
767
|
/*!
|
768
768
|
* https://github.com/Starcounter-Jack/JSON-Patch
|
769
|
-
* (c) 2017 Joachim Wester
|
769
|
+
* (c) 2017-2021 Joachim Wester
|
770
770
|
* MIT license
|
771
771
|
*/
|
772
772
|
var beforeDict = new WeakMap();
|
@@ -1918,16 +1918,16 @@
|
|
1918
1918
|
|
1919
1919
|
const opts = ['includePrerelease', 'loose', 'rtl'];
|
1920
1920
|
|
1921
|
-
const parseOptions$
|
1921
|
+
const parseOptions$1 = options => !options ? {} : typeof options !== 'object' ? {
|
1922
1922
|
loose: true
|
1923
|
-
} : opts.filter(k => options[k]).reduce((
|
1924
|
-
|
1925
|
-
return
|
1923
|
+
} : opts.filter(k => options[k]).reduce((o, k) => {
|
1924
|
+
o[k] = true;
|
1925
|
+
return o;
|
1926
1926
|
}, {});
|
1927
1927
|
|
1928
|
-
var parseOptions_1 = parseOptions$
|
1928
|
+
var parseOptions_1 = parseOptions$1;
|
1929
1929
|
|
1930
|
-
var re$
|
1930
|
+
var re$1 = {exports: {}};
|
1931
1931
|
|
1932
1932
|
// Not necessarily the package version of this code.
|
1933
1933
|
|
@@ -1945,14 +1945,14 @@
|
|
1945
1945
|
MAX_SAFE_COMPONENT_LENGTH
|
1946
1946
|
};
|
1947
1947
|
|
1948
|
-
const debug$
|
1948
|
+
const debug$1 = typeof process === 'object' && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? function () {
|
1949
1949
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
1950
1950
|
args[_key] = arguments[_key];
|
1951
1951
|
}
|
1952
1952
|
|
1953
1953
|
return console.error('SEMVER', ...args);
|
1954
1954
|
} : () => {};
|
1955
|
-
var debug_1 = debug$
|
1955
|
+
var debug_1 = debug$1;
|
1956
1956
|
|
1957
1957
|
(function (module, exports) {
|
1958
1958
|
const {
|
@@ -1968,7 +1968,7 @@
|
|
1968
1968
|
|
1969
1969
|
const createToken = (name, value, isGlobal) => {
|
1970
1970
|
const index = R++;
|
1971
|
-
debug(index, value);
|
1971
|
+
debug(name, index, value);
|
1972
1972
|
t[name] = index;
|
1973
1973
|
src[index] = value;
|
1974
1974
|
re[index] = new RegExp(value, isGlobal ? 'g' : undefined);
|
@@ -2062,9 +2062,9 @@
|
|
2062
2062
|
|
2063
2063
|
createToken('STAR', '(<|>)?=?\\s*\\*'); // >=0.0.0 is like a star
|
2064
2064
|
|
2065
|
-
createToken('GTE0', '^\\s*>=\\s*0
|
2066
|
-
createToken('GTE0PRE', '^\\s*>=\\s*0
|
2067
|
-
})(re$
|
2065
|
+
createToken('GTE0', '^\\s*>=\\s*0\\.0\\.0\\s*$');
|
2066
|
+
createToken('GTE0PRE', '^\\s*>=\\s*0\\.0\\.0-0\\s*$');
|
2067
|
+
})(re$1, re$1.exports);
|
2068
2068
|
|
2069
2069
|
const numeric = /^[0-9]+$/;
|
2070
2070
|
|
@@ -2087,25 +2087,25 @@
|
|
2087
2087
|
rcompareIdentifiers
|
2088
2088
|
};
|
2089
2089
|
|
2090
|
-
const debug
|
2090
|
+
const debug = debug_1;
|
2091
2091
|
const {
|
2092
2092
|
MAX_LENGTH,
|
2093
2093
|
MAX_SAFE_INTEGER
|
2094
2094
|
} = constants;
|
2095
2095
|
const {
|
2096
|
-
re
|
2097
|
-
t
|
2098
|
-
} = re$
|
2099
|
-
const parseOptions
|
2096
|
+
re,
|
2097
|
+
t
|
2098
|
+
} = re$1.exports;
|
2099
|
+
const parseOptions = parseOptions_1;
|
2100
2100
|
const {
|
2101
2101
|
compareIdentifiers
|
2102
2102
|
} = identifiers;
|
2103
2103
|
|
2104
|
-
class SemVer$
|
2104
|
+
class SemVer$1 {
|
2105
2105
|
constructor(version, options) {
|
2106
|
-
options = parseOptions
|
2106
|
+
options = parseOptions(options);
|
2107
2107
|
|
2108
|
-
if (version instanceof SemVer$
|
2108
|
+
if (version instanceof SemVer$1) {
|
2109
2109
|
if (version.loose === !!options.loose && version.includePrerelease === !!options.includePrerelease) {
|
2110
2110
|
return version;
|
2111
2111
|
} else {
|
@@ -2119,13 +2119,13 @@
|
|
2119
2119
|
throw new TypeError("version is longer than ".concat(MAX_LENGTH, " characters"));
|
2120
2120
|
}
|
2121
2121
|
|
2122
|
-
debug
|
2122
|
+
debug('SemVer', version, options);
|
2123
2123
|
this.options = options;
|
2124
2124
|
this.loose = !!options.loose; // this isn't actually relevant for versions, but keep it so that we
|
2125
2125
|
// don't run into trouble passing this.options around.
|
2126
2126
|
|
2127
2127
|
this.includePrerelease = !!options.includePrerelease;
|
2128
|
-
const m = version.trim().match(options.loose ? re
|
2128
|
+
const m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]);
|
2129
2129
|
|
2130
2130
|
if (!m) {
|
2131
2131
|
throw new TypeError("Invalid Version: ".concat(version));
|
@@ -2185,14 +2185,14 @@
|
|
2185
2185
|
}
|
2186
2186
|
|
2187
2187
|
compare(other) {
|
2188
|
-
debug
|
2188
|
+
debug('SemVer.compare', this.version, this.options, other);
|
2189
2189
|
|
2190
|
-
if (!(other instanceof SemVer$
|
2190
|
+
if (!(other instanceof SemVer$1)) {
|
2191
2191
|
if (typeof other === 'string' && other === this.version) {
|
2192
2192
|
return 0;
|
2193
2193
|
}
|
2194
2194
|
|
2195
|
-
other = new SemVer$
|
2195
|
+
other = new SemVer$1(other, this.options);
|
2196
2196
|
}
|
2197
2197
|
|
2198
2198
|
if (other.version === this.version) {
|
@@ -2203,16 +2203,16 @@
|
|
2203
2203
|
}
|
2204
2204
|
|
2205
2205
|
compareMain(other) {
|
2206
|
-
if (!(other instanceof SemVer$
|
2207
|
-
other = new SemVer$
|
2206
|
+
if (!(other instanceof SemVer$1)) {
|
2207
|
+
other = new SemVer$1(other, this.options);
|
2208
2208
|
}
|
2209
2209
|
|
2210
2210
|
return compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch);
|
2211
2211
|
}
|
2212
2212
|
|
2213
2213
|
comparePre(other) {
|
2214
|
-
if (!(other instanceof SemVer$
|
2215
|
-
other = new SemVer$
|
2214
|
+
if (!(other instanceof SemVer$1)) {
|
2215
|
+
other = new SemVer$1(other, this.options);
|
2216
2216
|
} // NOT having a prerelease is > having one
|
2217
2217
|
|
2218
2218
|
|
@@ -2229,7 +2229,7 @@
|
|
2229
2229
|
do {
|
2230
2230
|
const a = this.prerelease[i];
|
2231
2231
|
const b = other.prerelease[i];
|
2232
|
-
debug
|
2232
|
+
debug('prerelease compare', i, a, b);
|
2233
2233
|
|
2234
2234
|
if (a === undefined && b === undefined) {
|
2235
2235
|
return 0;
|
@@ -2246,8 +2246,8 @@
|
|
2246
2246
|
}
|
2247
2247
|
|
2248
2248
|
compareBuild(other) {
|
2249
|
-
if (!(other instanceof SemVer$
|
2250
|
-
other = new SemVer$
|
2249
|
+
if (!(other instanceof SemVer$1)) {
|
2250
|
+
other = new SemVer$1(other, this.options);
|
2251
2251
|
}
|
2252
2252
|
|
2253
2253
|
let i = 0;
|
@@ -2255,7 +2255,7 @@
|
|
2255
2255
|
do {
|
2256
2256
|
const a = this.build[i];
|
2257
2257
|
const b = other.build[i];
|
2258
|
-
debug
|
2258
|
+
debug('prerelease compare', i, a, b);
|
2259
2259
|
|
2260
2260
|
if (a === undefined && b === undefined) {
|
2261
2261
|
return 0;
|
@@ -2372,7 +2372,7 @@
|
|
2372
2372
|
if (identifier) {
|
2373
2373
|
// 1.2.0-beta.1 bumps to 1.2.0-beta.2,
|
2374
2374
|
// 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0
|
2375
|
-
if (this.prerelease[0] ===
|
2375
|
+
if (compareIdentifiers(this.prerelease[0], identifier) === 0) {
|
2376
2376
|
if (isNaN(this.prerelease[1])) {
|
2377
2377
|
this.prerelease = [identifier, 0];
|
2378
2378
|
}
|
@@ -2394,11 +2394,11 @@
|
|
2394
2394
|
|
2395
2395
|
}
|
2396
2396
|
|
2397
|
-
var semver = SemVer$
|
2397
|
+
var semver = SemVer$1;
|
2398
2398
|
|
2399
|
-
const SemVer
|
2399
|
+
const SemVer = semver;
|
2400
2400
|
|
2401
|
-
const compare$6 = (a, b, loose) => new SemVer
|
2401
|
+
const compare$6 = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose));
|
2402
2402
|
|
2403
2403
|
var compare_1 = compare$6;
|
2404
2404
|
|
@@ -2445,16 +2445,28 @@
|
|
2445
2445
|
const lt = lt_1;
|
2446
2446
|
const lte = lte_1;
|
2447
2447
|
|
2448
|
-
const cmp
|
2448
|
+
const cmp = (a, op, b, loose) => {
|
2449
2449
|
switch (op) {
|
2450
2450
|
case '===':
|
2451
|
-
if (typeof a === 'object')
|
2452
|
-
|
2451
|
+
if (typeof a === 'object') {
|
2452
|
+
a = a.version;
|
2453
|
+
}
|
2454
|
+
|
2455
|
+
if (typeof b === 'object') {
|
2456
|
+
b = b.version;
|
2457
|
+
}
|
2458
|
+
|
2453
2459
|
return a === b;
|
2454
2460
|
|
2455
2461
|
case '!==':
|
2456
|
-
if (typeof a === 'object')
|
2457
|
-
|
2462
|
+
if (typeof a === 'object') {
|
2463
|
+
a = a.version;
|
2464
|
+
}
|
2465
|
+
|
2466
|
+
if (typeof b === 'object') {
|
2467
|
+
b = b.version;
|
2468
|
+
}
|
2469
|
+
|
2458
2470
|
return a !== b;
|
2459
2471
|
|
2460
2472
|
case '':
|
@@ -2482,599 +2494,641 @@
|
|
2482
2494
|
}
|
2483
2495
|
};
|
2484
2496
|
|
2485
|
-
var cmp_1 = cmp
|
2497
|
+
var cmp_1 = cmp;
|
2486
2498
|
|
2487
|
-
|
2499
|
+
var comparator;
|
2500
|
+
var hasRequiredComparator;
|
2488
2501
|
|
2489
|
-
|
2490
|
-
|
2491
|
-
|
2492
|
-
|
2502
|
+
function requireComparator() {
|
2503
|
+
if (hasRequiredComparator) return comparator;
|
2504
|
+
hasRequiredComparator = 1;
|
2505
|
+
const ANY = Symbol('SemVer ANY'); // hoisted class for cyclic dependency
|
2493
2506
|
|
2494
|
-
|
2495
|
-
|
2496
|
-
|
2497
|
-
if (comp instanceof Comparator$1) {
|
2498
|
-
if (comp.loose === !!options.loose) {
|
2499
|
-
return comp;
|
2500
|
-
} else {
|
2501
|
-
comp = comp.value;
|
2502
|
-
}
|
2507
|
+
class Comparator {
|
2508
|
+
static get ANY() {
|
2509
|
+
return ANY;
|
2503
2510
|
}
|
2504
2511
|
|
2505
|
-
|
2506
|
-
|
2507
|
-
this.loose = !!options.loose;
|
2508
|
-
this.parse(comp);
|
2512
|
+
constructor(comp, options) {
|
2513
|
+
options = parseOptions(options);
|
2509
2514
|
|
2510
|
-
|
2511
|
-
|
2512
|
-
|
2513
|
-
|
2514
|
-
|
2515
|
+
if (comp instanceof Comparator) {
|
2516
|
+
if (comp.loose === !!options.loose) {
|
2517
|
+
return comp;
|
2518
|
+
} else {
|
2519
|
+
comp = comp.value;
|
2520
|
+
}
|
2521
|
+
}
|
2515
2522
|
|
2516
|
-
|
2517
|
-
|
2523
|
+
debug('comparator', comp, options);
|
2524
|
+
this.options = options;
|
2525
|
+
this.loose = !!options.loose;
|
2526
|
+
this.parse(comp);
|
2518
2527
|
|
2519
|
-
|
2520
|
-
|
2521
|
-
|
2528
|
+
if (this.semver === ANY) {
|
2529
|
+
this.value = '';
|
2530
|
+
} else {
|
2531
|
+
this.value = this.operator + this.semver.version;
|
2532
|
+
}
|
2522
2533
|
|
2523
|
-
|
2524
|
-
throw new TypeError("Invalid comparator: ".concat(comp));
|
2534
|
+
debug('comp', this);
|
2525
2535
|
}
|
2526
2536
|
|
2527
|
-
|
2537
|
+
parse(comp) {
|
2538
|
+
const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR];
|
2539
|
+
const m = comp.match(r);
|
2528
2540
|
|
2529
|
-
|
2530
|
-
|
2531
|
-
|
2541
|
+
if (!m) {
|
2542
|
+
throw new TypeError("Invalid comparator: ".concat(comp));
|
2543
|
+
}
|
2532
2544
|
|
2545
|
+
this.operator = m[1] !== undefined ? m[1] : '';
|
2533
2546
|
|
2534
|
-
|
2535
|
-
|
2536
|
-
|
2537
|
-
this.semver = new SemVer$1(m[2], this.options.loose);
|
2538
|
-
}
|
2539
|
-
}
|
2547
|
+
if (this.operator === '=') {
|
2548
|
+
this.operator = '';
|
2549
|
+
} // if it literally is just '>' or '' then allow anything.
|
2540
2550
|
|
2541
|
-
toString() {
|
2542
|
-
return this.value;
|
2543
|
-
}
|
2544
2551
|
|
2545
|
-
|
2546
|
-
|
2552
|
+
if (!m[2]) {
|
2553
|
+
this.semver = ANY;
|
2554
|
+
} else {
|
2555
|
+
this.semver = new SemVer(m[2], this.options.loose);
|
2556
|
+
}
|
2557
|
+
}
|
2547
2558
|
|
2548
|
-
|
2549
|
-
return
|
2559
|
+
toString() {
|
2560
|
+
return this.value;
|
2550
2561
|
}
|
2551
2562
|
|
2552
|
-
|
2553
|
-
|
2554
|
-
|
2555
|
-
|
2556
|
-
return
|
2563
|
+
test(version) {
|
2564
|
+
debug('Comparator.test', version, this.options.loose);
|
2565
|
+
|
2566
|
+
if (this.semver === ANY || version === ANY) {
|
2567
|
+
return true;
|
2557
2568
|
}
|
2558
|
-
}
|
2559
2569
|
|
2560
|
-
|
2561
|
-
|
2570
|
+
if (typeof version === 'string') {
|
2571
|
+
try {
|
2572
|
+
version = new SemVer(version, this.options);
|
2573
|
+
} catch (er) {
|
2574
|
+
return false;
|
2575
|
+
}
|
2576
|
+
}
|
2562
2577
|
|
2563
|
-
|
2564
|
-
if (!(comp instanceof Comparator$1)) {
|
2565
|
-
throw new TypeError('a Comparator is required');
|
2578
|
+
return cmp(version, this.operator, this.semver, this.options);
|
2566
2579
|
}
|
2567
2580
|
|
2568
|
-
|
2569
|
-
|
2570
|
-
|
2571
|
-
|
2572
|
-
};
|
2573
|
-
}
|
2581
|
+
intersects(comp, options) {
|
2582
|
+
if (!(comp instanceof Comparator)) {
|
2583
|
+
throw new TypeError('a Comparator is required');
|
2584
|
+
}
|
2574
2585
|
|
2575
|
-
|
2576
|
-
|
2577
|
-
|
2586
|
+
if (!options || typeof options !== 'object') {
|
2587
|
+
options = {
|
2588
|
+
loose: !!options,
|
2589
|
+
includePrerelease: false
|
2590
|
+
};
|
2578
2591
|
}
|
2579
2592
|
|
2580
|
-
|
2581
|
-
|
2582
|
-
|
2583
|
-
|
2593
|
+
if (this.operator === '') {
|
2594
|
+
if (this.value === '') {
|
2595
|
+
return true;
|
2596
|
+
}
|
2597
|
+
|
2598
|
+
return new Range(comp.value, options).test(this.value);
|
2599
|
+
} else if (comp.operator === '') {
|
2600
|
+
if (comp.value === '') {
|
2601
|
+
return true;
|
2602
|
+
}
|
2603
|
+
|
2604
|
+
return new Range(this.value, options).test(comp.semver);
|
2584
2605
|
}
|
2585
2606
|
|
2586
|
-
|
2607
|
+
const sameDirectionIncreasing = (this.operator === '>=' || this.operator === '>') && (comp.operator === '>=' || comp.operator === '>');
|
2608
|
+
const sameDirectionDecreasing = (this.operator === '<=' || this.operator === '<') && (comp.operator === '<=' || comp.operator === '<');
|
2609
|
+
const sameSemVer = this.semver.version === comp.semver.version;
|
2610
|
+
const differentDirectionsInclusive = (this.operator === '>=' || this.operator === '<=') && (comp.operator === '>=' || comp.operator === '<=');
|
2611
|
+
const oppositeDirectionsLessThan = cmp(this.semver, '<', comp.semver, options) && (this.operator === '>=' || this.operator === '>') && (comp.operator === '<=' || comp.operator === '<');
|
2612
|
+
const oppositeDirectionsGreaterThan = cmp(this.semver, '>', comp.semver, options) && (this.operator === '<=' || this.operator === '<') && (comp.operator === '>=' || comp.operator === '>');
|
2613
|
+
return sameDirectionIncreasing || sameDirectionDecreasing || sameSemVer && differentDirectionsInclusive || oppositeDirectionsLessThan || oppositeDirectionsGreaterThan;
|
2587
2614
|
}
|
2588
2615
|
|
2589
|
-
const sameDirectionIncreasing = (this.operator === '>=' || this.operator === '>') && (comp.operator === '>=' || comp.operator === '>');
|
2590
|
-
const sameDirectionDecreasing = (this.operator === '<=' || this.operator === '<') && (comp.operator === '<=' || comp.operator === '<');
|
2591
|
-
const sameSemVer = this.semver.version === comp.semver.version;
|
2592
|
-
const differentDirectionsInclusive = (this.operator === '>=' || this.operator === '<=') && (comp.operator === '>=' || comp.operator === '<=');
|
2593
|
-
const oppositeDirectionsLessThan = cmp(this.semver, '<', comp.semver, options) && (this.operator === '>=' || this.operator === '>') && (comp.operator === '<=' || comp.operator === '<');
|
2594
|
-
const oppositeDirectionsGreaterThan = cmp(this.semver, '>', comp.semver, options) && (this.operator === '<=' || this.operator === '<') && (comp.operator === '>=' || comp.operator === '>');
|
2595
|
-
return sameDirectionIncreasing || sameDirectionDecreasing || sameSemVer && differentDirectionsInclusive || oppositeDirectionsLessThan || oppositeDirectionsGreaterThan;
|
2596
2616
|
}
|
2597
2617
|
|
2618
|
+
comparator = Comparator;
|
2619
|
+
const parseOptions = parseOptions_1;
|
2620
|
+
const {
|
2621
|
+
re,
|
2622
|
+
t
|
2623
|
+
} = re$1.exports;
|
2624
|
+
const cmp = cmp_1;
|
2625
|
+
const debug = debug_1;
|
2626
|
+
const SemVer = semver;
|
2627
|
+
const Range = requireRange();
|
2628
|
+
return comparator;
|
2598
2629
|
}
|
2599
2630
|
|
2600
|
-
var
|
2601
|
-
|
2602
|
-
const {
|
2603
|
-
re: re$1,
|
2604
|
-
t: t$1
|
2605
|
-
} = re$3.exports;
|
2606
|
-
const cmp = cmp_1;
|
2607
|
-
const debug$1 = debug_1;
|
2608
|
-
const SemVer$1 = semver;
|
2609
|
-
const Range$2 = range;
|
2610
|
-
|
2611
|
-
class Range$1 {
|
2612
|
-
constructor(range, options) {
|
2613
|
-
options = parseOptions(options);
|
2631
|
+
var range;
|
2632
|
+
var hasRequiredRange;
|
2614
2633
|
|
2615
|
-
|
2616
|
-
|
2617
|
-
|
2618
|
-
|
2619
|
-
|
2634
|
+
function requireRange() {
|
2635
|
+
if (hasRequiredRange) return range;
|
2636
|
+
hasRequiredRange = 1; // hoisted class for cyclic dependency
|
2637
|
+
|
2638
|
+
class Range {
|
2639
|
+
constructor(range, options) {
|
2640
|
+
options = parseOptions(options);
|
2641
|
+
|
2642
|
+
if (range instanceof Range) {
|
2643
|
+
if (range.loose === !!options.loose && range.includePrerelease === !!options.includePrerelease) {
|
2644
|
+
return range;
|
2645
|
+
} else {
|
2646
|
+
return new Range(range.raw, options);
|
2647
|
+
}
|
2620
2648
|
}
|
2621
|
-
}
|
2622
2649
|
|
2623
|
-
|
2624
|
-
|
2625
|
-
|
2626
|
-
|
2627
|
-
|
2628
|
-
|
2629
|
-
|
2650
|
+
if (range instanceof Comparator) {
|
2651
|
+
// just put it in the set and return
|
2652
|
+
this.raw = range.value;
|
2653
|
+
this.set = [[range]];
|
2654
|
+
this.format();
|
2655
|
+
return this;
|
2656
|
+
}
|
2630
2657
|
|
2631
|
-
|
2632
|
-
|
2633
|
-
|
2634
|
-
|
2635
|
-
|
2636
|
-
|
2637
|
-
|
2638
|
-
|
2639
|
-
|
2640
|
-
|
2641
|
-
|
2642
|
-
|
2643
|
-
|
2644
|
-
|
2645
|
-
|
2646
|
-
|
2647
|
-
|
2648
|
-
|
2649
|
-
|
2650
|
-
|
2651
|
-
|
2652
|
-
|
2653
|
-
|
2654
|
-
|
2655
|
-
|
2656
|
-
|
2658
|
+
this.options = options;
|
2659
|
+
this.loose = !!options.loose;
|
2660
|
+
this.includePrerelease = !!options.includePrerelease; // First, split based on boolean or ||
|
2661
|
+
|
2662
|
+
this.raw = range;
|
2663
|
+
this.set = range.split('||') // map the range to a 2d array of comparators
|
2664
|
+
.map(r => this.parseRange(r.trim())) // throw out any comparator lists that are empty
|
2665
|
+
// this generally means that it was not a valid range, which is allowed
|
2666
|
+
// in loose mode, but will still throw if the WHOLE range is invalid.
|
2667
|
+
.filter(c => c.length);
|
2668
|
+
|
2669
|
+
if (!this.set.length) {
|
2670
|
+
throw new TypeError("Invalid SemVer Range: ".concat(range));
|
2671
|
+
} // if we have any that are not the null set, throw out null sets.
|
2672
|
+
|
2673
|
+
|
2674
|
+
if (this.set.length > 1) {
|
2675
|
+
// keep the first one, in case they're all null sets
|
2676
|
+
const first = this.set[0];
|
2677
|
+
this.set = this.set.filter(c => !isNullSet(c[0]));
|
2678
|
+
|
2679
|
+
if (this.set.length === 0) {
|
2680
|
+
this.set = [first];
|
2681
|
+
} else if (this.set.length > 1) {
|
2682
|
+
// if we have any that are *, then the range is just *
|
2683
|
+
for (const c of this.set) {
|
2684
|
+
if (c.length === 1 && isAny(c[0])) {
|
2685
|
+
this.set = [c];
|
2686
|
+
break;
|
2687
|
+
}
|
2657
2688
|
}
|
2658
2689
|
}
|
2659
2690
|
}
|
2691
|
+
|
2692
|
+
this.format();
|
2660
2693
|
}
|
2661
2694
|
|
2662
|
-
|
2663
|
-
|
2695
|
+
format() {
|
2696
|
+
this.range = this.set.map(comps => {
|
2697
|
+
return comps.join(' ').trim();
|
2698
|
+
}).join('||').trim();
|
2699
|
+
return this.range;
|
2700
|
+
}
|
2664
2701
|
|
2665
|
-
|
2666
|
-
|
2667
|
-
|
2668
|
-
}).join('||').trim();
|
2669
|
-
return this.range;
|
2670
|
-
}
|
2702
|
+
toString() {
|
2703
|
+
return this.range;
|
2704
|
+
}
|
2671
2705
|
|
2672
|
-
|
2673
|
-
|
2674
|
-
|
2706
|
+
parseRange(range) {
|
2707
|
+
range = range.trim(); // memoize range parsing for performance.
|
2708
|
+
// this is a very hot path, and fully deterministic.
|
2675
2709
|
|
2676
|
-
|
2677
|
-
|
2678
|
-
|
2710
|
+
const memoOpts = Object.keys(this.options).join(',');
|
2711
|
+
const memoKey = "parseRange:".concat(memoOpts, ":").concat(range);
|
2712
|
+
const cached = cache.get(memoKey);
|
2679
2713
|
|
2680
|
-
|
2681
|
-
|
2682
|
-
|
2683
|
-
if (cached) return cached;
|
2684
|
-
const loose = this.options.loose; // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`
|
2714
|
+
if (cached) {
|
2715
|
+
return cached;
|
2716
|
+
}
|
2685
2717
|
|
2686
|
-
|
2687
|
-
range = range.replace(hr, hyphenReplace(this.options.includePrerelease));
|
2688
|
-
debug('hyphen replace', range); // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`
|
2718
|
+
const loose = this.options.loose; // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`
|
2689
2719
|
|
2690
|
-
|
2691
|
-
|
2720
|
+
const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE];
|
2721
|
+
range = range.replace(hr, hyphenReplace(this.options.includePrerelease));
|
2722
|
+
debug('hyphen replace', range); // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`
|
2692
2723
|
|
2693
|
-
|
2724
|
+
range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace);
|
2725
|
+
debug('comparator trim', range); // `~ 1.2.3` => `~1.2.3`
|
2694
2726
|
|
2695
|
-
|
2727
|
+
range = range.replace(re[t.TILDETRIM], tildeTrimReplace); // `^ 1.2.3` => `^1.2.3`
|
2696
2728
|
|
2697
|
-
|
2698
|
-
// ready to be split into comparators.
|
2729
|
+
range = range.replace(re[t.CARETTRIM], caretTrimReplace); // normalize spaces
|
2699
2730
|
|
2700
|
-
|
2701
|
-
|
2702
|
-
.map(comp => replaceGTE0(comp, this.options)) // in loose mode, throw out any that are not valid comparators
|
2703
|
-
.filter(this.options.loose ? comp => !!comp.match(compRe) : () => true).map(comp => new Comparator(comp, this.options)); // if any comparators are the null set, then replace with JUST null set
|
2704
|
-
// if more than one comparator, remove any * comparators
|
2705
|
-
// also, don't include the same comparator more than once
|
2731
|
+
range = range.split(/\s+/).join(' '); // At this point, the range is completely trimmed and
|
2732
|
+
// ready to be split into comparators.
|
2706
2733
|
|
2707
|
-
|
2708
|
-
|
2734
|
+
let rangeList = range.split(' ').map(comp => parseComparator(comp, this.options)).join(' ').split(/\s+/) // >=0.0.0 is equivalent to *
|
2735
|
+
.map(comp => replaceGTE0(comp, this.options));
|
2709
2736
|
|
2710
|
-
|
2711
|
-
|
2712
|
-
|
2713
|
-
|
2737
|
+
if (loose) {
|
2738
|
+
// in loose mode, throw out any that are not valid comparators
|
2739
|
+
rangeList = rangeList.filter(comp => {
|
2740
|
+
debug('loose invalid filter', comp, this.options);
|
2741
|
+
return !!comp.match(re[t.COMPARATORLOOSE]);
|
2742
|
+
});
|
2743
|
+
}
|
2714
2744
|
|
2715
|
-
|
2716
|
-
|
2717
|
-
|
2718
|
-
|
2719
|
-
|
2745
|
+
debug('range list', rangeList); // if any comparators are the null set, then replace with JUST null set
|
2746
|
+
// if more than one comparator, remove any * comparators
|
2747
|
+
// also, don't include the same comparator more than once
|
2748
|
+
|
2749
|
+
const rangeMap = new Map();
|
2750
|
+
const comparators = rangeList.map(comp => new Comparator(comp, this.options));
|
2751
|
+
|
2752
|
+
for (const comp of comparators) {
|
2753
|
+
if (isNullSet(comp)) {
|
2754
|
+
return [comp];
|
2755
|
+
}
|
2756
|
+
|
2757
|
+
rangeMap.set(comp.value, comp);
|
2758
|
+
}
|
2720
2759
|
|
2721
|
-
|
2722
|
-
|
2723
|
-
|
2760
|
+
if (rangeMap.size > 1 && rangeMap.has('')) {
|
2761
|
+
rangeMap.delete('');
|
2762
|
+
}
|
2763
|
+
|
2764
|
+
const result = [...rangeMap.values()];
|
2765
|
+
cache.set(memoKey, result);
|
2766
|
+
return result;
|
2724
2767
|
}
|
2725
2768
|
|
2726
|
-
|
2727
|
-
|
2728
|
-
|
2729
|
-
|
2730
|
-
|
2769
|
+
intersects(range, options) {
|
2770
|
+
if (!(range instanceof Range)) {
|
2771
|
+
throw new TypeError('a Range is required');
|
2772
|
+
}
|
2773
|
+
|
2774
|
+
return this.set.some(thisComparators => {
|
2775
|
+
return isSatisfiable(thisComparators, options) && range.set.some(rangeComparators => {
|
2776
|
+
return isSatisfiable(rangeComparators, options) && thisComparators.every(thisComparator => {
|
2777
|
+
return rangeComparators.every(rangeComparator => {
|
2778
|
+
return thisComparator.intersects(rangeComparator, options);
|
2779
|
+
});
|
2731
2780
|
});
|
2732
2781
|
});
|
2733
2782
|
});
|
2734
|
-
}
|
2735
|
-
} // if ANY of the sets match ALL of its comparators, then pass
|
2736
|
-
|
2783
|
+
} // if ANY of the sets match ALL of its comparators, then pass
|
2737
2784
|
|
2738
|
-
test(version) {
|
2739
|
-
if (!version) {
|
2740
|
-
return false;
|
2741
|
-
}
|
2742
2785
|
|
2743
|
-
|
2744
|
-
|
2745
|
-
version = new SemVer(version, this.options);
|
2746
|
-
} catch (er) {
|
2786
|
+
test(version) {
|
2787
|
+
if (!version) {
|
2747
2788
|
return false;
|
2748
2789
|
}
|
2749
|
-
}
|
2750
2790
|
|
2751
|
-
|
2752
|
-
|
2753
|
-
|
2791
|
+
if (typeof version === 'string') {
|
2792
|
+
try {
|
2793
|
+
version = new SemVer(version, this.options);
|
2794
|
+
} catch (er) {
|
2795
|
+
return false;
|
2796
|
+
}
|
2797
|
+
}
|
2798
|
+
|
2799
|
+
for (let i = 0; i < this.set.length; i++) {
|
2800
|
+
if (testSet(this.set[i], version, this.options)) {
|
2801
|
+
return true;
|
2802
|
+
}
|
2754
2803
|
}
|
2804
|
+
|
2805
|
+
return false;
|
2755
2806
|
}
|
2756
2807
|
|
2757
|
-
return false;
|
2758
2808
|
}
|
2759
2809
|
|
2760
|
-
|
2810
|
+
range = Range;
|
2811
|
+
const LRU = lruCache;
|
2812
|
+
const cache = new LRU({
|
2813
|
+
max: 1000
|
2814
|
+
});
|
2815
|
+
const parseOptions = parseOptions_1;
|
2816
|
+
const Comparator = requireComparator();
|
2817
|
+
const debug = debug_1;
|
2818
|
+
const SemVer = semver;
|
2819
|
+
const {
|
2820
|
+
re,
|
2821
|
+
t,
|
2822
|
+
comparatorTrimReplace,
|
2823
|
+
tildeTrimReplace,
|
2824
|
+
caretTrimReplace
|
2825
|
+
} = re$1.exports;
|
2761
2826
|
|
2762
|
-
|
2763
|
-
const LRU = lruCache;
|
2764
|
-
const cache = new LRU({
|
2765
|
-
max: 1000
|
2766
|
-
});
|
2767
|
-
const parseOptions = parseOptions_1;
|
2768
|
-
const Comparator = comparator;
|
2769
|
-
const debug = debug_1;
|
2770
|
-
const SemVer = semver;
|
2771
|
-
const {
|
2772
|
-
re,
|
2773
|
-
t,
|
2774
|
-
comparatorTrimReplace,
|
2775
|
-
tildeTrimReplace,
|
2776
|
-
caretTrimReplace
|
2777
|
-
} = re$3.exports;
|
2827
|
+
const isNullSet = c => c.value === '<0.0.0-0';
|
2778
2828
|
|
2779
|
-
|
2829
|
+
const isAny = c => c.value === ''; // take a set of comparators and determine whether there
|
2830
|
+
// exists a version which can satisfy it
|
2780
2831
|
|
2781
|
-
const isAny = c => c.value === ''; // take a set of comparators and determine whether there
|
2782
|
-
// exists a version which can satisfy it
|
2783
2832
|
|
2833
|
+
const isSatisfiable = (comparators, options) => {
|
2834
|
+
let result = true;
|
2835
|
+
const remainingComparators = comparators.slice();
|
2836
|
+
let testComparator = remainingComparators.pop();
|
2784
2837
|
|
2785
|
-
|
2786
|
-
|
2787
|
-
|
2788
|
-
|
2838
|
+
while (result && remainingComparators.length) {
|
2839
|
+
result = remainingComparators.every(otherComparator => {
|
2840
|
+
return testComparator.intersects(otherComparator, options);
|
2841
|
+
});
|
2842
|
+
testComparator = remainingComparators.pop();
|
2843
|
+
}
|
2789
2844
|
|
2790
|
-
|
2791
|
-
|
2792
|
-
|
2793
|
-
|
2794
|
-
|
2795
|
-
|
2796
|
-
|
2797
|
-
|
2798
|
-
|
2799
|
-
|
2800
|
-
|
2801
|
-
|
2802
|
-
|
2803
|
-
|
2804
|
-
|
2805
|
-
|
2806
|
-
|
2807
|
-
|
2808
|
-
debug('tildes', comp);
|
2809
|
-
comp = replaceXRanges(comp, options);
|
2810
|
-
debug('xrange', comp);
|
2811
|
-
comp = replaceStars(comp, options);
|
2812
|
-
debug('stars', comp);
|
2813
|
-
return comp;
|
2814
|
-
};
|
2845
|
+
return result;
|
2846
|
+
}; // comprised of xranges, tildes, stars, and gtlt's at this point.
|
2847
|
+
// already replaced the hyphen ranges
|
2848
|
+
// turn into a set of JUST comparators.
|
2849
|
+
|
2850
|
+
|
2851
|
+
const parseComparator = (comp, options) => {
|
2852
|
+
debug('comp', comp, options);
|
2853
|
+
comp = replaceCarets(comp, options);
|
2854
|
+
debug('caret', comp);
|
2855
|
+
comp = replaceTildes(comp, options);
|
2856
|
+
debug('tildes', comp);
|
2857
|
+
comp = replaceXRanges(comp, options);
|
2858
|
+
debug('xrange', comp);
|
2859
|
+
comp = replaceStars(comp, options);
|
2860
|
+
debug('stars', comp);
|
2861
|
+
return comp;
|
2862
|
+
};
|
2815
2863
|
|
2816
|
-
|
2817
|
-
|
2818
|
-
|
2819
|
-
|
2820
|
-
|
2821
|
-
|
2822
|
-
|
2823
|
-
|
2824
|
-
const replaceTildes = (comp, options) => comp.trim().split(/\s+/).map(comp => {
|
2825
|
-
return replaceTilde(comp, options);
|
2826
|
-
}).join(' ');
|
2827
|
-
|
2828
|
-
const replaceTilde = (comp, options) => {
|
2829
|
-
const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE];
|
2830
|
-
return comp.replace(r, (_, M, m, p, pr) => {
|
2831
|
-
debug('tilde', comp, _, M, m, p, pr);
|
2832
|
-
let ret;
|
2833
|
-
|
2834
|
-
if (isX(M)) {
|
2835
|
-
ret = '';
|
2836
|
-
} else if (isX(m)) {
|
2837
|
-
ret = ">=".concat(M, ".0.0 <").concat(+M + 1, ".0.0-0");
|
2838
|
-
} else if (isX(p)) {
|
2839
|
-
// ~1.2 == >=1.2.0 <1.3.0-0
|
2840
|
-
ret = ">=".concat(M, ".").concat(m, ".0 <").concat(M, ".").concat(+m + 1, ".0-0");
|
2841
|
-
} else if (pr) {
|
2842
|
-
debug('replaceTilde pr', pr);
|
2843
|
-
ret = ">=".concat(M, ".").concat(m, ".").concat(p, "-").concat(pr, " <").concat(M, ".").concat(+m + 1, ".0-0");
|
2844
|
-
} else {
|
2845
|
-
// ~1.2.3 == >=1.2.3 <1.3.0-0
|
2846
|
-
ret = ">=".concat(M, ".").concat(m, ".").concat(p, " <").concat(M, ".").concat(+m + 1, ".0-0");
|
2847
|
-
}
|
2864
|
+
const isX = id => !id || id.toLowerCase() === 'x' || id === '*'; // ~, ~> --> * (any, kinda silly)
|
2865
|
+
// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0-0
|
2866
|
+
// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0-0
|
2867
|
+
// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0-0
|
2868
|
+
// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0-0
|
2869
|
+
// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0-0
|
2848
2870
|
|
2849
|
-
|
2850
|
-
|
2851
|
-
|
2852
|
-
|
2853
|
-
|
2854
|
-
|
2855
|
-
|
2856
|
-
|
2857
|
-
|
2858
|
-
|
2859
|
-
|
2860
|
-
|
2861
|
-
|
2862
|
-
|
2863
|
-
|
2864
|
-
|
2865
|
-
|
2866
|
-
|
2867
|
-
|
2868
|
-
|
2869
|
-
|
2870
|
-
let ret;
|
2871
|
-
|
2872
|
-
if (isX(M)) {
|
2873
|
-
ret = '';
|
2874
|
-
} else if (isX(m)) {
|
2875
|
-
ret = ">=".concat(M, ".0.0").concat(z, " <").concat(+M + 1, ".0.0-0");
|
2876
|
-
} else if (isX(p)) {
|
2877
|
-
if (M === '0') {
|
2878
|
-
ret = ">=".concat(M, ".").concat(m, ".0").concat(z, " <").concat(M, ".").concat(+m + 1, ".0-0");
|
2871
|
+
|
2872
|
+
const replaceTildes = (comp, options) => comp.trim().split(/\s+/).map(c => {
|
2873
|
+
return replaceTilde(c, options);
|
2874
|
+
}).join(' ');
|
2875
|
+
|
2876
|
+
const replaceTilde = (comp, options) => {
|
2877
|
+
const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE];
|
2878
|
+
return comp.replace(r, (_, M, m, p, pr) => {
|
2879
|
+
debug('tilde', comp, _, M, m, p, pr);
|
2880
|
+
let ret;
|
2881
|
+
|
2882
|
+
if (isX(M)) {
|
2883
|
+
ret = '';
|
2884
|
+
} else if (isX(m)) {
|
2885
|
+
ret = ">=".concat(M, ".0.0 <").concat(+M + 1, ".0.0-0");
|
2886
|
+
} else if (isX(p)) {
|
2887
|
+
// ~1.2 == >=1.2.0 <1.3.0-0
|
2888
|
+
ret = ">=".concat(M, ".").concat(m, ".0 <").concat(M, ".").concat(+m + 1, ".0-0");
|
2889
|
+
} else if (pr) {
|
2890
|
+
debug('replaceTilde pr', pr);
|
2891
|
+
ret = ">=".concat(M, ".").concat(m, ".").concat(p, "-").concat(pr, " <").concat(M, ".").concat(+m + 1, ".0-0");
|
2879
2892
|
} else {
|
2880
|
-
|
2893
|
+
// ~1.2.3 == >=1.2.3 <1.3.0-0
|
2894
|
+
ret = ">=".concat(M, ".").concat(m, ".").concat(p, " <").concat(M, ".").concat(+m + 1, ".0-0");
|
2881
2895
|
}
|
2882
|
-
} else if (pr) {
|
2883
|
-
debug('replaceCaret pr', pr);
|
2884
2896
|
|
2885
|
-
|
2886
|
-
|
2887
|
-
|
2897
|
+
debug('tilde return', ret);
|
2898
|
+
return ret;
|
2899
|
+
});
|
2900
|
+
}; // ^ --> * (any, kinda silly)
|
2901
|
+
// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0-0
|
2902
|
+
// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0-0
|
2903
|
+
// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0-0
|
2904
|
+
// ^1.2.3 --> >=1.2.3 <2.0.0-0
|
2905
|
+
// ^1.2.0 --> >=1.2.0 <2.0.0-0
|
2906
|
+
|
2907
|
+
|
2908
|
+
const replaceCarets = (comp, options) => comp.trim().split(/\s+/).map(c => {
|
2909
|
+
return replaceCaret(c, options);
|
2910
|
+
}).join(' ');
|
2911
|
+
|
2912
|
+
const replaceCaret = (comp, options) => {
|
2913
|
+
debug('caret', comp, options);
|
2914
|
+
const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET];
|
2915
|
+
const z = options.includePrerelease ? '-0' : '';
|
2916
|
+
return comp.replace(r, (_, M, m, p, pr) => {
|
2917
|
+
debug('caret', comp, _, M, m, p, pr);
|
2918
|
+
let ret;
|
2919
|
+
|
2920
|
+
if (isX(M)) {
|
2921
|
+
ret = '';
|
2922
|
+
} else if (isX(m)) {
|
2923
|
+
ret = ">=".concat(M, ".0.0").concat(z, " <").concat(+M + 1, ".0.0-0");
|
2924
|
+
} else if (isX(p)) {
|
2925
|
+
if (M === '0') {
|
2926
|
+
ret = ">=".concat(M, ".").concat(m, ".0").concat(z, " <").concat(M, ".").concat(+m + 1, ".0-0");
|
2888
2927
|
} else {
|
2889
|
-
ret = ">=".concat(M, ".").concat(m, ".").concat(
|
2928
|
+
ret = ">=".concat(M, ".").concat(m, ".0").concat(z, " <").concat(+M + 1, ".0.0-0");
|
2890
2929
|
}
|
2891
|
-
} else {
|
2892
|
-
|
2893
|
-
}
|
2894
|
-
} else {
|
2895
|
-
debug('no pr');
|
2930
|
+
} else if (pr) {
|
2931
|
+
debug('replaceCaret pr', pr);
|
2896
2932
|
|
2897
|
-
|
2898
|
-
|
2899
|
-
|
2933
|
+
if (M === '0') {
|
2934
|
+
if (m === '0') {
|
2935
|
+
ret = ">=".concat(M, ".").concat(m, ".").concat(p, "-").concat(pr, " <").concat(M, ".").concat(m, ".").concat(+p + 1, "-0");
|
2936
|
+
} else {
|
2937
|
+
ret = ">=".concat(M, ".").concat(m, ".").concat(p, "-").concat(pr, " <").concat(M, ".").concat(+m + 1, ".0-0");
|
2938
|
+
}
|
2900
2939
|
} else {
|
2901
|
-
ret = ">=".concat(M, ".").concat(m, ".").concat(p
|
2940
|
+
ret = ">=".concat(M, ".").concat(m, ".").concat(p, "-").concat(pr, " <").concat(+M + 1, ".0.0-0");
|
2902
2941
|
}
|
2903
2942
|
} else {
|
2904
|
-
|
2943
|
+
debug('no pr');
|
2944
|
+
|
2945
|
+
if (M === '0') {
|
2946
|
+
if (m === '0') {
|
2947
|
+
ret = ">=".concat(M, ".").concat(m, ".").concat(p).concat(z, " <").concat(M, ".").concat(m, ".").concat(+p + 1, "-0");
|
2948
|
+
} else {
|
2949
|
+
ret = ">=".concat(M, ".").concat(m, ".").concat(p).concat(z, " <").concat(M, ".").concat(+m + 1, ".0-0");
|
2950
|
+
}
|
2951
|
+
} else {
|
2952
|
+
ret = ">=".concat(M, ".").concat(m, ".").concat(p, " <").concat(+M + 1, ".0.0-0");
|
2953
|
+
}
|
2905
2954
|
}
|
2906
|
-
}
|
2907
2955
|
|
2908
|
-
|
2909
|
-
|
2910
|
-
|
2911
|
-
|
2956
|
+
debug('caret return', ret);
|
2957
|
+
return ret;
|
2958
|
+
});
|
2959
|
+
};
|
2912
2960
|
|
2913
|
-
|
2914
|
-
|
2915
|
-
|
2916
|
-
|
2917
|
-
|
2918
|
-
|
2961
|
+
const replaceXRanges = (comp, options) => {
|
2962
|
+
debug('replaceXRanges', comp, options);
|
2963
|
+
return comp.split(/\s+/).map(c => {
|
2964
|
+
return replaceXRange(c, options);
|
2965
|
+
}).join(' ');
|
2966
|
+
};
|
2919
2967
|
|
2920
|
-
|
2921
|
-
|
2922
|
-
|
2923
|
-
|
2924
|
-
|
2925
|
-
|
2926
|
-
|
2927
|
-
|
2928
|
-
|
2968
|
+
const replaceXRange = (comp, options) => {
|
2969
|
+
comp = comp.trim();
|
2970
|
+
const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE];
|
2971
|
+
return comp.replace(r, (ret, gtlt, M, m, p, pr) => {
|
2972
|
+
debug('xRange', comp, ret, gtlt, M, m, p, pr);
|
2973
|
+
const xM = isX(M);
|
2974
|
+
const xm = xM || isX(m);
|
2975
|
+
const xp = xm || isX(p);
|
2976
|
+
const anyX = xp;
|
2929
2977
|
|
2930
|
-
|
2931
|
-
|
2932
|
-
|
2933
|
-
|
2978
|
+
if (gtlt === '=' && anyX) {
|
2979
|
+
gtlt = '';
|
2980
|
+
} // if we're including prereleases in the match, then we need
|
2981
|
+
// to fix this to -0, the lowest possible prerelease value
|
2934
2982
|
|
2935
2983
|
|
2936
|
-
|
2984
|
+
pr = options.includePrerelease ? '-0' : '';
|
2937
2985
|
|
2938
|
-
|
2939
|
-
|
2940
|
-
|
2941
|
-
|
2942
|
-
|
2943
|
-
|
2944
|
-
|
2945
|
-
|
2946
|
-
|
2947
|
-
|
2948
|
-
|
2949
|
-
|
2950
|
-
|
2951
|
-
|
2986
|
+
if (xM) {
|
2987
|
+
if (gtlt === '>' || gtlt === '<') {
|
2988
|
+
// nothing is allowed
|
2989
|
+
ret = '<0.0.0-0';
|
2990
|
+
} else {
|
2991
|
+
// nothing is forbidden
|
2992
|
+
ret = '*';
|
2993
|
+
}
|
2994
|
+
} else if (gtlt && anyX) {
|
2995
|
+
// we know patch is an x, because we have any x at all.
|
2996
|
+
// replace X with 0
|
2997
|
+
if (xm) {
|
2998
|
+
m = 0;
|
2999
|
+
}
|
2952
3000
|
|
2953
|
-
|
3001
|
+
p = 0;
|
2954
3002
|
|
2955
|
-
|
2956
|
-
|
2957
|
-
|
2958
|
-
|
3003
|
+
if (gtlt === '>') {
|
3004
|
+
// >1 => >=2.0.0
|
3005
|
+
// >1.2 => >=1.3.0
|
3006
|
+
gtlt = '>=';
|
2959
3007
|
|
2960
|
-
|
2961
|
-
|
2962
|
-
|
2963
|
-
|
2964
|
-
|
2965
|
-
|
2966
|
-
|
3008
|
+
if (xm) {
|
3009
|
+
M = +M + 1;
|
3010
|
+
m = 0;
|
3011
|
+
p = 0;
|
3012
|
+
} else {
|
3013
|
+
m = +m + 1;
|
3014
|
+
p = 0;
|
3015
|
+
}
|
3016
|
+
} else if (gtlt === '<=') {
|
3017
|
+
// <=0.7.x is actually <0.8.0, since any 0.7.x should
|
3018
|
+
// pass. Similarly, <=7.x is actually <8.0.0, etc.
|
3019
|
+
gtlt = '<';
|
3020
|
+
|
3021
|
+
if (xm) {
|
3022
|
+
M = +M + 1;
|
3023
|
+
} else {
|
3024
|
+
m = +m + 1;
|
3025
|
+
}
|
2967
3026
|
}
|
2968
|
-
} else if (gtlt === '<=') {
|
2969
|
-
// <=0.7.x is actually <0.8.0, since any 0.7.x should
|
2970
|
-
// pass. Similarly, <=7.x is actually <8.0.0, etc.
|
2971
|
-
gtlt = '<';
|
2972
3027
|
|
2973
|
-
if (
|
2974
|
-
|
2975
|
-
} else {
|
2976
|
-
m = +m + 1;
|
3028
|
+
if (gtlt === '<') {
|
3029
|
+
pr = '-0';
|
2977
3030
|
}
|
3031
|
+
|
3032
|
+
ret = "".concat(gtlt + M, ".").concat(m, ".").concat(p).concat(pr);
|
3033
|
+
} else if (xm) {
|
3034
|
+
ret = ">=".concat(M, ".0.0").concat(pr, " <").concat(+M + 1, ".0.0-0");
|
3035
|
+
} else if (xp) {
|
3036
|
+
ret = ">=".concat(M, ".").concat(m, ".0").concat(pr, " <").concat(M, ".").concat(+m + 1, ".0-0");
|
2978
3037
|
}
|
2979
3038
|
|
2980
|
-
|
2981
|
-
ret
|
2982
|
-
}
|
2983
|
-
|
2984
|
-
|
2985
|
-
ret = ">=".concat(M, ".").concat(m, ".0").concat(pr, " <").concat(M, ".").concat(+m + 1, ".0-0");
|
2986
|
-
}
|
3039
|
+
debug('xRange return', ret);
|
3040
|
+
return ret;
|
3041
|
+
});
|
3042
|
+
}; // Because * is AND-ed with everything else in the comparator,
|
3043
|
+
// and '' means "any version", just remove the *s entirely.
|
2987
3044
|
|
2988
|
-
debug('xRange return', ret);
|
2989
|
-
return ret;
|
2990
|
-
});
|
2991
|
-
}; // Because * is AND-ed with everything else in the comparator,
|
2992
|
-
// and '' means "any version", just remove the *s entirely.
|
2993
3045
|
|
3046
|
+
const replaceStars = (comp, options) => {
|
3047
|
+
debug('replaceStars', comp, options); // Looseness is ignored here. star is always as loose as it gets!
|
2994
3048
|
|
2995
|
-
|
2996
|
-
|
3049
|
+
return comp.trim().replace(re[t.STAR], '');
|
3050
|
+
};
|
2997
3051
|
|
2998
|
-
|
2999
|
-
|
3052
|
+
const replaceGTE0 = (comp, options) => {
|
3053
|
+
debug('replaceGTE0', comp, options);
|
3054
|
+
return comp.trim().replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], '');
|
3055
|
+
}; // This function is passed to string.replace(re[t.HYPHENRANGE])
|
3056
|
+
// M, m, patch, prerelease, build
|
3057
|
+
// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5
|
3058
|
+
// 1.2.3 - 3.4 => >=1.2.0 <3.5.0-0 Any 3.4.x will do
|
3059
|
+
// 1.2 - 3.4 => >=1.2.0 <3.5.0-0
|
3060
|
+
|
3061
|
+
|
3062
|
+
const hyphenReplace = incPr => ($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr, tb) => {
|
3063
|
+
if (isX(fM)) {
|
3064
|
+
from = '';
|
3065
|
+
} else if (isX(fm)) {
|
3066
|
+
from = ">=".concat(fM, ".0.0").concat(incPr ? '-0' : '');
|
3067
|
+
} else if (isX(fp)) {
|
3068
|
+
from = ">=".concat(fM, ".").concat(fm, ".0").concat(incPr ? '-0' : '');
|
3069
|
+
} else if (fpr) {
|
3070
|
+
from = ">=".concat(from);
|
3071
|
+
} else {
|
3072
|
+
from = ">=".concat(from).concat(incPr ? '-0' : '');
|
3073
|
+
}
|
3000
3074
|
|
3001
|
-
|
3002
|
-
|
3003
|
-
|
3004
|
-
|
3005
|
-
|
3006
|
-
|
3007
|
-
|
3008
|
-
|
3009
|
-
|
3010
|
-
|
3011
|
-
|
3012
|
-
|
3013
|
-
|
3014
|
-
} else if (isX(fm)) {
|
3015
|
-
from = ">=".concat(fM, ".0.0").concat(incPr ? '-0' : '');
|
3016
|
-
} else if (isX(fp)) {
|
3017
|
-
from = ">=".concat(fM, ".").concat(fm, ".0").concat(incPr ? '-0' : '');
|
3018
|
-
} else if (fpr) {
|
3019
|
-
from = ">=".concat(from);
|
3020
|
-
} else {
|
3021
|
-
from = ">=".concat(from).concat(incPr ? '-0' : '');
|
3022
|
-
}
|
3023
|
-
|
3024
|
-
if (isX(tM)) {
|
3025
|
-
to = '';
|
3026
|
-
} else if (isX(tm)) {
|
3027
|
-
to = "<".concat(+tM + 1, ".0.0-0");
|
3028
|
-
} else if (isX(tp)) {
|
3029
|
-
to = "<".concat(tM, ".").concat(+tm + 1, ".0-0");
|
3030
|
-
} else if (tpr) {
|
3031
|
-
to = "<=".concat(tM, ".").concat(tm, ".").concat(tp, "-").concat(tpr);
|
3032
|
-
} else if (incPr) {
|
3033
|
-
to = "<".concat(tM, ".").concat(tm, ".").concat(+tp + 1, "-0");
|
3034
|
-
} else {
|
3035
|
-
to = "<=".concat(to);
|
3036
|
-
}
|
3075
|
+
if (isX(tM)) {
|
3076
|
+
to = '';
|
3077
|
+
} else if (isX(tm)) {
|
3078
|
+
to = "<".concat(+tM + 1, ".0.0-0");
|
3079
|
+
} else if (isX(tp)) {
|
3080
|
+
to = "<".concat(tM, ".").concat(+tm + 1, ".0-0");
|
3081
|
+
} else if (tpr) {
|
3082
|
+
to = "<=".concat(tM, ".").concat(tm, ".").concat(tp, "-").concat(tpr);
|
3083
|
+
} else if (incPr) {
|
3084
|
+
to = "<".concat(tM, ".").concat(tm, ".").concat(+tp + 1, "-0");
|
3085
|
+
} else {
|
3086
|
+
to = "<=".concat(to);
|
3087
|
+
}
|
3037
3088
|
|
3038
|
-
|
3039
|
-
|
3089
|
+
return "".concat(from, " ").concat(to).trim();
|
3090
|
+
};
|
3040
3091
|
|
3041
|
-
|
3042
|
-
|
3043
|
-
|
3044
|
-
|
3092
|
+
const testSet = (set, version, options) => {
|
3093
|
+
for (let i = 0; i < set.length; i++) {
|
3094
|
+
if (!set[i].test(version)) {
|
3095
|
+
return false;
|
3096
|
+
}
|
3045
3097
|
}
|
3046
|
-
}
|
3047
3098
|
|
3048
|
-
|
3049
|
-
|
3050
|
-
|
3051
|
-
|
3052
|
-
|
3053
|
-
|
3054
|
-
|
3055
|
-
|
3099
|
+
if (version.prerelease.length && !options.includePrerelease) {
|
3100
|
+
// Find the set of versions that are allowed to have prereleases
|
3101
|
+
// For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0
|
3102
|
+
// That should allow `1.2.3-pr.2` to pass.
|
3103
|
+
// However, `1.2.4-alpha.notready` should NOT be allowed,
|
3104
|
+
// even though it's within the range set by the comparators.
|
3105
|
+
for (let i = 0; i < set.length; i++) {
|
3106
|
+
debug(set[i].semver);
|
3056
3107
|
|
3057
|
-
|
3058
|
-
|
3059
|
-
|
3108
|
+
if (set[i].semver === Comparator.ANY) {
|
3109
|
+
continue;
|
3110
|
+
}
|
3060
3111
|
|
3061
|
-
|
3062
|
-
|
3112
|
+
if (set[i].semver.prerelease.length > 0) {
|
3113
|
+
const allowed = set[i].semver;
|
3063
3114
|
|
3064
|
-
|
3065
|
-
|
3115
|
+
if (allowed.major === version.major && allowed.minor === version.minor && allowed.patch === version.patch) {
|
3116
|
+
return true;
|
3117
|
+
}
|
3066
3118
|
}
|
3067
|
-
}
|
3068
|
-
} // Version has a -pre, but it's not one of the ones we like.
|
3119
|
+
} // Version has a -pre, but it's not one of the ones we like.
|
3069
3120
|
|
3070
3121
|
|
3071
|
-
|
3072
|
-
|
3122
|
+
return false;
|
3123
|
+
}
|
3073
3124
|
|
3074
|
-
|
3075
|
-
|
3125
|
+
return true;
|
3126
|
+
};
|
3127
|
+
|
3128
|
+
return range;
|
3129
|
+
}
|
3076
3130
|
|
3077
|
-
const Range =
|
3131
|
+
const Range = requireRange();
|
3078
3132
|
|
3079
3133
|
const satisfies = (version, range, options) => {
|
3080
3134
|
try {
|
@@ -4340,7 +4394,7 @@
|
|
4340
4394
|
} // generated with build-style.sh
|
4341
4395
|
|
4342
4396
|
|
4343
|
-
var defaultStyle = "#vg-tooltip-element {\n visibility: hidden;\n padding: 8px;\n position: fixed;\n z-index: 1000;\n font-family: sans-serif;\n font-size: 11px;\n border-radius: 3px;\n box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);\n /* The default theme is the light theme. */\n background-color: rgba(255, 255, 255, 0.95);\n border: 1px solid #d9d9d9;\n color: black
|
4397
|
+
var defaultStyle = "#vg-tooltip-element {\n visibility: hidden;\n padding: 8px;\n position: fixed;\n z-index: 1000;\n font-family: sans-serif;\n font-size: 11px;\n border-radius: 3px;\n box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);\n /* The default theme is the light theme. */\n background-color: rgba(255, 255, 255, 0.95);\n border: 1px solid #d9d9d9;\n color: black;\n}\n#vg-tooltip-element.visible {\n visibility: visible;\n}\n#vg-tooltip-element h2 {\n margin-top: 0;\n margin-bottom: 10px;\n font-size: 13px;\n}\n#vg-tooltip-element img {\n max-width: 200px;\n max-height: 200px;\n}\n#vg-tooltip-element table {\n border-spacing: 0;\n}\n#vg-tooltip-element table tr {\n border: none;\n}\n#vg-tooltip-element table tr td {\n overflow: hidden;\n text-overflow: ellipsis;\n padding-top: 2px;\n padding-bottom: 2px;\n}\n#vg-tooltip-element table tr td.key {\n color: #808080;\n max-width: 150px;\n text-align: right;\n padding-right: 4px;\n}\n#vg-tooltip-element table tr td.value {\n display: block;\n max-width: 300px;\n max-height: 7em;\n text-align: left;\n}\n#vg-tooltip-element.dark-theme {\n background-color: rgba(32, 32, 32, 0.9);\n border: 1px solid #f5f5f5;\n color: white;\n}\n#vg-tooltip-element.dark-theme td.key {\n color: #bfbfbf;\n}\n";
|
4344
4398
|
const EL_ID = 'vg-tooltip-element';
|
4345
4399
|
const DEFAULT_OPTIONS = {
|
4346
4400
|
/**
|
@@ -4488,11 +4542,10 @@
|
|
4488
4542
|
this.el = document.createElement('div');
|
4489
4543
|
this.el.setAttribute('id', this.options.id);
|
4490
4544
|
this.el.classList.add('vg-tooltip');
|
4491
|
-
document.body
|
4492
|
-
|
4545
|
+
const tooltipContainer = (_a = document.fullscreenElement) !== null && _a !== void 0 ? _a : document.body;
|
4546
|
+
tooltipContainer.appendChild(this.el);
|
4547
|
+
} // hide tooltip for null, undefined, or empty string values
|
4493
4548
|
|
4494
|
-
const tooltipContainer = (_a = document.fullscreenElement) !== null && _a !== void 0 ? _a : document.body;
|
4495
|
-
tooltipContainer.appendChild(this.el); // hide tooltip for null, undefined, or empty string values
|
4496
4549
|
|
4497
4550
|
if (value == null || value === '') {
|
4498
4551
|
this.el.classList.remove('visible', "".concat(this.options.theme, "-theme"));
|
@@ -4550,7 +4603,7 @@
|
|
4550
4603
|
}
|
4551
4604
|
|
4552
4605
|
// generated with build-style.sh
|
4553
|
-
var embedStyle = ".vega-embed {\n position: relative;\n display: inline-block;\n box-sizing: border-box;\n}\n.vega-embed.has-actions {\n padding-right: 38px;\n}\n.vega-embed details:not([open]) > :not(summary) {\n display: none !important;\n}\n.vega-embed summary {\n list-style: none;\n position: absolute;\n top: 0;\n right: 0;\n padding: 6px;\n z-index: 1000;\n background: white;\n box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1);\n color: #1b1e23;\n border: 1px solid #aaa;\n border-radius: 999px;\n opacity: 0.2;\n transition: opacity 0.4s ease-in;\n
|
4606
|
+
var embedStyle = ".vega-embed {\n position: relative;\n display: inline-block;\n box-sizing: border-box;\n}\n.vega-embed.has-actions {\n padding-right: 38px;\n}\n.vega-embed details:not([open]) > :not(summary) {\n display: none !important;\n}\n.vega-embed summary {\n list-style: none;\n position: absolute;\n top: 0;\n right: 0;\n padding: 6px;\n z-index: 1000;\n background: white;\n box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1);\n color: #1b1e23;\n border: 1px solid #aaa;\n border-radius: 999px;\n opacity: 0.2;\n transition: opacity 0.4s ease-in;\n cursor: pointer;\n line-height: 0px;\n}\n.vega-embed summary::-webkit-details-marker {\n display: none;\n}\n.vega-embed summary:active {\n box-shadow: #aaa 0px 0px 0px 1px inset;\n}\n.vega-embed summary svg {\n width: 14px;\n height: 14px;\n}\n.vega-embed details[open] summary {\n opacity: 0.7;\n}\n.vega-embed:hover summary, .vega-embed:focus-within summary {\n opacity: 1 !important;\n transition: opacity 0.2s ease;\n}\n.vega-embed .vega-actions {\n position: absolute;\n z-index: 1001;\n top: 35px;\n right: -9px;\n display: flex;\n flex-direction: column;\n padding-bottom: 8px;\n padding-top: 8px;\n border-radius: 4px;\n box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.2);\n border: 1px solid #d9d9d9;\n background: white;\n animation-duration: 0.15s;\n animation-name: scale-in;\n animation-timing-function: cubic-bezier(0.2, 0, 0.13, 1.5);\n text-align: left;\n}\n.vega-embed .vega-actions a {\n padding: 8px 16px;\n font-family: sans-serif;\n font-size: 14px;\n font-weight: 600;\n white-space: nowrap;\n color: #434a56;\n text-decoration: none;\n}\n.vega-embed .vega-actions a:hover, .vega-embed .vega-actions a:focus {\n background-color: #f7f7f9;\n color: black;\n}\n.vega-embed .vega-actions::before, .vega-embed .vega-actions::after {\n content: \"\";\n display: inline-block;\n position: absolute;\n}\n.vega-embed .vega-actions::before {\n left: auto;\n right: 14px;\n top: -16px;\n border: 8px solid rgba(0, 0, 0, 0);\n border-bottom-color: #d9d9d9;\n}\n.vega-embed .vega-actions::after {\n left: auto;\n right: 15px;\n top: -14px;\n border: 7px solid rgba(0, 0, 0, 0);\n border-bottom-color: #fff;\n}\n.vega-embed .chart-wrapper.fit-x {\n width: 100%;\n}\n.vega-embed .chart-wrapper.fit-y {\n height: 100%;\n}\n\n.vega-embed-wrapper {\n max-width: 100%;\n overflow: auto;\n padding-right: 14px;\n}\n\n@keyframes scale-in {\n from {\n opacity: 0;\n transform: scale(0.6);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n";
|
4554
4607
|
|
4555
4608
|
if (!String.prototype.startsWith) {
|
4556
4609
|
// eslint-disable-next-line no-extend-native,func-names
|
@@ -4581,7 +4634,7 @@
|
|
4581
4634
|
}
|
4582
4635
|
|
4583
4636
|
var name = "vega-embed";
|
4584
|
-
var version$1 = "6.
|
4637
|
+
var version$1 = "6.21.0";
|
4585
4638
|
var description = "Publish Vega visualizations as embedded web components.";
|
4586
4639
|
var keywords = ["vega", "data", "visualization", "component", "embed"];
|
4587
4640
|
var repository = {
|
@@ -4608,28 +4661,28 @@
|
|
4608
4661
|
var types = "build/vega-embed.module.d.ts";
|
4609
4662
|
var files = ["src", "build", "build-es5", "patches"];
|
4610
4663
|
var devDependencies = {
|
4611
|
-
"@auto-it/conventional-commits": "^10.
|
4612
|
-
"@auto-it/first-time-contributor": "^10.
|
4613
|
-
"@babel/plugin-transform-runtime": "^7.
|
4614
|
-
"@rollup/plugin-commonjs": "
|
4664
|
+
"@auto-it/conventional-commits": "^10.37.1",
|
4665
|
+
"@auto-it/first-time-contributor": "^10.37.1",
|
4666
|
+
"@babel/plugin-transform-runtime": "^7.18.2",
|
4667
|
+
"@rollup/plugin-commonjs": "22.0.0",
|
4615
4668
|
"@rollup/plugin-json": "^4.1.0",
|
4616
|
-
"@rollup/plugin-node-resolve": "^13.0
|
4669
|
+
"@rollup/plugin-node-resolve": "^13.3.0",
|
4617
4670
|
"@types/semver": "^7.3.9",
|
4618
|
-
auto: "^10.
|
4619
|
-
"browser-sync": "^2.27.
|
4620
|
-
concurrently: "^
|
4671
|
+
auto: "^10.37.1",
|
4672
|
+
"browser-sync": "^2.27.10",
|
4673
|
+
concurrently: "^7.2.1",
|
4621
4674
|
"del-cli": "^4.0.1",
|
4622
|
-
"jest-canvas-mock": "^2.
|
4675
|
+
"jest-canvas-mock": "^2.4.0",
|
4623
4676
|
"patch-package": "^6.4.7",
|
4624
4677
|
"postinstall-postinstall": "^2.1.0",
|
4625
|
-
rollup: "2.
|
4678
|
+
rollup: "2.75.6",
|
4626
4679
|
"rollup-plugin-bundle-size": "^1.0.3",
|
4627
4680
|
"rollup-plugin-terser": "^7.0.2",
|
4628
|
-
"rollup-plugin-ts": "^
|
4629
|
-
sass: "^1.
|
4630
|
-
typescript: "^4.
|
4631
|
-
vega: "^5.
|
4632
|
-
"vega-lite": "^5.
|
4681
|
+
"rollup-plugin-ts": "^3.0.0",
|
4682
|
+
sass: "^1.52.1",
|
4683
|
+
typescript: "^4.7.2",
|
4684
|
+
vega: "^5.22.1",
|
4685
|
+
"vega-lite": "^5.2.0",
|
4633
4686
|
"vega-lite-dev-config": "^0.20.0"
|
4634
4687
|
};
|
4635
4688
|
var peerDependencies = {
|
@@ -4637,14 +4690,14 @@
|
|
4637
4690
|
"vega-lite": "*"
|
4638
4691
|
};
|
4639
4692
|
var dependencies = {
|
4640
|
-
"fast-json-patch": "^3.1.
|
4693
|
+
"fast-json-patch": "^3.1.1",
|
4641
4694
|
"json-stringify-pretty-compact": "^3.0.0",
|
4642
|
-
semver: "^7.3.
|
4643
|
-
tslib: "^2.
|
4695
|
+
semver: "^7.3.7",
|
4696
|
+
tslib: "^2.4.0",
|
4644
4697
|
"vega-interpreter": "^1.0.4",
|
4645
4698
|
"vega-schema-url-parser": "^2.2.0",
|
4646
4699
|
"vega-themes": "^2.10.0",
|
4647
|
-
"vega-tooltip": "^0.
|
4700
|
+
"vega-tooltip": "^0.28.0"
|
4648
4701
|
};
|
4649
4702
|
var bundledDependencies = ["yallist"];
|
4650
4703
|
var scripts = {
|
@@ -4795,9 +4848,16 @@
|
|
4795
4848
|
}
|
4796
4849
|
|
4797
4850
|
function embedOptionsFromUsermeta(parsedSpec) {
|
4798
|
-
var
|
4851
|
+
var _embedOptions, _parsedSpec$usermeta;
|
4852
|
+
|
4853
|
+
const opts = (_embedOptions = (_parsedSpec$usermeta = parsedSpec.usermeta) === null || _parsedSpec$usermeta === void 0 ? void 0 : _parsedSpec$usermeta.embedOptions) !== null && _embedOptions !== void 0 ? _embedOptions : {};
|
4799
4854
|
|
4800
|
-
|
4855
|
+
if (vegaImport.isString(opts.defaultStyle)) {
|
4856
|
+
// we don't allow styles set via usermeta since it would allow injection of logic (we set the style via innerHTML)
|
4857
|
+
opts.defaultStyle = false;
|
4858
|
+
}
|
4859
|
+
|
4860
|
+
return opts;
|
4801
4861
|
}
|
4802
4862
|
/**
|
4803
4863
|
* Embed a Vega visualization component in a web page. This function returns a promise.
|
@@ -4823,7 +4883,8 @@
|
|
4823
4883
|
parsedSpec = spec;
|
4824
4884
|
}
|
4825
4885
|
|
4826
|
-
const
|
4886
|
+
const loadedEmbedOptions = embedOptionsFromUsermeta(parsedSpec);
|
4887
|
+
const usermetaLoader = loadedEmbedOptions.loader; // either create the loader for the first time or create a new loader if the spec has new loader options
|
4827
4888
|
|
4828
4889
|
if (!loader || usermetaLoader) {
|
4829
4890
|
var _opts$loader;
|
@@ -4831,7 +4892,7 @@
|
|
4831
4892
|
loader = createLoader((_opts$loader = opts.loader) !== null && _opts$loader !== void 0 ? _opts$loader : usermetaLoader);
|
4832
4893
|
}
|
4833
4894
|
|
4834
|
-
const usermetaOpts = await loadOpts(
|
4895
|
+
const usermetaOpts = await loadOpts(loadedEmbedOptions, loader);
|
4835
4896
|
const parsedOpts = await loadOpts(opts, loader);
|
4836
4897
|
const mergedOpts = { ...mergeDeep(parsedOpts, usermetaOpts),
|
4837
4898
|
config: vegaImport.mergeConfig((_parsedOpts$config = parsedOpts.config) !== null && _parsedOpts$config !== void 0 ? _parsedOpts$config : {}, (_usermetaOpts$config = usermetaOpts.config) !== null && _usermetaOpts$config !== void 0 ? _usermetaOpts$config : {})
|
@@ -4868,7 +4929,7 @@
|
|
4868
4929
|
}
|
4869
4930
|
|
4870
4931
|
async function _embed(el, spec) {
|
4871
|
-
var _opts$config, _opts$actions, _opts$renderer, _opts$logLevel, _opts$downloadFileNam,
|
4932
|
+
var _opts$config, _opts$actions, _opts$renderer, _opts$logLevel, _opts$downloadFileNam, _ref, _expressionInterprete;
|
4872
4933
|
|
4873
4934
|
let opts = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
4874
4935
|
let loader = arguments.length > 3 ? arguments[3] : undefined;
|
@@ -4887,7 +4948,6 @@
|
|
4887
4948
|
}
|
4888
4949
|
|
4889
4950
|
if (opts.defaultStyle !== false) {
|
4890
|
-
// Add a default stylesheet to the head of the document.
|
4891
4951
|
const ID = 'vega-embed-style';
|
4892
4952
|
const {
|
4893
4953
|
root,
|
@@ -4897,7 +4957,7 @@
|
|
4897
4957
|
if (!root.getElementById(ID)) {
|
4898
4958
|
const style = document.createElement('style');
|
4899
4959
|
style.id = ID;
|
4900
|
-
style.
|
4960
|
+
style.innerHTML = opts.defaultStyle === undefined || opts.defaultStyle === true ? (embedStyle ).toString() : opts.defaultStyle;
|
4901
4961
|
rootContainer.appendChild(style);
|
4902
4962
|
}
|
4903
4963
|
}
|
@@ -4945,6 +5005,19 @@
|
|
4945
5005
|
|
4946
5006
|
if (opts.timeFormatLocale) {
|
4947
5007
|
vega.timeFormatLocale(opts.timeFormatLocale);
|
5008
|
+
} // Set custom expression functions
|
5009
|
+
|
5010
|
+
|
5011
|
+
if (opts.expressionFunctions) {
|
5012
|
+
for (const name in opts.expressionFunctions) {
|
5013
|
+
const expressionFunction = opts.expressionFunctions[name];
|
5014
|
+
|
5015
|
+
if ('fn' in expressionFunction) {
|
5016
|
+
vega.expressionFunction(name, expressionFunction.fn, expressionFunction['visitor']);
|
5017
|
+
} else if (expressionFunction instanceof Function) {
|
5018
|
+
vega.expressionFunction(name, expressionFunction);
|
5019
|
+
}
|
5020
|
+
}
|
4948
5021
|
}
|
4949
5022
|
|
4950
5023
|
const {
|
@@ -4960,7 +5033,7 @@
|
|
4960
5033
|
logLevel,
|
4961
5034
|
renderer,
|
4962
5035
|
...(ast ? {
|
4963
|
-
expr: (
|
5036
|
+
expr: (_ref = (_expressionInterprete = vega.expressionInterpreter) !== null && _expressionInterprete !== void 0 ? _expressionInterprete : opts.expr) !== null && _ref !== void 0 ? _ref : expression
|
4964
5037
|
} : {})
|
4965
5038
|
});
|
4966
5039
|
view.addSignalListener('autosize', (_, autosize) => {
|
@@ -5126,7 +5199,8 @@
|
|
5126
5199
|
view,
|
5127
5200
|
spec,
|
5128
5201
|
vgSpec,
|
5129
|
-
finalize
|
5202
|
+
finalize,
|
5203
|
+
embedOptions: opts
|
5130
5204
|
};
|
5131
5205
|
}
|
5132
5206
|
|