@vitessce/all 3.8.8 → 3.8.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{OrbitControls-BdMjY3aO.js → OrbitControls-t9CaxJow.js} +1 -1
- package/dist/{ReactNeuroglancer-CQ8kS1mc.js → ReactNeuroglancer-D662gKgy.js} +1 -1
- package/dist/{deflate-BBtqPvhK.js → deflate-BHuVu6ka.js} +1 -1
- package/dist/{higlass-CBYKVvZ1.js → higlass-BWjoRZ_l.js} +1 -1
- package/dist/{index-CgBhVc6k.js → index-C07z-9Ag.js} +3 -3
- package/dist/{index-DeAJAaTB.js → index-NBOfpK3S.js} +627 -694
- package/dist/{index-CswI4QIv.js → index-sdWGixZi.js} +2 -2
- package/dist/index.js +1 -1
- package/dist/{jpeg-BaWcE9pr.js → jpeg-Bz6F-bB0.js} +1 -1
- package/dist/{lerc-r2v3xhFU.js → lerc-C0S_lxM2.js} +1 -1
- package/dist/{lzw-r1g3fWt6.js → lzw-D4L-VfX8.js} +1 -1
- package/dist/{packbits-BP3_1WZ_.js → packbits-CLckyTrz.js} +1 -1
- package/dist/{raw-CBSzyAnJ.js → raw-DP5Af32W.js} +1 -1
- package/dist/{troika-three-text.esm-BAYcQ1OK.js → troika-three-text.esm-O9xfslQt.js} +1 -1
- package/dist/{webimage-d9adH7MC.js → webimage-Y7ICR65G.js} +1 -1
- package/package.json +33 -33
|
@@ -4369,28 +4369,7 @@ var symbolTag$7 = "[object Symbol]";
|
|
|
4369
4369
|
function isSymbol$5(value2) {
|
|
4370
4370
|
return typeof value2 == "symbol" || isObjectLike$c(value2) && baseGetTag$8(value2) == symbolTag$7;
|
|
4371
4371
|
}
|
|
4372
|
-
function arrayMap$3(array2, iteratee) {
|
|
4373
|
-
var index2 = -1, length2 = array2 == null ? 0 : array2.length, result = Array(length2);
|
|
4374
|
-
while (++index2 < length2) {
|
|
4375
|
-
result[index2] = iteratee(array2[index2], index2, array2);
|
|
4376
|
-
}
|
|
4377
|
-
return result;
|
|
4378
|
-
}
|
|
4379
4372
|
var isArray$f = Array.isArray;
|
|
4380
|
-
var symbolProto$5 = Symbol$7 ? Symbol$7.prototype : void 0, symbolToString$1 = symbolProto$5 ? symbolProto$5.toString : void 0;
|
|
4381
|
-
function baseToString$3(value2) {
|
|
4382
|
-
if (typeof value2 == "string") {
|
|
4383
|
-
return value2;
|
|
4384
|
-
}
|
|
4385
|
-
if (isArray$f(value2)) {
|
|
4386
|
-
return arrayMap$3(value2, baseToString$3) + "";
|
|
4387
|
-
}
|
|
4388
|
-
if (isSymbol$5(value2)) {
|
|
4389
|
-
return symbolToString$1 ? symbolToString$1.call(value2) : "";
|
|
4390
|
-
}
|
|
4391
|
-
var result = value2 + "";
|
|
4392
|
-
return result == "0" && 1 / value2 == -Infinity ? "-0" : result;
|
|
4393
|
-
}
|
|
4394
4373
|
var reWhitespace$1 = /\s/;
|
|
4395
4374
|
function trimmedEndIndex$2(string2) {
|
|
4396
4375
|
var index2 = string2.length;
|
|
@@ -4773,17 +4752,6 @@ function baseKeys$2(object2) {
|
|
|
4773
4752
|
function keys$9(object2) {
|
|
4774
4753
|
return isArrayLike$7(object2) ? arrayLikeKeys$3(object2) : baseKeys$2(object2);
|
|
4775
4754
|
}
|
|
4776
|
-
var reIsDeepProp$1 = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, reIsPlainProp$1 = /^\w*$/;
|
|
4777
|
-
function isKey$4(value2, object2) {
|
|
4778
|
-
if (isArray$f(value2)) {
|
|
4779
|
-
return false;
|
|
4780
|
-
}
|
|
4781
|
-
var type2 = typeof value2;
|
|
4782
|
-
if (type2 == "number" || type2 == "symbol" || type2 == "boolean" || value2 == null || isSymbol$5(value2)) {
|
|
4783
|
-
return true;
|
|
4784
|
-
}
|
|
4785
|
-
return reIsPlainProp$1.test(value2) || !reIsDeepProp$1.test(value2) || object2 != null && value2 in Object(object2);
|
|
4786
|
-
}
|
|
4787
4755
|
var nativeCreate$5 = getNative$8(Object, "create");
|
|
4788
4756
|
function hashClear$2() {
|
|
4789
4757
|
this.__data__ = nativeCreate$5 ? nativeCreate$5(null) : {};
|
|
@@ -4937,75 +4905,6 @@ MapCache$4.prototype["delete"] = mapCacheDelete$2;
|
|
|
4937
4905
|
MapCache$4.prototype.get = mapCacheGet$2;
|
|
4938
4906
|
MapCache$4.prototype.has = mapCacheHas$2;
|
|
4939
4907
|
MapCache$4.prototype.set = mapCacheSet$2;
|
|
4940
|
-
var FUNC_ERROR_TEXT$3 = "Expected a function";
|
|
4941
|
-
function memoize$7(func, resolver2) {
|
|
4942
|
-
if (typeof func != "function" || resolver2 != null && typeof resolver2 != "function") {
|
|
4943
|
-
throw new TypeError(FUNC_ERROR_TEXT$3);
|
|
4944
|
-
}
|
|
4945
|
-
var memoized = function() {
|
|
4946
|
-
var args = arguments, key2 = resolver2 ? resolver2.apply(this, args) : args[0], cache2 = memoized.cache;
|
|
4947
|
-
if (cache2.has(key2)) {
|
|
4948
|
-
return cache2.get(key2);
|
|
4949
|
-
}
|
|
4950
|
-
var result = func.apply(this, args);
|
|
4951
|
-
memoized.cache = cache2.set(key2, result) || cache2;
|
|
4952
|
-
return result;
|
|
4953
|
-
};
|
|
4954
|
-
memoized.cache = new (memoize$7.Cache || MapCache$4)();
|
|
4955
|
-
return memoized;
|
|
4956
|
-
}
|
|
4957
|
-
memoize$7.Cache = MapCache$4;
|
|
4958
|
-
var MAX_MEMOIZE_SIZE$1 = 500;
|
|
4959
|
-
function memoizeCapped$2(func) {
|
|
4960
|
-
var result = memoize$7(func, function(key2) {
|
|
4961
|
-
if (cache2.size === MAX_MEMOIZE_SIZE$1) {
|
|
4962
|
-
cache2.clear();
|
|
4963
|
-
}
|
|
4964
|
-
return key2;
|
|
4965
|
-
});
|
|
4966
|
-
var cache2 = result.cache;
|
|
4967
|
-
return result;
|
|
4968
|
-
}
|
|
4969
|
-
var rePropName$1 = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;
|
|
4970
|
-
var reEscapeChar$1 = /\\(\\)?/g;
|
|
4971
|
-
var stringToPath$2 = memoizeCapped$2(function(string2) {
|
|
4972
|
-
var result = [];
|
|
4973
|
-
if (string2.charCodeAt(0) === 46) {
|
|
4974
|
-
result.push("");
|
|
4975
|
-
}
|
|
4976
|
-
string2.replace(rePropName$1, function(match2, number2, quote, subString) {
|
|
4977
|
-
result.push(quote ? subString.replace(reEscapeChar$1, "$1") : number2 || match2);
|
|
4978
|
-
});
|
|
4979
|
-
return result;
|
|
4980
|
-
});
|
|
4981
|
-
function toString$6(value2) {
|
|
4982
|
-
return value2 == null ? "" : baseToString$3(value2);
|
|
4983
|
-
}
|
|
4984
|
-
function castPath$3(value2, object2) {
|
|
4985
|
-
if (isArray$f(value2)) {
|
|
4986
|
-
return value2;
|
|
4987
|
-
}
|
|
4988
|
-
return isKey$4(value2, object2) ? [value2] : stringToPath$2(toString$6(value2));
|
|
4989
|
-
}
|
|
4990
|
-
function toKey$5(value2) {
|
|
4991
|
-
if (typeof value2 == "string" || isSymbol$5(value2)) {
|
|
4992
|
-
return value2;
|
|
4993
|
-
}
|
|
4994
|
-
var result = value2 + "";
|
|
4995
|
-
return result == "0" && 1 / value2 == -Infinity ? "-0" : result;
|
|
4996
|
-
}
|
|
4997
|
-
function baseGet$3(object2, path2) {
|
|
4998
|
-
path2 = castPath$3(path2, object2);
|
|
4999
|
-
var index2 = 0, length2 = path2.length;
|
|
5000
|
-
while (object2 != null && index2 < length2) {
|
|
5001
|
-
object2 = object2[toKey$5(path2[index2++])];
|
|
5002
|
-
}
|
|
5003
|
-
return index2 && index2 == length2 ? object2 : void 0;
|
|
5004
|
-
}
|
|
5005
|
-
function get$g(object2, path2, defaultValue2) {
|
|
5006
|
-
var result = object2 == null ? void 0 : baseGet$3(object2, path2);
|
|
5007
|
-
return result === void 0 ? defaultValue2 : result;
|
|
5008
|
-
}
|
|
5009
4908
|
function arrayPush$3(array2, values3) {
|
|
5010
4909
|
var index2 = -1, length2 = values3.length, offset2 = array2.length;
|
|
5011
4910
|
while (++index2 < length2) {
|
|
@@ -5340,9 +5239,9 @@ function arraySome$2(array2, predicate) {
|
|
|
5340
5239
|
function cacheHas$2(cache2, key2) {
|
|
5341
5240
|
return cache2.has(key2);
|
|
5342
5241
|
}
|
|
5343
|
-
var COMPARE_PARTIAL_FLAG$
|
|
5242
|
+
var COMPARE_PARTIAL_FLAG$9 = 1, COMPARE_UNORDERED_FLAG$5 = 2;
|
|
5344
5243
|
function equalArrays$3(array2, other, bitmask, customizer, equalFunc, stack2) {
|
|
5345
|
-
var isPartial = bitmask & COMPARE_PARTIAL_FLAG$
|
|
5244
|
+
var isPartial = bitmask & COMPARE_PARTIAL_FLAG$9, arrLength = array2.length, othLength = other.length;
|
|
5346
5245
|
if (arrLength != othLength && !(isPartial && othLength > arrLength)) {
|
|
5347
5246
|
return false;
|
|
5348
5247
|
}
|
|
@@ -5351,7 +5250,7 @@ function equalArrays$3(array2, other, bitmask, customizer, equalFunc, stack2) {
|
|
|
5351
5250
|
if (arrStacked && othStacked) {
|
|
5352
5251
|
return arrStacked == other && othStacked == array2;
|
|
5353
5252
|
}
|
|
5354
|
-
var index2 = -1, result = true, seen = bitmask & COMPARE_UNORDERED_FLAG$
|
|
5253
|
+
var index2 = -1, result = true, seen = bitmask & COMPARE_UNORDERED_FLAG$5 ? new SetCache$2() : void 0;
|
|
5355
5254
|
stack2.set(array2, other);
|
|
5356
5255
|
stack2.set(other, array2);
|
|
5357
5256
|
while (++index2 < arrLength) {
|
|
@@ -5398,7 +5297,7 @@ function setToArray$2(set2) {
|
|
|
5398
5297
|
});
|
|
5399
5298
|
return result;
|
|
5400
5299
|
}
|
|
5401
|
-
var COMPARE_PARTIAL_FLAG$
|
|
5300
|
+
var COMPARE_PARTIAL_FLAG$8 = 1, COMPARE_UNORDERED_FLAG$4 = 2;
|
|
5402
5301
|
var boolTag$4 = "[object Boolean]", dateTag$4 = "[object Date]", errorTag$3 = "[object Error]", mapTag$6 = "[object Map]", numberTag$4 = "[object Number]", regexpTag$4 = "[object RegExp]", setTag$6 = "[object Set]", stringTag$5 = "[object String]", symbolTag$4 = "[object Symbol]";
|
|
5403
5302
|
var arrayBufferTag$4 = "[object ArrayBuffer]", dataViewTag$5 = "[object DataView]";
|
|
5404
5303
|
var symbolProto$3 = Symbol$7 ? Symbol$7.prototype : void 0, symbolValueOf$2 = symbolProto$3 ? symbolProto$3.valueOf : void 0;
|
|
@@ -5427,7 +5326,7 @@ function equalByTag$2(object2, other, tag2, bitmask, customizer, equalFunc, stac
|
|
|
5427
5326
|
case mapTag$6:
|
|
5428
5327
|
var convert2 = mapToArray$2;
|
|
5429
5328
|
case setTag$6:
|
|
5430
|
-
var isPartial = bitmask & COMPARE_PARTIAL_FLAG$
|
|
5329
|
+
var isPartial = bitmask & COMPARE_PARTIAL_FLAG$8;
|
|
5431
5330
|
convert2 || (convert2 = setToArray$2);
|
|
5432
5331
|
if (object2.size != other.size && !isPartial) {
|
|
5433
5332
|
return false;
|
|
@@ -5436,7 +5335,7 @@ function equalByTag$2(object2, other, tag2, bitmask, customizer, equalFunc, stac
|
|
|
5436
5335
|
if (stacked) {
|
|
5437
5336
|
return stacked == other;
|
|
5438
5337
|
}
|
|
5439
|
-
bitmask |= COMPARE_UNORDERED_FLAG$
|
|
5338
|
+
bitmask |= COMPARE_UNORDERED_FLAG$4;
|
|
5440
5339
|
stack2.set(object2, other);
|
|
5441
5340
|
var result = equalArrays$3(convert2(object2), convert2(other), bitmask, customizer, equalFunc, stack2);
|
|
5442
5341
|
stack2["delete"](object2);
|
|
@@ -5448,11 +5347,11 @@ function equalByTag$2(object2, other, tag2, bitmask, customizer, equalFunc, stac
|
|
|
5448
5347
|
}
|
|
5449
5348
|
return false;
|
|
5450
5349
|
}
|
|
5451
|
-
var COMPARE_PARTIAL_FLAG$
|
|
5350
|
+
var COMPARE_PARTIAL_FLAG$7 = 1;
|
|
5452
5351
|
var objectProto$h = Object.prototype;
|
|
5453
5352
|
var hasOwnProperty$g = objectProto$h.hasOwnProperty;
|
|
5454
5353
|
function equalObjects$2(object2, other, bitmask, customizer, equalFunc, stack2) {
|
|
5455
|
-
var isPartial = bitmask & COMPARE_PARTIAL_FLAG$
|
|
5354
|
+
var isPartial = bitmask & COMPARE_PARTIAL_FLAG$7, objProps = getAllKeys$4(object2), objLength = objProps.length, othProps = getAllKeys$4(other), othLength = othProps.length;
|
|
5456
5355
|
if (objLength != othLength && !isPartial) {
|
|
5457
5356
|
return false;
|
|
5458
5357
|
}
|
|
@@ -5494,7 +5393,7 @@ function equalObjects$2(object2, other, bitmask, customizer, equalFunc, stack2)
|
|
|
5494
5393
|
stack2["delete"](other);
|
|
5495
5394
|
return result;
|
|
5496
5395
|
}
|
|
5497
|
-
var COMPARE_PARTIAL_FLAG$
|
|
5396
|
+
var COMPARE_PARTIAL_FLAG$6 = 1;
|
|
5498
5397
|
var argsTag$4 = "[object Arguments]", arrayTag$3 = "[object Array]", objectTag$5 = "[object Object]";
|
|
5499
5398
|
var objectProto$g = Object.prototype;
|
|
5500
5399
|
var hasOwnProperty$f = objectProto$g.hasOwnProperty;
|
|
@@ -5514,7 +5413,7 @@ function baseIsEqualDeep$2(object2, other, bitmask, customizer, equalFunc, stack
|
|
|
5514
5413
|
stack2 || (stack2 = new Stack$6());
|
|
5515
5414
|
return objIsArr || isTypedArray$5(object2) ? equalArrays$3(object2, other, bitmask, customizer, equalFunc, stack2) : equalByTag$2(object2, other, objTag, bitmask, customizer, equalFunc, stack2);
|
|
5516
5415
|
}
|
|
5517
|
-
if (!(bitmask & COMPARE_PARTIAL_FLAG$
|
|
5416
|
+
if (!(bitmask & COMPARE_PARTIAL_FLAG$6)) {
|
|
5518
5417
|
var objIsWrapped = objIsObj && hasOwnProperty$f.call(object2, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty$f.call(other, "__wrapped__");
|
|
5519
5418
|
if (objIsWrapped || othIsWrapped) {
|
|
5520
5419
|
var objUnwrapped = objIsWrapped ? object2.value() : object2, othUnwrapped = othIsWrapped ? other.value() : other;
|
|
@@ -5537,155 +5436,6 @@ function baseIsEqual$3(value2, other, bitmask, customizer, stack2) {
|
|
|
5537
5436
|
}
|
|
5538
5437
|
return baseIsEqualDeep$2(value2, other, bitmask, customizer, baseIsEqual$3, stack2);
|
|
5539
5438
|
}
|
|
5540
|
-
var COMPARE_PARTIAL_FLAG$7 = 1, COMPARE_UNORDERED_FLAG$5 = 2;
|
|
5541
|
-
function baseIsMatch$2(object2, source2, matchData, customizer) {
|
|
5542
|
-
var index2 = matchData.length, length2 = index2;
|
|
5543
|
-
if (object2 == null) {
|
|
5544
|
-
return !length2;
|
|
5545
|
-
}
|
|
5546
|
-
object2 = Object(object2);
|
|
5547
|
-
while (index2--) {
|
|
5548
|
-
var data2 = matchData[index2];
|
|
5549
|
-
if (data2[2] ? data2[1] !== object2[data2[0]] : !(data2[0] in object2)) {
|
|
5550
|
-
return false;
|
|
5551
|
-
}
|
|
5552
|
-
}
|
|
5553
|
-
while (++index2 < length2) {
|
|
5554
|
-
data2 = matchData[index2];
|
|
5555
|
-
var key2 = data2[0], objValue = object2[key2], srcValue = data2[1];
|
|
5556
|
-
if (data2[2]) {
|
|
5557
|
-
if (objValue === void 0 && !(key2 in object2)) {
|
|
5558
|
-
return false;
|
|
5559
|
-
}
|
|
5560
|
-
} else {
|
|
5561
|
-
var stack2 = new Stack$6();
|
|
5562
|
-
var result;
|
|
5563
|
-
if (!(result === void 0 ? baseIsEqual$3(srcValue, objValue, COMPARE_PARTIAL_FLAG$7 | COMPARE_UNORDERED_FLAG$5, customizer, stack2) : result)) {
|
|
5564
|
-
return false;
|
|
5565
|
-
}
|
|
5566
|
-
}
|
|
5567
|
-
}
|
|
5568
|
-
return true;
|
|
5569
|
-
}
|
|
5570
|
-
function isStrictComparable$3(value2) {
|
|
5571
|
-
return value2 === value2 && !isObject$f(value2);
|
|
5572
|
-
}
|
|
5573
|
-
function getMatchData$2(object2) {
|
|
5574
|
-
var result = keys$9(object2), length2 = result.length;
|
|
5575
|
-
while (length2--) {
|
|
5576
|
-
var key2 = result[length2], value2 = object2[key2];
|
|
5577
|
-
result[length2] = [key2, value2, isStrictComparable$3(value2)];
|
|
5578
|
-
}
|
|
5579
|
-
return result;
|
|
5580
|
-
}
|
|
5581
|
-
function matchesStrictComparable$3(key2, srcValue) {
|
|
5582
|
-
return function(object2) {
|
|
5583
|
-
if (object2 == null) {
|
|
5584
|
-
return false;
|
|
5585
|
-
}
|
|
5586
|
-
return object2[key2] === srcValue && (srcValue !== void 0 || key2 in Object(object2));
|
|
5587
|
-
};
|
|
5588
|
-
}
|
|
5589
|
-
function baseMatches$2(source2) {
|
|
5590
|
-
var matchData = getMatchData$2(source2);
|
|
5591
|
-
if (matchData.length == 1 && matchData[0][2]) {
|
|
5592
|
-
return matchesStrictComparable$3(matchData[0][0], matchData[0][1]);
|
|
5593
|
-
}
|
|
5594
|
-
return function(object2) {
|
|
5595
|
-
return object2 === source2 || baseIsMatch$2(object2, source2, matchData);
|
|
5596
|
-
};
|
|
5597
|
-
}
|
|
5598
|
-
function baseHasIn$2(object2, key2) {
|
|
5599
|
-
return object2 != null && key2 in Object(object2);
|
|
5600
|
-
}
|
|
5601
|
-
function hasPath$2(object2, path2, hasFunc) {
|
|
5602
|
-
path2 = castPath$3(path2, object2);
|
|
5603
|
-
var index2 = -1, length2 = path2.length, result = false;
|
|
5604
|
-
while (++index2 < length2) {
|
|
5605
|
-
var key2 = toKey$5(path2[index2]);
|
|
5606
|
-
if (!(result = object2 != null && hasFunc(object2, key2))) {
|
|
5607
|
-
break;
|
|
5608
|
-
}
|
|
5609
|
-
object2 = object2[key2];
|
|
5610
|
-
}
|
|
5611
|
-
if (result || ++index2 != length2) {
|
|
5612
|
-
return result;
|
|
5613
|
-
}
|
|
5614
|
-
length2 = object2 == null ? 0 : object2.length;
|
|
5615
|
-
return !!length2 && isLength$4(length2) && isIndex$5(key2, length2) && (isArray$f(object2) || isArguments$4(object2));
|
|
5616
|
-
}
|
|
5617
|
-
function hasIn$2(object2, path2) {
|
|
5618
|
-
return object2 != null && hasPath$2(object2, path2, baseHasIn$2);
|
|
5619
|
-
}
|
|
5620
|
-
var COMPARE_PARTIAL_FLAG$6 = 1, COMPARE_UNORDERED_FLAG$4 = 2;
|
|
5621
|
-
function baseMatchesProperty$2(path2, srcValue) {
|
|
5622
|
-
if (isKey$4(path2) && isStrictComparable$3(srcValue)) {
|
|
5623
|
-
return matchesStrictComparable$3(toKey$5(path2), srcValue);
|
|
5624
|
-
}
|
|
5625
|
-
return function(object2) {
|
|
5626
|
-
var objValue = get$g(object2, path2);
|
|
5627
|
-
return objValue === void 0 && objValue === srcValue ? hasIn$2(object2, path2) : baseIsEqual$3(srcValue, objValue, COMPARE_PARTIAL_FLAG$6 | COMPARE_UNORDERED_FLAG$4);
|
|
5628
|
-
};
|
|
5629
|
-
}
|
|
5630
|
-
function baseProperty$2(key2) {
|
|
5631
|
-
return function(object2) {
|
|
5632
|
-
return object2 == null ? void 0 : object2[key2];
|
|
5633
|
-
};
|
|
5634
|
-
}
|
|
5635
|
-
function basePropertyDeep$2(path2) {
|
|
5636
|
-
return function(object2) {
|
|
5637
|
-
return baseGet$3(object2, path2);
|
|
5638
|
-
};
|
|
5639
|
-
}
|
|
5640
|
-
function property$3(path2) {
|
|
5641
|
-
return isKey$4(path2) ? baseProperty$2(toKey$5(path2)) : basePropertyDeep$2(path2);
|
|
5642
|
-
}
|
|
5643
|
-
function baseIteratee$2(value2) {
|
|
5644
|
-
if (typeof value2 == "function") {
|
|
5645
|
-
return value2;
|
|
5646
|
-
}
|
|
5647
|
-
if (value2 == null) {
|
|
5648
|
-
return identity$h;
|
|
5649
|
-
}
|
|
5650
|
-
if (typeof value2 == "object") {
|
|
5651
|
-
return isArray$f(value2) ? baseMatchesProperty$2(value2[0], value2[1]) : baseMatches$2(value2);
|
|
5652
|
-
}
|
|
5653
|
-
return property$3(value2);
|
|
5654
|
-
}
|
|
5655
|
-
function createBaseFor$2(fromRight) {
|
|
5656
|
-
return function(object2, iteratee, keysFunc) {
|
|
5657
|
-
var index2 = -1, iterable = Object(object2), props = keysFunc(object2), length2 = props.length;
|
|
5658
|
-
while (length2--) {
|
|
5659
|
-
var key2 = props[++index2];
|
|
5660
|
-
if (iteratee(iterable[key2], key2, iterable) === false) {
|
|
5661
|
-
break;
|
|
5662
|
-
}
|
|
5663
|
-
}
|
|
5664
|
-
return object2;
|
|
5665
|
-
};
|
|
5666
|
-
}
|
|
5667
|
-
var baseFor$3 = createBaseFor$2();
|
|
5668
|
-
function baseForOwn$3(object2, iteratee) {
|
|
5669
|
-
return object2 && baseFor$3(object2, iteratee, keys$9);
|
|
5670
|
-
}
|
|
5671
|
-
function createBaseEach$2(eachFunc, fromRight) {
|
|
5672
|
-
return function(collection, iteratee) {
|
|
5673
|
-
if (collection == null) {
|
|
5674
|
-
return collection;
|
|
5675
|
-
}
|
|
5676
|
-
if (!isArrayLike$7(collection)) {
|
|
5677
|
-
return eachFunc(collection, iteratee);
|
|
5678
|
-
}
|
|
5679
|
-
var length2 = collection.length, index2 = -1, iterable = Object(collection);
|
|
5680
|
-
while (++index2 < length2) {
|
|
5681
|
-
if (iteratee(iterable[index2], index2, iterable) === false) {
|
|
5682
|
-
break;
|
|
5683
|
-
}
|
|
5684
|
-
}
|
|
5685
|
-
return collection;
|
|
5686
|
-
};
|
|
5687
|
-
}
|
|
5688
|
-
var baseEach$3 = createBaseEach$2(baseForOwn$3);
|
|
5689
5439
|
var now$5 = function() {
|
|
5690
5440
|
return root$d.Date.now();
|
|
5691
5441
|
};
|
|
@@ -5807,27 +5557,6 @@ function baseDifference(array2, values3, iteratee, comparator2) {
|
|
|
5807
5557
|
var difference$1 = baseRest$2(function(array2, values3) {
|
|
5808
5558
|
return isArrayLikeObject$2(array2) ? baseDifference(array2, baseFlatten(values3, 1, isArrayLikeObject$2)) : [];
|
|
5809
5559
|
});
|
|
5810
|
-
function arrayEvery(array2, predicate) {
|
|
5811
|
-
var index2 = -1, length2 = array2 == null ? 0 : array2.length;
|
|
5812
|
-
while (++index2 < length2) {
|
|
5813
|
-
if (!predicate(array2[index2], index2, array2)) {
|
|
5814
|
-
return false;
|
|
5815
|
-
}
|
|
5816
|
-
}
|
|
5817
|
-
return true;
|
|
5818
|
-
}
|
|
5819
|
-
function baseEvery(collection, predicate) {
|
|
5820
|
-
var result = true;
|
|
5821
|
-
baseEach$3(collection, function(value2, index2, collection2) {
|
|
5822
|
-
result = !!predicate(value2, index2, collection2);
|
|
5823
|
-
return result;
|
|
5824
|
-
});
|
|
5825
|
-
return result;
|
|
5826
|
-
}
|
|
5827
|
-
function every$1(collection, predicate, guard) {
|
|
5828
|
-
var func = isArray$f(collection) ? arrayEvery : baseEvery;
|
|
5829
|
-
return func(collection, baseIteratee$2(predicate));
|
|
5830
|
-
}
|
|
5831
5560
|
function isEqual$3(value2, other) {
|
|
5832
5561
|
return baseIsEqual$3(value2, other);
|
|
5833
5562
|
}
|
|
@@ -5869,7 +5598,7 @@ function createRange(fromRight) {
|
|
|
5869
5598
|
return baseRange(start2, end2, step);
|
|
5870
5599
|
};
|
|
5871
5600
|
}
|
|
5872
|
-
var range$
|
|
5601
|
+
var range$e = createRange();
|
|
5873
5602
|
function sum$7(array2) {
|
|
5874
5603
|
return array2 && array2.length ? baseSum(array2, identity$h) : 0;
|
|
5875
5604
|
}
|
|
@@ -6490,6 +6219,59 @@ class Pool {
|
|
|
6490
6219
|
}
|
|
6491
6220
|
}
|
|
6492
6221
|
}
|
|
6222
|
+
function aggregateFeatureArrays(arrays, strategy) {
|
|
6223
|
+
if (!arrays || arrays.length === 0)
|
|
6224
|
+
return null;
|
|
6225
|
+
let targetArray;
|
|
6226
|
+
if (strategy === "first" || typeof strategy === "number" && strategy === 0) {
|
|
6227
|
+
targetArray = arrays[0];
|
|
6228
|
+
} else if (strategy === "last") {
|
|
6229
|
+
targetArray = arrays[arrays.length - 1];
|
|
6230
|
+
} else if (typeof strategy === "number") {
|
|
6231
|
+
if (strategy >= 0 && strategy < arrays.length) {
|
|
6232
|
+
targetArray = arrays[strategy];
|
|
6233
|
+
} else {
|
|
6234
|
+
throw new Error(`Array index out of bounds: ${strategy}`);
|
|
6235
|
+
}
|
|
6236
|
+
}
|
|
6237
|
+
if (targetArray) {
|
|
6238
|
+
return targetArray;
|
|
6239
|
+
}
|
|
6240
|
+
const numArrays = arrays.length;
|
|
6241
|
+
const firstArrayLength = arrays[0].length;
|
|
6242
|
+
if (arrays.some((arr) => arr.length !== firstArrayLength)) {
|
|
6243
|
+
throw new Error("All arrays must have the same length for aggregation.");
|
|
6244
|
+
}
|
|
6245
|
+
if (strategy === "sum" || strategy === "mean") {
|
|
6246
|
+
const resultArray = new Float64Array(firstArrayLength);
|
|
6247
|
+
for (let i2 = 0; i2 < numArrays; i2++) {
|
|
6248
|
+
const arr = arrays[i2];
|
|
6249
|
+
for (let j = 0; j < firstArrayLength; j++) {
|
|
6250
|
+
resultArray[j] += arr[j];
|
|
6251
|
+
}
|
|
6252
|
+
}
|
|
6253
|
+
if (strategy === "mean") {
|
|
6254
|
+
for (let i2 = 0; i2 < firstArrayLength; i2++) {
|
|
6255
|
+
resultArray[i2] /= numArrays;
|
|
6256
|
+
}
|
|
6257
|
+
}
|
|
6258
|
+
return resultArray;
|
|
6259
|
+
}
|
|
6260
|
+
if (strategy === "difference") {
|
|
6261
|
+
if (numArrays !== 2) {
|
|
6262
|
+
console.warn("Difference strategy requires exactly 2 arrays.");
|
|
6263
|
+
return arrays[0];
|
|
6264
|
+
}
|
|
6265
|
+
const arr0 = arrays[0];
|
|
6266
|
+
const arr1 = arrays[1];
|
|
6267
|
+
const resultArray = new Float64Array(firstArrayLength);
|
|
6268
|
+
for (let i2 = 0; i2 < firstArrayLength; i2++) {
|
|
6269
|
+
resultArray[i2] = arr0[i2] - arr1[i2];
|
|
6270
|
+
}
|
|
6271
|
+
return resultArray;
|
|
6272
|
+
}
|
|
6273
|
+
throw new Error(`Unknown aggregation strategy: ${strategy}`);
|
|
6274
|
+
}
|
|
6493
6275
|
configSchema1_0_0.shape.coordinationSpace.unwrap();
|
|
6494
6276
|
configSchema1_0_0.shape.layout.element.shape.coordinationScopes.unwrap();
|
|
6495
6277
|
function upgradeReplaceViewProp(prefix2, view, coordinationSpace) {
|
|
@@ -7897,10 +7679,10 @@ function requireLrucache() {
|
|
|
7897
7679
|
lrucache = LRUCache3;
|
|
7898
7680
|
return lrucache;
|
|
7899
7681
|
}
|
|
7900
|
-
var range$
|
|
7682
|
+
var range$d;
|
|
7901
7683
|
var hasRequiredRange$1;
|
|
7902
7684
|
function requireRange$1() {
|
|
7903
|
-
if (hasRequiredRange$1) return range$
|
|
7685
|
+
if (hasRequiredRange$1) return range$d;
|
|
7904
7686
|
hasRequiredRange$1 = 1;
|
|
7905
7687
|
const SPACE_CHARACTERS = /\s+/g;
|
|
7906
7688
|
class Range2 {
|
|
@@ -8041,7 +7823,7 @@ function requireRange$1() {
|
|
|
8041
7823
|
return false;
|
|
8042
7824
|
}
|
|
8043
7825
|
}
|
|
8044
|
-
range$
|
|
7826
|
+
range$d = Range2;
|
|
8045
7827
|
const LRU = requireLrucache();
|
|
8046
7828
|
const cache2 = new LRU();
|
|
8047
7829
|
const parseOptions2 = requireParseOptions();
|
|
@@ -8271,7 +8053,7 @@ function requireRange$1() {
|
|
|
8271
8053
|
}
|
|
8272
8054
|
return true;
|
|
8273
8055
|
};
|
|
8274
|
-
return range$
|
|
8056
|
+
return range$d;
|
|
8275
8057
|
}
|
|
8276
8058
|
var comparator$2;
|
|
8277
8059
|
var hasRequiredComparator$1;
|
|
@@ -47149,7 +46931,7 @@ function escapeRegExp(value2) {
|
|
|
47149
46931
|
return value2.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
|
|
47150
46932
|
}
|
|
47151
46933
|
const clamp$6 = (value2, min2, max2) => Math.max(min2, Math.min(max2, value2));
|
|
47152
|
-
function range$
|
|
46934
|
+
function range$c(from2, to) {
|
|
47153
46935
|
return Array.from({
|
|
47154
46936
|
length: to - from2
|
|
47155
46937
|
}).map((_, i2) => from2 + i2);
|
|
@@ -51547,7 +51329,7 @@ const useGridVirtualScroller = () => {
|
|
|
51547
51329
|
const rowModels = params2.rows ?? currentPage.rows;
|
|
51548
51330
|
const firstRowToRender = baseRenderContext.firstRowIndex;
|
|
51549
51331
|
const lastRowToRender = Math.min(baseRenderContext.lastRowIndex, rowModels.length);
|
|
51550
|
-
const rowIndexes = params2.rows ? range$
|
|
51332
|
+
const rowIndexes = params2.rows ? range$c(0, params2.rows.length) : range$c(firstRowToRender, lastRowToRender);
|
|
51551
51333
|
let virtualRowIndex = -1;
|
|
51552
51334
|
if (!isPinnedSection && focusedVirtualCell) {
|
|
51553
51335
|
if (focusedVirtualCell.rowIndex < firstRowToRender) {
|
|
@@ -73034,7 +72816,7 @@ let powers = 0;
|
|
|
73034
72816
|
const boolean = increment$1();
|
|
73035
72817
|
const booleanish = increment$1();
|
|
73036
72818
|
const overloadedBoolean = increment$1();
|
|
73037
|
-
const number$
|
|
72819
|
+
const number$a = increment$1();
|
|
73038
72820
|
const spaceSeparated = increment$1();
|
|
73039
72821
|
const commaSeparated = increment$1();
|
|
73040
72822
|
const commaOrSpaceSeparated = increment$1();
|
|
@@ -73047,7 +72829,7 @@ const types = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePropert
|
|
|
73047
72829
|
booleanish,
|
|
73048
72830
|
commaOrSpaceSeparated,
|
|
73049
72831
|
commaSeparated,
|
|
73050
|
-
number: number$
|
|
72832
|
+
number: number$a,
|
|
73051
72833
|
overloadedBoolean,
|
|
73052
72834
|
spaceSeparated
|
|
73053
72835
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
@@ -73146,9 +72928,9 @@ const aria$1 = create$c({
|
|
|
73146
72928
|
ariaAutoComplete: null,
|
|
73147
72929
|
ariaBusy: booleanish,
|
|
73148
72930
|
ariaChecked: booleanish,
|
|
73149
|
-
ariaColCount: number$
|
|
73150
|
-
ariaColIndex: number$
|
|
73151
|
-
ariaColSpan: number$
|
|
72931
|
+
ariaColCount: number$a,
|
|
72932
|
+
ariaColIndex: number$a,
|
|
72933
|
+
ariaColSpan: number$a,
|
|
73152
72934
|
ariaControls: spaceSeparated,
|
|
73153
72935
|
ariaCurrent: null,
|
|
73154
72936
|
ariaDescribedBy: spaceSeparated,
|
|
@@ -73165,7 +72947,7 @@ const aria$1 = create$c({
|
|
|
73165
72947
|
ariaKeyShortcuts: null,
|
|
73166
72948
|
ariaLabel: null,
|
|
73167
72949
|
ariaLabelledBy: spaceSeparated,
|
|
73168
|
-
ariaLevel: number$
|
|
72950
|
+
ariaLevel: number$a,
|
|
73169
72951
|
ariaLive: null,
|
|
73170
72952
|
ariaModal: booleanish,
|
|
73171
72953
|
ariaMultiLine: booleanish,
|
|
@@ -73173,21 +72955,21 @@ const aria$1 = create$c({
|
|
|
73173
72955
|
ariaOrientation: null,
|
|
73174
72956
|
ariaOwns: spaceSeparated,
|
|
73175
72957
|
ariaPlaceholder: null,
|
|
73176
|
-
ariaPosInSet: number$
|
|
72958
|
+
ariaPosInSet: number$a,
|
|
73177
72959
|
ariaPressed: booleanish,
|
|
73178
72960
|
ariaReadOnly: booleanish,
|
|
73179
72961
|
ariaRelevant: null,
|
|
73180
72962
|
ariaRequired: booleanish,
|
|
73181
72963
|
ariaRoleDescription: spaceSeparated,
|
|
73182
|
-
ariaRowCount: number$
|
|
73183
|
-
ariaRowIndex: number$
|
|
73184
|
-
ariaRowSpan: number$
|
|
72964
|
+
ariaRowCount: number$a,
|
|
72965
|
+
ariaRowIndex: number$a,
|
|
72966
|
+
ariaRowSpan: number$a,
|
|
73185
72967
|
ariaSelected: booleanish,
|
|
73186
|
-
ariaSetSize: number$
|
|
72968
|
+
ariaSetSize: number$a,
|
|
73187
72969
|
ariaSort: null,
|
|
73188
|
-
ariaValueMax: number$
|
|
73189
|
-
ariaValueMin: number$
|
|
73190
|
-
ariaValueNow: number$
|
|
72970
|
+
ariaValueMax: number$a,
|
|
72971
|
+
ariaValueMin: number$a,
|
|
72972
|
+
ariaValueNow: number$a,
|
|
73191
72973
|
ariaValueText: null,
|
|
73192
72974
|
role: null
|
|
73193
72975
|
}
|
|
@@ -73226,13 +73008,13 @@ const html$2 = create$c({
|
|
|
73226
73008
|
checked: boolean,
|
|
73227
73009
|
cite: null,
|
|
73228
73010
|
className: spaceSeparated,
|
|
73229
|
-
cols: number$
|
|
73011
|
+
cols: number$a,
|
|
73230
73012
|
colSpan: null,
|
|
73231
73013
|
content: null,
|
|
73232
73014
|
contentEditable: booleanish,
|
|
73233
73015
|
controls: boolean,
|
|
73234
73016
|
controlsList: spaceSeparated,
|
|
73235
|
-
coords: number$
|
|
73017
|
+
coords: number$a | commaSeparated,
|
|
73236
73018
|
crossOrigin: null,
|
|
73237
73019
|
data: null,
|
|
73238
73020
|
dateTime: null,
|
|
@@ -73254,9 +73036,9 @@ const html$2 = create$c({
|
|
|
73254
73036
|
formNoValidate: boolean,
|
|
73255
73037
|
formTarget: null,
|
|
73256
73038
|
headers: spaceSeparated,
|
|
73257
|
-
height: number$
|
|
73039
|
+
height: number$a,
|
|
73258
73040
|
hidden: boolean,
|
|
73259
|
-
high: number$
|
|
73041
|
+
high: number$a,
|
|
73260
73042
|
href: null,
|
|
73261
73043
|
hrefLang: null,
|
|
73262
73044
|
htmlFor: spaceSeparated,
|
|
@@ -73281,14 +73063,14 @@ const html$2 = create$c({
|
|
|
73281
73063
|
list: null,
|
|
73282
73064
|
loading: null,
|
|
73283
73065
|
loop: boolean,
|
|
73284
|
-
low: number$
|
|
73066
|
+
low: number$a,
|
|
73285
73067
|
manifest: null,
|
|
73286
73068
|
max: null,
|
|
73287
|
-
maxLength: number$
|
|
73069
|
+
maxLength: number$a,
|
|
73288
73070
|
media: null,
|
|
73289
73071
|
method: null,
|
|
73290
73072
|
min: null,
|
|
73291
|
-
minLength: number$
|
|
73073
|
+
minLength: number$a,
|
|
73292
73074
|
multiple: boolean,
|
|
73293
73075
|
muted: boolean,
|
|
73294
73076
|
name: null,
|
|
@@ -73384,7 +73166,7 @@ const html$2 = create$c({
|
|
|
73384
73166
|
onWaiting: null,
|
|
73385
73167
|
onWheel: null,
|
|
73386
73168
|
open: boolean,
|
|
73387
|
-
optimum: number$
|
|
73169
|
+
optimum: number$a,
|
|
73388
73170
|
pattern: null,
|
|
73389
73171
|
ping: spaceSeparated,
|
|
73390
73172
|
placeholder: null,
|
|
@@ -73399,8 +73181,8 @@ const html$2 = create$c({
|
|
|
73399
73181
|
rel: spaceSeparated,
|
|
73400
73182
|
required: boolean,
|
|
73401
73183
|
reversed: boolean,
|
|
73402
|
-
rows: number$
|
|
73403
|
-
rowSpan: number$
|
|
73184
|
+
rows: number$a,
|
|
73185
|
+
rowSpan: number$a,
|
|
73404
73186
|
sandbox: spaceSeparated,
|
|
73405
73187
|
scope: null,
|
|
73406
73188
|
scoped: boolean,
|
|
@@ -73410,19 +73192,19 @@ const html$2 = create$c({
|
|
|
73410
73192
|
shadowRootDelegatesFocus: boolean,
|
|
73411
73193
|
shadowRootMode: null,
|
|
73412
73194
|
shape: null,
|
|
73413
|
-
size: number$
|
|
73195
|
+
size: number$a,
|
|
73414
73196
|
sizes: null,
|
|
73415
73197
|
slot: null,
|
|
73416
|
-
span: number$
|
|
73198
|
+
span: number$a,
|
|
73417
73199
|
spellCheck: booleanish,
|
|
73418
73200
|
src: null,
|
|
73419
73201
|
srcDoc: null,
|
|
73420
73202
|
srcLang: null,
|
|
73421
73203
|
srcSet: null,
|
|
73422
|
-
start: number$
|
|
73204
|
+
start: number$a,
|
|
73423
73205
|
step: null,
|
|
73424
73206
|
style: null,
|
|
73425
|
-
tabIndex: number$
|
|
73207
|
+
tabIndex: number$a,
|
|
73426
73208
|
target: null,
|
|
73427
73209
|
title: null,
|
|
73428
73210
|
translate: null,
|
|
@@ -73430,7 +73212,7 @@ const html$2 = create$c({
|
|
|
73430
73212
|
typeMustMatch: boolean,
|
|
73431
73213
|
useMap: null,
|
|
73432
73214
|
value: booleanish,
|
|
73433
|
-
width: number$
|
|
73215
|
+
width: number$a,
|
|
73434
73216
|
wrap: null,
|
|
73435
73217
|
writingSuggestions: null,
|
|
73436
73218
|
// Legacy.
|
|
@@ -73447,11 +73229,11 @@ const html$2 = create$c({
|
|
|
73447
73229
|
// `<body>`. Use CSS `background-image` instead
|
|
73448
73230
|
bgColor: null,
|
|
73449
73231
|
// `<body>` and table elements. Use CSS `background-color` instead
|
|
73450
|
-
border: number$
|
|
73232
|
+
border: number$a,
|
|
73451
73233
|
// `<table>`. Use CSS `border-width` instead,
|
|
73452
73234
|
borderColor: null,
|
|
73453
73235
|
// `<table>`. Use CSS `border-color` instead,
|
|
73454
|
-
bottomMargin: number$
|
|
73236
|
+
bottomMargin: number$a,
|
|
73455
73237
|
// `<body>`
|
|
73456
73238
|
cellPadding: null,
|
|
73457
73239
|
// `<table>`
|
|
@@ -73485,9 +73267,9 @@ const html$2 = create$c({
|
|
|
73485
73267
|
// `<table>`
|
|
73486
73268
|
frameBorder: null,
|
|
73487
73269
|
// `<iframe>`. Use CSS `border` instead
|
|
73488
|
-
hSpace: number$
|
|
73270
|
+
hSpace: number$a,
|
|
73489
73271
|
// `<img>` and `<object>`
|
|
73490
|
-
leftMargin: number$
|
|
73272
|
+
leftMargin: number$a,
|
|
73491
73273
|
// `<body>`
|
|
73492
73274
|
link: null,
|
|
73493
73275
|
// `<body>`. Use CSS `a:link {color: *}` instead
|
|
@@ -73495,9 +73277,9 @@ const html$2 = create$c({
|
|
|
73495
73277
|
// `<frame>`, `<iframe>`, and `<img>`. Use an `<a>`
|
|
73496
73278
|
lowSrc: null,
|
|
73497
73279
|
// `<img>`. Use a `<picture>`
|
|
73498
|
-
marginHeight: number$
|
|
73280
|
+
marginHeight: number$a,
|
|
73499
73281
|
// `<body>`
|
|
73500
|
-
marginWidth: number$
|
|
73282
|
+
marginWidth: number$a,
|
|
73501
73283
|
// `<body>`
|
|
73502
73284
|
noResize: boolean,
|
|
73503
73285
|
// `<frame>`
|
|
@@ -73515,7 +73297,7 @@ const html$2 = create$c({
|
|
|
73515
73297
|
// `<isindex>`
|
|
73516
73298
|
rev: null,
|
|
73517
73299
|
// `<link>`
|
|
73518
|
-
rightMargin: number$
|
|
73300
|
+
rightMargin: number$a,
|
|
73519
73301
|
// `<body>`
|
|
73520
73302
|
rules: null,
|
|
73521
73303
|
// `<table>`
|
|
@@ -73529,7 +73311,7 @@ const html$2 = create$c({
|
|
|
73529
73311
|
// `<table>`
|
|
73530
73312
|
text: null,
|
|
73531
73313
|
// `<body>`. Use CSS `color` instead
|
|
73532
|
-
topMargin: number$
|
|
73314
|
+
topMargin: number$a,
|
|
73533
73315
|
// `<body>`
|
|
73534
73316
|
valueType: null,
|
|
73535
73317
|
// `<param>`
|
|
@@ -73539,7 +73321,7 @@ const html$2 = create$c({
|
|
|
73539
73321
|
// Several. Use CSS `vertical-align` instead
|
|
73540
73322
|
vLink: null,
|
|
73541
73323
|
// `<body>`. Use CSS `a:visited {color}` instead
|
|
73542
|
-
vSpace: number$
|
|
73324
|
+
vSpace: number$a,
|
|
73543
73325
|
// `<img>` and `<object>`
|
|
73544
73326
|
// Non-standard Properties.
|
|
73545
73327
|
allowTransparency: null,
|
|
@@ -73549,7 +73331,7 @@ const html$2 = create$c({
|
|
|
73549
73331
|
disableRemotePlayback: boolean,
|
|
73550
73332
|
prefix: null,
|
|
73551
73333
|
property: null,
|
|
73552
|
-
results: number$
|
|
73334
|
+
results: number$a,
|
|
73553
73335
|
security: null,
|
|
73554
73336
|
unselectable: null
|
|
73555
73337
|
}
|
|
@@ -73734,27 +73516,27 @@ const svg$1 = create$c({
|
|
|
73734
73516
|
transform: caseSensitiveTransform,
|
|
73735
73517
|
properties: {
|
|
73736
73518
|
about: commaOrSpaceSeparated,
|
|
73737
|
-
accentHeight: number$
|
|
73519
|
+
accentHeight: number$a,
|
|
73738
73520
|
accumulate: null,
|
|
73739
73521
|
additive: null,
|
|
73740
73522
|
alignmentBaseline: null,
|
|
73741
|
-
alphabetic: number$
|
|
73742
|
-
amplitude: number$
|
|
73523
|
+
alphabetic: number$a,
|
|
73524
|
+
amplitude: number$a,
|
|
73743
73525
|
arabicForm: null,
|
|
73744
|
-
ascent: number$
|
|
73526
|
+
ascent: number$a,
|
|
73745
73527
|
attributeName: null,
|
|
73746
73528
|
attributeType: null,
|
|
73747
|
-
azimuth: number$
|
|
73529
|
+
azimuth: number$a,
|
|
73748
73530
|
bandwidth: null,
|
|
73749
73531
|
baselineShift: null,
|
|
73750
73532
|
baseFrequency: null,
|
|
73751
73533
|
baseProfile: null,
|
|
73752
73534
|
bbox: null,
|
|
73753
73535
|
begin: null,
|
|
73754
|
-
bias: number$
|
|
73536
|
+
bias: number$a,
|
|
73755
73537
|
by: null,
|
|
73756
73538
|
calcMode: null,
|
|
73757
|
-
capHeight: number$
|
|
73539
|
+
capHeight: number$a,
|
|
73758
73540
|
className: spaceSeparated,
|
|
73759
73541
|
clip: null,
|
|
73760
73542
|
clipPath: null,
|
|
@@ -73775,26 +73557,26 @@ const svg$1 = create$c({
|
|
|
73775
73557
|
d: null,
|
|
73776
73558
|
dataType: null,
|
|
73777
73559
|
defaultAction: null,
|
|
73778
|
-
descent: number$
|
|
73779
|
-
diffuseConstant: number$
|
|
73560
|
+
descent: number$a,
|
|
73561
|
+
diffuseConstant: number$a,
|
|
73780
73562
|
direction: null,
|
|
73781
73563
|
display: null,
|
|
73782
73564
|
dur: null,
|
|
73783
|
-
divisor: number$
|
|
73565
|
+
divisor: number$a,
|
|
73784
73566
|
dominantBaseline: null,
|
|
73785
73567
|
download: boolean,
|
|
73786
73568
|
dx: null,
|
|
73787
73569
|
dy: null,
|
|
73788
73570
|
edgeMode: null,
|
|
73789
73571
|
editable: null,
|
|
73790
|
-
elevation: number$
|
|
73572
|
+
elevation: number$a,
|
|
73791
73573
|
enableBackground: null,
|
|
73792
73574
|
end: null,
|
|
73793
73575
|
event: null,
|
|
73794
|
-
exponent: number$
|
|
73576
|
+
exponent: number$a,
|
|
73795
73577
|
externalResourcesRequired: null,
|
|
73796
73578
|
fill: null,
|
|
73797
|
-
fillOpacity: number$
|
|
73579
|
+
fillOpacity: number$a,
|
|
73798
73580
|
fillRule: null,
|
|
73799
73581
|
filter: null,
|
|
73800
73582
|
filterRes: null,
|
|
@@ -73824,27 +73606,27 @@ const svg$1 = create$c({
|
|
|
73824
73606
|
gradientTransform: null,
|
|
73825
73607
|
gradientUnits: null,
|
|
73826
73608
|
handler: null,
|
|
73827
|
-
hanging: number$
|
|
73609
|
+
hanging: number$a,
|
|
73828
73610
|
hatchContentUnits: null,
|
|
73829
73611
|
hatchUnits: null,
|
|
73830
73612
|
height: null,
|
|
73831
73613
|
href: null,
|
|
73832
73614
|
hrefLang: null,
|
|
73833
|
-
horizAdvX: number$
|
|
73834
|
-
horizOriginX: number$
|
|
73835
|
-
horizOriginY: number$
|
|
73615
|
+
horizAdvX: number$a,
|
|
73616
|
+
horizOriginX: number$a,
|
|
73617
|
+
horizOriginY: number$a,
|
|
73836
73618
|
id: null,
|
|
73837
|
-
ideographic: number$
|
|
73619
|
+
ideographic: number$a,
|
|
73838
73620
|
imageRendering: null,
|
|
73839
73621
|
initialVisibility: null,
|
|
73840
73622
|
in: null,
|
|
73841
73623
|
in2: null,
|
|
73842
|
-
intercept: number$
|
|
73843
|
-
k: number$
|
|
73844
|
-
k1: number$
|
|
73845
|
-
k2: number$
|
|
73846
|
-
k3: number$
|
|
73847
|
-
k4: number$
|
|
73624
|
+
intercept: number$a,
|
|
73625
|
+
k: number$a,
|
|
73626
|
+
k1: number$a,
|
|
73627
|
+
k2: number$a,
|
|
73628
|
+
k3: number$a,
|
|
73629
|
+
k4: number$a,
|
|
73848
73630
|
kernelMatrix: commaOrSpaceSeparated,
|
|
73849
73631
|
kernelUnitLength: null,
|
|
73850
73632
|
keyPoints: null,
|
|
@@ -73858,7 +73640,7 @@ const svg$1 = create$c({
|
|
|
73858
73640
|
lengthAdjust: null,
|
|
73859
73641
|
letterSpacing: null,
|
|
73860
73642
|
lightingColor: null,
|
|
73861
|
-
limitingConeAngle: number$
|
|
73643
|
+
limitingConeAngle: number$a,
|
|
73862
73644
|
local: null,
|
|
73863
73645
|
markerEnd: null,
|
|
73864
73646
|
markerMid: null,
|
|
@@ -73874,7 +73656,7 @@ const svg$1 = create$c({
|
|
|
73874
73656
|
media: null,
|
|
73875
73657
|
mediaCharacterEncoding: null,
|
|
73876
73658
|
mediaContentEncodings: null,
|
|
73877
|
-
mediaSize: number$
|
|
73659
|
+
mediaSize: number$a,
|
|
73878
73660
|
mediaTime: null,
|
|
73879
73661
|
method: null,
|
|
73880
73662
|
min: null,
|
|
@@ -73980,12 +73762,12 @@ const svg$1 = create$c({
|
|
|
73980
73762
|
origin: null,
|
|
73981
73763
|
overflow: null,
|
|
73982
73764
|
overlay: null,
|
|
73983
|
-
overlinePosition: number$
|
|
73984
|
-
overlineThickness: number$
|
|
73765
|
+
overlinePosition: number$a,
|
|
73766
|
+
overlineThickness: number$a,
|
|
73985
73767
|
paintOrder: null,
|
|
73986
73768
|
panose1: null,
|
|
73987
73769
|
path: null,
|
|
73988
|
-
pathLength: number$
|
|
73770
|
+
pathLength: number$a,
|
|
73989
73771
|
patternContentUnits: null,
|
|
73990
73772
|
patternTransform: null,
|
|
73991
73773
|
patternUnits: null,
|
|
@@ -73995,9 +73777,9 @@ const svg$1 = create$c({
|
|
|
73995
73777
|
playbackOrder: null,
|
|
73996
73778
|
pointerEvents: null,
|
|
73997
73779
|
points: null,
|
|
73998
|
-
pointsAtX: number$
|
|
73999
|
-
pointsAtY: number$
|
|
74000
|
-
pointsAtZ: number$
|
|
73780
|
+
pointsAtX: number$a,
|
|
73781
|
+
pointsAtY: number$a,
|
|
73782
|
+
pointsAtZ: number$a,
|
|
74001
73783
|
preserveAlpha: null,
|
|
74002
73784
|
preserveAspectRatio: null,
|
|
74003
73785
|
primitiveUnits: null,
|
|
@@ -74029,8 +73811,8 @@ const svg$1 = create$c({
|
|
|
74029
73811
|
side: null,
|
|
74030
73812
|
slope: null,
|
|
74031
73813
|
snapshotTime: null,
|
|
74032
|
-
specularConstant: number$
|
|
74033
|
-
specularExponent: number$
|
|
73814
|
+
specularConstant: number$a,
|
|
73815
|
+
specularExponent: number$a,
|
|
74034
73816
|
spreadMethod: null,
|
|
74035
73817
|
spacing: null,
|
|
74036
73818
|
startOffset: null,
|
|
@@ -74040,30 +73822,30 @@ const svg$1 = create$c({
|
|
|
74040
73822
|
stitchTiles: null,
|
|
74041
73823
|
stopColor: null,
|
|
74042
73824
|
stopOpacity: null,
|
|
74043
|
-
strikethroughPosition: number$
|
|
74044
|
-
strikethroughThickness: number$
|
|
73825
|
+
strikethroughPosition: number$a,
|
|
73826
|
+
strikethroughThickness: number$a,
|
|
74045
73827
|
string: null,
|
|
74046
73828
|
stroke: null,
|
|
74047
73829
|
strokeDashArray: commaOrSpaceSeparated,
|
|
74048
73830
|
strokeDashOffset: null,
|
|
74049
73831
|
strokeLineCap: null,
|
|
74050
73832
|
strokeLineJoin: null,
|
|
74051
|
-
strokeMiterLimit: number$
|
|
74052
|
-
strokeOpacity: number$
|
|
73833
|
+
strokeMiterLimit: number$a,
|
|
73834
|
+
strokeOpacity: number$a,
|
|
74053
73835
|
strokeWidth: null,
|
|
74054
73836
|
style: null,
|
|
74055
|
-
surfaceScale: number$
|
|
73837
|
+
surfaceScale: number$a,
|
|
74056
73838
|
syncBehavior: null,
|
|
74057
73839
|
syncBehaviorDefault: null,
|
|
74058
73840
|
syncMaster: null,
|
|
74059
73841
|
syncTolerance: null,
|
|
74060
73842
|
syncToleranceDefault: null,
|
|
74061
73843
|
systemLanguage: commaOrSpaceSeparated,
|
|
74062
|
-
tabIndex: number$
|
|
73844
|
+
tabIndex: number$a,
|
|
74063
73845
|
tableValues: null,
|
|
74064
73846
|
target: null,
|
|
74065
|
-
targetX: number$
|
|
74066
|
-
targetY: number$
|
|
73847
|
+
targetX: number$a,
|
|
73848
|
+
targetY: number$a,
|
|
74067
73849
|
textAnchor: null,
|
|
74068
73850
|
textDecoration: null,
|
|
74069
73851
|
textRendering: null,
|
|
@@ -74078,22 +73860,22 @@ const svg$1 = create$c({
|
|
|
74078
73860
|
transformOrigin: null,
|
|
74079
73861
|
u1: null,
|
|
74080
73862
|
u2: null,
|
|
74081
|
-
underlinePosition: number$
|
|
74082
|
-
underlineThickness: number$
|
|
73863
|
+
underlinePosition: number$a,
|
|
73864
|
+
underlineThickness: number$a,
|
|
74083
73865
|
unicode: null,
|
|
74084
73866
|
unicodeBidi: null,
|
|
74085
73867
|
unicodeRange: null,
|
|
74086
|
-
unitsPerEm: number$
|
|
73868
|
+
unitsPerEm: number$a,
|
|
74087
73869
|
values: null,
|
|
74088
|
-
vAlphabetic: number$
|
|
74089
|
-
vMathematical: number$
|
|
73870
|
+
vAlphabetic: number$a,
|
|
73871
|
+
vMathematical: number$a,
|
|
74090
73872
|
vectorEffect: null,
|
|
74091
|
-
vHanging: number$
|
|
74092
|
-
vIdeographic: number$
|
|
73873
|
+
vHanging: number$a,
|
|
73874
|
+
vIdeographic: number$a,
|
|
74093
73875
|
version: null,
|
|
74094
|
-
vertAdvY: number$
|
|
74095
|
-
vertOriginX: number$
|
|
74096
|
-
vertOriginY: number$
|
|
73876
|
+
vertAdvY: number$a,
|
|
73877
|
+
vertOriginX: number$a,
|
|
73878
|
+
vertOriginY: number$a,
|
|
74097
73879
|
viewBox: null,
|
|
74098
73880
|
viewTarget: null,
|
|
74099
73881
|
visibility: null,
|
|
@@ -74105,7 +73887,7 @@ const svg$1 = create$c({
|
|
|
74105
73887
|
x1: null,
|
|
74106
73888
|
x2: null,
|
|
74107
73889
|
xChannelSelector: null,
|
|
74108
|
-
xHeight: number$
|
|
73890
|
+
xHeight: number$a,
|
|
74109
73891
|
y: null,
|
|
74110
73892
|
y1: null,
|
|
74111
73893
|
y2: null,
|
|
@@ -85046,7 +84828,7 @@ function treeToExpectedCheckedLevel(currTree, checkedPaths) {
|
|
|
85046
84828
|
currTree.tree.forEach((lzn) => {
|
|
85047
84829
|
const levelZeroPath = [lzn.name];
|
|
85048
84830
|
const height2 = nodeToHeight(lzn);
|
|
85049
|
-
range$
|
|
84831
|
+
range$e(height2).forEach((i2) => {
|
|
85050
84832
|
const levelIndex = i2 + 1;
|
|
85051
84833
|
const levelNodePaths = nodeToLevelDescendantNamePaths(lzn, levelIndex, [], true);
|
|
85052
84834
|
if (isEqual$3(levelNodePaths, checkedPaths)) {
|
|
@@ -85119,7 +84901,7 @@ function treeToMembershipMap(currTree) {
|
|
|
85119
84901
|
if (currTree) {
|
|
85120
84902
|
currTree.tree.forEach((lzn) => {
|
|
85121
84903
|
const height2 = nodeToHeight(lzn);
|
|
85122
|
-
range$
|
|
84904
|
+
range$e(height2).forEach((i2) => {
|
|
85123
84905
|
const levelIndex = i2 + 1;
|
|
85124
84906
|
const levelNodePaths = nodeToLevelDescendantNamePaths(lzn, levelIndex, [], true);
|
|
85125
84907
|
levelNodePaths.forEach((setNamePath) => {
|
|
@@ -102825,7 +102607,7 @@ function LevelsButtons(props) {
|
|
|
102825
102607
|
}
|
|
102826
102608
|
}
|
|
102827
102609
|
const { classes: classes2 } = useStyles$t();
|
|
102828
|
-
return jsxRuntimeExports.jsx("div", { className: classes2.levelButtonsContainer, children: range$
|
|
102610
|
+
return jsxRuntimeExports.jsx("div", { className: classes2.levelButtonsContainer, children: range$e(1, height2 + 1).map((i2) => {
|
|
102829
102611
|
const isChecked = isEqual$3(path2, checkedLevelPath) && i2 === checkedLevelIndex;
|
|
102830
102612
|
return jsxRuntimeExports.jsx("div", { children: jsxRuntimeExports.jsx(HelpTooltip, { title: getLevelTooltipText(i2), children: jsxRuntimeExports.jsx("input", { className: clsx(classes2.levelRadioButton, { [classes2.levelRadioButtonChecked]: isChecked && !hasColorEncoding }), type: "checkbox", value: i2, checked: isChecked && hasColorEncoding, onChange: onCheck }) }) }, i2);
|
|
102831
102613
|
}) });
|
|
@@ -103431,10 +103213,10 @@ function ObsSetsManagerSubscriber(props) {
|
|
|
103431
103213
|
]);
|
|
103432
103214
|
return jsxRuntimeExports.jsx(TitleInfo, { title: title2, isScroll: true, closeButtonVisible, downloadButtonVisible, removeGridComponent, urls: urls2, theme, isReady, helpText, errors, children: manager2 });
|
|
103433
103215
|
}
|
|
103434
|
-
function ascending$
|
|
103216
|
+
function ascending$8(a2, b2) {
|
|
103435
103217
|
return a2 < b2 ? -1 : a2 > b2 ? 1 : a2 >= b2 ? 0 : NaN;
|
|
103436
103218
|
}
|
|
103437
|
-
function bisector$
|
|
103219
|
+
function bisector$3(f2) {
|
|
103438
103220
|
let delta = f2;
|
|
103439
103221
|
let compare2 = f2;
|
|
103440
103222
|
if (f2.length === 1) {
|
|
@@ -103470,14 +103252,14 @@ function bisector$4(f2) {
|
|
|
103470
103252
|
return { left: left2, center: center2, right: right2 };
|
|
103471
103253
|
}
|
|
103472
103254
|
function ascendingComparator$1(f2) {
|
|
103473
|
-
return (d, x2) => ascending$
|
|
103255
|
+
return (d, x2) => ascending$8(f2(d), x2);
|
|
103474
103256
|
}
|
|
103475
|
-
function number$
|
|
103257
|
+
function number$9(x2) {
|
|
103476
103258
|
return x2 === null ? NaN : +x2;
|
|
103477
103259
|
}
|
|
103478
|
-
const ascendingBisect$
|
|
103479
|
-
const bisectRight$
|
|
103480
|
-
bisector$
|
|
103260
|
+
const ascendingBisect$1 = bisector$3(ascending$8);
|
|
103261
|
+
const bisectRight$2 = ascendingBisect$1.right;
|
|
103262
|
+
bisector$3(number$9).center;
|
|
103481
103263
|
function count$2(values3, valueof) {
|
|
103482
103264
|
let count2 = 0;
|
|
103483
103265
|
{
|
|
@@ -103696,7 +103478,7 @@ function bin$2() {
|
|
|
103696
103478
|
for (i2 = 0; i2 < n3; ++i2) {
|
|
103697
103479
|
x2 = values3[i2];
|
|
103698
103480
|
if (x02 <= x2 && x2 <= x12) {
|
|
103699
|
-
bins2[bisectRight$
|
|
103481
|
+
bins2[bisectRight$2(tz, x2, 0, m2)].push(data2[i2]);
|
|
103700
103482
|
}
|
|
103701
103483
|
}
|
|
103702
103484
|
return bins2;
|
|
@@ -103734,7 +103516,7 @@ function min$4(values3, valueof) {
|
|
|
103734
103516
|
}
|
|
103735
103517
|
return min2;
|
|
103736
103518
|
}
|
|
103737
|
-
function quantileSorted$1(values3, p, valueof = number$
|
|
103519
|
+
function quantileSorted$1(values3, p, valueof = number$9) {
|
|
103738
103520
|
if (!(n3 = values3.length)) return;
|
|
103739
103521
|
if ((p = +p) <= 0 || n3 < 2) return +valueof(values3[0], 0, values3);
|
|
103740
103522
|
if (p >= 1) return +valueof(values3[n3 - 1], n3 - 1, values3);
|
|
@@ -142929,7 +142711,7 @@ const defaultGetValue = (points2) => points2.length;
|
|
|
142929
142711
|
const MAX_32_BIT_FLOAT = 3402823466e29;
|
|
142930
142712
|
const defaultGetPoints = (bin2) => bin2.points;
|
|
142931
142713
|
const defaultGetIndex = (bin2) => bin2.index;
|
|
142932
|
-
const ascending$
|
|
142714
|
+
const ascending$7 = (a2, b2) => a2 < b2 ? -1 : a2 > b2 ? 1 : a2 >= b2 ? 0 : NaN;
|
|
142933
142715
|
const defaultProps$w = {
|
|
142934
142716
|
getValue: defaultGetValue,
|
|
142935
142717
|
getPoints: defaultGetPoints,
|
|
@@ -143013,7 +142795,7 @@ class BinSorter {
|
|
|
143013
142795
|
}
|
|
143014
142796
|
getValueRange(percentileRange) {
|
|
143015
142797
|
if (!this.sortedBins) {
|
|
143016
|
-
this.sortedBins = this.aggregatedBins.sort((a2, b2) => ascending$
|
|
142798
|
+
this.sortedBins = this.aggregatedBins.sort((a2, b2) => ascending$7(a2.value, b2.value));
|
|
143017
142799
|
}
|
|
143018
142800
|
if (!this.sortedBins.length) {
|
|
143019
142801
|
return [];
|
|
@@ -143029,7 +142811,7 @@ class BinSorter {
|
|
|
143029
142811
|
}
|
|
143030
142812
|
getValueDomainByScale(scale2, [lower2 = 0, upper = 100] = []) {
|
|
143031
142813
|
if (!this.sortedBins) {
|
|
143032
|
-
this.sortedBins = this.aggregatedBins.sort((a2, b2) => ascending$
|
|
142814
|
+
this.sortedBins = this.aggregatedBins.sort((a2, b2) => ascending$7(a2.value, b2.value));
|
|
143033
142815
|
}
|
|
143034
142816
|
if (!this.sortedBins.length) {
|
|
143035
142817
|
return [];
|
|
@@ -182804,7 +182586,7 @@ function cartesianNormalizeInPlace$1(d) {
|
|
|
182804
182586
|
var l2 = sqrt$5(d[0] * d[0] + d[1] * d[1] + d[2] * d[2]);
|
|
182805
182587
|
d[0] /= l2, d[1] /= l2, d[2] /= l2;
|
|
182806
182588
|
}
|
|
182807
|
-
var lambda0$3, phi0$1, lambda1$1, phi1$1, lambda2$1, lambda00$4, phi00$4, p0$1, deltaSum$1 = adder(), ranges$1, range$
|
|
182589
|
+
var lambda0$3, phi0$1, lambda1$1, phi1$1, lambda2$1, lambda00$4, phi00$4, p0$1, deltaSum$1 = adder(), ranges$1, range$b;
|
|
182808
182590
|
var boundsStream$3 = {
|
|
182809
182591
|
point: boundsPoint$3,
|
|
182810
182592
|
lineStart: boundsLineStart$1,
|
|
@@ -182824,11 +182606,11 @@ var boundsStream$3 = {
|
|
|
182824
182606
|
if (areaRingSum$3 < 0) lambda0$3 = -(lambda1$1 = 180), phi0$1 = -(phi1$1 = 90);
|
|
182825
182607
|
else if (deltaSum$1 > epsilon$8) phi1$1 = 90;
|
|
182826
182608
|
else if (deltaSum$1 < -epsilon$8) phi0$1 = -90;
|
|
182827
|
-
range$
|
|
182609
|
+
range$b[0] = lambda0$3, range$b[1] = lambda1$1;
|
|
182828
182610
|
}
|
|
182829
182611
|
};
|
|
182830
182612
|
function boundsPoint$3(lambda, phi2) {
|
|
182831
|
-
ranges$1.push(range$
|
|
182613
|
+
ranges$1.push(range$b = [lambda0$3 = lambda, lambda1$1 = lambda]);
|
|
182832
182614
|
if (phi2 < phi0$1) phi0$1 = phi2;
|
|
182833
182615
|
if (phi2 > phi1$1) phi1$1 = phi2;
|
|
182834
182616
|
}
|
|
@@ -182868,7 +182650,7 @@ function linePoint$1(lambda, phi2) {
|
|
|
182868
182650
|
}
|
|
182869
182651
|
}
|
|
182870
182652
|
} else {
|
|
182871
|
-
ranges$1.push(range$
|
|
182653
|
+
ranges$1.push(range$b = [lambda0$3 = lambda, lambda1$1 = lambda]);
|
|
182872
182654
|
}
|
|
182873
182655
|
if (phi2 < phi0$1) phi0$1 = phi2;
|
|
182874
182656
|
if (phi2 > phi1$1) phi1$1 = phi2;
|
|
@@ -182878,7 +182660,7 @@ function boundsLineStart$1() {
|
|
|
182878
182660
|
boundsStream$3.point = linePoint$1;
|
|
182879
182661
|
}
|
|
182880
182662
|
function boundsLineEnd$1() {
|
|
182881
|
-
range$
|
|
182663
|
+
range$b[0] = lambda0$3, range$b[1] = lambda1$1;
|
|
182882
182664
|
boundsStream$3.point = boundsPoint$3;
|
|
182883
182665
|
p0$1 = null;
|
|
182884
182666
|
}
|
|
@@ -182899,7 +182681,7 @@ function boundsRingEnd$1() {
|
|
|
182899
182681
|
boundsRingPoint$1(lambda00$4, phi00$4);
|
|
182900
182682
|
areaStream$3.lineEnd();
|
|
182901
182683
|
if (abs$5(deltaSum$1) > epsilon$8) lambda0$3 = -(lambda1$1 = 180);
|
|
182902
|
-
range$
|
|
182684
|
+
range$b[0] = lambda0$3, range$b[1] = lambda1$1;
|
|
182903
182685
|
p0$1 = null;
|
|
182904
182686
|
}
|
|
182905
182687
|
function angle$1(lambda02, lambda12) {
|
|
@@ -182932,7 +182714,7 @@ function bounds$2(feature2) {
|
|
|
182932
182714
|
if ((delta = angle$1(a2[1], b2[0])) > deltaMax) deltaMax = delta, lambda0$3 = b2[0], lambda1$1 = a2[1];
|
|
182933
182715
|
}
|
|
182934
182716
|
}
|
|
182935
|
-
ranges$1 = range$
|
|
182717
|
+
ranges$1 = range$b = null;
|
|
182936
182718
|
return lambda0$3 === Infinity || phi0$1 === Infinity ? [[NaN, NaN], [NaN, NaN]] : [[lambda0$3, phi0$1], [lambda1$1, phi1$1]];
|
|
182937
182719
|
}
|
|
182938
182720
|
var W0$1, W1$1, X0$3, Y0$3, Z0$3, X1$3, Y1$3, Z1$3, X2$4, Y2$4, Z2$3, lambda00$3, phi00$3, x0$9, y0$9, z0$1;
|
|
@@ -183278,10 +183060,10 @@ function link$1(array2) {
|
|
|
183278
183060
|
a2.n = b2 = array2[0];
|
|
183279
183061
|
b2.p = a2;
|
|
183280
183062
|
}
|
|
183281
|
-
function ascending$
|
|
183063
|
+
function ascending$6(a2, b2) {
|
|
183282
183064
|
return a2 < b2 ? -1 : a2 > b2 ? 1 : a2 >= b2 ? 0 : NaN;
|
|
183283
183065
|
}
|
|
183284
|
-
function bisector$
|
|
183066
|
+
function bisector$2(compare2) {
|
|
183285
183067
|
if (compare2.length === 1) compare2 = ascendingComparator(compare2);
|
|
183286
183068
|
return {
|
|
183287
183069
|
left: function(a2, x2, lo, hi) {
|
|
@@ -183308,11 +183090,11 @@ function bisector$3(compare2) {
|
|
|
183308
183090
|
}
|
|
183309
183091
|
function ascendingComparator(f2) {
|
|
183310
183092
|
return function(d, x2) {
|
|
183311
|
-
return ascending$
|
|
183093
|
+
return ascending$6(f2(d), x2);
|
|
183312
183094
|
};
|
|
183313
183095
|
}
|
|
183314
|
-
bisector$
|
|
183315
|
-
function range$
|
|
183096
|
+
bisector$2(ascending$6);
|
|
183097
|
+
function range$a(start2, stop3, step) {
|
|
183316
183098
|
start2 = +start2, stop3 = +stop3, step = (n3 = arguments.length) < 2 ? (stop3 = start2, start2 = 0, 1) : n3 < 3 ? 1 : +step;
|
|
183317
183099
|
var i2 = -1, n3 = Math.max(0, Math.ceil((stop3 - start2) / step)) | 0, range2 = new Array(n3);
|
|
183318
183100
|
while (++i2 < n3) {
|
|
@@ -183594,7 +183376,7 @@ function contains$2(object2, point2) {
|
|
|
183594
183376
|
return (object2 && containsObjectType.hasOwnProperty(object2.type) ? containsObjectType[object2.type] : containsGeometry)(object2, point2);
|
|
183595
183377
|
}
|
|
183596
183378
|
function graticuleX$1(y02, y12, dy) {
|
|
183597
|
-
var y2 = range$
|
|
183379
|
+
var y2 = range$a(y02, y12 - epsilon$8, dy).concat(y12);
|
|
183598
183380
|
return function(x2) {
|
|
183599
183381
|
return y2.map(function(y22) {
|
|
183600
183382
|
return [x2, y22];
|
|
@@ -183602,7 +183384,7 @@ function graticuleX$1(y02, y12, dy) {
|
|
|
183602
183384
|
};
|
|
183603
183385
|
}
|
|
183604
183386
|
function graticuleY$1(x02, x12, dx) {
|
|
183605
|
-
var x2 = range$
|
|
183387
|
+
var x2 = range$a(x02, x12 - epsilon$8, dx).concat(x12);
|
|
183606
183388
|
return function(y2) {
|
|
183607
183389
|
return x2.map(function(x22) {
|
|
183608
183390
|
return [x22, y2];
|
|
@@ -183615,9 +183397,9 @@ function graticule$1() {
|
|
|
183615
183397
|
return { type: "MultiLineString", coordinates: lines() };
|
|
183616
183398
|
}
|
|
183617
183399
|
function lines() {
|
|
183618
|
-
return range$
|
|
183400
|
+
return range$a(ceil$3(X02 / DX) * DX, X12, DX).map(X3).concat(range$a(ceil$3(Y02 / DY) * DY, Y12, DY).map(Y3)).concat(range$a(ceil$3(x02 / dx) * dx, x12, dx).filter(function(x22) {
|
|
183619
183401
|
return abs$5(x22 % DX) > epsilon$8;
|
|
183620
|
-
}).map(x2)).concat(range$
|
|
183402
|
+
}).map(x2)).concat(range$a(ceil$3(y02 / dy) * dy, y12, dy).filter(function(y22) {
|
|
183621
183403
|
return abs$5(y22 % DY) > epsilon$8;
|
|
183622
183404
|
}).map(y2));
|
|
183623
183405
|
}
|
|
@@ -209323,22 +209105,22 @@ async function getDecoder(fileDirectory) {
|
|
|
209323
209105
|
const Decoder = await importFn();
|
|
209324
209106
|
return new Decoder(fileDirectory);
|
|
209325
209107
|
}
|
|
209326
|
-
addDecoder([void 0, 1], () => import("./raw-
|
|
209327
|
-
addDecoder(5, () => import("./lzw-
|
|
209108
|
+
addDecoder([void 0, 1], () => import("./raw-DP5Af32W.js").then((m2) => m2.default));
|
|
209109
|
+
addDecoder(5, () => import("./lzw-D4L-VfX8.js").then((m2) => m2.default));
|
|
209328
209110
|
addDecoder(6, () => {
|
|
209329
209111
|
throw new Error("old style JPEG compression is not supported.");
|
|
209330
209112
|
});
|
|
209331
|
-
addDecoder(7, () => import("./jpeg-
|
|
209332
|
-
addDecoder([8, 32946], () => import("./deflate-
|
|
209333
|
-
addDecoder(32773, () => import("./packbits-
|
|
209113
|
+
addDecoder(7, () => import("./jpeg-Bz6F-bB0.js").then((m2) => m2.default));
|
|
209114
|
+
addDecoder([8, 32946], () => import("./deflate-BHuVu6ka.js").then((m2) => m2.default));
|
|
209115
|
+
addDecoder(32773, () => import("./packbits-CLckyTrz.js").then((m2) => m2.default));
|
|
209334
209116
|
addDecoder(
|
|
209335
209117
|
34887,
|
|
209336
|
-
() => import("./lerc-
|
|
209118
|
+
() => import("./lerc-C0S_lxM2.js").then(async (m2) => {
|
|
209337
209119
|
await m2.zstd.init();
|
|
209338
209120
|
return m2;
|
|
209339
209121
|
}).then((m2) => m2.default)
|
|
209340
209122
|
);
|
|
209341
|
-
addDecoder(50001, () => import("./webimage-
|
|
209123
|
+
addDecoder(50001, () => import("./webimage-Y7ICR65G.js").then((m2) => m2.default));
|
|
209342
209124
|
function copyNewSize(array2, width2, height2, samplesPerPixel = 1) {
|
|
209343
209125
|
return new (Object.getPrototypeOf(array2)).constructor(width2 * height2 * samplesPerPixel);
|
|
209344
209126
|
}
|
|
@@ -212379,7 +212161,7 @@ const Z_FIXED = 4;
|
|
|
212379
212161
|
const Z_BINARY = 0;
|
|
212380
212162
|
const Z_TEXT = 1;
|
|
212381
212163
|
const Z_UNKNOWN = 2;
|
|
212382
|
-
function zero$
|
|
212164
|
+
function zero$5(buf) {
|
|
212383
212165
|
let len2 = buf.length;
|
|
212384
212166
|
while (--len2 >= 0) {
|
|
212385
212167
|
buf[len2] = 0;
|
|
@@ -212418,17 +212200,17 @@ const extra_blbits = (
|
|
|
212418
212200
|
const bl_order = new Uint8Array([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]);
|
|
212419
212201
|
const DIST_CODE_LEN = 512;
|
|
212420
212202
|
const static_ltree = new Array((L_CODES + 2) * 2);
|
|
212421
|
-
zero$
|
|
212203
|
+
zero$5(static_ltree);
|
|
212422
212204
|
const static_dtree = new Array(D_CODES * 2);
|
|
212423
|
-
zero$
|
|
212205
|
+
zero$5(static_dtree);
|
|
212424
212206
|
const _dist_code = new Array(DIST_CODE_LEN);
|
|
212425
|
-
zero$
|
|
212207
|
+
zero$5(_dist_code);
|
|
212426
212208
|
const _length_code = new Array(MAX_MATCH - MIN_MATCH + 1);
|
|
212427
|
-
zero$
|
|
212209
|
+
zero$5(_length_code);
|
|
212428
212210
|
const base_length = new Array(LENGTH_CODES);
|
|
212429
|
-
zero$
|
|
212211
|
+
zero$5(base_length);
|
|
212430
212212
|
const base_dist = new Array(D_CODES);
|
|
212431
|
-
zero$
|
|
212213
|
+
zero$5(base_dist);
|
|
212432
212214
|
function StaticTreeDesc(static_tree, extra_bits, extra_base, elems, max_length) {
|
|
212433
212215
|
this.static_tree = static_tree;
|
|
212434
212216
|
this.extra_bits = extra_bits;
|
|
@@ -220294,7 +220076,7 @@ const channels = {
|
|
|
220294
220076
|
},
|
|
220295
220077
|
fs: fs$2
|
|
220296
220078
|
};
|
|
220297
|
-
function range$
|
|
220079
|
+
function range$9(len2) {
|
|
220298
220080
|
return [...Array(len2).keys()];
|
|
220299
220081
|
}
|
|
220300
220082
|
function padWithDefault$2(arr, defaultValue2, padWidth) {
|
|
@@ -221394,7 +221176,7 @@ const ScaleBarLayer = class extends CompositeLayer {
|
|
|
221394
221176
|
sizeScale: 2 ** -zoom2,
|
|
221395
221177
|
characterSet: [
|
|
221396
221178
|
...displayUnit.split(""),
|
|
221397
|
-
...range$
|
|
221179
|
+
...range$9(10).map((i2) => String(i2)),
|
|
221398
221180
|
".",
|
|
221399
221181
|
"e",
|
|
221400
221182
|
"+"
|
|
@@ -222833,7 +222615,7 @@ class BitmaskLayer2 extends XRLayer {
|
|
|
222833
222615
|
} = this.state;
|
|
222834
222616
|
if (textures && model) {
|
|
222835
222617
|
const scaleFactor = 1 / 2 ** (maxZoom - zoom2);
|
|
222836
|
-
const colors2 = Object.fromEntries(range$
|
|
222618
|
+
const colors2 = Object.fromEntries(range$e(MAX_CHANNELS).map((i2) => [`color${i2}`, getColor(channelColors[i2])]));
|
|
222837
222619
|
model.setUniforms(Object.assign({}, uniforms, {
|
|
222838
222620
|
...colors2,
|
|
222839
222621
|
// Bitmask image channel data textures
|
|
@@ -226022,7 +225804,7 @@ class ContourLayerWithText extends ContourLayer {
|
|
|
226022
225804
|
let minCirclePointI;
|
|
226023
225805
|
let minPolygonPoint;
|
|
226024
225806
|
const numVertices = maxAreaPolygon.geometry.coordinates[0].length;
|
|
226025
|
-
const polygonVertices = numVertices > MAX_NUM_VERTICES ? range$
|
|
225807
|
+
const polygonVertices = numVertices > MAX_NUM_VERTICES ? range$e(MAX_NUM_VERTICES).map((i2) => maxAreaPolygon.geometry.coordinates[0][Math.floor(i2 * numVertices / MAX_NUM_VERTICES)]) : [...maxAreaPolygon.geometry.coordinates[0]];
|
|
226026
225808
|
circlePolygon.geometry.coordinates[0].forEach((circleCoord, circlePointI) => {
|
|
226027
225809
|
const circlePoint = point$9(circleCoord);
|
|
226028
225810
|
polygonVertices.forEach((polyCoord) => {
|
|
@@ -226442,7 +226224,7 @@ function createQuadTree(obsEmbedding, getCellCoords) {
|
|
|
226442
226224
|
if (!obsEmbedding) {
|
|
226443
226225
|
return null;
|
|
226444
226226
|
}
|
|
226445
|
-
const tree2 = quadtree$1().x((i2) => getCellCoords(i2)[0]).y((i2) => getCellCoords(i2)[1]).addAll(range$
|
|
226227
|
+
const tree2 = quadtree$1().x((i2) => getCellCoords(i2)[0]).y((i2) => getCellCoords(i2)[1]).addAll(range$e(obsEmbedding.shape[1]));
|
|
226446
226228
|
return tree2;
|
|
226447
226229
|
}
|
|
226448
226230
|
function constant$6(v) {
|
|
@@ -226550,8 +226332,14 @@ function forceCollideRects() {
|
|
|
226550
226332
|
};
|
|
226551
226333
|
return force2;
|
|
226552
226334
|
}
|
|
226553
|
-
|
|
226554
|
-
|
|
226335
|
+
const BASE_POINT_SIZE = 5;
|
|
226336
|
+
const LARGE_DATASET_CELL_COUNT = 1e4;
|
|
226337
|
+
const SMALL_DATASET_CELL_COUNT = 100;
|
|
226338
|
+
function getInitialPointSize(numCells = LARGE_DATASET_CELL_COUNT) {
|
|
226339
|
+
return BASE_POINT_SIZE / clamp$8(numCells, SMALL_DATASET_CELL_COUNT, LARGE_DATASET_CELL_COUNT);
|
|
226340
|
+
}
|
|
226341
|
+
function getPointSizeDevicePixels(devicePixelRatio2, zoom2, xRange, yRange, width2, height2, numCells) {
|
|
226342
|
+
const pointSize = getInitialPointSize(numCells);
|
|
226555
226343
|
const pointScreenSizeMax = 10;
|
|
226556
226344
|
const pointScreenSizeMin = 1 / devicePixelRatio2;
|
|
226557
226345
|
const scaleFactor = 2 ** zoom2;
|
|
@@ -227747,7 +227535,7 @@ function selection_order() {
|
|
|
227747
227535
|
return this;
|
|
227748
227536
|
}
|
|
227749
227537
|
function selection_sort(compare2) {
|
|
227750
|
-
if (!compare2) compare2 = ascending$
|
|
227538
|
+
if (!compare2) compare2 = ascending$5;
|
|
227751
227539
|
function compareNode(a2, b2) {
|
|
227752
227540
|
return a2 && b2 ? compare2(a2.__data__, b2.__data__) : !a2 - !b2;
|
|
227753
227541
|
}
|
|
@@ -227761,7 +227549,7 @@ function selection_sort(compare2) {
|
|
|
227761
227549
|
}
|
|
227762
227550
|
return new Selection(sortgroups, this._parents).order();
|
|
227763
227551
|
}
|
|
227764
|
-
function ascending$
|
|
227552
|
+
function ascending$5(a2, b2) {
|
|
227765
227553
|
return a2 < b2 ? -1 : a2 > b2 ? 1 : a2 >= b2 ? 0 : NaN;
|
|
227766
227554
|
}
|
|
227767
227555
|
function selection_call() {
|
|
@@ -228170,20 +227958,20 @@ Selection.prototype = {
|
|
|
228170
227958
|
function select$1(selector2) {
|
|
228171
227959
|
return typeof selector2 === "string" ? new Selection([[document.querySelector(selector2)]], [document.documentElement]) : new Selection([[selector2]], root$2);
|
|
228172
227960
|
}
|
|
228173
|
-
function ascending$
|
|
227961
|
+
function ascending$4(a2, b2) {
|
|
228174
227962
|
return a2 == null || b2 == null ? NaN : a2 < b2 ? -1 : a2 > b2 ? 1 : a2 >= b2 ? 0 : NaN;
|
|
228175
227963
|
}
|
|
228176
|
-
function descending$
|
|
227964
|
+
function descending$1(a2, b2) {
|
|
228177
227965
|
return a2 == null || b2 == null ? NaN : b2 < a2 ? -1 : b2 > a2 ? 1 : b2 >= a2 ? 0 : NaN;
|
|
228178
227966
|
}
|
|
228179
|
-
function bisector$
|
|
227967
|
+
function bisector$1(f2) {
|
|
228180
227968
|
let compare12, compare2, delta;
|
|
228181
227969
|
if (f2.length !== 2) {
|
|
228182
|
-
compare12 = ascending$
|
|
228183
|
-
compare2 = (d, x2) => ascending$
|
|
227970
|
+
compare12 = ascending$4;
|
|
227971
|
+
compare2 = (d, x2) => ascending$4(f2(d), x2);
|
|
228184
227972
|
delta = (d, x2) => f2(d) - x2;
|
|
228185
227973
|
} else {
|
|
228186
|
-
compare12 = f2 === ascending$
|
|
227974
|
+
compare12 = f2 === ascending$4 || f2 === descending$1 ? f2 : zero$4;
|
|
228187
227975
|
compare2 = f2;
|
|
228188
227976
|
delta = f2;
|
|
228189
227977
|
}
|
|
@@ -228215,10 +228003,10 @@ function bisector$2(f2) {
|
|
|
228215
228003
|
}
|
|
228216
228004
|
return { left: left2, center: center2, right: right2 };
|
|
228217
228005
|
}
|
|
228218
|
-
function zero$
|
|
228006
|
+
function zero$4() {
|
|
228219
228007
|
return 0;
|
|
228220
228008
|
}
|
|
228221
|
-
function number$
|
|
228009
|
+
function number$8(x2) {
|
|
228222
228010
|
return x2 === null ? NaN : +x2;
|
|
228223
228011
|
}
|
|
228224
228012
|
function* numbers$4(values3, valueof) {
|
|
@@ -228237,10 +228025,10 @@ function* numbers$4(values3, valueof) {
|
|
|
228237
228025
|
}
|
|
228238
228026
|
}
|
|
228239
228027
|
}
|
|
228240
|
-
const ascendingBisect
|
|
228241
|
-
const bisectRight$
|
|
228242
|
-
const bisectLeft$1 = ascendingBisect
|
|
228243
|
-
bisector$
|
|
228028
|
+
const ascendingBisect = bisector$1(ascending$4);
|
|
228029
|
+
const bisectRight$1 = ascendingBisect.right;
|
|
228030
|
+
const bisectLeft$1 = ascendingBisect.left;
|
|
228031
|
+
bisector$1(number$8).center;
|
|
228244
228032
|
function variance(values3, valueof) {
|
|
228245
228033
|
let count2 = 0;
|
|
228246
228034
|
let delta;
|
|
@@ -228311,8 +228099,8 @@ class Adder {
|
|
|
228311
228099
|
function permute(source2, keys2) {
|
|
228312
228100
|
return Array.from(keys2, (key2) => source2[key2]);
|
|
228313
228101
|
}
|
|
228314
|
-
function compareDefined(compare2 = ascending$
|
|
228315
|
-
if (compare2 === ascending$
|
|
228102
|
+
function compareDefined(compare2 = ascending$4) {
|
|
228103
|
+
if (compare2 === ascending$4) return ascendingDefined;
|
|
228316
228104
|
if (typeof compare2 !== "function") throw new TypeError("compare is not a function");
|
|
228317
228105
|
return (a2, b2) => {
|
|
228318
228106
|
const x2 = compare2(a2, b2);
|
|
@@ -228323,40 +228111,51 @@ function compareDefined(compare2 = ascending$5) {
|
|
|
228323
228111
|
function ascendingDefined(a2, b2) {
|
|
228324
228112
|
return (a2 == null || !(a2 >= a2)) - (b2 == null || !(b2 >= b2)) || (a2 < b2 ? -1 : a2 > b2 ? 1 : 0);
|
|
228325
228113
|
}
|
|
228326
|
-
|
|
228114
|
+
const e10 = Math.sqrt(50), e5 = Math.sqrt(10), e2 = Math.sqrt(2);
|
|
228115
|
+
function tickSpec(start2, stop3, count2) {
|
|
228116
|
+
const step = (stop3 - start2) / Math.max(0, count2), power = Math.floor(Math.log10(step)), error2 = step / Math.pow(10, power), factor = error2 >= e10 ? 10 : error2 >= e5 ? 5 : error2 >= e2 ? 2 : 1;
|
|
228117
|
+
let i1, i2, inc;
|
|
228118
|
+
if (power < 0) {
|
|
228119
|
+
inc = Math.pow(10, -power) / factor;
|
|
228120
|
+
i1 = Math.round(start2 * inc);
|
|
228121
|
+
i2 = Math.round(stop3 * inc);
|
|
228122
|
+
if (i1 / inc < start2) ++i1;
|
|
228123
|
+
if (i2 / inc > stop3) --i2;
|
|
228124
|
+
inc = -inc;
|
|
228125
|
+
} else {
|
|
228126
|
+
inc = Math.pow(10, power) * factor;
|
|
228127
|
+
i1 = Math.round(start2 / inc);
|
|
228128
|
+
i2 = Math.round(stop3 / inc);
|
|
228129
|
+
if (i1 * inc < start2) ++i1;
|
|
228130
|
+
if (i2 * inc > stop3) --i2;
|
|
228131
|
+
}
|
|
228132
|
+
if (i2 < i1 && 0.5 <= count2 && count2 < 2) return tickSpec(start2, stop3, count2 * 2);
|
|
228133
|
+
return [i1, i2, inc];
|
|
228134
|
+
}
|
|
228327
228135
|
function ticks(start2, stop3, count2) {
|
|
228328
|
-
var reverse2, i2 = -1, n3, ticks2, step;
|
|
228329
228136
|
stop3 = +stop3, start2 = +start2, count2 = +count2;
|
|
228330
|
-
if (
|
|
228331
|
-
if (
|
|
228332
|
-
|
|
228333
|
-
if (
|
|
228334
|
-
|
|
228335
|
-
|
|
228336
|
-
if (
|
|
228337
|
-
|
|
228338
|
-
while (++i2 < n3) ticks2[i2] = (r0 + i2) * step;
|
|
228137
|
+
if (!(count2 > 0)) return [];
|
|
228138
|
+
if (start2 === stop3) return [start2];
|
|
228139
|
+
const reverse2 = stop3 < start2, [i1, i2, inc] = reverse2 ? tickSpec(stop3, start2, count2) : tickSpec(start2, stop3, count2);
|
|
228140
|
+
if (!(i2 >= i1)) return [];
|
|
228141
|
+
const n3 = i2 - i1 + 1, ticks2 = new Array(n3);
|
|
228142
|
+
if (reverse2) {
|
|
228143
|
+
if (inc < 0) for (let i3 = 0; i3 < n3; ++i3) ticks2[i3] = (i2 - i3) / -inc;
|
|
228144
|
+
else for (let i3 = 0; i3 < n3; ++i3) ticks2[i3] = (i2 - i3) * inc;
|
|
228339
228145
|
} else {
|
|
228340
|
-
|
|
228341
|
-
let
|
|
228342
|
-
if (r0 / step < start2) ++r0;
|
|
228343
|
-
if (r1 / step > stop3) --r1;
|
|
228344
|
-
ticks2 = new Array(n3 = r1 - r0 + 1);
|
|
228345
|
-
while (++i2 < n3) ticks2[i2] = (r0 + i2) / step;
|
|
228146
|
+
if (inc < 0) for (let i3 = 0; i3 < n3; ++i3) ticks2[i3] = (i1 + i3) / -inc;
|
|
228147
|
+
else for (let i3 = 0; i3 < n3; ++i3) ticks2[i3] = (i1 + i3) * inc;
|
|
228346
228148
|
}
|
|
228347
|
-
if (reverse2) ticks2.reverse();
|
|
228348
228149
|
return ticks2;
|
|
228349
228150
|
}
|
|
228350
228151
|
function tickIncrement(start2, stop3, count2) {
|
|
228351
|
-
|
|
228352
|
-
return
|
|
228152
|
+
stop3 = +stop3, start2 = +start2, count2 = +count2;
|
|
228153
|
+
return tickSpec(start2, stop3, count2)[2];
|
|
228353
228154
|
}
|
|
228354
228155
|
function tickStep(start2, stop3, count2) {
|
|
228355
|
-
|
|
228356
|
-
|
|
228357
|
-
|
|
228358
|
-
else if (error2 >= e2) step1 *= 2;
|
|
228359
|
-
return stop3 < start2 ? -step1 : step1;
|
|
228156
|
+
stop3 = +stop3, start2 = +start2, count2 = +count2;
|
|
228157
|
+
const reverse2 = stop3 < start2, inc = reverse2 ? tickIncrement(stop3, start2, count2) : tickIncrement(start2, stop3, count2);
|
|
228158
|
+
return (reverse2 ? -1 : 1) * (inc < 0 ? 1 / -inc : inc);
|
|
228360
228159
|
}
|
|
228361
228160
|
function max$3(values3, valueof) {
|
|
228362
228161
|
let max2;
|
|
@@ -228394,7 +228193,11 @@ function min$3(values3, valueof) {
|
|
|
228394
228193
|
}
|
|
228395
228194
|
return min2;
|
|
228396
228195
|
}
|
|
228397
|
-
function quickselect(array2, k, left2 = 0, right2 =
|
|
228196
|
+
function quickselect(array2, k, left2 = 0, right2 = Infinity, compare2) {
|
|
228197
|
+
k = Math.floor(k);
|
|
228198
|
+
left2 = Math.floor(Math.max(0, left2));
|
|
228199
|
+
right2 = Math.floor(Math.min(array2.length - 1, right2));
|
|
228200
|
+
if (!(left2 <= k && k <= right2)) return array2;
|
|
228398
228201
|
compare2 = compare2 === void 0 ? ascendingDefined : compareDefined(compare2);
|
|
228399
228202
|
while (right2 > left2) {
|
|
228400
228203
|
if (right2 - left2 > 600) {
|
|
@@ -228431,15 +228234,15 @@ function swap$1(array2, i2, j) {
|
|
|
228431
228234
|
}
|
|
228432
228235
|
function quantile$1(values3, p, valueof) {
|
|
228433
228236
|
values3 = Float64Array.from(numbers$4(values3, valueof));
|
|
228434
|
-
if (!(n3 = values3.length)) return;
|
|
228435
|
-
if (
|
|
228237
|
+
if (!(n3 = values3.length) || isNaN(p = +p)) return;
|
|
228238
|
+
if (p <= 0 || n3 < 2) return min$3(values3);
|
|
228436
228239
|
if (p >= 1) return max$3(values3);
|
|
228437
228240
|
var n3, i2 = (n3 - 1) * p, i0 = Math.floor(i2), value0 = max$3(quickselect(values3, i0).subarray(0, i0 + 1)), value1 = min$3(values3.subarray(i0 + 1));
|
|
228438
228241
|
return value0 + (value1 - value0) * (i2 - i0);
|
|
228439
228242
|
}
|
|
228440
|
-
function quantileSorted(values3, p, valueof = number$
|
|
228441
|
-
if (!(n3 = values3.length)) return;
|
|
228442
|
-
if (
|
|
228243
|
+
function quantileSorted(values3, p, valueof = number$8) {
|
|
228244
|
+
if (!(n3 = values3.length) || isNaN(p = +p)) return;
|
|
228245
|
+
if (p <= 0 || n3 < 2) return +valueof(values3[0], 0, values3);
|
|
228443
228246
|
if (p >= 1) return +valueof(values3[n3 - 1], n3 - 1, values3);
|
|
228444
228247
|
var n3, i2 = (n3 - 1) * p, i0 = Math.floor(i2), value0 = +valueof(values3[i0], i0, values3), value1 = +valueof(values3[i0 + 1], i0 + 1, values3);
|
|
228445
228248
|
return value0 + (value1 - value0) * (i2 - i0);
|
|
@@ -228474,7 +228277,7 @@ function* flatten$2(arrays) {
|
|
|
228474
228277
|
function merge$3(arrays) {
|
|
228475
228278
|
return Array.from(flatten$2(arrays));
|
|
228476
228279
|
}
|
|
228477
|
-
function range$
|
|
228280
|
+
function range$8(start2, stop3, step) {
|
|
228478
228281
|
start2 = +start2, stop3 = +stop3, step = (n3 = arguments.length) < 2 ? (stop3 = start2, start2 = 0, 1) : n3 < 3 ? 1 : +step;
|
|
228479
228282
|
var i2 = -1, n3 = Math.max(0, Math.ceil((stop3 - start2) / step)) | 0, range2 = new Array(n3);
|
|
228480
228283
|
while (++i2 < n3) {
|
|
@@ -229145,7 +228948,7 @@ function object$1(a2, b2) {
|
|
|
229145
228948
|
};
|
|
229146
228949
|
}
|
|
229147
228950
|
var reA = /[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g, reB = new RegExp(reA.source, "g");
|
|
229148
|
-
function zero$
|
|
228951
|
+
function zero$3(b2) {
|
|
229149
228952
|
return function() {
|
|
229150
228953
|
return b2;
|
|
229151
228954
|
};
|
|
@@ -229178,7 +228981,7 @@ function string(a2, b2) {
|
|
|
229178
228981
|
if (s2[i2]) s2[i2] += bs;
|
|
229179
228982
|
else s2[++i2] = bs;
|
|
229180
228983
|
}
|
|
229181
|
-
return s2.length < 2 ? q[0] ? one$2(q[0].x) : zero$
|
|
228984
|
+
return s2.length < 2 ? q[0] ? one$2(q[0].x) : zero$3(b2) : (b2 = q.length, function(t4) {
|
|
229182
228985
|
for (var i22 = 0, o2; i22 < b2; ++i22) s2[(o2 = q[i22]).i] = o2.x(t4);
|
|
229183
228986
|
return s2.join("");
|
|
229184
228987
|
});
|
|
@@ -229444,7 +229247,7 @@ function constants$1(x2) {
|
|
|
229444
229247
|
return x2;
|
|
229445
229248
|
};
|
|
229446
229249
|
}
|
|
229447
|
-
function number$
|
|
229250
|
+
function number$7(x2) {
|
|
229448
229251
|
return +x2;
|
|
229449
229252
|
}
|
|
229450
229253
|
var unit$1 = [0, 1];
|
|
@@ -229482,7 +229285,7 @@ function polymap(domain2, range2, interpolate2) {
|
|
|
229482
229285
|
r3[i2] = interpolate2(range2[i2], range2[i2 + 1]);
|
|
229483
229286
|
}
|
|
229484
229287
|
return function(x2) {
|
|
229485
|
-
var i22 = bisectRight$
|
|
229288
|
+
var i22 = bisectRight$1(domain2, x2, 1, j) - 1;
|
|
229486
229289
|
return r3[i22](d[i22](x2));
|
|
229487
229290
|
};
|
|
229488
229291
|
}
|
|
@@ -229505,7 +229308,7 @@ function transformer$3() {
|
|
|
229505
229308
|
return clamp2(untransform((input || (input = piecewise2(range2, domain2.map(transform3), interpolateNumber)))(y2)));
|
|
229506
229309
|
};
|
|
229507
229310
|
scale2.domain = function(_) {
|
|
229508
|
-
return arguments.length ? (domain2 = Array.from(_, number$
|
|
229311
|
+
return arguments.length ? (domain2 = Array.from(_, number$7), rescale()) : domain2.slice();
|
|
229509
229312
|
};
|
|
229510
229313
|
scale2.range = function(_) {
|
|
229511
229314
|
return arguments.length ? (range2 = Array.from(_), rescale()) : range2.slice();
|
|
@@ -229825,7 +229628,7 @@ function identity$6(domain2) {
|
|
|
229825
229628
|
}
|
|
229826
229629
|
scale2.invert = scale2;
|
|
229827
229630
|
scale2.domain = scale2.range = function(_) {
|
|
229828
|
-
return arguments.length ? (domain2 = Array.from(_, number$
|
|
229631
|
+
return arguments.length ? (domain2 = Array.from(_, number$7), scale2) : domain2.slice();
|
|
229829
229632
|
};
|
|
229830
229633
|
scale2.unknown = function(_) {
|
|
229831
229634
|
return arguments.length ? (unknown = _, scale2) : unknown;
|
|
@@ -229833,7 +229636,7 @@ function identity$6(domain2) {
|
|
|
229833
229636
|
scale2.copy = function() {
|
|
229834
229637
|
return identity$6(domain2).unknown(unknown);
|
|
229835
229638
|
};
|
|
229836
|
-
domain2 = arguments.length ? Array.from(domain2, number$
|
|
229639
|
+
domain2 = arguments.length ? Array.from(domain2, number$7) : [0, 1];
|
|
229837
229640
|
return linearish(scale2);
|
|
229838
229641
|
}
|
|
229839
229642
|
function nice$1(domain2, interval2) {
|
|
@@ -230023,7 +229826,7 @@ function quantile() {
|
|
|
230023
229826
|
return scale2;
|
|
230024
229827
|
}
|
|
230025
229828
|
function scale2(x2) {
|
|
230026
|
-
return x2 == null || isNaN(x2 = +x2) ? unknown : range2[bisectRight$
|
|
229829
|
+
return x2 == null || isNaN(x2 = +x2) ? unknown : range2[bisectRight$1(thresholds, x2)];
|
|
230027
229830
|
}
|
|
230028
229831
|
scale2.invertExtent = function(y2) {
|
|
230029
229832
|
var i2 = range2.indexOf(y2);
|
|
@@ -230036,7 +229839,7 @@ function quantile() {
|
|
|
230036
229839
|
if (!arguments.length) return domain2.slice();
|
|
230037
229840
|
domain2 = [];
|
|
230038
229841
|
for (let d of _) if (d != null && !isNaN(d = +d)) domain2.push(d);
|
|
230039
|
-
domain2.sort(ascending$
|
|
229842
|
+
domain2.sort(ascending$4);
|
|
230040
229843
|
return rescale();
|
|
230041
229844
|
};
|
|
230042
229845
|
scale2.range = function(_) {
|
|
@@ -230056,7 +229859,7 @@ function quantile() {
|
|
|
230056
229859
|
function quantize$2() {
|
|
230057
229860
|
var x02 = 0, x12 = 1, n3 = 1, domain2 = [0.5], range2 = [0, 1], unknown;
|
|
230058
229861
|
function scale2(x2) {
|
|
230059
|
-
return x2 != null && x2 <= x2 ? range2[bisectRight$
|
|
229862
|
+
return x2 != null && x2 <= x2 ? range2[bisectRight$1(domain2, x2, 0, n3)] : unknown;
|
|
230060
229863
|
}
|
|
230061
229864
|
function rescale() {
|
|
230062
229865
|
var i2 = -1;
|
|
@@ -230088,7 +229891,7 @@ function quantize$2() {
|
|
|
230088
229891
|
function threshold() {
|
|
230089
229892
|
var domain2 = [0.5], range2 = [0, 1], unknown, n3 = 1;
|
|
230090
229893
|
function scale2(x2) {
|
|
230091
|
-
return x2 != null && x2 <= x2 ? range2[bisectRight$
|
|
229894
|
+
return x2 != null && x2 <= x2 ? range2[bisectRight$1(domain2, x2, 0, n3)] : unknown;
|
|
230092
229895
|
}
|
|
230093
229896
|
scale2.domain = function(_) {
|
|
230094
229897
|
return arguments.length ? (domain2 = Array.from(_), n3 = Math.min(domain2.length, range2.length - 1), scale2) : domain2.slice();
|
|
@@ -230402,7 +230205,7 @@ function ticker(year2, month2, week2, day2, hour2, minute2) {
|
|
|
230402
230205
|
}
|
|
230403
230206
|
function tickInterval(start2, stop3, count2) {
|
|
230404
230207
|
const target2 = Math.abs(stop3 - start2) / count2;
|
|
230405
|
-
const i2 = bisector$
|
|
230208
|
+
const i2 = bisector$1(([, , step2]) => step2).right(tickIntervals, target2);
|
|
230406
230209
|
if (i2 === tickIntervals.length) return year2.every(tickStep(start2 / durationYear$1, stop3 / durationYear$1, count2));
|
|
230407
230210
|
if (i2 === 0) return millisecond.every(Math.max(tickStep(start2, stop3, count2), 1));
|
|
230408
230211
|
const [t4, step] = tickIntervals[target2 / tickIntervals[i2 - 1][2] < tickIntervals[i2][2] / target2 ? i2 - 1 : i2];
|
|
@@ -230974,7 +230777,7 @@ function defaultLocale$1(definition2) {
|
|
|
230974
230777
|
function date(t4) {
|
|
230975
230778
|
return new Date(t4);
|
|
230976
230779
|
}
|
|
230977
|
-
function number$
|
|
230780
|
+
function number$6(t4) {
|
|
230978
230781
|
return t4 instanceof Date ? +t4 : +/* @__PURE__ */ new Date(+t4);
|
|
230979
230782
|
}
|
|
230980
230783
|
function calendar(ticks2, tickInterval, year2, month2, week2, day2, hour2, minute2, second2, format2) {
|
|
@@ -230987,7 +230790,7 @@ function calendar(ticks2, tickInterval, year2, month2, week2, day2, hour2, minut
|
|
|
230987
230790
|
return new Date(invert2(y2));
|
|
230988
230791
|
};
|
|
230989
230792
|
scale2.domain = function(_) {
|
|
230990
|
-
return arguments.length ? domain2(Array.from(_, number$
|
|
230793
|
+
return arguments.length ? domain2(Array.from(_, number$6)) : domain2().map(date);
|
|
230991
230794
|
};
|
|
230992
230795
|
scale2.ticks = function(interval2) {
|
|
230993
230796
|
var d = domain2();
|
|
@@ -231147,7 +230950,7 @@ function translateX(x2) {
|
|
|
231147
230950
|
function translateY(y2) {
|
|
231148
230951
|
return "translate(0," + y2 + ")";
|
|
231149
230952
|
}
|
|
231150
|
-
function number$
|
|
230953
|
+
function number$5(scale2) {
|
|
231151
230954
|
return (d) => +scale2(d);
|
|
231152
230955
|
}
|
|
231153
230956
|
function center(scale2, offset2) {
|
|
@@ -231161,7 +230964,7 @@ function entering() {
|
|
|
231161
230964
|
function axis(orient2, scale2) {
|
|
231162
230965
|
var tickArguments = [], tickValues2 = null, tickFormat2 = null, tickSizeInner = 6, tickSizeOuter = 6, tickPadding = 3, offset2 = typeof window !== "undefined" && window.devicePixelRatio > 1 ? 0 : 0.5, k = orient2 === top || orient2 === left ? -1 : 1, x2 = orient2 === left || orient2 === right ? "x" : "y", transform3 = orient2 === top || orient2 === bottom ? translateX : translateY;
|
|
231163
230966
|
function axis2(context2) {
|
|
231164
|
-
var values3 = tickValues2 == null ? scale2.ticks ? scale2.ticks.apply(scale2, tickArguments) : scale2.domain() : tickValues2, format2 = tickFormat2 == null ? scale2.tickFormat ? scale2.tickFormat.apply(scale2, tickArguments) : identity$5 : tickFormat2, spacing2 = Math.max(tickSizeInner, 0) + tickPadding, range2 = scale2.range(), range0 = +range2[0] + offset2, range1 = +range2[range2.length - 1] + offset2, position2 = (scale2.bandwidth ? center : number$
|
|
230967
|
+
var values3 = tickValues2 == null ? scale2.ticks ? scale2.ticks.apply(scale2, tickArguments) : scale2.domain() : tickValues2, format2 = tickFormat2 == null ? scale2.tickFormat ? scale2.tickFormat.apply(scale2, tickArguments) : identity$5 : tickFormat2, spacing2 = Math.max(tickSizeInner, 0) + tickPadding, range2 = scale2.range(), range0 = +range2[0] + offset2, range1 = +range2[range2.length - 1] + offset2, position2 = (scale2.bandwidth ? center : number$5)(scale2.copy(), offset2), selection = context2.selection ? context2.selection() : context2, path2 = selection.selectAll(".domain").data([null]), tick2 = selection.selectAll(".tick").data(values3, scale2).order(), tickExit = tick2.exit(), tickEnter = tick2.enter().append("g").attr("class", "tick"), line2 = tick2.select("line"), text2 = tick2.select("text");
|
|
231165
230968
|
path2 = path2.merge(path2.enter().insert("path", ".tick").attr("class", "domain").attr("stroke", "currentColor"));
|
|
231166
230969
|
tick2 = tick2.merge(tickEnter);
|
|
231167
230970
|
line2 = line2.merge(tickEnter.append("line").attr("stroke", "currentColor").attr(x2 + "2", k * tickSizeInner));
|
|
@@ -231294,6 +231097,9 @@ function ramp(color2, n3 = 256) {
|
|
|
231294
231097
|
canvas.width = n3;
|
|
231295
231098
|
canvas.height = 1;
|
|
231296
231099
|
const context2 = canvas.getContext("2d");
|
|
231100
|
+
if (!context2) {
|
|
231101
|
+
throw new Error("Could not get 2d context from canvas");
|
|
231102
|
+
}
|
|
231297
231103
|
for (let i2 = 0; i2 < n3; ++i2) {
|
|
231298
231104
|
context2.fillStyle = color2(i2 / (n3 - 1));
|
|
231299
231105
|
context2.fillRect(i2, 0, 1, 1);
|
|
@@ -231312,6 +231118,8 @@ function getXlinkHref(cmap) {
|
|
|
231312
231118
|
}
|
|
231313
231119
|
const useStyles$p = makeStyles()(() => ({
|
|
231314
231120
|
legend: {
|
|
231121
|
+
position: "relative",
|
|
231122
|
+
// Needed for absolute positioning of slider overlay
|
|
231315
231123
|
top: "2px",
|
|
231316
231124
|
right: "2px",
|
|
231317
231125
|
fontSize: "10px !important",
|
|
@@ -231343,6 +231151,74 @@ const useStyles$p = makeStyles()(() => ({
|
|
|
231343
231151
|
},
|
|
231344
231152
|
legendInvisible: {
|
|
231345
231153
|
display: "none"
|
|
231154
|
+
},
|
|
231155
|
+
sliderContainer: {
|
|
231156
|
+
position: "absolute",
|
|
231157
|
+
// Position at the colormap location: top offset = titleHeight
|
|
231158
|
+
top: "10px",
|
|
231159
|
+
// titleHeight
|
|
231160
|
+
left: "2px",
|
|
231161
|
+
// Account for parent padding
|
|
231162
|
+
width: "calc(100% - 4px)",
|
|
231163
|
+
// Account for left and right padding
|
|
231164
|
+
height: "8px",
|
|
231165
|
+
// rectHeight
|
|
231166
|
+
"&:hover $sliderThumb": {
|
|
231167
|
+
opacity: 1
|
|
231168
|
+
}
|
|
231169
|
+
},
|
|
231170
|
+
sliderRoot: {
|
|
231171
|
+
position: "absolute",
|
|
231172
|
+
top: 0,
|
|
231173
|
+
left: 0,
|
|
231174
|
+
width: "100%",
|
|
231175
|
+
height: "8px",
|
|
231176
|
+
// rectHeight
|
|
231177
|
+
padding: 0,
|
|
231178
|
+
"& .MuiSlider-rail": {
|
|
231179
|
+
display: "none"
|
|
231180
|
+
},
|
|
231181
|
+
"& .MuiSlider-track": {
|
|
231182
|
+
display: "none"
|
|
231183
|
+
},
|
|
231184
|
+
"& .MuiSlider-valueLabel": {
|
|
231185
|
+
fontSize: "9px",
|
|
231186
|
+
padding: "2px 4px",
|
|
231187
|
+
backgroundColor: "rgb(0, 0, 0)",
|
|
231188
|
+
borderRadius: "2px"
|
|
231189
|
+
}
|
|
231190
|
+
},
|
|
231191
|
+
sliderThumb: {
|
|
231192
|
+
width: "4px",
|
|
231193
|
+
height: "12px",
|
|
231194
|
+
borderRadius: "2px",
|
|
231195
|
+
backgroundColor: "white",
|
|
231196
|
+
border: "1px solid black",
|
|
231197
|
+
opacity: 0,
|
|
231198
|
+
transition: "opacity 0.15s ease-in-out",
|
|
231199
|
+
"&:hover, &.Mui-focusVisible": {
|
|
231200
|
+
boxShadow: "0 0 0 4px rgba(0, 0, 0, 0.16)",
|
|
231201
|
+
opacity: 1
|
|
231202
|
+
},
|
|
231203
|
+
"&.Mui-active": {
|
|
231204
|
+
boxShadow: "0 0 0 6px rgba(0, 0, 0, 0.16)",
|
|
231205
|
+
opacity: 1
|
|
231206
|
+
}
|
|
231207
|
+
},
|
|
231208
|
+
colormapImage: {
|
|
231209
|
+
position: "absolute",
|
|
231210
|
+
top: "2px",
|
|
231211
|
+
height: "6px",
|
|
231212
|
+
// rectHeight
|
|
231213
|
+
pointerEvents: "none"
|
|
231214
|
+
},
|
|
231215
|
+
grayTrack: {
|
|
231216
|
+
position: "absolute",
|
|
231217
|
+
top: "2px",
|
|
231218
|
+
height: "6px",
|
|
231219
|
+
// rectHeight
|
|
231220
|
+
backgroundColor: "rgba(128, 128, 128, 0.5)",
|
|
231221
|
+
pointerEvents: "none"
|
|
231346
231222
|
}
|
|
231347
231223
|
}));
|
|
231348
231224
|
const titleHeight = 10;
|
|
@@ -231352,21 +231228,23 @@ const rectMarginX = 2;
|
|
|
231352
231228
|
function combineExtents(extents, featureAggregationStrategy) {
|
|
231353
231229
|
if (Array.isArray(extents)) {
|
|
231354
231230
|
if (Array.isArray(extents?.[0])) {
|
|
231231
|
+
const extentsArray = extents;
|
|
231355
231232
|
if (featureAggregationStrategy === "first") {
|
|
231356
|
-
return
|
|
231233
|
+
return extentsArray[0];
|
|
231357
231234
|
}
|
|
231358
231235
|
if (featureAggregationStrategy === "last") {
|
|
231359
|
-
return
|
|
231236
|
+
return extentsArray.at(-1) || null;
|
|
231360
231237
|
}
|
|
231361
231238
|
if (typeof featureAggregationStrategy === "number") {
|
|
231362
231239
|
const i2 = featureAggregationStrategy;
|
|
231363
|
-
return
|
|
231240
|
+
return extentsArray[i2];
|
|
231364
231241
|
}
|
|
231365
231242
|
if (featureAggregationStrategy === "sum") {
|
|
231366
|
-
return
|
|
231243
|
+
return extentsArray.reduce((a2, h2) => [a2[0] + h2[0], a2[1] + h2[1]]);
|
|
231367
231244
|
}
|
|
231368
231245
|
if (featureAggregationStrategy === "mean") {
|
|
231369
|
-
|
|
231246
|
+
const sum2 = extentsArray.reduce((a2, h2) => [a2[0] + h2[0], a2[1] + h2[1]]);
|
|
231247
|
+
return [sum2[0] / extentsArray.length, sum2[1] / extentsArray.length];
|
|
231370
231248
|
}
|
|
231371
231249
|
} else {
|
|
231372
231250
|
return extents;
|
|
@@ -231380,7 +231258,7 @@ function combineMissings(missings, featureAggregationStrategy) {
|
|
|
231380
231258
|
return missings[0];
|
|
231381
231259
|
}
|
|
231382
231260
|
if (featureAggregationStrategy === "last") {
|
|
231383
|
-
return missings.at(-1);
|
|
231261
|
+
return missings.at(-1) || null;
|
|
231384
231262
|
}
|
|
231385
231263
|
if (typeof featureAggregationStrategy === "number") {
|
|
231386
231264
|
const i2 = featureAggregationStrategy;
|
|
@@ -231396,52 +231274,127 @@ function combineMissings(missings, featureAggregationStrategy) {
|
|
|
231396
231274
|
return null;
|
|
231397
231275
|
}
|
|
231398
231276
|
function Legend(props) {
|
|
231399
|
-
const {
|
|
231400
|
-
|
|
231277
|
+
const {
|
|
231278
|
+
visible: visibleProp,
|
|
231279
|
+
positionRelative = false,
|
|
231280
|
+
highContrast = false,
|
|
231281
|
+
obsType,
|
|
231282
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
231283
|
+
featureType: _featureType = void 0,
|
|
231284
|
+
// Unused but accepted for API compatibility
|
|
231285
|
+
featureValueType,
|
|
231286
|
+
considerSelections = true,
|
|
231287
|
+
obsColorEncoding,
|
|
231288
|
+
featureSelection,
|
|
231289
|
+
featureLabelsMap,
|
|
231290
|
+
featureValueColormap,
|
|
231291
|
+
featureValueColormapRange,
|
|
231292
|
+
setFeatureValueColormapRange,
|
|
231293
|
+
spatialChannelColor,
|
|
231294
|
+
spatialLayerColor,
|
|
231295
|
+
obsSetSelection,
|
|
231296
|
+
obsSetColor,
|
|
231297
|
+
featureAggregationStrategy,
|
|
231298
|
+
extent: extent2,
|
|
231299
|
+
missing,
|
|
231300
|
+
width: width2 = 100,
|
|
231301
|
+
height: height2 = 36,
|
|
231302
|
+
maxHeight: maxHeight2 = null,
|
|
231303
|
+
theme,
|
|
231304
|
+
showObsLabel = false,
|
|
231305
|
+
pointsVisible = true,
|
|
231306
|
+
contoursVisible = false,
|
|
231307
|
+
contoursFilled,
|
|
231308
|
+
contourPercentiles,
|
|
231309
|
+
contourThresholds
|
|
231310
|
+
} = props;
|
|
231311
|
+
const svgRef = useRef(null);
|
|
231401
231312
|
const { classes: classes2 } = useStyles$p();
|
|
231313
|
+
const [localRange, setLocalRange] = useState(featureValueColormapRange);
|
|
231314
|
+
useEffect(() => {
|
|
231315
|
+
setLocalRange(featureValueColormapRange);
|
|
231316
|
+
}, [featureValueColormapRange]);
|
|
231317
|
+
const debouncedSetRange = useMemo$1(() => setFeatureValueColormapRange ? debounce$5((value2) => {
|
|
231318
|
+
setFeatureValueColormapRange(value2);
|
|
231319
|
+
}, 5, { leading: false, trailing: true }) : null, [setFeatureValueColormapRange]);
|
|
231320
|
+
useEffect(() => () => {
|
|
231321
|
+
if (debouncedSetRange) {
|
|
231322
|
+
debouncedSetRange.cancel();
|
|
231323
|
+
}
|
|
231324
|
+
}, [debouncedSetRange]);
|
|
231325
|
+
const handleSliderChange = useCallback((_event, newValue) => {
|
|
231326
|
+
const rangeValue = newValue;
|
|
231327
|
+
setLocalRange(rangeValue);
|
|
231328
|
+
if (debouncedSetRange) {
|
|
231329
|
+
debouncedSetRange(rangeValue);
|
|
231330
|
+
}
|
|
231331
|
+
}, [debouncedSetRange]);
|
|
231402
231332
|
const isDarkTheme = theme === "dark";
|
|
231403
231333
|
const isStaticColor = obsColorEncoding === "spatialChannelColor" || obsColorEncoding === "spatialLayerColor";
|
|
231404
231334
|
const isSetColor = obsColorEncoding === "cellSetSelection";
|
|
231405
|
-
const layerColor = Array.isArray(spatialLayerColor) && spatialLayerColor.length === 3 ? spatialLayerColor : getDefaultColor(theme);
|
|
231406
|
-
const channelColor = Array.isArray(spatialChannelColor) && spatialChannelColor.length === 3 ? spatialChannelColor : getDefaultColor(theme);
|
|
231335
|
+
const layerColor = Array.isArray(spatialLayerColor) && spatialLayerColor.length === 3 ? spatialLayerColor : getDefaultColor(theme ?? "light");
|
|
231336
|
+
const channelColor = Array.isArray(spatialChannelColor) && spatialChannelColor.length === 3 ? spatialChannelColor : getDefaultColor(theme ?? "light");
|
|
231407
231337
|
const staticColor = obsColorEncoding === "spatialChannelColor" ? channelColor : layerColor;
|
|
231408
|
-
const visible = visibleProp && (!considerSelections || obsColorEncoding
|
|
231338
|
+
const visible = visibleProp && (!considerSelections || ["geneSelection", "geneExpression"].includes(obsColorEncoding ?? "") && featureSelection && Array.isArray(featureSelection) && featureSelection.length >= 1 || isSetColor && (obsSetSelection?.length ?? 0) > 0 && (obsSetColor?.length ?? 0) > 0 || isStaticColor);
|
|
231409
231339
|
const levelZeroNames = useMemo$1(() => Array.from(new Set(obsSetSelection?.map((setPath) => setPath[0]) || [])), [obsSetSelection]);
|
|
231410
|
-
const dynamicHeight = isSetColor && obsSetSelection ? levelZeroNames.length * titleHeight + obsSetSelection?.length * (rectHeight + rectMarginY) : height2 + (!pointsVisible && contoursVisible ? 25 : 0);
|
|
231340
|
+
const dynamicHeight = isSetColor && obsSetSelection ? levelZeroNames.length * titleHeight + (obsSetSelection?.length ?? 0) * (rectHeight + rectMarginY) : height2 + (!pointsVisible && contoursVisible ? 25 : 0);
|
|
231411
231341
|
const availHeight = maxHeight2 !== null ? Math.max(0, maxHeight2 - 4) : Infinity;
|
|
231412
231342
|
const needsScroll = Number.isFinite(availHeight) && dynamicHeight > availHeight + 1;
|
|
231413
231343
|
useEffect(() => {
|
|
231414
231344
|
const domElement = svgRef.current;
|
|
231345
|
+
if (!domElement)
|
|
231346
|
+
return;
|
|
231415
231347
|
const foregroundColor = highContrast ? "black" : isDarkTheme ? "white" : "black";
|
|
231416
231348
|
const svg2 = select$1(domElement);
|
|
231417
231349
|
svg2.selectAll("g").remove();
|
|
231418
231350
|
svg2.attr("width", width2).attr("height", dynamicHeight);
|
|
231419
231351
|
const g2 = svg2.append("g").attr("width", width2).attr("height", dynamicHeight);
|
|
231420
|
-
|
|
231421
|
-
|
|
231352
|
+
const showInteractiveSlider2 = setFeatureValueColormapRange && ["geneSelection", "geneExpression"].includes(obsColorEncoding ?? "") && pointsVisible && featureValueColormap;
|
|
231353
|
+
if (!considerSelections || ["geneSelection", "geneExpression"].includes(obsColorEncoding ?? "")) {
|
|
231354
|
+
const combinedExtent = combineExtents(extent2 ?? null, featureAggregationStrategy ?? null) || [0, 1];
|
|
231355
|
+
const [xMin, xMax] = combinedExtent;
|
|
231422
231356
|
if (featureValueColormap && pointsVisible) {
|
|
231423
|
-
const
|
|
231424
|
-
|
|
231425
|
-
const [rMin, rMax] =
|
|
231357
|
+
const xlinkHref2 = getXlinkHref(featureValueColormap);
|
|
231358
|
+
const currentRange = showInteractiveSlider2 ? localRange : featureValueColormapRange;
|
|
231359
|
+
const [rMin, rMax] = currentRange || [0, 1];
|
|
231360
|
+
if (showInteractiveSlider2) ;
|
|
231361
|
+
else if (setFeatureValueColormapRange) {
|
|
231362
|
+
g2.append("image").attr("x", rMin * width2).attr("y", titleHeight).attr("width", (rMax - rMin) * width2).attr("height", rectHeight).attr("preserveAspectRatio", "none").attr("href", xlinkHref2);
|
|
231363
|
+
} else {
|
|
231364
|
+
g2.append("image").attr("x", 0).attr("y", titleHeight).attr("width", width2).attr("height", rectHeight).attr("preserveAspectRatio", "none").attr("href", xlinkHref2);
|
|
231365
|
+
}
|
|
231426
231366
|
const scaledDataExtent = [
|
|
231427
231367
|
xMin + (xMax - xMin) * rMin,
|
|
231428
231368
|
xMax - (xMax - xMin) * (1 - rMax)
|
|
231429
231369
|
];
|
|
231430
|
-
|
|
231431
|
-
|
|
231432
|
-
|
|
231433
|
-
|
|
231434
|
-
|
|
231435
|
-
|
|
231370
|
+
let x2;
|
|
231371
|
+
if (setFeatureValueColormapRange || showInteractiveSlider2) {
|
|
231372
|
+
x2 = linear$1().domain(scaledDataExtent).range([rMin * width2, rMax * width2]);
|
|
231373
|
+
} else {
|
|
231374
|
+
x2 = linear$1().domain(scaledDataExtent).range([0, width2]);
|
|
231375
|
+
}
|
|
231376
|
+
if (showInteractiveSlider2) {
|
|
231377
|
+
const xGlobal = linear$1().domain([xMin, xMax]).range([0, width2 - 4]);
|
|
231378
|
+
const axisTicks2 = g2.append("g").attr("transform", `translate(0,${titleHeight + rectHeight})`).style("font-size", "10px").call(axisBottom(xGlobal).tickValues([xMin, xMax]));
|
|
231379
|
+
axisTicks2.selectAll("line,path").style("stroke", foregroundColor);
|
|
231380
|
+
axisTicks2.selectAll("text").style("fill", foregroundColor);
|
|
231381
|
+
axisTicks2.selectAll("text").attr("text-anchor", (_d2, i2) => i2 === 0 ? "start" : "end");
|
|
231382
|
+
} else {
|
|
231383
|
+
const axisTicks2 = g2.append("g").attr("transform", `translate(0,${titleHeight + rectHeight})`).style("font-size", "10px").call(axisBottom(x2).tickValues(scaledDataExtent));
|
|
231384
|
+
axisTicks2.selectAll("line,path").style("stroke", foregroundColor);
|
|
231385
|
+
axisTicks2.selectAll("text").style("fill", foregroundColor);
|
|
231386
|
+
axisTicks2.selectAll("text").attr("text-anchor", (_d2, i2) => i2 === 0 ? "start" : "end");
|
|
231387
|
+
}
|
|
231388
|
+
} else if (contoursVisible && contourPercentiles) {
|
|
231436
231389
|
const tSize = 12;
|
|
231437
231390
|
const xPercentile = linear$1().domain([0, 1]).range([tSize / 2, width2 - tSize / 2 - 2]);
|
|
231438
|
-
const axisTicks2 = g2.append("g").attr("transform", `translate(0,${titleHeight + rectHeight + 15})`).style("font-size", "9px").call(axisBottom(xPercentile).tickValues(contourPercentiles).tickFormat(format$8(".0%")).tickSizeOuter(0));
|
|
231391
|
+
const axisTicks2 = g2.append("g").attr("transform", `translate(0,${titleHeight + rectHeight + 15})`).style("font-size", "9px").call(axisBottom(xPercentile).tickValues(contourPercentiles).tickFormat((d) => format$8(".0%")(d)).tickSizeOuter(0));
|
|
231439
231392
|
axisTicks2.selectAll("line,path").style("stroke", foregroundColor);
|
|
231440
231393
|
axisTicks2.selectAll("text").style("fill", foregroundColor);
|
|
231441
231394
|
const NEIGHBOR_THRESHOLD = 18;
|
|
231442
|
-
const contourPercentages = contourPercentiles.map((
|
|
231395
|
+
const contourPercentages = contourPercentiles.map((p) => p * 100);
|
|
231443
231396
|
if (contourPercentages?.[1] - contourPercentages?.[0] <= NEIGHBOR_THRESHOLD || contourPercentages?.[2] - contourPercentages?.[1] <= NEIGHBOR_THRESHOLD) {
|
|
231444
|
-
axisTicks2.selectAll("text").attr("transform", (
|
|
231397
|
+
axisTicks2.selectAll("text").attr("transform", (_d2, i2) => `translate(0,${i2 === 0 || i2 === contourPercentiles.length - 1 ? 0 : 10})`);
|
|
231445
231398
|
}
|
|
231446
231399
|
const triangleGroupG = g2.append("g").attr("transform", `translate(0,${titleHeight + rectHeight + 4})`);
|
|
231447
231400
|
contourPercentiles.forEach((p, i2) => {
|
|
@@ -231451,7 +231404,7 @@ function Legend(props) {
|
|
|
231451
231404
|
const thresholdGroupG = g2.append("g").attr("transform", `translate(0,${titleHeight + rectHeight})`);
|
|
231452
231405
|
const thresholdFormatter = format$8(".0f");
|
|
231453
231406
|
contourPercentiles.forEach((p, i2) => {
|
|
231454
|
-
const contourThreshold = xMin + (xMax - xMin) * (contourThresholds?.[i2] / 255);
|
|
231407
|
+
const contourThreshold = xMin + (xMax - xMin) * ((contourThresholds?.[i2] ?? 0) / 255);
|
|
231455
231408
|
const thresholdG = thresholdGroupG.append("g").attr("transform", `translate(${xPercentile(p)},0)`).style("font-size", "7px");
|
|
231456
231409
|
thresholdG.append("text").text(thresholdFormatter(contourThreshold)).style("fill", foregroundColor).attr("text-anchor", "middle");
|
|
231457
231410
|
});
|
|
@@ -231474,9 +231427,9 @@ function Legend(props) {
|
|
|
231474
231427
|
g2.append("text").attr("text-anchor", "start").attr("dominant-baseline", "hanging").attr("x", 0).attr("y", y2).text(levelZeroName).style("font-size", "9px").style("fill", foregroundColor);
|
|
231475
231428
|
y2 += titleHeight;
|
|
231476
231429
|
setPaths.forEach((setPath) => {
|
|
231477
|
-
const setColor2 = obsSetColor?.find((d) => isEqual$3(d.path, setPath))?.color || getDefaultColor(theme);
|
|
231430
|
+
const setColor2 = obsSetColor?.find((d) => isEqual$3(d.path, setPath))?.color || getDefaultColor(theme ?? "light");
|
|
231478
231431
|
g2.append("rect").attr("x", 0).attr("y", y2).attr("width", rectHeight).attr("height", rectHeight).attr("fill", `rgb(${setColor2[0]},${setColor2[1]},${setColor2[2]})`);
|
|
231479
|
-
g2.append("text").attr("text-anchor", "start").attr("dominant-baseline", "hanging").attr("x", rectHeight + rectMarginX).attr("y", y2).text(setPath.at(-1)).style("font-size", "9px").style("fill", foregroundColor);
|
|
231432
|
+
g2.append("text").attr("text-anchor", "start").attr("dominant-baseline", "hanging").attr("x", rectHeight + rectMarginX).attr("y", y2).text(setPath.at(-1) ?? "").style("font-size", "9px").style("fill", foregroundColor);
|
|
231480
231433
|
y2 += rectHeight + rectMarginY;
|
|
231481
231434
|
});
|
|
231482
231435
|
});
|
|
@@ -231497,17 +231450,17 @@ function Legend(props) {
|
|
|
231497
231450
|
} else {
|
|
231498
231451
|
featureSelectionLabelRawStr = featureSelectionLabelRaw?.[0];
|
|
231499
231452
|
}
|
|
231500
|
-
const combinedMissing = combineMissings(missing, featureAggregationStrategy);
|
|
231453
|
+
const combinedMissing = combineMissings(missing ?? null, featureAggregationStrategy ?? null);
|
|
231501
231454
|
const featureSelectionLabel = combinedMissing ? `${featureSelectionLabelRawStr} (${Math.round(combinedMissing * 100)}% NaN)` : featureSelectionLabelRawStr;
|
|
231502
|
-
const obsLabel = capitalize$3(obsType);
|
|
231503
|
-
const featureLabel = considerSelections ? featureSelectionLabel || capitalize$3(featureValueType) : capitalize$3(featureValueType);
|
|
231455
|
+
const obsLabel = capitalize$3(obsType ?? null);
|
|
231456
|
+
const featureLabel = considerSelections ? featureSelectionLabel || capitalize$3(featureValueType ?? null) : capitalize$3(featureValueType ?? null);
|
|
231504
231457
|
const mainLabel = showObsLabel ? obsLabel : featureLabel;
|
|
231505
231458
|
const subLabel = showObsLabel ? featureLabel : null;
|
|
231506
231459
|
const hasSubLabel = subLabel !== null;
|
|
231507
231460
|
if (!isSetColor) {
|
|
231508
|
-
g2.append("text").attr("text-anchor", hasSubLabel ? "start" : "end").attr("dominant-baseline", "hanging").attr("x", hasSubLabel ? 0 : width2).attr("y", 0).text(mainLabel).style("font-size", "10px").style("fill", foregroundColor);
|
|
231461
|
+
g2.append("text").attr("text-anchor", hasSubLabel ? "start" : "end").attr("dominant-baseline", "hanging").attr("x", hasSubLabel ? 0 : width2 - 4).attr("y", 0).text(mainLabel ?? "").style("font-size", "10px").style("fill", foregroundColor);
|
|
231509
231462
|
if (hasSubLabel) {
|
|
231510
|
-
g2.append("text").attr("text-anchor", "end").attr("dominant-baseline", "hanging").attr("x", width2).attr("y", titleHeight).text(subLabel).style("font-size", "9px").style("fill", foregroundColor);
|
|
231463
|
+
g2.append("text").attr("text-anchor", "end").attr("dominant-baseline", "hanging").attr("x", width2).attr("y", titleHeight + rectHeight).text(subLabel ?? "").style("font-size", "9px").style("fill", foregroundColor);
|
|
231511
231464
|
}
|
|
231512
231465
|
}
|
|
231513
231466
|
}, [
|
|
@@ -231515,6 +231468,7 @@ function Legend(props) {
|
|
|
231515
231468
|
height2,
|
|
231516
231469
|
featureValueColormap,
|
|
231517
231470
|
featureValueColormapRange,
|
|
231471
|
+
localRange,
|
|
231518
231472
|
considerSelections,
|
|
231519
231473
|
obsType,
|
|
231520
231474
|
obsColorEncoding,
|
|
@@ -231533,20 +231487,63 @@ function Legend(props) {
|
|
|
231533
231487
|
contoursFilled,
|
|
231534
231488
|
contoursVisible,
|
|
231535
231489
|
pointsVisible,
|
|
231536
|
-
featureAggregationStrategy
|
|
231490
|
+
featureAggregationStrategy,
|
|
231491
|
+
setFeatureValueColormapRange,
|
|
231492
|
+
dynamicHeight,
|
|
231493
|
+
highContrast,
|
|
231494
|
+
isStaticColor,
|
|
231495
|
+
missing,
|
|
231496
|
+
showObsLabel,
|
|
231497
|
+
staticColor
|
|
231537
231498
|
]);
|
|
231538
|
-
|
|
231499
|
+
const showInteractiveSlider = setFeatureValueColormapRange && ["geneSelection", "geneExpression"].includes(obsColorEncoding ?? "") && pointsVisible && featureValueColormap;
|
|
231500
|
+
const globalExtent = useMemo$1(() => {
|
|
231501
|
+
const combined = combineExtents(extent2 ?? null, featureAggregationStrategy ?? null);
|
|
231502
|
+
return combined || [0, 1];
|
|
231503
|
+
}, [extent2, featureAggregationStrategy]);
|
|
231504
|
+
const formatSliderValue = useCallback((value2) => {
|
|
231505
|
+
const [xMin, xMax] = globalExtent;
|
|
231506
|
+
const dataValue = xMin + (xMax - xMin) * value2;
|
|
231507
|
+
const range2 = xMax - xMin;
|
|
231508
|
+
if (range2 < 0.01) {
|
|
231509
|
+
return dataValue.toExponential(2);
|
|
231510
|
+
}
|
|
231511
|
+
if (range2 < 1) {
|
|
231512
|
+
return dataValue.toFixed(3);
|
|
231513
|
+
}
|
|
231514
|
+
if (range2 < 100) {
|
|
231515
|
+
return dataValue.toFixed(1);
|
|
231516
|
+
}
|
|
231517
|
+
return Math.round(dataValue).toString();
|
|
231518
|
+
}, [globalExtent]);
|
|
231519
|
+
const xlinkHref = featureValueColormap ? getXlinkHref(featureValueColormap) : null;
|
|
231520
|
+
const currentLocalRange = localRange || [0, 1];
|
|
231521
|
+
return jsxRuntimeExports.jsxs("div", { className: clsx(classes2.legend, {
|
|
231539
231522
|
[classes2.legendRelative]: positionRelative,
|
|
231540
231523
|
[classes2.legendAbsolute]: !positionRelative,
|
|
231541
231524
|
[classes2.legendHighContrast]: highContrast,
|
|
231542
231525
|
[classes2.legendLowContrast]: !highContrast,
|
|
231543
231526
|
[classes2.legendInvisible]: !visible
|
|
231544
231527
|
}), style: {
|
|
231545
|
-
...needsScroll ? { maxHeight: `${Math.floor(availHeight)}px`, overflowY: "auto" } : { maxHeight: void 0, overflowY: "visible" }
|
|
231546
|
-
|
|
231528
|
+
...needsScroll ? { maxHeight: `${Math.floor(availHeight)}px`, overflowY: "auto" } : { maxHeight: void 0, overflowY: "visible" },
|
|
231529
|
+
width: `${width2}px`
|
|
231530
|
+
}, children: [jsxRuntimeExports.jsx("svg", { ref: svgRef, style: {
|
|
231547
231531
|
width: `${width2}px`,
|
|
231548
231532
|
height: `${dynamicHeight}px`
|
|
231549
|
-
} })
|
|
231533
|
+
} }), showInteractiveSlider && xlinkHref && jsxRuntimeExports.jsxs("div", { className: classes2.sliderContainer, children: [currentLocalRange[0] > 0 && jsxRuntimeExports.jsx("div", { className: classes2.grayTrack, style: {
|
|
231534
|
+
left: 0,
|
|
231535
|
+
width: `${currentLocalRange[0] * 100}%`
|
|
231536
|
+
} }), currentLocalRange[1] < 1 && jsxRuntimeExports.jsx("div", { className: classes2.grayTrack, style: {
|
|
231537
|
+
left: `${currentLocalRange[1] * 100}%`,
|
|
231538
|
+
width: `${(1 - currentLocalRange[1]) * 100}%`
|
|
231539
|
+
} }), jsxRuntimeExports.jsx("img", { src: xlinkHref, alt: "Colormap gradient", className: classes2.colormapImage, style: {
|
|
231540
|
+
left: `${currentLocalRange[0] * 100}%`,
|
|
231541
|
+
width: `${(currentLocalRange[1] - currentLocalRange[0]) * 100}%`
|
|
231542
|
+
} }), jsxRuntimeExports.jsx(Slider, { className: classes2.sliderRoot, value: currentLocalRange, onChange: handleSliderChange, min: 0, max: 1, step: 0.01, disableSwap: true, valueLabelDisplay: "auto", valueLabelFormat: formatSliderValue, "aria-label": "Colormap range", getAriaLabel: (index2) => index2 === 0 ? "Colormap minimum" : "Colormap maximum", getAriaValueText: (value2) => formatSliderValue(value2), slotProps: {
|
|
231543
|
+
thumb: {
|
|
231544
|
+
className: classes2.sliderThumb
|
|
231545
|
+
}
|
|
231546
|
+
} })] })] });
|
|
231550
231547
|
}
|
|
231551
231548
|
const useStyles$o = makeStyles()(() => ({
|
|
231552
231549
|
multiLegend: {
|
|
@@ -231579,8 +231576,12 @@ function MultiLegend(props) {
|
|
|
231579
231576
|
const reversedSpotLayerScopes = useMemo$1(() => [...spotLayerScopes || []].reverse(), [spotLayerScopes]);
|
|
231580
231577
|
const reversedPointLayerScopes = useMemo$1(() => [...pointLayerScopes || []].reverse(), [pointLayerScopes]);
|
|
231581
231578
|
return jsxRuntimeExports.jsxs("div", { className: classes2.multiLegend, children: [pointLayerScopes ? reversedPointLayerScopes.flatMap((layerScope) => {
|
|
231582
|
-
const layerCoordination = pointLayerCoordination[0][layerScope];
|
|
231583
|
-
const
|
|
231579
|
+
const layerCoordination = pointLayerCoordination?.[0]?.[layerScope];
|
|
231580
|
+
const layerSetters = pointLayerCoordination?.[1]?.[layerScope];
|
|
231581
|
+
if (!layerCoordination)
|
|
231582
|
+
return null;
|
|
231583
|
+
const { spatialLayerVisible, obsColorEncoding, obsType, featureType, featureValueType, featureSelection, featureValueColormap, featureValueColormapRange, spatialLayerColor, legendVisible } = layerCoordination;
|
|
231584
|
+
const { setFeatureValueColormapRange } = layerSetters || {};
|
|
231584
231585
|
const isStaticColor = obsColorEncoding === "spatialLayerColor";
|
|
231585
231586
|
const height2 = isStaticColor ? 20 : 36;
|
|
231586
231587
|
return spatialLayerVisible && legendVisible ? jsxRuntimeExports.jsx(Legend, {
|
|
@@ -231595,30 +231596,39 @@ function MultiLegend(props) {
|
|
|
231595
231596
|
featureValueType,
|
|
231596
231597
|
obsColorEncoding,
|
|
231597
231598
|
spatialLayerColor,
|
|
231598
|
-
featureSelection
|
|
231599
|
+
featureSelection,
|
|
231599
231600
|
// featureLabelsMap={featureLabelsMap} // TODO
|
|
231600
|
-
featureValueColormap: "viridis",
|
|
231601
|
-
featureValueColormapRange: [0, 1],
|
|
231601
|
+
featureValueColormap: featureValueColormap || "viridis",
|
|
231602
|
+
featureValueColormapRange: featureValueColormapRange || [0, 1],
|
|
231603
|
+
setFeatureValueColormapRange,
|
|
231602
231604
|
extent: null,
|
|
231603
231605
|
height: height2
|
|
231604
231606
|
}, layerScope) : null;
|
|
231605
231607
|
}) : null, spotLayerScopes ? reversedSpotLayerScopes.flatMap((layerScope) => {
|
|
231606
|
-
const layerCoordination = spotLayerCoordination[0][layerScope];
|
|
231608
|
+
const layerCoordination = spotLayerCoordination?.[0][layerScope];
|
|
231609
|
+
const layerSetters = spotLayerCoordination?.[1]?.[layerScope];
|
|
231610
|
+
if (!layerCoordination)
|
|
231611
|
+
return null;
|
|
231607
231612
|
const { spatialLayerVisible, obsColorEncoding, featureValueColormap, featureValueColormapRange, obsType, featureType, featureValueType, featureSelection, featureAggregationStrategy, spatialLayerColor, legendVisible, obsSetSelection, obsSetColor } = layerCoordination;
|
|
231613
|
+
const { setFeatureValueColormapRange } = layerSetters || {};
|
|
231608
231614
|
const expressionExtents = spotMultiExpressionExtents?.[layerScope];
|
|
231609
231615
|
const firstExpressionExtent = expressionExtents?.[0];
|
|
231610
231616
|
const isStaticColor = obsColorEncoding === "spatialLayerColor";
|
|
231611
231617
|
const height2 = isStaticColor ? 20 : 36;
|
|
231612
231618
|
const featureLabelsMap = spotMultiFeatureLabels?.[layerScope]?.featureLabelsMap;
|
|
231613
|
-
return spatialLayerVisible && legendVisible ? jsxRuntimeExports.jsx(Legend, { maxHeight: maxHeight2, positionRelative: true, highContrast: true, showObsLabel: true, visible: spatialLayerVisible, theme, obsType, featureType, featureValueType, obsColorEncoding, spatialLayerColor, featureSelection, featureAggregationStrategy, featureLabelsMap, featureValueColormap, featureValueColormapRange, extent: firstExpressionExtent, height: height2, obsSetSelection, obsSetColor }, layerScope) : null;
|
|
231619
|
+
return spatialLayerVisible && legendVisible ? jsxRuntimeExports.jsx(Legend, { maxHeight: maxHeight2, positionRelative: true, highContrast: true, showObsLabel: true, visible: spatialLayerVisible, theme, obsType, featureType, featureValueType, obsColorEncoding, spatialLayerColor, featureSelection, featureAggregationStrategy, featureLabelsMap, featureValueColormap, featureValueColormapRange, setFeatureValueColormapRange, extent: firstExpressionExtent, height: height2, obsSetSelection, obsSetColor }, layerScope) : null;
|
|
231614
231620
|
}) : null, segmentationLayerScopes ? reversedSegmentationLayerScopes.flatMap((layerScope) => {
|
|
231615
|
-
const layerCoordination = segmentationLayerCoordination[0][layerScope];
|
|
231616
|
-
const channelScopes = segmentationChannelScopesByLayer[layerScope];
|
|
231617
|
-
const channelCoordination = segmentationChannelCoordination[0][layerScope];
|
|
231621
|
+
const layerCoordination = segmentationLayerCoordination?.[0][layerScope];
|
|
231622
|
+
const channelScopes = segmentationChannelScopesByLayer?.[layerScope];
|
|
231623
|
+
const channelCoordination = segmentationChannelCoordination?.[0][layerScope];
|
|
231624
|
+
const channelSetters = segmentationChannelCoordination?.[1]?.[layerScope];
|
|
231625
|
+
if (!layerCoordination)
|
|
231626
|
+
return null;
|
|
231618
231627
|
const { spatialLayerVisible } = layerCoordination;
|
|
231619
231628
|
const reversedChannelScopes = [...channelScopes || []].reverse();
|
|
231620
231629
|
return channelCoordination && channelScopes ? reversedChannelScopes.map((cScope) => {
|
|
231621
231630
|
const { spatialChannelVisible, spatialChannelColor, obsColorEncoding, featureValueColormap, featureValueColormapRange, obsType, featureType, featureValueType, featureSelection, featureAggregationStrategy, legendVisible, obsSetSelection, obsSetColor } = channelCoordination[cScope];
|
|
231631
|
+
const { setFeatureValueColormapRange } = channelSetters?.[cScope] || {};
|
|
231622
231632
|
const expressionExtents = segmentationMultiExpressionExtents?.[layerScope]?.[cScope];
|
|
231623
231633
|
const firstExpressionExtent = expressionExtents?.[0];
|
|
231624
231634
|
const isStaticColor = obsColorEncoding === "spatialChannelColor";
|
|
@@ -231639,6 +231649,7 @@ function MultiLegend(props) {
|
|
|
231639
231649
|
// featureLabelsMap={featureLabelsMap} // TODO
|
|
231640
231650
|
featureValueColormap,
|
|
231641
231651
|
featureValueColormapRange,
|
|
231652
|
+
setFeatureValueColormapRange,
|
|
231642
231653
|
extent: firstExpressionExtent,
|
|
231643
231654
|
height: height2,
|
|
231644
231655
|
spatialChannelColor,
|
|
@@ -231688,7 +231699,7 @@ function ChannelNamesLegend(props) {
|
|
|
231688
231699
|
const imageWrapperInstance = images?.[layerScope]?.image?.instance;
|
|
231689
231700
|
const channelNames = imageWrapperInstance?.getChannelNames();
|
|
231690
231701
|
const channelIndex = imageWrapperInstance?.getChannelIndex(spatialTargetC);
|
|
231691
|
-
const channelName = channelNames?.[channelIndex];
|
|
231702
|
+
const channelName = channelIndex !== void 0 ? channelNames?.[channelIndex] : void 0;
|
|
231692
231703
|
return spatialLayerVisible && spatialChannelVisible && spatialChannelLabelsVisible ? jsxRuntimeExports.jsx(Typography, { variant: "h6", className: classes2.channelNameText, style: {
|
|
231693
231704
|
color: rgbColor,
|
|
231694
231705
|
fontSize: `${spatialChannelLabelSize}px`
|
|
@@ -231847,7 +231858,7 @@ function EmbeddingScatterplotSubscriber(props) {
|
|
|
231847
231858
|
}, [obsEmbedding]);
|
|
231848
231859
|
useEffect(() => {
|
|
231849
231860
|
if (xRange && yRange && width2 && height2) {
|
|
231850
|
-
const pointSizeDevicePixels = getPointSizeDevicePixels(window.devicePixelRatio, zoom2, xRange, yRange, width2, height2);
|
|
231861
|
+
const pointSizeDevicePixels = getPointSizeDevicePixels(window.devicePixelRatio, zoom2, xRange, yRange, width2, height2, numCells);
|
|
231851
231862
|
setDynamicCellRadius(pointSizeDevicePixels);
|
|
231852
231863
|
const nextCellOpacityScale = getPointOpacity(zoom2, xRange, yRange, width2, height2, numCells, averageFillDensity);
|
|
231853
231864
|
setDynamicCellOpacity(nextCellOpacityScale);
|
|
@@ -231886,7 +231897,14 @@ function EmbeddingScatterplotSubscriber(props) {
|
|
|
231886
231897
|
const getCellIsSelected = useCallback((object2, { index: index2 }) => (cellSelectionSet || /* @__PURE__ */ new Set([])).has(obsEmbeddingIndex[index2]) ? 1 : 0, [cellSelectionSet, obsEmbeddingIndex]);
|
|
231887
231898
|
const cellRadius = cellRadiusMode === "manual" ? cellRadiusFixed : dynamicCellRadius;
|
|
231888
231899
|
const cellOpacity = cellOpacityMode === "manual" ? cellOpacityFixed : dynamicCellOpacity;
|
|
231889
|
-
const
|
|
231900
|
+
const aggregatedExpressionData = useMemo$1(() => {
|
|
231901
|
+
if (featureAggregationStrategyToUse != null && expressionData && expressionData.length > 1) {
|
|
231902
|
+
const aggregated = aggregateFeatureArrays(expressionData, featureAggregationStrategyToUse);
|
|
231903
|
+
return [aggregated];
|
|
231904
|
+
}
|
|
231905
|
+
return expressionData;
|
|
231906
|
+
}, [expressionData, featureAggregationStrategyToUse]);
|
|
231907
|
+
const { normData: uint8ExpressionData, extents: expressionExtents, missing: expressionMissing } = useUint8FeatureSelection(aggregatedExpressionData);
|
|
231890
231908
|
const getExpressionValue = useExpressionValueGetter({
|
|
231891
231909
|
instanceObsIndex: obsEmbeddingIndex,
|
|
231892
231910
|
matrixObsIndex,
|
|
@@ -232048,6 +232066,7 @@ function EmbeddingScatterplotSubscriber(props) {
|
|
|
232048
232066
|
featureLabelsMap,
|
|
232049
232067
|
featureValueColormap: geneExpressionColormap,
|
|
232050
232068
|
featureValueColormapRange: geneExpressionColormapRange,
|
|
232069
|
+
setFeatureValueColormapRange: setGeneExpressionColormapRange,
|
|
232051
232070
|
obsSetSelection: cellSetSelection,
|
|
232052
232071
|
extent: expressionExtents,
|
|
232053
232072
|
missing: expressionMissing,
|
|
@@ -232275,7 +232294,7 @@ function GatingSubscriber(props) {
|
|
|
232275
232294
|
}, [obsXY]);
|
|
232276
232295
|
useEffect(() => {
|
|
232277
232296
|
if (xRange && yRange) {
|
|
232278
|
-
const pointSizeDevicePixels = getPointSizeDevicePixels(window.devicePixelRatio, zoom2, xRange, yRange, width2, height2);
|
|
232297
|
+
const pointSizeDevicePixels = getPointSizeDevicePixels(window.devicePixelRatio, zoom2, xRange, yRange, width2, height2, numCells);
|
|
232279
232298
|
setDynamicCellRadius(pointSizeDevicePixels);
|
|
232280
232299
|
const nextCellOpacityScale = getPointOpacity(zoom2, xRange, yRange, width2, height2, numCells, averageFillDensity);
|
|
232281
232300
|
setDynamicCellOpacity(nextCellOpacityScale);
|
|
@@ -246941,7 +246960,7 @@ var equalScalar = /* @__PURE__ */ createEqualScalar({
|
|
|
246941
246960
|
config: config$2,
|
|
246942
246961
|
typed
|
|
246943
246962
|
});
|
|
246944
|
-
var number$
|
|
246963
|
+
var number$4 = /* @__PURE__ */ createNumber({
|
|
246945
246964
|
typed
|
|
246946
246965
|
});
|
|
246947
246966
|
var multiplyScalar = /* @__PURE__ */ createMultiplyScalar({
|
|
@@ -247058,7 +247077,7 @@ var pow$4 = /* @__PURE__ */ createPow({
|
|
|
247058
247077
|
identity: identity$4,
|
|
247059
247078
|
matrix,
|
|
247060
247079
|
multiply,
|
|
247061
|
-
number: number$
|
|
247080
|
+
number: number$4,
|
|
247062
247081
|
typed
|
|
247063
247082
|
});
|
|
247064
247083
|
var bignumber = /* @__PURE__ */ createBignumber({
|
|
@@ -247068,7 +247087,7 @@ var bignumber = /* @__PURE__ */ createBignumber({
|
|
|
247068
247087
|
var numeric$1 = /* @__PURE__ */ createNumeric({
|
|
247069
247088
|
bignumber,
|
|
247070
247089
|
fraction,
|
|
247071
|
-
number: number$
|
|
247090
|
+
number: number$4
|
|
247072
247091
|
});
|
|
247073
247092
|
var subtract = /* @__PURE__ */ createSubtract({
|
|
247074
247093
|
DenseMatrix,
|
|
@@ -247162,7 +247181,7 @@ var Unit = /* @__PURE__ */ createUnitClass({
|
|
|
247162
247181
|
format: format$4,
|
|
247163
247182
|
isNumeric: isNumeric$1,
|
|
247164
247183
|
multiplyScalar,
|
|
247165
|
-
number: number$
|
|
247184
|
+
number: number$4,
|
|
247166
247185
|
pow: pow$4,
|
|
247167
247186
|
round,
|
|
247168
247187
|
subtract
|
|
@@ -248793,7 +248812,7 @@ let Array$2 = class Array2 extends (_a$5 = Location$1, _a$5) {
|
|
|
248793
248812
|
return is_dtype$1(this.dtype, query);
|
|
248794
248813
|
}
|
|
248795
248814
|
};
|
|
248796
|
-
function* range$
|
|
248815
|
+
function* range$7(start2, stop3, step = 1) {
|
|
248797
248816
|
if (stop3 === void 0) {
|
|
248798
248817
|
stop3 = start2;
|
|
248799
248818
|
start2 = 0;
|
|
@@ -248937,7 +248956,7 @@ let SliceDimIndexer$1 = class SliceDimIndexer {
|
|
|
248937
248956
|
*[Symbol.iterator]() {
|
|
248938
248957
|
const dim_chunk_ix_from = Math.floor(this.start / this.dim_chunk_len);
|
|
248939
248958
|
const dim_chunk_ix_to = Math.ceil(this.stop / this.dim_chunk_len);
|
|
248940
|
-
for (const dim_chunk_ix of range$
|
|
248959
|
+
for (const dim_chunk_ix of range$7(dim_chunk_ix_from, dim_chunk_ix_to)) {
|
|
248941
248960
|
const dim_offset = dim_chunk_ix * this.dim_chunk_len;
|
|
248942
248961
|
const dim_limit = Math.min(this.dim_len, (dim_chunk_ix + 1) * this.dim_chunk_len);
|
|
248943
248962
|
const dim_chunk_len = dim_limit - dim_offset;
|
|
@@ -250302,7 +250321,7 @@ function parseV1(spec, renderString) {
|
|
|
250302
250321
|
function* iterDims(dimensions) {
|
|
250303
250322
|
const keys2 = Object.keys(dimensions);
|
|
250304
250323
|
const iterables = Object.values(dimensions).map(
|
|
250305
|
-
(i2) => Array.isArray(i2) ? i2 : [...range$
|
|
250324
|
+
(i2) => Array.isArray(i2) ? i2 : [...range$6(i2)]
|
|
250306
250325
|
);
|
|
250307
250326
|
for (const values3 of product$1(...iterables)) {
|
|
250308
250327
|
yield Object.fromEntries(keys2.map((key2, i2) => [key2, values3[i2]]));
|
|
@@ -250331,7 +250350,7 @@ function* product$1(...iterables) {
|
|
|
250331
250350
|
results[i2] = iterators[i2].next();
|
|
250332
250351
|
}
|
|
250333
250352
|
}
|
|
250334
|
-
function* range$
|
|
250353
|
+
function* range$6({ stop: stop3, start: start2 = 0, step = 1 }) {
|
|
250335
250354
|
for (let i2 = start2; i2 < stop3; i2 += step) {
|
|
250336
250355
|
yield i2;
|
|
250337
250356
|
}
|
|
@@ -251769,6 +251788,7 @@ function SpatialSubscriber$1(props) {
|
|
|
251769
251788
|
featureLabelsMap,
|
|
251770
251789
|
featureValueColormap: geneExpressionColormap,
|
|
251771
251790
|
featureValueColormapRange: geneExpressionColormapRange,
|
|
251791
|
+
setFeatureValueColormapRange: setGeneExpressionColormapRange,
|
|
251772
251792
|
extent: expressionExtents?.[0]
|
|
251773
251793
|
})] });
|
|
251774
251794
|
}
|
|
@@ -253147,12 +253167,12 @@ class ErrorBoundary extends React__default.Component {
|
|
|
253147
253167
|
}
|
|
253148
253168
|
}
|
|
253149
253169
|
const LazySpatialThree = React__default.lazy(async () => {
|
|
253150
|
-
const { SpatialWrapper: SpatialWrapper2 } = await import("./index-
|
|
253170
|
+
const { SpatialWrapper: SpatialWrapper2 } = await import("./index-C07z-9Ag.js");
|
|
253151
253171
|
return { default: SpatialWrapper2 };
|
|
253152
253172
|
});
|
|
253153
253173
|
const SpatialThreeAdapter = React__default.forwardRef((props, ref2) => jsxRuntimeExports.jsx("div", { ref: ref2, style: { width: "100%", height: "100%" }, children: jsxRuntimeExports.jsx(ErrorBoundary, { children: jsxRuntimeExports.jsx(Suspense, { fallback: jsxRuntimeExports.jsx("div", { children: "Loading..." }), children: jsxRuntimeExports.jsx(LazySpatialThree, { ...props }) }) }) }));
|
|
253154
253174
|
const LazySpatialAccelerated = React__default.lazy(async () => {
|
|
253155
|
-
const { SpatialWrapper: SpatialWrapper2 } = await import("./index-
|
|
253175
|
+
const { SpatialWrapper: SpatialWrapper2 } = await import("./index-sdWGixZi.js");
|
|
253156
253176
|
return { default: SpatialWrapper2 };
|
|
253157
253177
|
});
|
|
253158
253178
|
const SpatialAcceleratedAdapter = React__default.forwardRef((props, ref2) => jsxRuntimeExports.jsx("div", { ref: ref2, style: { width: "100%", height: "100%" }, children: jsxRuntimeExports.jsx(ErrorBoundary, { children: jsxRuntimeExports.jsx(Suspense, { fallback: jsxRuntimeExports.jsx("div", { children: "Loading..." }), children: jsxRuntimeExports.jsx(LazySpatialAccelerated, { ...props }) }) }) }));
|
|
@@ -254030,7 +254050,7 @@ const Heatmap$1 = forwardRef$1((props, deckRef) => {
|
|
|
254030
254050
|
}
|
|
254031
254051
|
const curr = backlog[backlog.length - 1];
|
|
254032
254052
|
if (dataRef.current && dataRef.current.buffer.byteLength && expressionRowLookUp.size > 0 && !shouldUsePaddedImplementation(dataRef.current.length)) {
|
|
254033
|
-
const promises = range$
|
|
254053
|
+
const promises = range$e(yTiles).map((i2) => range$e(xTiles).map(async (j) => workerPool.process({
|
|
254034
254054
|
curr,
|
|
254035
254055
|
tileI: i2,
|
|
254036
254056
|
tileJ: j,
|
|
@@ -254139,7 +254159,7 @@ const Heatmap$1 = forwardRef$1((props, deckRef) => {
|
|
|
254139
254159
|
});
|
|
254140
254160
|
};
|
|
254141
254161
|
const cellOrdering = transpose2 ? axisTopLabels : axisLeftLabels;
|
|
254142
|
-
const layers3 = range$
|
|
254162
|
+
const layers3 = range$e(yTiles * xTiles).map((index2) => getLayer2(Math.floor(index2 / xTiles), index2 % xTiles));
|
|
254143
254163
|
return layers3;
|
|
254144
254164
|
}
|
|
254145
254165
|
function getLayer(i2, j, tile) {
|
|
@@ -254291,10 +254311,10 @@ const Heatmap$1 = forwardRef$1((props, deckRef) => {
|
|
|
254291
254311
|
const cellOrdering = transpose2 ? axisTopLabels : axisLeftLabels;
|
|
254292
254312
|
const colorBarTileWidthPx = transpose2 ? TILE_SIZE : 1;
|
|
254293
254313
|
const colorBarTileHeightPx = transpose2 ? 1 : TILE_SIZE;
|
|
254294
|
-
const result = range$
|
|
254295
|
-
const trackResult = range$
|
|
254314
|
+
const result = range$e(numCellColorTracks).map((track) => {
|
|
254315
|
+
const trackResult = range$e(transpose2 ? xTiles : yTiles).map((i2) => {
|
|
254296
254316
|
const tileData = new Uint8ClampedArray(TILE_SIZE * 1 * 4);
|
|
254297
|
-
range$
|
|
254317
|
+
range$e(TILE_SIZE).forEach((tileY) => {
|
|
254298
254318
|
rowI = i2 * TILE_SIZE + tileY;
|
|
254299
254319
|
if (rowI < cellOrdering.length) {
|
|
254300
254320
|
cellId = cellOrdering[rowI];
|
|
@@ -254424,7 +254444,7 @@ const Heatmap$1 = forwardRef$1((props, deckRef) => {
|
|
|
254424
254444
|
}
|
|
254425
254445
|
}
|
|
254426
254446
|
const cellColorsViews = useMemo$1(() => {
|
|
254427
|
-
const result = range$
|
|
254447
|
+
const result = range$e(numCellColorTracks).map((track) => {
|
|
254428
254448
|
let view;
|
|
254429
254449
|
if (transpose2) {
|
|
254430
254450
|
view = new OrthographicView({
|
|
@@ -254650,7 +254670,7 @@ function HeatmapSubscriber(props) {
|
|
|
254650
254670
|
setTargetY(target2[1]);
|
|
254651
254671
|
}, colormapRange: geneExpressionColormapRange, setColormapRange: setGeneExpressionColormapRange, height: height2, width: width2, theme, uuid: uuid2, uint8ObsFeatureMatrix: uint8ObsFeatureMatrix?.data, cellColors, colormap: geneExpressionColormap, setIsRendering, setCellHighlight, setGeneHighlight, featureLabelsMap, obsIndex, featureIndex, setTrackHighlight, setComponentHover: () => {
|
|
254652
254672
|
setComponentHover(uuid2);
|
|
254653
|
-
}, updateViewInfo: setComponentViewInfo, observationsTitle, variablesTitle, variablesDashes: false, observationsDashes: false, cellColorLabels, useDevicePixels: true, onHeatmapClick, setColorEncoding: setHoveredColorEncoding }), tooltipsVisible && jsxRuntimeExports.jsx(HeatmapTooltipSubscriber, { parentUuid: uuid2, width: width2, height: height2, transpose: transpose2, getObsInfo: getObsInfo2, getFeatureInfo, obsHighlight: cellHighlight, featureHighlight: geneHighlight, featureType, featureLabelsMap }), jsxRuntimeExports.jsx(Legend, { visible: true, theme, featureType, featureValueType, obsColorEncoding: "geneExpression", considerSelections: false, featureSelection: geneSelection, obsSetSelection: cellSetSelection, featureValueColormap: geneExpressionColormap, featureValueColormapRange: geneExpressionColormapRange, extent: obsFeatureMatrixExtent })] });
|
|
254673
|
+
}, updateViewInfo: setComponentViewInfo, observationsTitle, variablesTitle, variablesDashes: false, observationsDashes: false, cellColorLabels, useDevicePixels: true, onHeatmapClick, setColorEncoding: setHoveredColorEncoding }), tooltipsVisible && jsxRuntimeExports.jsx(HeatmapTooltipSubscriber, { parentUuid: uuid2, width: width2, height: height2, transpose: transpose2, getObsInfo: getObsInfo2, getFeatureInfo, obsHighlight: cellHighlight, featureHighlight: geneHighlight, featureType, featureLabelsMap }), jsxRuntimeExports.jsx(Legend, { visible: true, theme, featureType, featureValueType, obsColorEncoding: "geneExpression", considerSelections: false, featureSelection: geneSelection, obsSetSelection: cellSetSelection, featureValueColormap: geneExpressionColormap, featureValueColormapRange: geneExpressionColormapRange, setFeatureValueColormapRange: setGeneExpressionColormapRange, extent: obsFeatureMatrixExtent })] });
|
|
254654
254674
|
}
|
|
254655
254675
|
function _classCallCheck(a2, n3) {
|
|
254656
254676
|
if (!(a2 instanceof n3)) throw new TypeError("Cannot call a class as a function");
|
|
@@ -261313,22 +261333,18 @@ function FeatureList(props) {
|
|
|
261313
261333
|
const { width: width2, height: height2, hasColorEncoding, geneList = [], featureLabelsMap, geneSelection = [], geneFilter = null, setGeneSelection, enableMultiSelect, showFeatureTable, featureListSort, featureListSortKey, hasFeatureLabels, primaryColumnName } = props;
|
|
261314
261334
|
const { classes: classes2 } = useStyles$l();
|
|
261315
261335
|
const [searchTerm, setSearchTerm] = useState("");
|
|
261316
|
-
const [searchResults, setSearchResults] = useState(geneList);
|
|
261317
261336
|
const selectableTableSortKey = featureListSortKey === "featureIndex" ? "key" : "name";
|
|
261318
|
-
|
|
261319
|
-
const results = geneList.filter((gene) => gene.toLowerCase().includes(searchTerm.toLowerCase()) || featureLabelsMap?.get(gene)?.toLowerCase().includes(searchTerm.toLowerCase()) || featureLabelsMap?.get(cleanFeatureId(gene))?.toLowerCase().includes(searchTerm.toLowerCase()));
|
|
261320
|
-
setSearchResults(results);
|
|
261321
|
-
}, [searchTerm, geneList, featureLabelsMap]);
|
|
261337
|
+
const searchResults = useMemo$1(() => geneList.filter((gene) => gene.toLowerCase().includes(searchTerm.toLowerCase()) || featureLabelsMap?.get(gene)?.toLowerCase().includes(searchTerm.toLowerCase()) || featureLabelsMap?.get(cleanFeatureId(gene))?.toLowerCase().includes(searchTerm.toLowerCase())), [geneList, searchTerm, featureLabelsMap]);
|
|
261322
261338
|
function onChange(selection) {
|
|
261323
261339
|
if (setGeneSelection && selection) {
|
|
261324
|
-
|
|
261325
|
-
|
|
261326
|
-
|
|
261327
|
-
|
|
261328
|
-
|
|
261329
|
-
|
|
261330
|
-
} else
|
|
261331
|
-
setGeneSelection(
|
|
261340
|
+
const selectedHiddenKeys = (geneSelection || []).filter((key2) => !searchResults.includes(key2));
|
|
261341
|
+
const selectionArray = Array.isArray(selection) ? selection : [selection];
|
|
261342
|
+
const selectedVisibleKeys = selectionArray.map((s2) => s2.key).filter((key2) => searchResults.includes(key2));
|
|
261343
|
+
const newSelection = [...selectedHiddenKeys, ...selectedVisibleKeys].filter(Boolean);
|
|
261344
|
+
if (newSelection.length > 0) {
|
|
261345
|
+
setGeneSelection(newSelection);
|
|
261346
|
+
} else {
|
|
261347
|
+
setGeneSelection(null);
|
|
261332
261348
|
}
|
|
261333
261349
|
}
|
|
261334
261350
|
}
|
|
@@ -261846,7 +261862,7 @@ function LayerOptions({ colormap, opacity: opacity2, handleColormapChange, handl
|
|
|
261846
261862
|
const domainSelectorId = $bdb11010cef70236$export$f680877a34711e37();
|
|
261847
261863
|
const opacitySliderId = $bdb11010cef70236$export$f680877a34711e37();
|
|
261848
261864
|
const zeroTransparentId = $bdb11010cef70236$export$f680877a34711e37();
|
|
261849
|
-
return jsxRuntimeExports.jsxs(Grid$1, { container: true, direction: "column", sx: { width: "100%" }, children: [hasZStack && !disable3d && hasViewableResolutions && jsxRuntimeExports.jsx(VolumeDropdown, { loader: loader2, handleSliderChange, handleDomainChange, channels: channels2, handleMultiPropertyChange, resolution, disable3d, setRasterLayerCallback, setAreAllChannelsLoading, setViewState, spatialHeight, spatialWidth, use3d, modelMatrix: modelMatrix2 }), hasDimensionsAndChannels && !use3d && globalControlLabels.map((field2) => shape2[labels2.indexOf(field2)] > 1 && jsxRuntimeExports.jsx(LayerOption, { name: field2, inputId: `${field2}-${globalSelectionSliderId}`, children: jsxRuntimeExports.jsx(GlobalSelectionSlider, { field: field2, inputId: `${field2}-${globalSelectionSliderId}`, value: globalLabelValues[field2], handleChange: handleGlobalChannelsSelectionChange, possibleValues: range$
|
|
261865
|
+
return jsxRuntimeExports.jsxs(Grid$1, { container: true, direction: "column", sx: { width: "100%" }, children: [hasZStack && !disable3d && hasViewableResolutions && jsxRuntimeExports.jsx(VolumeDropdown, { loader: loader2, handleSliderChange, handleDomainChange, channels: channels2, handleMultiPropertyChange, resolution, disable3d, setRasterLayerCallback, setAreAllChannelsLoading, setViewState, spatialHeight, spatialWidth, use3d, modelMatrix: modelMatrix2 }), hasDimensionsAndChannels && !use3d && globalControlLabels.map((field2) => shape2[labels2.indexOf(field2)] > 1 && jsxRuntimeExports.jsx(LayerOption, { name: field2, inputId: `${field2}-${globalSelectionSliderId}`, children: jsxRuntimeExports.jsx(GlobalSelectionSlider, { field: field2, inputId: `${field2}-${globalSelectionSliderId}`, value: globalLabelValues[field2], handleChange: handleGlobalChannelsSelectionChange, possibleValues: range$e(shape2[labels2.indexOf(field2)]) }) }, field2)), !disableChannelsIfRgbDetected ? jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [shouldShowColormap && jsxRuntimeExports.jsx(Grid$1, { children: jsxRuntimeExports.jsx(LayerOption, { name: "Colormap", inputId: colormapSelectId, children: jsxRuntimeExports.jsx(ColormapSelect, { value: colormap || "", inputId: colormapSelectId, handleChange: handleColormapChange }) }) }), shouldShowDomain && jsxRuntimeExports.jsx(Grid$1, { children: jsxRuntimeExports.jsx(LayerOption, { name: "Domain", inputId: domainSelectorId, children: jsxRuntimeExports.jsx(SliderDomainSelector, { value: domainType || DEFAULT_RASTER_DOMAIN_TYPE, inputId: domainSelectorId, handleChange: (value2) => {
|
|
261850
261866
|
handleDomainChange(value2);
|
|
261851
261867
|
} }) }) })] }) : null, !use3d && jsxRuntimeExports.jsx(Grid$1, { children: jsxRuntimeExports.jsx(LayerOption, { name: "Opacity", inputId: opacitySliderId, children: jsxRuntimeExports.jsx(OpacitySlider, { value: opacity2, handleChange: handleOpacityChange, inputId: opacitySliderId }) }) }), shouldShowTransparentColor && !use3d && jsxRuntimeExports.jsx(Grid$1, { children: jsxRuntimeExports.jsx(LayerOption, { name: "Zero Transparent", inputId: zeroTransparentId, children: jsxRuntimeExports.jsx(TransparentColorCheckbox, { value: transparentColor, handleChange: handleTransparentColorChange, inputId: zeroTransparentId }) }) })] });
|
|
261852
261868
|
}
|
|
@@ -265692,7 +265708,7 @@ async function open(location, options = {}) {
|
|
|
265692
265708
|
}
|
|
265693
265709
|
open.v2 = open_v2;
|
|
265694
265710
|
open.v3 = open_v3;
|
|
265695
|
-
function* range$
|
|
265711
|
+
function* range$5(start2, stop3, step = 1) {
|
|
265696
265712
|
if (stop3 === void 0) {
|
|
265697
265713
|
stop3 = start2;
|
|
265698
265714
|
start2 = 0;
|
|
@@ -265836,7 +265852,7 @@ class SliceDimIndexer2 {
|
|
|
265836
265852
|
*[Symbol.iterator]() {
|
|
265837
265853
|
const dim_chunk_ix_from = Math.floor(this.start / this.dim_chunk_len);
|
|
265838
265854
|
const dim_chunk_ix_to = Math.ceil(this.stop / this.dim_chunk_len);
|
|
265839
|
-
for (const dim_chunk_ix of range$
|
|
265855
|
+
for (const dim_chunk_ix of range$5(dim_chunk_ix_from, dim_chunk_ix_to)) {
|
|
265840
265856
|
const dim_offset = dim_chunk_ix * this.dim_chunk_len;
|
|
265841
265857
|
const dim_limit = Math.min(this.dim_len, (dim_chunk_ix + 1) * this.dim_chunk_len);
|
|
265842
265858
|
const dim_chunk_len = dim_limit - dim_offset;
|
|
@@ -266292,7 +266308,7 @@ function HiglassGlobalStyles(props) {
|
|
|
266292
266308
|
}
|
|
266293
266309
|
register({ dataFetcher: ZarrMultivecDataFetcher_default, config: ZarrMultivecDataFetcher_default.config }, { pluginType: "dataFetcher" });
|
|
266294
266310
|
const LazyHiGlassComponent = React__default.lazy(async () => {
|
|
266295
|
-
const { HiGlassComponent } = await import("./higlass-
|
|
266311
|
+
const { HiGlassComponent } = await import("./higlass-BWjoRZ_l.js");
|
|
266296
266312
|
return { default: HiGlassComponent };
|
|
266297
266313
|
});
|
|
266298
266314
|
const HG_SIZE = 800;
|
|
@@ -269239,7 +269255,7 @@ function NeuroglancerGlobalStyles(props) {
|
|
|
269239
269255
|
const { classes: classes2 } = props;
|
|
269240
269256
|
return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx(GlobalStyles$3, { styles: globalNeuroglancerCss }), jsxRuntimeExports.jsx(ScopedGlobalStyles, { styles: globalNeuroglancerStyles, parentClassName: classes2.neuroglancerWrapper })] });
|
|
269241
269257
|
}
|
|
269242
|
-
const LazyReactNeuroglancer = React__default.lazy(() => import("./ReactNeuroglancer-
|
|
269258
|
+
const LazyReactNeuroglancer = React__default.lazy(() => import("./ReactNeuroglancer-D662gKgy.js"));
|
|
269243
269259
|
function createWorker() {
|
|
269244
269260
|
return new WorkerFactory();
|
|
269245
269261
|
}
|
|
@@ -299508,68 +299524,6 @@ function toSet$1(_) {
|
|
|
299508
299524
|
for (let i2 = 0; i2 < n3; ++i2) s2[_[i2]] = true;
|
|
299509
299525
|
return s2;
|
|
299510
299526
|
}
|
|
299511
|
-
function ascending$4(a2, b2) {
|
|
299512
|
-
return a2 == null || b2 == null ? NaN : a2 < b2 ? -1 : a2 > b2 ? 1 : a2 >= b2 ? 0 : NaN;
|
|
299513
|
-
}
|
|
299514
|
-
function descending$1(a2, b2) {
|
|
299515
|
-
return a2 == null || b2 == null ? NaN : b2 < a2 ? -1 : b2 > a2 ? 1 : b2 >= a2 ? 0 : NaN;
|
|
299516
|
-
}
|
|
299517
|
-
function bisector$1(f2) {
|
|
299518
|
-
let compare12, compare2, delta;
|
|
299519
|
-
if (f2.length !== 2) {
|
|
299520
|
-
compare12 = ascending$4;
|
|
299521
|
-
compare2 = (d, x2) => ascending$4(f2(d), x2);
|
|
299522
|
-
delta = (d, x2) => f2(d) - x2;
|
|
299523
|
-
} else {
|
|
299524
|
-
compare12 = f2 === ascending$4 || f2 === descending$1 ? f2 : zero$3;
|
|
299525
|
-
compare2 = f2;
|
|
299526
|
-
delta = f2;
|
|
299527
|
-
}
|
|
299528
|
-
function left2(a2, x2, lo = 0, hi = a2.length) {
|
|
299529
|
-
if (lo < hi) {
|
|
299530
|
-
if (compare12(x2, x2) !== 0) return hi;
|
|
299531
|
-
do {
|
|
299532
|
-
const mid = lo + hi >>> 1;
|
|
299533
|
-
if (compare2(a2[mid], x2) < 0) lo = mid + 1;
|
|
299534
|
-
else hi = mid;
|
|
299535
|
-
} while (lo < hi);
|
|
299536
|
-
}
|
|
299537
|
-
return lo;
|
|
299538
|
-
}
|
|
299539
|
-
function right2(a2, x2, lo = 0, hi = a2.length) {
|
|
299540
|
-
if (lo < hi) {
|
|
299541
|
-
if (compare12(x2, x2) !== 0) return hi;
|
|
299542
|
-
do {
|
|
299543
|
-
const mid = lo + hi >>> 1;
|
|
299544
|
-
if (compare2(a2[mid], x2) <= 0) lo = mid + 1;
|
|
299545
|
-
else hi = mid;
|
|
299546
|
-
} while (lo < hi);
|
|
299547
|
-
}
|
|
299548
|
-
return lo;
|
|
299549
|
-
}
|
|
299550
|
-
function center2(a2, x2, lo = 0, hi = a2.length) {
|
|
299551
|
-
const i2 = left2(a2, x2, lo, hi - 1);
|
|
299552
|
-
return i2 > lo && delta(a2[i2 - 1], x2) > -delta(a2[i2], x2) ? i2 - 1 : i2;
|
|
299553
|
-
}
|
|
299554
|
-
return { left: left2, center: center2, right: right2 };
|
|
299555
|
-
}
|
|
299556
|
-
function zero$3() {
|
|
299557
|
-
return 0;
|
|
299558
|
-
}
|
|
299559
|
-
function number$4(x2) {
|
|
299560
|
-
return x2 === null ? NaN : +x2;
|
|
299561
|
-
}
|
|
299562
|
-
const ascendingBisect = bisector$1(ascending$4);
|
|
299563
|
-
const bisectRight$1 = ascendingBisect.right;
|
|
299564
|
-
bisector$1(number$4).center;
|
|
299565
|
-
function range$5(start2, stop3, step) {
|
|
299566
|
-
start2 = +start2, stop3 = +stop3, step = (n3 = arguments.length) < 2 ? (stop3 = start2, start2 = 0, 1) : n3 < 3 ? 1 : +step;
|
|
299567
|
-
var i2 = -1, n3 = Math.max(0, Math.ceil((stop3 - start2) / step)) | 0, range2 = new Array(n3);
|
|
299568
|
-
while (++i2 < n3) {
|
|
299569
|
-
range2[i2] = start2 + i2 * step;
|
|
299570
|
-
}
|
|
299571
|
-
return range2;
|
|
299572
|
-
}
|
|
299573
299527
|
function colors$2(specifier) {
|
|
299574
299528
|
var n3 = specifier.length / 6 | 0, colors2 = new Array(n3), i2 = 0;
|
|
299575
299529
|
while (i2 < n3) colors2[i2] = "#" + specifier.slice(i2 * 6, ++i2 * 6);
|
|
@@ -299759,7 +299713,7 @@ function band$1() {
|
|
|
299759
299713
|
start2 = Math.round(start2);
|
|
299760
299714
|
bandwidth2 = Math.round(bandwidth2);
|
|
299761
299715
|
}
|
|
299762
|
-
const values3 = range$
|
|
299716
|
+
const values3 = range$8(n3).map((i2) => start2 + step * i2);
|
|
299763
299717
|
return ordinalRange(reverse2 ? values3.reverse() : values3);
|
|
299764
299718
|
}
|
|
299765
299719
|
scale2.domain = function(_) {
|
|
@@ -301523,7 +301477,7 @@ const useStyles$3 = makeStyles()(() => ({
|
|
|
301523
301477
|
}
|
|
301524
301478
|
}));
|
|
301525
301479
|
function summarize(iterable, keepZeros) {
|
|
301526
|
-
const values3 = iterable.filter((d) => keepZeros).sort(ascending$
|
|
301480
|
+
const values3 = iterable.filter((d) => keepZeros).sort(ascending$8);
|
|
301527
301481
|
const minVal = values3[0];
|
|
301528
301482
|
const maxVal = values3[values3.length - 1];
|
|
301529
301483
|
const q1 = quantileSorted$1(values3, 0.25);
|
|
@@ -303134,7 +303088,7 @@ const Milli = [YEAR, MONTH, DATE, HOURS, MINUTES, SECONDS, MILLISECONDS], Second
|
|
|
303134
303088
|
const intervals = [[Seconds, 1, durationSecond], [Seconds, 5, 5 * durationSecond], [Seconds, 15, 15 * durationSecond], [Seconds, 30, 30 * durationSecond], [Minutes, 1, durationMinute], [Minutes, 5, 5 * durationMinute], [Minutes, 15, 15 * durationMinute], [Minutes, 30, 30 * durationMinute], [Hours, 1, durationHour], [Hours, 3, 3 * durationHour], [Hours, 6, 6 * durationHour], [Hours, 12, 12 * durationHour], [Day, 1, durationDay], [Week, 1, durationWeek], [Month, 1, durationMonth], [Month, 3, 3 * durationMonth], [Year, 1, durationYear]];
|
|
303135
303089
|
function bin$1(opt) {
|
|
303136
303090
|
const ext = opt.extent, max2 = opt.maxbins || 40, target2 = Math.abs(span(ext)) / max2;
|
|
303137
|
-
let i2 = bisector$
|
|
303091
|
+
let i2 = bisector$1((i3) => i3[2]).right(intervals, target2), units, step;
|
|
303138
303092
|
if (i2 === intervals.length) {
|
|
303139
303093
|
units = Year, step = tickStep(ext[0] / durationYear, ext[1] / durationYear, max2);
|
|
303140
303094
|
} else if (i2) {
|
|
@@ -305072,7 +305026,7 @@ function* numbers$1(values3, valueof) {
|
|
|
305072
305026
|
}
|
|
305073
305027
|
function quantiles(array2, p, f2) {
|
|
305074
305028
|
const values3 = Float64Array.from(numbers$1(array2, f2));
|
|
305075
|
-
values3.sort(ascending$
|
|
305029
|
+
values3.sort(ascending$4);
|
|
305076
305030
|
return p.map((_) => quantileSorted(values3, _));
|
|
305077
305031
|
}
|
|
305078
305032
|
function quartiles(array2, f2) {
|
|
@@ -305131,7 +305085,7 @@ function bootstrapCI(array2, samples, alpha2, f2) {
|
|
|
305131
305085
|
}
|
|
305132
305086
|
mu[j] = a2 / n3;
|
|
305133
305087
|
}
|
|
305134
|
-
mu.sort(ascending$
|
|
305088
|
+
mu.sort(ascending$4);
|
|
305135
305089
|
return [quantile$1(mu, alpha2 / 2), quantile$1(mu, 1 - alpha2 / 2)];
|
|
305136
305090
|
}
|
|
305137
305091
|
function dotbin(array2, step, smooth, f2) {
|
|
@@ -308104,7 +308058,7 @@ inherits(Quantile$1, Transform2, {
|
|
|
308104
308058
|
out.source = this.value;
|
|
308105
308059
|
return out;
|
|
308106
308060
|
}
|
|
308107
|
-
const source2 = pulse2.materialize(pulse2.SOURCE).source, groups = partition$1$1(source2, _.groupby, _.field), names = (_.groupby || []).map(accessorName), values3 = [], step = _.step || 0.01, p = _.probs || range$
|
|
308061
|
+
const source2 = pulse2.materialize(pulse2.SOURCE).source, groups = partition$1$1(source2, _.groupby, _.field), names = (_.groupby || []).map(accessorName), values3 = [], step = _.step || 0.01, p = _.probs || range$8(step / 2, 1 - EPSILON$2, step), n3 = p.length;
|
|
308108
308062
|
groups.forEach((g2) => {
|
|
308109
308063
|
const q = quantiles(g2, p);
|
|
308110
308064
|
for (let i2 = 0; i2 < n3; ++i2) {
|
|
@@ -308263,7 +308217,7 @@ inherits(Sequence, Transform2, {
|
|
|
308263
308217
|
if (this.value && !_.modified()) return;
|
|
308264
308218
|
const out = pulse2.materialize().fork(pulse2.MOD), as = _.as || "data";
|
|
308265
308219
|
out.rem = this.value ? pulse2.rem.concat(this.value) : pulse2.rem;
|
|
308266
|
-
this.value = range$
|
|
308220
|
+
this.value = range$8(_.start, _.stop, _.step || 1).map((v) => {
|
|
308267
308221
|
const t4 = {};
|
|
308268
308222
|
t4[as] = v;
|
|
308269
308223
|
return ingest$1(t4);
|
|
@@ -308723,7 +308677,7 @@ inherits(Window, Transform2, {
|
|
|
308723
308677
|
}
|
|
308724
308678
|
});
|
|
308725
308679
|
function processPartition(list2, state, cmp2, _) {
|
|
308726
|
-
const sort2 = _.sort, range2 = sort2 && !_.ignorePeers, frame2 = _.frame || [null, 0], data2 = list2.data(cmp2), n3 = data2.length, b2 = range2 ? bisector$
|
|
308680
|
+
const sort2 = _.sort, range2 = sort2 && !_.ignorePeers, frame2 = _.frame || [null, 0], data2 = list2.data(cmp2), n3 = data2.length, b2 = range2 ? bisector$1(sort2) : null, w2 = {
|
|
308727
308681
|
i0: 0,
|
|
308728
308682
|
i1: 0,
|
|
308729
308683
|
p0: 0,
|
|
@@ -308881,7 +308835,7 @@ function band() {
|
|
|
308881
308835
|
start2 = Math.round(start2);
|
|
308882
308836
|
bandwidth2 = Math.round(bandwidth2);
|
|
308883
308837
|
}
|
|
308884
|
-
const values3 = range$
|
|
308838
|
+
const values3 = range$8(n3).map((i2) => start2 + step * i2);
|
|
308885
308839
|
return ordinalRange(reverse2 ? values3.reverse() : values3);
|
|
308886
308840
|
}
|
|
308887
308841
|
scale2.domain = function(_) {
|
|
@@ -308963,8 +308917,8 @@ function band() {
|
|
|
308963
308917
|
hi = t4;
|
|
308964
308918
|
}
|
|
308965
308919
|
if (hi < values3[0] || lo > range$12[1 - reverse2]) return;
|
|
308966
|
-
a2 = Math.max(0, bisectRight$
|
|
308967
|
-
b2 = lo === hi ? a2 : bisectRight$
|
|
308920
|
+
a2 = Math.max(0, bisectRight$1(values3, lo) - 1);
|
|
308921
|
+
b2 = lo === hi ? a2 : bisectRight$1(values3, hi) - 1;
|
|
308968
308922
|
if (lo - values3[a2] > bandwidth2 + 1e-10) ++a2;
|
|
308969
308923
|
if (reverse2) {
|
|
308970
308924
|
t4 = a2;
|
|
@@ -309002,7 +308956,7 @@ const slice$2 = Array.prototype.slice;
|
|
|
309002
308956
|
function scaleBinOrdinal() {
|
|
309003
308957
|
let domain2 = [], range2 = [];
|
|
309004
308958
|
function scale2(x2) {
|
|
309005
|
-
return x2 == null || x2 !== x2 ? void 0 : range2[(bisectRight$
|
|
308959
|
+
return x2 == null || x2 !== x2 ? void 0 : range2[(bisectRight$1(domain2, x2) - 1) % range2.length];
|
|
309006
308960
|
}
|
|
309007
308961
|
scale2.domain = function(_) {
|
|
309008
308962
|
if (arguments.length) {
|
|
@@ -314725,7 +314679,7 @@ Pie.Definition = {
|
|
|
314725
314679
|
};
|
|
314726
314680
|
inherits(Pie, Transform2, {
|
|
314727
314681
|
transform(_, pulse2) {
|
|
314728
|
-
var as = _.as || ["startAngle", "endAngle"], startAngle = as[0], endAngle = as[1], field2 = _.field || one$1, start2 = _.startAngle || 0, stop3 = _.endAngle != null ? _.endAngle : 2 * Math.PI, data2 = pulse2.source, values3 = data2.map(field2), n3 = values3.length, a2 = start2, k = (stop3 - start2) / sum$2(values3), index2 = range$
|
|
314682
|
+
var as = _.as || ["startAngle", "endAngle"], startAngle = as[0], endAngle = as[1], field2 = _.field || one$1, start2 = _.startAngle || 0, stop3 = _.endAngle != null ? _.endAngle : 2 * Math.PI, data2 = pulse2.source, values3 = data2.map(field2), n3 = values3.length, a2 = start2, k = (stop3 - start2) / sum$2(values3), index2 = range$8(n3), i2, t4, v;
|
|
314729
314683
|
if (_.sort) {
|
|
314730
314684
|
index2.sort((a3, b2) => values3[a3] - values3[b2]);
|
|
314731
314685
|
}
|
|
@@ -314843,7 +314797,7 @@ function configureBins(scale2, _, count2) {
|
|
|
314843
314797
|
if (!step) error("Scale bins parameter missing step property.");
|
|
314844
314798
|
if (start2 < lo) start2 = step * Math.ceil(lo / step);
|
|
314845
314799
|
if (stop3 > hi) stop3 = step * Math.floor(hi / step);
|
|
314846
|
-
bins2 = range$
|
|
314800
|
+
bins2 = range$8(start2, stop3 + step / 2, step);
|
|
314847
314801
|
}
|
|
314848
314802
|
if (bins2) {
|
|
314849
314803
|
scale2.bins = bins2;
|
|
@@ -316064,7 +316018,7 @@ function clipRectangle(x02, y02, x12, y12) {
|
|
|
316064
316018
|
};
|
|
316065
316019
|
}
|
|
316066
316020
|
function graticuleX(y02, y12, dy) {
|
|
316067
|
-
var y2 = range$
|
|
316021
|
+
var y2 = range$8(y02, y12 - epsilon$3, dy).concat(y12);
|
|
316068
316022
|
return function(x2) {
|
|
316069
316023
|
return y2.map(function(y22) {
|
|
316070
316024
|
return [x2, y22];
|
|
@@ -316072,7 +316026,7 @@ function graticuleX(y02, y12, dy) {
|
|
|
316072
316026
|
};
|
|
316073
316027
|
}
|
|
316074
316028
|
function graticuleY(x02, x12, dx) {
|
|
316075
|
-
var x2 = range$
|
|
316029
|
+
var x2 = range$8(x02, x12 - epsilon$3, dx).concat(x12);
|
|
316076
316030
|
return function(y2) {
|
|
316077
316031
|
return x2.map(function(x22) {
|
|
316078
316032
|
return [x22, y2];
|
|
@@ -316085,9 +316039,9 @@ function graticule() {
|
|
|
316085
316039
|
return { type: "MultiLineString", coordinates: lines() };
|
|
316086
316040
|
}
|
|
316087
316041
|
function lines() {
|
|
316088
|
-
return range$
|
|
316042
|
+
return range$8(ceil(X02 / DX) * DX, X12, DX).map(X3).concat(range$8(ceil(Y02 / DY) * DY, Y12, DY).map(Y3)).concat(range$8(ceil(x02 / dx) * dx, x12, dx).filter(function(x22) {
|
|
316089
316043
|
return abs$1(x22 % DX) > epsilon$3;
|
|
316090
|
-
}).map(x2)).concat(range$
|
|
316044
|
+
}).map(x2)).concat(range$8(ceil(y02 / dy) * dy, y12, dy).filter(function(y22) {
|
|
316091
316045
|
return abs$1(y22 % DY) > epsilon$3;
|
|
316092
316046
|
}).map(y2));
|
|
316093
316047
|
}
|
|
@@ -317362,7 +317316,7 @@ function within(p, q, r3) {
|
|
|
317362
317316
|
function quantize$1(k, nice2, zero2) {
|
|
317363
317317
|
return function(values3) {
|
|
317364
317318
|
var ex = extent(values3), start2 = zero2 ? Math.min(ex[0], 0) : ex[0], stop3 = ex[1], span2 = stop3 - start2, step = nice2 ? tickStep(start2, stop3, k) : span2 / (k + 1);
|
|
317365
|
-
return range$
|
|
317319
|
+
return range$8(start2 + step, stop3, step);
|
|
317366
317320
|
};
|
|
317367
317321
|
}
|
|
317368
317322
|
function Isocontour(params2) {
|
|
@@ -323302,7 +323256,7 @@ function SortedIndex() {
|
|
|
323302
323256
|
array2 = value2;
|
|
323303
323257
|
n3 = size2;
|
|
323304
323258
|
}
|
|
323305
|
-
return [bisectLeft$1(array2, range2[0], 0, n3), bisectRight$
|
|
323259
|
+
return [bisectLeft$1(array2, range2[0], 0, n3), bisectRight$1(array2, range2[1], 0, n3)];
|
|
323306
323260
|
}
|
|
323307
323261
|
return {
|
|
323308
323262
|
insert: insert2,
|
|
@@ -325667,7 +325621,7 @@ const functionContext = {
|
|
|
325667
325621
|
hsl: hsl$2,
|
|
325668
325622
|
luminance,
|
|
325669
325623
|
contrast,
|
|
325670
|
-
sequence: range$
|
|
325624
|
+
sequence: range$8,
|
|
325671
325625
|
format: format$1,
|
|
325672
325626
|
utcFormat,
|
|
325673
325627
|
utcParse,
|
|
@@ -352937,7 +352891,7 @@ function FeatureBarPlot(props) {
|
|
|
352937
352891
|
const xTitle = `${capitalize$3(obsType)}`;
|
|
352938
352892
|
const autoMarginBottom = marginBottom || 30 + Math.sqrt(maxCharactersForLabel / 2) * 30;
|
|
352939
352893
|
const foregroundColor = theme === "dark" ? "lightgray" : "black";
|
|
352940
|
-
data2.sort((a2, b2) => ascending$
|
|
352894
|
+
data2.sort((a2, b2) => ascending$8(a2[FEATURE_KEY], b2[FEATURE_KEY]));
|
|
352941
352895
|
const svg2 = select$1(domElement);
|
|
352942
352896
|
svg2.selectAll("g").remove();
|
|
352943
352897
|
svg2.attr("width", width2).attr("height", height2);
|
|
@@ -354281,13 +354235,7 @@ class SpatialDataAutoConfig extends AbstractAutoConfig {
|
|
|
354281
354235
|
};
|
|
354282
354236
|
}
|
|
354283
354237
|
if (relPath.match(/^(shapes)\/([^/]*)$/)) {
|
|
354284
|
-
options.
|
|
354285
|
-
path: relPath,
|
|
354286
|
-
coordinateSystem: firstCoordinateSystem
|
|
354287
|
-
};
|
|
354288
|
-
}
|
|
354289
|
-
if (relPath.match(/^(points)\/([^/]*)$/)) {
|
|
354290
|
-
options.obsPoints = {
|
|
354238
|
+
options.obsSegmentations = {
|
|
354291
354239
|
path: relPath,
|
|
354292
354240
|
coordinateSystem: firstCoordinateSystem
|
|
354293
354241
|
};
|
|
@@ -354301,21 +354249,6 @@ class SpatialDataAutoConfig extends AbstractAutoConfig {
|
|
|
354301
354249
|
// region: null,
|
|
354302
354250
|
};
|
|
354303
354251
|
}
|
|
354304
|
-
const hasObs = tableEls.find((el) => el.path === `${path2}/obs`);
|
|
354305
|
-
if (hasObs) {
|
|
354306
|
-
const columnOrder = hasObs.attrs?.["column-order"];
|
|
354307
|
-
options.obsSets = {
|
|
354308
|
-
// region: null,
|
|
354309
|
-
tablePath: relPath,
|
|
354310
|
-
obsSets: columnOrder.map((c2) => ({
|
|
354311
|
-
// TODO: determine whether this column is string/categorical.
|
|
354312
|
-
// TODO: determine whether this column contains too many
|
|
354313
|
-
// categories to make sense to consider a cell set.
|
|
354314
|
-
path: `${hasObs.path.substring(1)}/${c2}`,
|
|
354315
|
-
name: c2
|
|
354316
|
-
}))
|
|
354317
|
-
};
|
|
354318
|
-
}
|
|
354319
354252
|
}
|
|
354320
354253
|
});
|
|
354321
354254
|
return options;
|
|
@@ -354878,7 +354811,7 @@ class ClustersJsonAsObsFeatureMatrixLoader extends JsonLoader {
|
|
|
354878
354811
|
const normalize2 = (d) => Math.floor((d - min2) / (max2 - min2) * 255);
|
|
354879
354812
|
return col.map(normalize2);
|
|
354880
354813
|
});
|
|
354881
|
-
const tNormalizedMatrix = range$
|
|
354814
|
+
const tNormalizedMatrix = range$e(shape2[0]).map((i2) => range$e(shape2[1]).map((j) => normalizedMatrix[j][i2]));
|
|
354882
354815
|
const normalizedFlatMatrix = tNormalizedMatrix.flat();
|
|
354883
354816
|
const obsFeatureMatrix = { data: Uint8Array.from(normalizedFlatMatrix) };
|
|
354884
354817
|
this.cachedResult = { obsIndex, featureIndex, obsFeatureMatrix };
|
|
@@ -354929,12 +354862,12 @@ class MoleculesJsonAsObsLabelsLoader extends JsonLoader {
|
|
|
354929
354862
|
if (this.cachedResult) {
|
|
354930
354863
|
return this.cachedResult;
|
|
354931
354864
|
}
|
|
354932
|
-
const obsIndex = range$
|
|
354865
|
+
const obsIndex = range$e(sum$7(Object.values(data2).map((v) => v.length))).map((i2) => String(i2));
|
|
354933
354866
|
let obsLabels = [];
|
|
354934
354867
|
Object.entries(data2).forEach(([gene, locations]) => {
|
|
354935
354868
|
obsLabels = [
|
|
354936
354869
|
...obsLabels,
|
|
354937
|
-
...range$
|
|
354870
|
+
...range$e(locations.length).map(() => gene)
|
|
354938
354871
|
];
|
|
354939
354872
|
});
|
|
354940
354873
|
this.cachedResult = { obsIndex, obsLabels };
|
|
@@ -354957,7 +354890,7 @@ class MoleculesJsonAsObsLocationsLoader extends JsonLoader {
|
|
|
354957
354890
|
return this.cachedResult;
|
|
354958
354891
|
}
|
|
354959
354892
|
const moleculesValues = Object.values(data2);
|
|
354960
|
-
const obsIndex = range$
|
|
354893
|
+
const obsIndex = range$e(sum$7(moleculesValues.map((v) => v.length))).map((i2) => String(i2));
|
|
354961
354894
|
const obsLocationsX = new Float32Array(obsIndex.length);
|
|
354962
354895
|
const obsLocationsY = new Float32Array(obsIndex.length);
|
|
354963
354896
|
let startAt = 0;
|