globe.gl 2.36.1 → 2.36.3

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/globe.gl.js CHANGED
@@ -1,11 +1,11 @@
1
- // Version 2.36.1 globe.gl - https://github.com/vasturiano/globe.gl
1
+ // Version 2.36.3 globe.gl - https://github.com/vasturiano/globe.gl
2
2
  (function (global, factory) {
3
3
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
4
4
  typeof define === 'function' && define.amd ? define(factory) :
5
5
  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Globe = factory());
6
6
  })(this, (function () { 'use strict';
7
7
 
8
- function styleInject$1(css, ref) {
8
+ function styleInject$2(css, ref) {
9
9
  if ( ref === undefined ) ref = {};
10
10
  var insertAt = ref.insertAt;
11
11
 
@@ -32,16 +32,16 @@
32
32
  }
33
33
  }
34
34
 
35
- var css_248z$1 = ".scene-container .clickable {\n cursor: pointer;\n}";
36
- styleInject$1(css_248z$1);
35
+ var css_248z$2 = ".scene-container .clickable {\n cursor: pointer;\n}";
36
+ styleInject$2(css_248z$2);
37
37
 
38
- function _arrayLikeToArray$8(r, a) {
38
+ function _arrayLikeToArray$9(r, a) {
39
39
  (null == a || a > r.length) && (a = r.length);
40
40
  for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
41
41
  return n;
42
42
  }
43
43
  function _arrayWithoutHoles$7(r) {
44
- if (Array.isArray(r)) return _arrayLikeToArray$8(r);
44
+ if (Array.isArray(r)) return _arrayLikeToArray$9(r);
45
45
  }
46
46
  function _defineProperty$3(e, r, t) {
47
47
  return (r = _toPropertyKey$5(r)) in e ? Object.defineProperty(e, r, {
@@ -99,7 +99,7 @@
99
99
  return t;
100
100
  }
101
101
  function _toConsumableArray$7(r) {
102
- return _arrayWithoutHoles$7(r) || _iterableToArray$7(r) || _unsupportedIterableToArray$8(r) || _nonIterableSpread$7();
102
+ return _arrayWithoutHoles$7(r) || _iterableToArray$7(r) || _unsupportedIterableToArray$9(r) || _nonIterableSpread$7();
103
103
  }
104
104
  function _toPrimitive$5(t, r) {
105
105
  if ("object" != typeof t || !t) return t;
@@ -115,11 +115,11 @@
115
115
  var i = _toPrimitive$5(t, "string");
116
116
  return "symbol" == typeof i ? i : i + "";
117
117
  }
118
- function _unsupportedIterableToArray$8(r, a) {
118
+ function _unsupportedIterableToArray$9(r, a) {
119
119
  if (r) {
120
- if ("string" == typeof r) return _arrayLikeToArray$8(r, a);
120
+ if ("string" == typeof r) return _arrayLikeToArray$9(r, a);
121
121
  var t = {}.toString.call(r).slice(8, -1);
122
- return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$8(r, a) : undefined;
122
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$9(r, a) : undefined;
123
123
  }
124
124
  }
125
125
 
@@ -40584,7 +40584,7 @@ void main() {
40584
40584
  var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
40585
40585
 
40586
40586
  /** Used as a reference to the global object. */
40587
- var root = freeGlobal || freeSelf || Function('return this')();
40587
+ var root$1 = freeGlobal || freeSelf || Function('return this')();
40588
40588
 
40589
40589
  /**
40590
40590
  * Gets the timestamp of the number of milliseconds that have elapsed since
@@ -40603,7 +40603,7 @@ void main() {
40603
40603
  * // => Logs the number of milliseconds it took for the deferred invocation.
40604
40604
  */
40605
40605
  var now$1 = function() {
40606
- return root.Date.now();
40606
+ return root$1.Date.now();
40607
40607
  };
40608
40608
 
40609
40609
  /** Used to match a single whitespace character. */
@@ -40641,7 +40641,7 @@ void main() {
40641
40641
  }
40642
40642
 
40643
40643
  /** Built-in value references. */
40644
- var Symbol$1 = root.Symbol;
40644
+ var Symbol$1 = root$1.Symbol;
40645
40645
 
40646
40646
  /** Used for built-in method references. */
40647
40647
  var objectProto$1 = Object.prototype;
@@ -41028,12 +41028,12 @@ void main() {
41028
41028
  return debounced;
41029
41029
  }
41030
41030
 
41031
- function _arrayLikeToArray$7(r, a) {
41031
+ function _arrayLikeToArray$8(r, a) {
41032
41032
  (null == a || a > r.length) && (a = r.length);
41033
41033
  for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
41034
41034
  return n;
41035
41035
  }
41036
- function _arrayWithHoles$7(r) {
41036
+ function _arrayWithHoles$8(r) {
41037
41037
  if (Array.isArray(r)) return r;
41038
41038
  }
41039
41039
  function _classCallCheck$5(a, n) {
@@ -41044,7 +41044,7 @@ void main() {
41044
41044
  writable: false
41045
41045
  }), e;
41046
41046
  }
41047
- function _iterableToArrayLimit$7(r, l) {
41047
+ function _iterableToArrayLimit$8(r, l) {
41048
41048
  var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
41049
41049
  if (null != t) {
41050
41050
  var e,
@@ -41068,17 +41068,17 @@ void main() {
41068
41068
  return a;
41069
41069
  }
41070
41070
  }
41071
- function _nonIterableRest$7() {
41071
+ function _nonIterableRest$8() {
41072
41072
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
41073
41073
  }
41074
- function _slicedToArray$7(r, e) {
41075
- return _arrayWithHoles$7(r) || _iterableToArrayLimit$7(r, e) || _unsupportedIterableToArray$7(r, e) || _nonIterableRest$7();
41074
+ function _slicedToArray$8(r, e) {
41075
+ return _arrayWithHoles$8(r) || _iterableToArrayLimit$8(r, e) || _unsupportedIterableToArray$8(r, e) || _nonIterableRest$8();
41076
41076
  }
41077
- function _unsupportedIterableToArray$7(r, a) {
41077
+ function _unsupportedIterableToArray$8(r, a) {
41078
41078
  if (r) {
41079
- if ("string" == typeof r) return _arrayLikeToArray$7(r, a);
41079
+ if ("string" == typeof r) return _arrayLikeToArray$8(r, a);
41080
41080
  var t = {}.toString.call(r).slice(8, -1);
41081
- return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$7(r, a) : undefined;
41081
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$8(r, a) : undefined;
41082
41082
  }
41083
41083
  }
41084
41084
 
@@ -41095,7 +41095,7 @@ void main() {
41095
41095
  this.triggerUpdate = triggerUpdate;
41096
41096
  this.onChange = onChange;
41097
41097
  });
41098
- function index$2 (_ref2) {
41098
+ function index$3 (_ref2) {
41099
41099
  var _ref2$stateInit = _ref2.stateInit,
41100
41100
  stateInit = _ref2$stateInit === undefined ? function () {
41101
41101
  return {};
@@ -41195,7 +41195,7 @@ void main() {
41195
41195
 
41196
41196
  // Link aliases
41197
41197
  Object.entries(aliases).forEach(function (_ref4) {
41198
- var _ref5 = _slicedToArray$7(_ref4, 2),
41198
+ var _ref5 = _slicedToArray$8(_ref4, 2),
41199
41199
  alias = _ref5[0],
41200
41200
  target = _ref5[1];
41201
41201
  return comp[alias] = comp[target];
@@ -42840,7 +42840,7 @@ void main() {
42840
42840
  treeProto.y = tree_y;
42841
42841
  treeProto.z = tree_z;
42842
42842
 
42843
- function ascending(a, b) {
42843
+ function ascending$1(a, b) {
42844
42844
  return a == null || b == null ? NaN : a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;
42845
42845
  }
42846
42846
 
@@ -42861,11 +42861,11 @@ void main() {
42861
42861
  // tell if the comparator is symmetric, and an asymmetric comparator can’t be
42862
42862
  // used to test whether a single value is comparable.
42863
42863
  if (f.length !== 2) {
42864
- compare1 = ascending;
42865
- compare2 = (d, x) => ascending(f(d), x);
42864
+ compare1 = ascending$1;
42865
+ compare2 = (d, x) => ascending$1(f(d), x);
42866
42866
  delta = (d, x) => f(d) - x;
42867
42867
  } else {
42868
- compare1 = f === ascending || f === descending ? f : zero$1;
42868
+ compare1 = f === ascending$1 || f === descending ? f : zero$1;
42869
42869
  compare2 = f;
42870
42870
  delta = f;
42871
42871
  }
@@ -42910,7 +42910,7 @@ void main() {
42910
42910
  return x === null ? NaN : +x;
42911
42911
  }
42912
42912
 
42913
- const ascendingBisect = bisector(ascending);
42913
+ const ascendingBisect = bisector(ascending$1);
42914
42914
  const bisectRight = ascendingBisect.right;
42915
42915
  bisector(number$1).center;
42916
42916
 
@@ -43526,7 +43526,7 @@ void main() {
43526
43526
  : m1) * 255;
43527
43527
  }
43528
43528
 
43529
- var constant = x => () => x;
43529
+ var constant$1 = x => () => x;
43530
43530
 
43531
43531
  function linear$1(a, d) {
43532
43532
  return function(t) {
@@ -43542,13 +43542,13 @@ void main() {
43542
43542
 
43543
43543
  function gamma(y) {
43544
43544
  return (y = +y) === 1 ? nogamma : function(a, b) {
43545
- return b - a ? exponential(a, b, y) : constant(isNaN(a) ? b : a);
43545
+ return b - a ? exponential(a, b, y) : constant$1(isNaN(a) ? b : a);
43546
43546
  };
43547
43547
  }
43548
43548
 
43549
43549
  function nogamma(a, b) {
43550
43550
  var d = b - a;
43551
- return d ? linear$1(a, d) : constant(isNaN(a) ? b : a);
43551
+ return d ? linear$1(a, d) : constant$1(isNaN(a) ? b : a);
43552
43552
  }
43553
43553
 
43554
43554
  var rgb$1 = (function rgbGamma(y) {
@@ -43708,7 +43708,7 @@ void main() {
43708
43708
 
43709
43709
  function interpolate(a, b) {
43710
43710
  var t = typeof b, c;
43711
- return b == null || t === "boolean" ? constant(b)
43711
+ return b == null || t === "boolean" ? constant$1(b)
43712
43712
  : (t === "number" ? interpolateNumber
43713
43713
  : t === "string" ? ((c = color$1(b)) ? (b = c, rgb$1) : string)
43714
43714
  : b instanceof color$1 ? rgb$1
@@ -46460,16 +46460,16 @@ void main() {
46460
46460
  .clipAngle(142);
46461
46461
  }
46462
46462
 
46463
- function _arrayLikeToArray$6(r, a) {
46463
+ function _arrayLikeToArray$7(r, a) {
46464
46464
  (null == a || a > r.length) && (a = r.length);
46465
46465
  for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
46466
46466
  return n;
46467
46467
  }
46468
- function _arrayWithHoles$6(r) {
46468
+ function _arrayWithHoles$7(r) {
46469
46469
  if (Array.isArray(r)) return r;
46470
46470
  }
46471
46471
  function _arrayWithoutHoles$6(r) {
46472
- if (Array.isArray(r)) return _arrayLikeToArray$6(r);
46472
+ if (Array.isArray(r)) return _arrayLikeToArray$7(r);
46473
46473
  }
46474
46474
  function _assertClassBrand$2(e, t, n) {
46475
46475
  if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n;
@@ -46547,7 +46547,7 @@ void main() {
46547
46547
  function _iterableToArray$6(r) {
46548
46548
  if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
46549
46549
  }
46550
- function _iterableToArrayLimit$6(r, l) {
46550
+ function _iterableToArrayLimit$7(r, l) {
46551
46551
  var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
46552
46552
  if (null != t) {
46553
46553
  var e,
@@ -46571,7 +46571,7 @@ void main() {
46571
46571
  return a;
46572
46572
  }
46573
46573
  }
46574
- function _nonIterableRest$6() {
46574
+ function _nonIterableRest$7() {
46575
46575
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
46576
46576
  }
46577
46577
  function _nonIterableSpread$6() {
@@ -46587,11 +46587,11 @@ void main() {
46587
46587
  return t.__proto__ = e, t;
46588
46588
  }, _setPrototypeOf$4(t, e);
46589
46589
  }
46590
- function _slicedToArray$6(r, e) {
46591
- return _arrayWithHoles$6(r) || _iterableToArrayLimit$6(r, e) || _unsupportedIterableToArray$6(r, e) || _nonIterableRest$6();
46590
+ function _slicedToArray$7(r, e) {
46591
+ return _arrayWithHoles$7(r) || _iterableToArrayLimit$7(r, e) || _unsupportedIterableToArray$7(r, e) || _nonIterableRest$7();
46592
46592
  }
46593
46593
  function _toConsumableArray$6(r) {
46594
- return _arrayWithoutHoles$6(r) || _iterableToArray$6(r) || _unsupportedIterableToArray$6(r) || _nonIterableSpread$6();
46594
+ return _arrayWithoutHoles$6(r) || _iterableToArray$6(r) || _unsupportedIterableToArray$7(r) || _nonIterableSpread$6();
46595
46595
  }
46596
46596
  function _toPrimitive$4(t, r) {
46597
46597
  if ("object" != typeof t || !t) return t;
@@ -46607,11 +46607,11 @@ void main() {
46607
46607
  var i = _toPrimitive$4(t, "string");
46608
46608
  return "symbol" == typeof i ? i : i + "";
46609
46609
  }
46610
- function _unsupportedIterableToArray$6(r, a) {
46610
+ function _unsupportedIterableToArray$7(r, a) {
46611
46611
  if (r) {
46612
- if ("string" == typeof r) return _arrayLikeToArray$6(r, a);
46612
+ if ("string" == typeof r) return _arrayLikeToArray$7(r, a);
46613
46613
  var t = {}.toString.call(r).slice(8, -1);
46614
- return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$6(r, a) : undefined;
46614
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$7(r, a) : undefined;
46615
46615
  }
46616
46616
  }
46617
46617
 
@@ -46892,7 +46892,7 @@ void main() {
46892
46892
  var lat0 = lat - latLen / 2;
46893
46893
  var lat1 = lat + latLen / 2;
46894
46894
  d.hullPnts = [[lat, lng], [lat0, lng0], [lat1, lng0], [lat0, lng1], [lat1, lng1]].map(function (_ref2) {
46895
- var _ref3 = _slicedToArray$6(_ref2, 2),
46895
+ var _ref3 = _slicedToArray$7(_ref2, 2),
46896
46896
  lat = _ref3[0],
46897
46897
  lng = _ref3[1];
46898
46898
  return polar2Cartesian$3(lat, lng, _classPrivateFieldGet2$2(_radius, _this3));
@@ -46972,11 +46972,11 @@ void main() {
46972
46972
  var lngRange = [povCoords.lng - searchRadiusLng, povCoords.lng + searchRadiusLng];
46973
46973
  var latRange = [povCoords.lat + searchRadiusLat, povCoords.lat - searchRadiusLat];
46974
46974
  var _findTileXY = findTileXY(this.level, _classPrivateFieldGet2$2(_isMercator, this), lngRange[0], latRange[0]),
46975
- _findTileXY2 = _slicedToArray$6(_findTileXY, 2),
46975
+ _findTileXY2 = _slicedToArray$7(_findTileXY, 2),
46976
46976
  x0 = _findTileXY2[0],
46977
46977
  y0 = _findTileXY2[1];
46978
46978
  var _findTileXY3 = findTileXY(this.level, _classPrivateFieldGet2$2(_isMercator, this), lngRange[1], latRange[1]),
46979
- _findTileXY4 = _slicedToArray$6(_findTileXY3, 2),
46979
+ _findTileXY4 = _slicedToArray$7(_findTileXY3, 2),
46980
46980
  x1 = _findTileXY4[0],
46981
46981
  y1 = _findTileXY4[1];
46982
46982
  !tiles.record && (tiles.record = {}); // Index gen tiles by XY
@@ -47041,7 +47041,7 @@ void main() {
47041
47041
  var _map = [lat + latLen / 2, lat - latLen / 2].map(function (lat) {
47042
47042
  return 0.5 - lat / 180;
47043
47043
  }),
47044
- _map2 = _slicedToArray$6(_map, 2),
47044
+ _map2 = _slicedToArray$7(_map, 2),
47045
47045
  _y = _map2[0],
47046
47046
  _y2 = _map2[1];
47047
47047
  convertMercatorUV(tile.geometry.attributes.uv, _y, _y2);
@@ -47720,16 +47720,16 @@ void main() {
47720
47720
  return {vertices, holes, dimensions};
47721
47721
  }
47722
47722
 
47723
- function _arrayLikeToArray$5(r, a) {
47723
+ function _arrayLikeToArray$6(r, a) {
47724
47724
  (null == a || a > r.length) && (a = r.length);
47725
47725
  for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
47726
47726
  return n;
47727
47727
  }
47728
- function _arrayWithHoles$5(r) {
47728
+ function _arrayWithHoles$6(r) {
47729
47729
  if (Array.isArray(r)) return r;
47730
47730
  }
47731
47731
  function _arrayWithoutHoles$5(r) {
47732
- if (Array.isArray(r)) return _arrayLikeToArray$5(r);
47732
+ if (Array.isArray(r)) return _arrayLikeToArray$6(r);
47733
47733
  }
47734
47734
  function _assertThisInitialized$3(e) {
47735
47735
  if (undefined === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
@@ -47749,7 +47749,7 @@ void main() {
47749
47749
  function _createForOfIteratorHelper(r, e) {
47750
47750
  var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
47751
47751
  if (!t) {
47752
- if (Array.isArray(r) || (t = _unsupportedIterableToArray$5(r)) || e) {
47752
+ if (Array.isArray(r) || (t = _unsupportedIterableToArray$6(r)) || e) {
47753
47753
  t && (r = t);
47754
47754
  var n = 0,
47755
47755
  F = function () {};
@@ -47822,7 +47822,7 @@ void main() {
47822
47822
  function _iterableToArray$5(r) {
47823
47823
  if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
47824
47824
  }
47825
- function _iterableToArrayLimit$5(r, l) {
47825
+ function _iterableToArrayLimit$6(r, l) {
47826
47826
  var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
47827
47827
  if (null != t) {
47828
47828
  var e,
@@ -47849,7 +47849,7 @@ void main() {
47849
47849
  return a;
47850
47850
  }
47851
47851
  }
47852
- function _nonIterableRest$5() {
47852
+ function _nonIterableRest$6() {
47853
47853
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
47854
47854
  }
47855
47855
  function _nonIterableSpread$5() {
@@ -47865,17 +47865,17 @@ void main() {
47865
47865
  return t.__proto__ = e, t;
47866
47866
  }, _setPrototypeOf$3(t, e);
47867
47867
  }
47868
- function _slicedToArray$5(r, e) {
47869
- return _arrayWithHoles$5(r) || _iterableToArrayLimit$5(r, e) || _unsupportedIterableToArray$5(r, e) || _nonIterableRest$5();
47868
+ function _slicedToArray$6(r, e) {
47869
+ return _arrayWithHoles$6(r) || _iterableToArrayLimit$6(r, e) || _unsupportedIterableToArray$6(r, e) || _nonIterableRest$6();
47870
47870
  }
47871
47871
  function _toConsumableArray$5(r) {
47872
- return _arrayWithoutHoles$5(r) || _iterableToArray$5(r) || _unsupportedIterableToArray$5(r) || _nonIterableSpread$5();
47872
+ return _arrayWithoutHoles$5(r) || _iterableToArray$5(r) || _unsupportedIterableToArray$6(r) || _nonIterableSpread$5();
47873
47873
  }
47874
- function _unsupportedIterableToArray$5(r, a) {
47874
+ function _unsupportedIterableToArray$6(r, a) {
47875
47875
  if (r) {
47876
- if ("string" == typeof r) return _arrayLikeToArray$5(r, a);
47876
+ if ("string" == typeof r) return _arrayLikeToArray$6(r, a);
47877
47877
  var t = {}.toString.call(r).slice(8, -1);
47878
- return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$5(r, a) : undefined;
47878
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$6(r, a) : undefined;
47879
47879
  }
47880
47880
  }
47881
47881
 
@@ -47975,7 +47975,7 @@ void main() {
47975
47975
  coords.map(function (c) {
47976
47976
  return genPoint(c, r);
47977
47977
  }).forEach(function (_ref) {
47978
- var _ref2 = _slicedToArray$5(_ref, 1),
47978
+ var _ref2 = _slicedToArray$6(_ref, 1),
47979
47979
  newPnt = _ref2[0];
47980
47980
  concatGroup(result, newPnt);
47981
47981
  });
@@ -47983,7 +47983,7 @@ void main() {
47983
47983
  }
47984
47984
  function genLineString(coords, r) {
47985
47985
  var coords3d = interpolateLine(coords, resolution).map(function (_ref3) {
47986
- var _ref4 = _slicedToArray$5(_ref3, 3),
47986
+ var _ref4 = _slicedToArray$6(_ref3, 3),
47987
47987
  lng = _ref4[0],
47988
47988
  lat = _ref4[1],
47989
47989
  _ref4$ = _ref4[2],
@@ -48010,7 +48010,7 @@ void main() {
48010
48010
  coords.map(function (c) {
48011
48011
  return genLineString(c, r);
48012
48012
  }).forEach(function (_ref5) {
48013
- var _ref6 = _slicedToArray$5(_ref5, 1),
48013
+ var _ref6 = _slicedToArray$6(_ref5, 1),
48014
48014
  newLine = _ref6[0];
48015
48015
  concatGroup(result, newLine);
48016
48016
  });
@@ -48019,7 +48019,7 @@ void main() {
48019
48019
  function genPolygon(coords, r) {
48020
48020
  var coords3d = coords.map(function (coordsSegment) {
48021
48021
  return interpolateLine(coordsSegment, resolution).map(function (_ref7) {
48022
- var _ref8 = _slicedToArray$5(_ref7, 3),
48022
+ var _ref8 = _slicedToArray$6(_ref7, 3),
48023
48023
  lng = _ref8[0],
48024
48024
  lat = _ref8[1],
48025
48025
  _ref8$ = _ref8[2],
@@ -48072,7 +48072,7 @@ void main() {
48072
48072
  coords.map(function (c) {
48073
48073
  return genPolygon(c, r);
48074
48074
  }).forEach(function (_ref9) {
48075
- var _ref10 = _slicedToArray$5(_ref9, 2),
48075
+ var _ref10 = _slicedToArray$6(_ref9, 2),
48076
48076
  newOuter = _ref10[0],
48077
48077
  newHoles = _ref10[1];
48078
48078
  concatGroup(outer, newOuter);
@@ -49485,7 +49485,7 @@ void main() {
49485
49485
  toTrianglesDrawMode: toTrianglesDrawMode
49486
49486
  });
49487
49487
 
49488
- var index$1 = (function (p) {
49488
+ var index$2 = (function (p) {
49489
49489
  return typeof p === 'function' ? p // fn
49490
49490
  : typeof p === 'string' ? function (obj) {
49491
49491
  return obj[p];
@@ -49496,14 +49496,14 @@ void main() {
49496
49496
  }); // constant
49497
49497
 
49498
49498
  // This file is autogenerated. It's used to publish ESM to npm.
49499
- function _typeof(obj) {
49499
+ function _typeof$1(obj) {
49500
49500
  "@babel/helpers - typeof";
49501
49501
 
49502
- return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
49502
+ return _typeof$1 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
49503
49503
  return typeof obj;
49504
49504
  } : function (obj) {
49505
49505
  return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
49506
- }, _typeof(obj);
49506
+ }, _typeof$1(obj);
49507
49507
  }
49508
49508
 
49509
49509
  // https://github.com/bgrins/TinyColor
@@ -49767,7 +49767,7 @@ void main() {
49767
49767
  // If input is an object, force 1 into "1.0" to handle ratios properly
49768
49768
  // String input requires "1.0" as input, so 1 will be treated as 1
49769
49769
  tinycolor.fromRatio = function (color, opts) {
49770
- if (_typeof(color) == "object") {
49770
+ if (_typeof$1(color) == "object") {
49771
49771
  var newColor = {};
49772
49772
  for (var i in color) {
49773
49773
  if (color.hasOwnProperty(i)) {
@@ -49813,7 +49813,7 @@ void main() {
49813
49813
  if (typeof color == "string") {
49814
49814
  color = stringInputToObject(color);
49815
49815
  }
49816
- if (_typeof(color) == "object") {
49816
+ if (_typeof$1(color) == "object") {
49817
49817
  if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {
49818
49818
  rgb = rgbToRgb(color.r, color.g, color.b);
49819
49819
  ok = true;
@@ -50674,16 +50674,16 @@ void main() {
50674
50674
  };
50675
50675
  }
50676
50676
 
50677
- function _arrayLikeToArray$4(r, a) {
50677
+ function _arrayLikeToArray$5(r, a) {
50678
50678
  (null == a || a > r.length) && (a = r.length);
50679
50679
  for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
50680
50680
  return n;
50681
50681
  }
50682
- function _arrayWithHoles$4(r) {
50682
+ function _arrayWithHoles$5(r) {
50683
50683
  if (Array.isArray(r)) return r;
50684
50684
  }
50685
50685
  function _arrayWithoutHoles$4(r) {
50686
- if (Array.isArray(r)) return _arrayLikeToArray$4(r);
50686
+ if (Array.isArray(r)) return _arrayLikeToArray$5(r);
50687
50687
  }
50688
50688
  function _assertClassBrand$1(e, t, n) {
50689
50689
  if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n;
@@ -50718,7 +50718,7 @@ void main() {
50718
50718
  function _iterableToArray$4(r) {
50719
50719
  if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
50720
50720
  }
50721
- function _iterableToArrayLimit$4(r, l) {
50721
+ function _iterableToArrayLimit$5(r, l) {
50722
50722
  var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
50723
50723
  if (null != t) {
50724
50724
  var e,
@@ -50742,17 +50742,17 @@ void main() {
50742
50742
  return a;
50743
50743
  }
50744
50744
  }
50745
- function _nonIterableRest$4() {
50745
+ function _nonIterableRest$5() {
50746
50746
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
50747
50747
  }
50748
50748
  function _nonIterableSpread$4() {
50749
50749
  throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
50750
50750
  }
50751
- function _slicedToArray$4(r, e) {
50752
- return _arrayWithHoles$4(r) || _iterableToArrayLimit$4(r, e) || _unsupportedIterableToArray$4(r, e) || _nonIterableRest$4();
50751
+ function _slicedToArray$5(r, e) {
50752
+ return _arrayWithHoles$5(r) || _iterableToArrayLimit$5(r, e) || _unsupportedIterableToArray$5(r, e) || _nonIterableRest$5();
50753
50753
  }
50754
50754
  function _toConsumableArray$4(r) {
50755
- return _arrayWithoutHoles$4(r) || _iterableToArray$4(r) || _unsupportedIterableToArray$4(r) || _nonIterableSpread$4();
50755
+ return _arrayWithoutHoles$4(r) || _iterableToArray$4(r) || _unsupportedIterableToArray$5(r) || _nonIterableSpread$4();
50756
50756
  }
50757
50757
  function _toPrimitive$3(t, r) {
50758
50758
  if ("object" != typeof t || !t) return t;
@@ -50768,11 +50768,11 @@ void main() {
50768
50768
  var i = _toPrimitive$3(t, "string");
50769
50769
  return "symbol" == typeof i ? i : i + "";
50770
50770
  }
50771
- function _unsupportedIterableToArray$4(r, a) {
50771
+ function _unsupportedIterableToArray$5(r, a) {
50772
50772
  if (r) {
50773
- if ("string" == typeof r) return _arrayLikeToArray$4(r, a);
50773
+ if ("string" == typeof r) return _arrayLikeToArray$5(r, a);
50774
50774
  var t = {}.toString.call(r).slice(8, -1);
50775
- return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$4(r, a) : undefined;
50775
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$5(r, a) : undefined;
50776
50776
  }
50777
50777
  }
50778
50778
 
@@ -50810,7 +50810,7 @@ void main() {
50810
50810
  key: "entries",
50811
50811
  value: function entries() {
50812
50812
  return _toConsumableArray$4(_classPrivateFieldGet2$1(_objMap, this).entries()).map(function (_ref) {
50813
- var _ref2 = _slicedToArray$4(_ref, 2),
50813
+ var _ref2 = _slicedToArray$5(_ref, 2),
50814
50814
  o = _ref2[0],
50815
50815
  d = _ref2[1];
50816
50816
  return [d, o];
@@ -50819,7 +50819,7 @@ void main() {
50819
50819
  }, {
50820
50820
  key: "id",
50821
50821
  value: function id(p) {
50822
- _classPrivateFieldSet2$1(_id$a, this, index$1(p));
50822
+ _classPrivateFieldSet2$1(_id$a, this, index$2(p));
50823
50823
  return this;
50824
50824
  }
50825
50825
  }, {
@@ -53006,16 +53006,16 @@ void main() {
53006
53006
  return v(data) ;
53007
53007
  }
53008
53008
 
53009
- function _arrayLikeToArray$3(r, a) {
53009
+ function _arrayLikeToArray$4(r, a) {
53010
53010
  (null == a || a > r.length) && (a = r.length);
53011
53011
  for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
53012
53012
  return n;
53013
53013
  }
53014
- function _arrayWithHoles$3(r) {
53014
+ function _arrayWithHoles$4(r) {
53015
53015
  if (Array.isArray(r)) return r;
53016
53016
  }
53017
53017
  function _arrayWithoutHoles$3(r) {
53018
- if (Array.isArray(r)) return _arrayLikeToArray$3(r);
53018
+ if (Array.isArray(r)) return _arrayLikeToArray$4(r);
53019
53019
  }
53020
53020
  function _assertThisInitialized$2(e) {
53021
53021
  if (undefined === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
@@ -53060,7 +53060,7 @@ void main() {
53060
53060
  function _iterableToArray$3(r) {
53061
53061
  if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
53062
53062
  }
53063
- function _iterableToArrayLimit$3(r, l) {
53063
+ function _iterableToArrayLimit$4(r, l) {
53064
53064
  var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
53065
53065
  if (null != t) {
53066
53066
  var e,
@@ -53084,7 +53084,7 @@ void main() {
53084
53084
  return a;
53085
53085
  }
53086
53086
  }
53087
- function _nonIterableRest$3() {
53087
+ function _nonIterableRest$4() {
53088
53088
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
53089
53089
  }
53090
53090
  function _nonIterableSpread$3() {
@@ -53100,17 +53100,17 @@ void main() {
53100
53100
  return t.__proto__ = e, t;
53101
53101
  }, _setPrototypeOf$2(t, e);
53102
53102
  }
53103
- function _slicedToArray$3(r, e) {
53104
- return _arrayWithHoles$3(r) || _iterableToArrayLimit$3(r, e) || _unsupportedIterableToArray$3(r, e) || _nonIterableRest$3();
53103
+ function _slicedToArray$4(r, e) {
53104
+ return _arrayWithHoles$4(r) || _iterableToArrayLimit$4(r, e) || _unsupportedIterableToArray$4(r, e) || _nonIterableRest$4();
53105
53105
  }
53106
53106
  function _toConsumableArray$3(r) {
53107
- return _arrayWithoutHoles$3(r) || _iterableToArray$3(r) || _unsupportedIterableToArray$3(r) || _nonIterableSpread$3();
53107
+ return _arrayWithoutHoles$3(r) || _iterableToArray$3(r) || _unsupportedIterableToArray$4(r) || _nonIterableSpread$3();
53108
53108
  }
53109
- function _unsupportedIterableToArray$3(r, a) {
53109
+ function _unsupportedIterableToArray$4(r, a) {
53110
53110
  if (r) {
53111
- if ("string" == typeof r) return _arrayLikeToArray$3(r, a);
53111
+ if ("string" == typeof r) return _arrayLikeToArray$4(r, a);
53112
53112
  var t = {}.toString.call(r).slice(8, -1);
53113
- return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$3(r, a) : undefined;
53113
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$4(r, a) : undefined;
53114
53114
  }
53115
53115
  }
53116
53116
 
@@ -53127,11 +53127,11 @@ void main() {
53127
53127
  coordinates: polygon
53128
53128
  };
53129
53129
  var _geoBounds = geoBounds(boundariesGeojson),
53130
- _geoBounds2 = _slicedToArray$3(_geoBounds, 2),
53131
- _geoBounds2$ = _slicedToArray$3(_geoBounds2[0], 2),
53130
+ _geoBounds2 = _slicedToArray$4(_geoBounds, 2),
53131
+ _geoBounds2$ = _slicedToArray$4(_geoBounds2[0], 2),
53132
53132
  minLng = _geoBounds2$[0],
53133
53133
  minLat = _geoBounds2$[1],
53134
- _geoBounds2$2 = _slicedToArray$3(_geoBounds2[1], 2),
53134
+ _geoBounds2$2 = _slicedToArray$4(_geoBounds2[1], 2),
53135
53135
  maxLng = _geoBounds2$2[0],
53136
53136
  maxLat = _geoBounds2$2[1];
53137
53137
  var crossesPoleOrAntimeridian = minLng > maxLng // crosses antimeridian
@@ -53143,7 +53143,7 @@ void main() {
53143
53143
  // Use d3-geo-voronoi. Slowest, but most accurate for polygons that cross poles or anti-meridian
53144
53144
  var vt = geoVoronoi(points).triangles(); // geoDelaunay generates more triangles than needed
53145
53145
  var pntMap = new Map(points.map(function (_ref2, idx) {
53146
- var _ref3 = _slicedToArray$3(_ref2, 2),
53146
+ var _ref3 = _slicedToArray$4(_ref2, 2),
53147
53147
  lng = _ref3[0],
53148
53148
  lat = _ref3[1];
53149
53149
  return ["".concat(lng, "-").concat(lat), idx];
@@ -53154,7 +53154,7 @@ void main() {
53154
53154
 
53155
53155
  var inds = [];
53156
53156
  triangle.forEach(function (_ref4) {
53157
- var _ref5 = _slicedToArray$3(_ref4, 2),
53157
+ var _ref5 = _slicedToArray$4(_ref4, 2),
53158
53158
  lng = _ref5[0],
53159
53159
  lat = _ref5[1];
53160
53160
  var k = "".concat(lng, "-").concat(lat);
@@ -53216,7 +53216,7 @@ void main() {
53216
53216
  return d[1];
53217
53217
  }), [0, 1]);
53218
53218
  var uvs = points.map(function (_ref6) {
53219
- var _ref7 = _slicedToArray$3(_ref6, 2),
53219
+ var _ref7 = _slicedToArray$4(_ref6, 2),
53220
53220
  lng = _ref7[0],
53221
53221
  lat = _ref7[1];
53222
53222
  return [lngUvScale(lng), latUvScale(lat)];
@@ -53260,11 +53260,11 @@ void main() {
53260
53260
  coordinates: polygon
53261
53261
  };
53262
53262
  var _geoBounds3 = geoBounds(boundariesGeojson),
53263
- _geoBounds4 = _slicedToArray$3(_geoBounds3, 2),
53264
- _geoBounds4$ = _slicedToArray$3(_geoBounds4[0], 2),
53263
+ _geoBounds4 = _slicedToArray$4(_geoBounds3, 2),
53264
+ _geoBounds4$ = _slicedToArray$4(_geoBounds4[0], 2),
53265
53265
  minLng = _geoBounds4$[0],
53266
53266
  minLat = _geoBounds4$[1],
53267
- _geoBounds4$2 = _slicedToArray$3(_geoBounds4[1], 2),
53267
+ _geoBounds4$2 = _slicedToArray$4(_geoBounds4[1], 2),
53268
53268
  maxLng = _geoBounds4$2[0],
53269
53269
  maxLat = _geoBounds4$2[1];
53270
53270
 
@@ -53400,7 +53400,7 @@ void main() {
53400
53400
  };
53401
53401
  var coords3d = polygon.map(function (coords) {
53402
53402
  return coords.map(function (_ref) {
53403
- var _ref2 = _slicedToArray$3(_ref, 2),
53403
+ var _ref2 = _slicedToArray$4(_ref, 2),
53404
53404
  lng = _ref2[0],
53405
53405
  lat = _ref2[1];
53406
53406
  return polar2Cartesian$1(lat, lng, altFn(lng, lat));
@@ -53468,21 +53468,21 @@ void main() {
53468
53468
  ];
53469
53469
  }
53470
53470
 
53471
- function _arrayLikeToArray$2(r, a) {
53471
+ function _arrayLikeToArray$3(r, a) {
53472
53472
  (null == a || a > r.length) && (a = r.length);
53473
53473
  for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
53474
53474
  return n;
53475
53475
  }
53476
- function _arrayWithHoles$2(r) {
53476
+ function _arrayWithHoles$3(r) {
53477
53477
  if (Array.isArray(r)) return r;
53478
53478
  }
53479
53479
  function _arrayWithoutHoles$2(r) {
53480
- if (Array.isArray(r)) return _arrayLikeToArray$2(r);
53480
+ if (Array.isArray(r)) return _arrayLikeToArray$3(r);
53481
53481
  }
53482
53482
  function _iterableToArray$2(r) {
53483
53483
  if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
53484
53484
  }
53485
- function _iterableToArrayLimit$2(r, l) {
53485
+ function _iterableToArrayLimit$3(r, l) {
53486
53486
  var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
53487
53487
  if (null != t) {
53488
53488
  var e,
@@ -53506,7 +53506,7 @@ void main() {
53506
53506
  return a;
53507
53507
  }
53508
53508
  }
53509
- function _nonIterableRest$2() {
53509
+ function _nonIterableRest$3() {
53510
53510
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
53511
53511
  }
53512
53512
  function _nonIterableSpread$2() {
@@ -53532,11 +53532,11 @@ void main() {
53532
53532
  }
53533
53533
  return t;
53534
53534
  }
53535
- function _slicedToArray$2(r, e) {
53536
- return _arrayWithHoles$2(r) || _iterableToArrayLimit$2(r, e) || _unsupportedIterableToArray$2(r, e) || _nonIterableRest$2();
53535
+ function _slicedToArray$3(r, e) {
53536
+ return _arrayWithHoles$3(r) || _iterableToArrayLimit$3(r, e) || _unsupportedIterableToArray$3(r, e) || _nonIterableRest$3();
53537
53537
  }
53538
53538
  function _toConsumableArray$2(r) {
53539
- return _arrayWithoutHoles$2(r) || _iterableToArray$2(r) || _unsupportedIterableToArray$2(r) || _nonIterableSpread$2();
53539
+ return _arrayWithoutHoles$2(r) || _iterableToArray$2(r) || _unsupportedIterableToArray$3(r) || _nonIterableSpread$2();
53540
53540
  }
53541
53541
  function _toPrimitive$2(t, r) {
53542
53542
  if ("object" != typeof t || !t) return t;
@@ -53552,15 +53552,15 @@ void main() {
53552
53552
  var i = _toPrimitive$2(t, "string");
53553
53553
  return "symbol" == typeof i ? i : i + "";
53554
53554
  }
53555
- function _unsupportedIterableToArray$2(r, a) {
53555
+ function _unsupportedIterableToArray$3(r, a) {
53556
53556
  if (r) {
53557
- if ("string" == typeof r) return _arrayLikeToArray$2(r, a);
53557
+ if ("string" == typeof r) return _arrayLikeToArray$3(r, a);
53558
53558
  var t = {}.toString.call(r).slice(8, -1);
53559
- return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$2(r, a) : undefined;
53559
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$3(r, a) : undefined;
53560
53560
  }
53561
53561
  }
53562
53562
 
53563
- var index = (function () {
53563
+ var index$1 = (function () {
53564
53564
  var list = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
53565
53565
  var keyAccessors = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
53566
53566
  var multiItem = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
@@ -53634,7 +53634,7 @@ void main() {
53634
53634
  });
53635
53635
  } else {
53636
53636
  Object.entries(node).forEach(function (_ref2) {
53637
- var _ref3 = _slicedToArray$2(_ref2, 2),
53637
+ var _ref3 = _slicedToArray$3(_ref2, 2),
53638
53638
  key = _ref3[0],
53639
53639
  val = _ref3[1];
53640
53640
  return flatten(val, [].concat(_toConsumableArray$2(accKeys), [key]));
@@ -70573,16 +70573,16 @@ void main() {
70573
70573
 
70574
70574
  }
70575
70575
 
70576
- function _arrayLikeToArray$1(r, a) {
70576
+ function _arrayLikeToArray$2(r, a) {
70577
70577
  (null == a || a > r.length) && (a = r.length);
70578
70578
  for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
70579
70579
  return n;
70580
70580
  }
70581
- function _arrayWithHoles$1(r) {
70581
+ function _arrayWithHoles$2(r) {
70582
70582
  if (Array.isArray(r)) return r;
70583
70583
  }
70584
70584
  function _arrayWithoutHoles$1(r) {
70585
- if (Array.isArray(r)) return _arrayLikeToArray$1(r);
70585
+ if (Array.isArray(r)) return _arrayLikeToArray$2(r);
70586
70586
  }
70587
70587
  function _assertClassBrand(e, t, n) {
70588
70588
  if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n;
@@ -70676,7 +70676,7 @@ void main() {
70676
70676
  function _iterableToArray$1(r) {
70677
70677
  if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
70678
70678
  }
70679
- function _iterableToArrayLimit$1(r, l) {
70679
+ function _iterableToArrayLimit$2(r, l) {
70680
70680
  var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
70681
70681
  if (null != t) {
70682
70682
  var e,
@@ -70703,7 +70703,7 @@ void main() {
70703
70703
  return a;
70704
70704
  }
70705
70705
  }
70706
- function _nonIterableRest$1() {
70706
+ function _nonIterableRest$2() {
70707
70707
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
70708
70708
  }
70709
70709
  function _nonIterableSpread$1() {
@@ -70760,8 +70760,8 @@ void main() {
70760
70760
  return t.__proto__ = e, t;
70761
70761
  }, _setPrototypeOf$1(t, e);
70762
70762
  }
70763
- function _slicedToArray$1(r, e) {
70764
- return _arrayWithHoles$1(r) || _iterableToArrayLimit$1(r, e) || _unsupportedIterableToArray$1(r, e) || _nonIterableRest$1();
70763
+ function _slicedToArray$2(r, e) {
70764
+ return _arrayWithHoles$2(r) || _iterableToArrayLimit$2(r, e) || _unsupportedIterableToArray$2(r, e) || _nonIterableRest$2();
70765
70765
  }
70766
70766
  function _superPropBase(t, o) {
70767
70767
  for (; !{}.hasOwnProperty.call(t, o) && null !== (t = _getPrototypeOf$1(t)););
@@ -70774,7 +70774,7 @@ void main() {
70774
70774
  } : p;
70775
70775
  }
70776
70776
  function _toConsumableArray$1(r) {
70777
- return _arrayWithoutHoles$1(r) || _iterableToArray$1(r) || _unsupportedIterableToArray$1(r) || _nonIterableSpread$1();
70777
+ return _arrayWithoutHoles$1(r) || _iterableToArray$1(r) || _unsupportedIterableToArray$2(r) || _nonIterableSpread$1();
70778
70778
  }
70779
70779
  function _toPrimitive$1(t, r) {
70780
70780
  if ("object" != typeof t || !t) return t;
@@ -70790,11 +70790,11 @@ void main() {
70790
70790
  var i = _toPrimitive$1(t, "string");
70791
70791
  return "symbol" == typeof i ? i : i + "";
70792
70792
  }
70793
- function _unsupportedIterableToArray$1(r, a) {
70793
+ function _unsupportedIterableToArray$2(r, a) {
70794
70794
  if (r) {
70795
- if ("string" == typeof r) return _arrayLikeToArray$1(r, a);
70795
+ if ("string" == typeof r) return _arrayLikeToArray$2(r, a);
70796
70796
  var t = {}.toString.call(r).slice(8, -1);
70797
- return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$1(r, a) : undefined;
70797
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$2(r, a) : undefined;
70798
70798
  }
70799
70799
  }
70800
70800
 
@@ -70984,7 +70984,7 @@ void main() {
70984
70984
 
70985
70985
  //
70986
70986
 
70987
- var GlobeLayerKapsule = index$2({
70987
+ var GlobeLayerKapsule = index$3({
70988
70988
  props: {
70989
70989
  globeImageUrl: {},
70990
70990
  bumpImageUrl: {},
@@ -71168,7 +71168,7 @@ void main() {
71168
71168
  var rgbaMatch = /^rgba\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*([\d.eE+-]+)\s*\)$/.exec(str.trim().toLowerCase());
71169
71169
  if (rgbaMatch) {
71170
71170
  var _rgbaMatch$slice = rgbaMatch.slice(1),
71171
- _rgbaMatch$slice2 = _slicedToArray$1(_rgbaMatch$slice, 4),
71171
+ _rgbaMatch$slice2 = _slicedToArray$2(_rgbaMatch$slice, 4),
71172
71172
  r = _rgbaMatch$slice2[0],
71173
71173
  g = _rgbaMatch$slice2[1],
71174
71174
  b = _rgbaMatch$slice2[2],
@@ -71292,7 +71292,7 @@ void main() {
71292
71292
 
71293
71293
  //
71294
71294
 
71295
- var PointsLayerKapsule = index$2({
71295
+ var PointsLayerKapsule = index$3({
71296
71296
  props: {
71297
71297
  pointsData: {
71298
71298
  "default": []
@@ -71344,11 +71344,11 @@ void main() {
71344
71344
  },
71345
71345
  update: function update(state, changedProps) {
71346
71346
  // Data accessors
71347
- var latAccessor = index$1(state.pointLat);
71348
- var lngAccessor = index$1(state.pointLng);
71349
- var altitudeAccessor = index$1(state.pointAltitude);
71350
- var radiusAccessor = index$1(state.pointRadius);
71351
- var colorAccessor = index$1(state.pointColor);
71347
+ var latAccessor = index$2(state.pointLat);
71348
+ var lngAccessor = index$2(state.pointLng);
71349
+ var altitudeAccessor = index$2(state.pointAltitude);
71350
+ var radiusAccessor = index$2(state.pointRadius);
71351
+ var colorAccessor = index$2(state.pointColor);
71352
71352
 
71353
71353
  // shared geometry
71354
71354
  var pointGeometry = new THREE$e.CylinderGeometry(1, 1, 1, state.pointResolution);
@@ -71535,7 +71535,7 @@ void main() {
71535
71535
 
71536
71536
  //
71537
71537
 
71538
- var ArcsLayerKapsule = index$2({
71538
+ var ArcsLayerKapsule = index$3({
71539
71539
  props: {
71540
71540
  arcsData: {
71541
71541
  "default": []
@@ -71639,7 +71639,7 @@ void main() {
71639
71639
  // Kick-off dash animations
71640
71640
  state.ticker.onTick.add(function (_, timeDelta) {
71641
71641
  state.dataMapper.entries().map(function (_ref2) {
71642
- var _ref3 = _slicedToArray$1(_ref2, 2),
71642
+ var _ref3 = _slicedToArray$2(_ref2, 2),
71643
71643
  obj = _ref3[1];
71644
71644
  return obj;
71645
71645
  }).filter(function (o) {
@@ -71654,18 +71654,18 @@ void main() {
71654
71654
  },
71655
71655
  update: function update(state) {
71656
71656
  // Data accessors
71657
- var startLatAccessor = index$1(state.arcStartLat);
71658
- var startLngAccessor = index$1(state.arcStartLng);
71659
- var endLatAccessor = index$1(state.arcEndLat);
71660
- var endLngAccessor = index$1(state.arcEndLng);
71661
- var altitudeAccessor = index$1(state.arcAltitude);
71662
- var altitudeAutoScaleAccessor = index$1(state.arcAltitudeAutoScale);
71663
- var strokeAccessor = index$1(state.arcStroke);
71664
- var colorAccessor = index$1(state.arcColor);
71665
- var dashLengthAccessor = index$1(state.arcDashLength);
71666
- var dashGapAccessor = index$1(state.arcDashGap);
71667
- var dashInitialGapAccessor = index$1(state.arcDashInitialGap);
71668
- var dashAnimateTimeAccessor = index$1(state.arcDashAnimateTime);
71657
+ var startLatAccessor = index$2(state.arcStartLat);
71658
+ var startLngAccessor = index$2(state.arcStartLng);
71659
+ var endLatAccessor = index$2(state.arcEndLat);
71660
+ var endLngAccessor = index$2(state.arcEndLng);
71661
+ var altitudeAccessor = index$2(state.arcAltitude);
71662
+ var altitudeAutoScaleAccessor = index$2(state.arcAltitudeAutoScale);
71663
+ var strokeAccessor = index$2(state.arcStroke);
71664
+ var colorAccessor = index$2(state.arcColor);
71665
+ var dashLengthAccessor = index$2(state.arcDashLength);
71666
+ var dashGapAccessor = index$2(state.arcDashGap);
71667
+ var dashInitialGapAccessor = index$2(state.arcDashInitialGap);
71668
+ var dashAnimateTimeAccessor = index$2(state.arcDashAnimateTime);
71669
71669
  state.dataMapper.onUpdateObj(function (group, arc) {
71670
71670
  var stroke = strokeAccessor(arc);
71671
71671
  var useTube = stroke !== null && stroke !== undefined;
@@ -71762,7 +71762,7 @@ void main() {
71762
71762
  endLat = _ref4.endLat,
71763
71763
  endLng = _ref4.endLng;
71764
71764
  var getVec = function getVec(_ref5) {
71765
- var _ref6 = _slicedToArray$1(_ref5, 3),
71765
+ var _ref6 = _slicedToArray$2(_ref5, 3),
71766
71766
  lng = _ref6[0],
71767
71767
  lat = _ref6[1],
71768
71768
  alt = _ref6[2];
@@ -71785,7 +71785,7 @@ void main() {
71785
71785
  var _map = [0.25, 0.75].map(function (t) {
71786
71786
  return [].concat(_toConsumableArray$1(interpolate(t)), [altitude * 1.5]);
71787
71787
  }),
71788
- _map2 = _slicedToArray$1(_map, 2),
71788
+ _map2 = _slicedToArray$2(_map, 2),
71789
71789
  m1Pnt = _map2[0],
71790
71790
  m2Pnt = _map2[1];
71791
71791
  var curve = _construct$1(THREE$d.CubicBezierCurve3, _toConsumableArray$1([startPnt, m1Pnt, m2Pnt, endPnt].map(getVec)));
@@ -71878,7 +71878,7 @@ void main() {
71878
71878
 
71879
71879
  //
71880
71880
 
71881
- var HexBinLayerKapsule = index$2({
71881
+ var HexBinLayerKapsule = index$3({
71882
71882
  props: {
71883
71883
  hexBinPointsData: {
71884
71884
  "default": []
@@ -71944,20 +71944,20 @@ void main() {
71944
71944
  },
71945
71945
  update: function update(state, changedProps) {
71946
71946
  // Accessors
71947
- var latAccessor = index$1(state.hexBinPointLat);
71948
- var lngAccessor = index$1(state.hexBinPointLng);
71949
- var weightAccessor = index$1(state.hexBinPointWeight);
71950
- var altitudeAccessor = index$1(state.hexAltitude);
71951
- var topColorAccessor = index$1(state.hexTopColor);
71952
- var sideColorAccessor = index$1(state.hexSideColor);
71953
- var marginAccessor = index$1(state.hexMargin);
71954
- var byH3Idx = index(state.hexBinPointsData.map(function (d) {
71947
+ var latAccessor = index$2(state.hexBinPointLat);
71948
+ var lngAccessor = index$2(state.hexBinPointLng);
71949
+ var weightAccessor = index$2(state.hexBinPointWeight);
71950
+ var altitudeAccessor = index$2(state.hexAltitude);
71951
+ var topColorAccessor = index$2(state.hexTopColor);
71952
+ var sideColorAccessor = index$2(state.hexSideColor);
71953
+ var marginAccessor = index$2(state.hexMargin);
71954
+ var byH3Idx = index$1(state.hexBinPointsData.map(function (d) {
71955
71955
  return _objectSpread2(_objectSpread2({}, d), {}, {
71956
71956
  h3Idx: latLngToCell(latAccessor(d), lngAccessor(d), state.hexBinResolution)
71957
71957
  });
71958
71958
  }), 'h3Idx');
71959
71959
  var hexBins = Object.entries(byH3Idx).map(function (_ref3) {
71960
- var _ref4 = _slicedToArray$1(_ref3, 2),
71960
+ var _ref4 = _slicedToArray$2(_ref3, 2),
71961
71961
  h3Idx = _ref4[0],
71962
71962
  points = _ref4[1];
71963
71963
  return {
@@ -72043,15 +72043,15 @@ void main() {
72043
72043
  return st - (st - end) * rat;
72044
72044
  };
72045
72045
  var margin = Math.max(0, Math.min(1, +marginAccessor(d)));
72046
- var _obj$__hexCenter = _slicedToArray$1(obj.__hexCenter, 2),
72046
+ var _obj$__hexCenter = _slicedToArray$2(obj.__hexCenter, 2),
72047
72047
  clat = _obj$__hexCenter[0],
72048
72048
  clng = _obj$__hexCenter[1];
72049
72049
  var geoJson = margin === 0 ? obj.__hexGeoJson : obj.__hexGeoJson.map(function (_ref5) {
72050
- var _ref6 = _slicedToArray$1(_ref5, 2),
72050
+ var _ref6 = _slicedToArray$2(_ref5, 2),
72051
72051
  elng = _ref6[0],
72052
72052
  elat = _ref6[1];
72053
72053
  return [[elng, clng], [elat, clat]].map(function (_ref7) {
72054
- var _ref8 = _slicedToArray$1(_ref7, 2),
72054
+ var _ref8 = _slicedToArray$2(_ref7, 2),
72055
72055
  st = _ref8[0],
72056
72056
  end = _ref8[1];
72057
72057
  return relNum(st, end, margin);
@@ -72135,7 +72135,7 @@ void main() {
72135
72135
  return Math.exp(-sq(x / bw) / 2) / (bw * sqrt2PI);
72136
72136
  }
72137
72137
  var getGeoKDE = function getGeoKDE(_ref) {
72138
- var _ref2 = _slicedToArray$1(_ref, 2),
72138
+ var _ref2 = _slicedToArray$2(_ref, 2),
72139
72139
  lng = _ref2[0],
72140
72140
  lat = _ref2[1];
72141
72141
  var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
@@ -72212,7 +72212,7 @@ void main() {
72212
72212
  c.opacity = Math.cbrt(t);
72213
72213
  return c.formatRgb();
72214
72214
  };
72215
- var HeatmapsLayerKapsule = index$2({
72215
+ var HeatmapsLayerKapsule = index$3({
72216
72216
  props: {
72217
72217
  heatmapsData: {
72218
72218
  "default": []
@@ -72280,15 +72280,15 @@ void main() {
72280
72280
  },
72281
72281
  update: function update(state) {
72282
72282
  // Accessors
72283
- var pointsAccessor = index$1(state.heatmapPoints);
72284
- var latPntAccessor = index$1(state.heatmapPointLat);
72285
- var lngPntAccessor = index$1(state.heatmapPointLng);
72286
- var weightPntAccessor = index$1(state.heatmapPointWeight);
72287
- var bandwidthAccessor = index$1(state.heatmapBandwidth);
72288
- var colorFnAccessor = index$1(state.heatmapColorFn);
72289
- var saturationAccessor = index$1(state.heatmapColorSaturation);
72290
- var baseAltitudeAccessor = index$1(state.heatmapBaseAltitude);
72291
- var topAltitudeAccessor = index$1(state.heatmapTopAltitude);
72283
+ var pointsAccessor = index$2(state.heatmapPoints);
72284
+ var latPntAccessor = index$2(state.heatmapPointLat);
72285
+ var lngPntAccessor = index$2(state.heatmapPointLng);
72286
+ var weightPntAccessor = index$2(state.heatmapPointWeight);
72287
+ var bandwidthAccessor = index$2(state.heatmapBandwidth);
72288
+ var colorFnAccessor = index$2(state.heatmapColorFn);
72289
+ var saturationAccessor = index$2(state.heatmapColorSaturation);
72290
+ var baseAltitudeAccessor = index$2(state.heatmapBaseAltitude);
72291
+ var topAltitudeAccessor = index$2(state.heatmapTopAltitude);
72292
72292
  state.dataMapper.onUpdateObj(function (obj, d) {
72293
72293
  // Accessors
72294
72294
  var bandwidth = bandwidthAccessor(d);
@@ -72324,7 +72324,7 @@ void main() {
72324
72324
  // Get vertex polar coordinates
72325
72325
  var vertexCoords = bufferAttr2Array(obj.geometry.getAttribute('position'));
72326
72326
  var vertexGeoCoords = vertexCoords.map(function (_ref2) {
72327
- var _ref3 = _slicedToArray$1(_ref2, 3),
72327
+ var _ref3 = _slicedToArray$2(_ref2, 3),
72328
72328
  x = _ref3[0],
72329
72329
  y = _ref3[1],
72330
72330
  z = _ref3[2];
@@ -72341,7 +72341,7 @@ void main() {
72341
72341
  // Compute KDE
72342
72342
  var pntsOctree = new PointsOctree(pnts, bandwidth * BW_RADIUS_INFLUENCE);
72343
72343
  var kdeVals = vertexGeoCoords.map(function (vxCoords, idx) {
72344
- var _vertexCoords$idx = _slicedToArray$1(vertexCoords[idx], 3),
72344
+ var _vertexCoords$idx = _slicedToArray$2(vertexCoords[idx], 3),
72345
72345
  x = _vertexCoords$idx[0],
72346
72346
  y = _vertexCoords$idx[1],
72347
72347
  z = _vertexCoords$idx[2];
@@ -72421,7 +72421,7 @@ void main() {
72421
72421
 
72422
72422
  //
72423
72423
 
72424
- var PolygonsLayerKapsule = index$2({
72424
+ var PolygonsLayerKapsule = index$3({
72425
72425
  props: {
72426
72426
  polygonsData: {
72427
72427
  "default": []
@@ -72493,14 +72493,14 @@ void main() {
72493
72493
  },
72494
72494
  update: function update(state) {
72495
72495
  // Data accessors
72496
- var geoJsonAccessor = index$1(state.polygonGeoJsonGeometry);
72497
- var altitudeAccessor = index$1(state.polygonAltitude);
72498
- var capCurvatureResolutionAccessor = index$1(state.polygonCapCurvatureResolution);
72499
- var capColorAccessor = index$1(state.polygonCapColor);
72500
- var capMaterialAccessor = index$1(state.polygonCapMaterial);
72501
- var sideColorAccessor = index$1(state.polygonSideColor);
72502
- var sideMaterialAccessor = index$1(state.polygonSideMaterial);
72503
- var strokeColorAccessor = index$1(state.polygonStrokeColor);
72496
+ var geoJsonAccessor = index$2(state.polygonGeoJsonGeometry);
72497
+ var altitudeAccessor = index$2(state.polygonAltitude);
72498
+ var capCurvatureResolutionAccessor = index$2(state.polygonCapCurvatureResolution);
72499
+ var capColorAccessor = index$2(state.polygonCapColor);
72500
+ var capMaterialAccessor = index$2(state.polygonCapMaterial);
72501
+ var sideColorAccessor = index$2(state.polygonSideColor);
72502
+ var sideMaterialAccessor = index$2(state.polygonSideMaterial);
72503
+ var strokeColorAccessor = index$2(state.polygonStrokeColor);
72504
72504
  var singlePolygons = [];
72505
72505
  state.polygonsData.forEach(function (polygon) {
72506
72506
  var objAttrs = {
@@ -72541,7 +72541,7 @@ void main() {
72541
72541
  strokeColor = _ref2.strokeColor,
72542
72542
  altitude = _ref2.altitude,
72543
72543
  capCurvatureResolution = _ref2.capCurvatureResolution;
72544
- var _obj$children = _slicedToArray$1(obj.children, 2),
72544
+ var _obj$children = _slicedToArray$2(obj.children, 2),
72545
72545
  conicObj = _obj$children[0],
72546
72546
  strokeObj = _obj$children[1];
72547
72547
 
@@ -72624,7 +72624,7 @@ void main() {
72624
72624
  };
72625
72625
  };
72626
72626
  return Object.entries(attrs).every(function (_ref3) {
72627
- var _ref4 = _slicedToArray$1(_ref3, 2),
72627
+ var _ref4 = _slicedToArray$2(_ref3, 2),
72628
72628
  k = _ref4[0],
72629
72629
  v = _ref4[1];
72630
72630
  return obj.hasOwnProperty(k) && compFn(k)(obj[k], v);
@@ -72645,7 +72645,7 @@ void main() {
72645
72645
 
72646
72646
  //
72647
72647
 
72648
- var HexedPolygonsLayerKapsule = index$2({
72648
+ var HexedPolygonsLayerKapsule = index$3({
72649
72649
  props: {
72650
72650
  hexPolygonsData: {
72651
72651
  "default": []
@@ -72708,14 +72708,14 @@ void main() {
72708
72708
  },
72709
72709
  update: function update(state) {
72710
72710
  // Accessors
72711
- var geoJsonAccessor = index$1(state.hexPolygonGeoJsonGeometry);
72712
- var colorAccessor = index$1(state.hexPolygonColor);
72713
- var altitudeAccessor = index$1(state.hexPolygonAltitude);
72714
- var resolutionAccessor = index$1(state.hexPolygonResolution);
72715
- var marginAccessor = index$1(state.hexPolygonMargin);
72716
- var useDotsAccessor = index$1(state.hexPolygonUseDots);
72717
- var curvatureResolutionAccessor = index$1(state.hexPolygonCurvatureResolution);
72718
- var dotResolutionAccessor = index$1(state.hexPolygonDotResolution);
72711
+ var geoJsonAccessor = index$2(state.hexPolygonGeoJsonGeometry);
72712
+ var colorAccessor = index$2(state.hexPolygonColor);
72713
+ var altitudeAccessor = index$2(state.hexPolygonAltitude);
72714
+ var resolutionAccessor = index$2(state.hexPolygonResolution);
72715
+ var marginAccessor = index$2(state.hexPolygonMargin);
72716
+ var useDotsAccessor = index$2(state.hexPolygonUseDots);
72717
+ var curvatureResolutionAccessor = index$2(state.hexPolygonCurvatureResolution);
72718
+ var dotResolutionAccessor = index$2(state.hexPolygonDotResolution);
72719
72719
  state.dataMapper.onUpdateObj(function (obj, d) {
72720
72720
  var geoJson = geoJsonAccessor(d);
72721
72721
  var h3Res = resolutionAccessor(d);
@@ -72790,7 +72790,7 @@ void main() {
72790
72790
  curvatureResolution = _obj$__currentTargetD.curvatureResolution;
72791
72791
  obj.geometry && obj.geometry.dispose();
72792
72792
  obj.geometry = !hexBins.length ? new THREE$9.BufferGeometry() : (BufferGeometryUtils.mergeGeometries || BufferGeometryUtils.mergeBufferGeometries)(hexBins.map(function (h) {
72793
- var _h$hexCenter = _slicedToArray$1(h.hexCenter, 2),
72793
+ var _h$hexCenter = _slicedToArray$2(h.hexCenter, 2),
72794
72794
  clat = _h$hexCenter[0],
72795
72795
  clng = _h$hexCenter[1];
72796
72796
  if (useDots) {
@@ -72809,11 +72809,11 @@ void main() {
72809
72809
 
72810
72810
  // compute new geojson with relative margin
72811
72811
  var _geoJson = margin === 0 ? h.hexGeoJson : h.hexGeoJson.map(function (_ref2) {
72812
- var _ref3 = _slicedToArray$1(_ref2, 2),
72812
+ var _ref3 = _slicedToArray$2(_ref2, 2),
72813
72813
  elng = _ref3[0],
72814
72814
  elat = _ref3[1];
72815
72815
  return [[elng, clng], [elat, clat]].map(function (_ref4) {
72816
- var _ref5 = _slicedToArray$1(_ref4, 2),
72816
+ var _ref5 = _slicedToArray$2(_ref4, 2),
72817
72817
  st = _ref5[0],
72818
72818
  end = _ref5[1];
72819
72819
  return relNum(st, end, margin);
@@ -72857,7 +72857,7 @@ void main() {
72857
72857
  })));
72858
72858
  return function (k) {
72859
72859
  return k === 0 ? fromPnts : k === 1 ? toPnts : interpolator(k).map(function (_ref2) {
72860
- var _ref3 = _slicedToArray$1(_ref2, 3),
72860
+ var _ref3 = _slicedToArray$2(_ref2, 3),
72861
72861
  x = _ref3[0],
72862
72862
  y = _ref3[1],
72863
72863
  z = _ref3[2];
@@ -72880,7 +72880,7 @@ void main() {
72880
72880
 
72881
72881
  //
72882
72882
 
72883
- var PathsLayerKapsule = index$2({
72883
+ var PathsLayerKapsule = index$3({
72884
72884
  props: {
72885
72885
  pathsData: {
72886
72886
  "default": []
@@ -72979,7 +72979,7 @@ void main() {
72979
72979
  // Kick-off dash animations
72980
72980
  state.ticker.onTick.add(function (_, timeDelta) {
72981
72981
  state.dataMapper.entries().map(function (_ref2) {
72982
- var _ref3 = _slicedToArray$1(_ref2, 2),
72982
+ var _ref3 = _slicedToArray$2(_ref2, 2),
72983
72983
  obj = _ref3[1];
72984
72984
  return obj;
72985
72985
  }).filter(function (o) {
@@ -73002,16 +73002,16 @@ void main() {
73002
73002
  },
73003
73003
  update: function update(state) {
73004
73004
  // Data accessors
73005
- var pointsAccessor = index$1(state.pathPoints);
73006
- var pointLatAccessor = index$1(state.pathPointLat);
73007
- var pointLngAccessor = index$1(state.pathPointLng);
73008
- var pointAltAccessor = index$1(state.pathPointAlt);
73009
- var strokeAccessor = index$1(state.pathStroke);
73010
- var colorAccessor = index$1(state.pathColor);
73011
- var dashLengthAccessor = index$1(state.pathDashLength);
73012
- var dashGapAccessor = index$1(state.pathDashGap);
73013
- var dashInitialGapAccessor = index$1(state.pathDashInitialGap);
73014
- var dashAnimateTimeAccessor = index$1(state.pathDashAnimateTime);
73005
+ var pointsAccessor = index$2(state.pathPoints);
73006
+ var pointLatAccessor = index$2(state.pathPointLat);
73007
+ var pointLngAccessor = index$2(state.pathPointLng);
73008
+ var pointAltAccessor = index$2(state.pathPointAlt);
73009
+ var strokeAccessor = index$2(state.pathStroke);
73010
+ var colorAccessor = index$2(state.pathColor);
73011
+ var dashLengthAccessor = index$2(state.pathDashLength);
73012
+ var dashGapAccessor = index$2(state.pathDashGap);
73013
+ var dashInitialGapAccessor = index$2(state.pathDashInitialGap);
73014
+ var dashAnimateTimeAccessor = index$2(state.pathDashAnimateTime);
73015
73015
  state.dataMapper.onUpdateObj(function (group, path) {
73016
73016
  var stroke = strokeAccessor(path);
73017
73017
  var useFatLine = stroke !== null && stroke !== undefined;
@@ -73193,7 +73193,7 @@ void main() {
73193
73193
  return result;
73194
73194
  };
73195
73195
  var getVec = function getVec(_ref6) {
73196
- var _ref7 = _slicedToArray$1(_ref6, 3),
73196
+ var _ref7 = _slicedToArray$2(_ref6, 3),
73197
73197
  lat = _ref7[0],
73198
73198
  lng = _ref7[1],
73199
73199
  alt = _ref7[2];
@@ -73267,7 +73267,7 @@ void main() {
73267
73267
 
73268
73268
  //
73269
73269
 
73270
- var TilesLayerKapsule = index$2({
73270
+ var TilesLayerKapsule = index$3({
73271
73271
  props: {
73272
73272
  tilesData: {
73273
73273
  "default": []
@@ -73332,14 +73332,14 @@ void main() {
73332
73332
  },
73333
73333
  update: function update(state) {
73334
73334
  // Data accessors
73335
- var latAccessor = index$1(state.tileLat);
73336
- var lngAccessor = index$1(state.tileLng);
73337
- var altitudeAccessor = index$1(state.tileAltitude);
73338
- var widthAccessor = index$1(state.tileWidth);
73339
- var heightAccessor = index$1(state.tileHeight);
73340
- var useGlobeProjectionAccessor = index$1(state.tileUseGlobeProjection);
73341
- var materialAccessor = index$1(state.tileMaterial);
73342
- var curvatureResolutionAccessor = index$1(state.tileCurvatureResolution);
73335
+ var latAccessor = index$2(state.tileLat);
73336
+ var lngAccessor = index$2(state.tileLng);
73337
+ var altitudeAccessor = index$2(state.tileAltitude);
73338
+ var widthAccessor = index$2(state.tileWidth);
73339
+ var heightAccessor = index$2(state.tileHeight);
73340
+ var useGlobeProjectionAccessor = index$2(state.tileUseGlobeProjection);
73341
+ var materialAccessor = index$2(state.tileMaterial);
73342
+ var curvatureResolutionAccessor = index$2(state.tileCurvatureResolution);
73343
73343
  state.dataMapper.onUpdateObj(function (obj, d) {
73344
73344
  obj.material = materialAccessor(d); // set material
73345
73345
 
@@ -73411,7 +73411,7 @@ void main() {
73411
73411
 
73412
73412
  //
73413
73413
 
73414
- var LabelsLayerKapsule = index$2({
73414
+ var LabelsLayerKapsule = index$3({
73415
73415
  props: {
73416
73416
  labelsData: {
73417
73417
  "default": []
@@ -73501,23 +73501,23 @@ void main() {
73501
73501
  },
73502
73502
  update: function update(state) {
73503
73503
  // Data accessors
73504
- var latAccessor = index$1(state.labelLat);
73505
- var lngAccessor = index$1(state.labelLng);
73506
- var altitudeAccessor = index$1(state.labelAltitude);
73507
- var textAccessor = index$1(state.labelText);
73508
- var sizeAccessor = index$1(state.labelSize);
73509
- var rotationAccessor = index$1(state.labelRotation);
73510
- var colorAccessor = index$1(state.labelColor);
73511
- var includeDotAccessor = index$1(state.labelIncludeDot);
73512
- var dotRadiusAccessor = index$1(state.labelDotRadius);
73513
- var dotOrientationAccessor = index$1(state.labelDotOrientation);
73504
+ var latAccessor = index$2(state.labelLat);
73505
+ var lngAccessor = index$2(state.labelLng);
73506
+ var altitudeAccessor = index$2(state.labelAltitude);
73507
+ var textAccessor = index$2(state.labelText);
73508
+ var sizeAccessor = index$2(state.labelSize);
73509
+ var rotationAccessor = index$2(state.labelRotation);
73510
+ var colorAccessor = index$2(state.labelColor);
73511
+ var includeDotAccessor = index$2(state.labelIncludeDot);
73512
+ var dotRadiusAccessor = index$2(state.labelDotRadius);
73513
+ var dotOrientationAccessor = index$2(state.labelDotOrientation);
73514
73514
  var orientations = new Set(['right', 'top', 'bottom']);
73515
73515
  var pxPerDeg = 2 * Math.PI * GLOBE_RADIUS / 360;
73516
73516
  state.dataMapper.onUpdateObj(function (obj, d) {
73517
- var _obj$children = _slicedToArray$1(obj.children, 2),
73517
+ var _obj$children = _slicedToArray$2(obj.children, 2),
73518
73518
  dotObj = _obj$children[0],
73519
73519
  textObj = _obj$children[1];
73520
- var _textObj$children = _slicedToArray$1(textObj.children, 1),
73520
+ var _textObj$children = _slicedToArray$2(textObj.children, 1),
73521
73521
  bbObj = _textObj$children[0];
73522
73522
 
73523
73523
  // update color
@@ -73654,7 +73654,7 @@ void main() {
73654
73654
  Vector3: Vector3
73655
73655
  };
73656
73656
  var FrameTicker = _FrameTicker["default"] || _FrameTicker;
73657
- var RingsLayerKapsule = index$2({
73657
+ var RingsLayerKapsule = index$3({
73658
73658
  props: {
73659
73659
  ringsData: {
73660
73660
  "default": []
@@ -73730,17 +73730,17 @@ void main() {
73730
73730
  if (!state.ringsData.length) return;
73731
73731
 
73732
73732
  // Data accessors
73733
- var colorAccessor = index$1(state.ringColor);
73734
- var altitudeAccessor = index$1(state.ringAltitude);
73735
- var maxRadiusAccessor = index$1(state.ringMaxRadius);
73736
- var propagationSpeedAccessor = index$1(state.ringPropagationSpeed);
73737
- var repeatPeriodAccessor = index$1(state.ringRepeatPeriod);
73733
+ var colorAccessor = index$2(state.ringColor);
73734
+ var altitudeAccessor = index$2(state.ringAltitude);
73735
+ var maxRadiusAccessor = index$2(state.ringMaxRadius);
73736
+ var propagationSpeedAccessor = index$2(state.ringPropagationSpeed);
73737
+ var repeatPeriodAccessor = index$2(state.ringRepeatPeriod);
73738
73738
  state.dataMapper.entries().filter(function (_ref2) {
73739
- var _ref3 = _slicedToArray$1(_ref2, 2),
73739
+ var _ref3 = _slicedToArray$2(_ref2, 2),
73740
73740
  o = _ref3[1];
73741
73741
  return o;
73742
73742
  }).forEach(function (_ref4) {
73743
- var _ref5 = _slicedToArray$1(_ref4, 2),
73743
+ var _ref5 = _slicedToArray$2(_ref4, 2),
73744
73744
  d = _ref5[0],
73745
73745
  obj = _ref5[1];
73746
73746
  if ((obj.__nextRingTime || 0) <= time) {
@@ -73809,9 +73809,9 @@ void main() {
73809
73809
  },
73810
73810
  update: function update(state) {
73811
73811
  // Data accessors
73812
- var latAccessor = index$1(state.ringLat);
73813
- var lngAccessor = index$1(state.ringLng);
73814
- var altitudeAccessor = index$1(state.ringAltitude);
73812
+ var latAccessor = index$2(state.ringLat);
73813
+ var lngAccessor = index$2(state.ringLng);
73814
+ var altitudeAccessor = index$2(state.ringAltitude);
73815
73815
  var globeCenter = state.scene.localToWorld(new THREE$3.Vector3(0, 0, 0)); // translate from local to world coords
73816
73816
 
73817
73817
  state.dataMapper.onUpdateObj(function (obj, d) {
@@ -73833,7 +73833,7 @@ void main() {
73833
73833
 
73834
73834
  //
73835
73835
 
73836
- var HtmlElementsLayerKapsule = index$2({
73836
+ var HtmlElementsLayerKapsule = index$3({
73837
73837
  props: {
73838
73838
  htmlElementsData: {
73839
73839
  "default": []
@@ -73866,7 +73866,7 @@ void main() {
73866
73866
  if (!state.dataMapper) return;
73867
73867
  // default to all if no obj specified
73868
73868
  var objs = obj ? [obj] : state.dataMapper.entries().map(function (_ref) {
73869
- var _ref2 = _slicedToArray$1(_ref, 2),
73869
+ var _ref2 = _slicedToArray$2(_ref, 2),
73870
73870
  o = _ref2[1];
73871
73871
  return o;
73872
73872
  }).filter(function (d) {
@@ -73889,7 +73889,7 @@ void main() {
73889
73889
  state.dataMapper = new ThreeDigest(threeObj, {
73890
73890
  objBindAttr: '__threeObjHtml'
73891
73891
  }).onCreateObj(function (d) {
73892
- var elem = index$1(state.htmlElement)(d);
73892
+ var elem = index$2(state.htmlElement)(d);
73893
73893
  var obj = new THREE$2.CSS2DObject(elem);
73894
73894
  obj.__globeObjType = 'html'; // Add object type
73895
73895
 
@@ -73899,9 +73899,9 @@ void main() {
73899
73899
  update: function update(state, changedProps) {
73900
73900
  var _this = this;
73901
73901
  // Data accessors
73902
- var latAccessor = index$1(state.htmlLat);
73903
- var lngAccessor = index$1(state.htmlLng);
73904
- var altitudeAccessor = index$1(state.htmlAltitude);
73902
+ var latAccessor = index$2(state.htmlLat);
73903
+ var lngAccessor = index$2(state.htmlLng);
73904
+ var altitudeAccessor = index$2(state.htmlAltitude);
73905
73905
 
73906
73906
  // objs need to be recreated if this prop has changed
73907
73907
  changedProps.hasOwnProperty('htmlElement') && state.dataMapper.clear();
@@ -73941,7 +73941,7 @@ void main() {
73941
73941
 
73942
73942
  //
73943
73943
 
73944
- var ObjectsLayerKapsule = index$2({
73944
+ var ObjectsLayerKapsule = index$3({
73945
73945
  props: {
73946
73946
  objectsData: {
73947
73947
  "default": []
@@ -73979,7 +73979,7 @@ void main() {
73979
73979
  state.dataMapper = new ThreeDigest(threeObj, {
73980
73980
  objBindAttr: '__threeObjObject'
73981
73981
  }).onCreateObj(function (d) {
73982
- var obj = index$1(state.objectThreeObject)(d);
73982
+ var obj = index$2(state.objectThreeObject)(d);
73983
73983
  if (state.objectThreeObject === obj) {
73984
73984
  // clone object if it's a shared object among all points
73985
73985
  obj = obj.clone();
@@ -73993,11 +73993,11 @@ void main() {
73993
73993
  },
73994
73994
  update: function update(state, changedProps) {
73995
73995
  // Data accessors
73996
- var latAccessor = index$1(state.objectLat);
73997
- var lngAccessor = index$1(state.objectLng);
73998
- var altitudeAccessor = index$1(state.objectAltitude);
73999
- var parallelAccessor = index$1(state.objectFacesSurface);
74000
- var rotationAccessor = index$1(state.objectRotation);
73996
+ var latAccessor = index$2(state.objectLat);
73997
+ var lngAccessor = index$2(state.objectLng);
73998
+ var altitudeAccessor = index$2(state.objectAltitude);
73999
+ var parallelAccessor = index$2(state.objectFacesSurface);
74000
+ var rotationAccessor = index$2(state.objectRotation);
74001
74001
 
74002
74002
  // objs need to be recreated if this prop has changed
74003
74003
  changedProps.hasOwnProperty('objectThreeObject') && state.dataMapper.clear();
@@ -74016,7 +74016,7 @@ void main() {
74016
74016
 
74017
74017
  //
74018
74018
 
74019
- var CustomLayerKapsule = index$2({
74019
+ var CustomLayerKapsule = index$3({
74020
74020
  props: {
74021
74021
  customLayerData: {
74022
74022
  "default": []
@@ -74035,7 +74035,7 @@ void main() {
74035
74035
  state.dataMapper = new ThreeDigest(threeObj, {
74036
74036
  objBindAttr: '__threeObjCustom'
74037
74037
  }).onCreateObj(function (d) {
74038
- var obj = index$1(state.customThreeObject)(d, GLOBE_RADIUS);
74038
+ var obj = index$2(state.customThreeObject)(d, GLOBE_RADIUS);
74039
74039
  if (obj) {
74040
74040
  if (state.customThreeObject === obj) {
74041
74041
  // clone object if it's a shared object among all points
@@ -74051,7 +74051,7 @@ void main() {
74051
74051
  emptyObject(state.scene);
74052
74052
  } // Clear the existing objects to create all new, if there's no update method (brute-force)
74053
74053
 
74054
- var customObjectUpdateAccessor = index$1(state.customThreeObjectUpdate);
74054
+ var customObjectUpdateAccessor = index$2(state.customThreeObjectUpdate);
74055
74055
 
74056
74056
  // objs need to be recreated if this prop has changed
74057
74057
  changedProps.hasOwnProperty('customThreeObject') && state.dataMapper.clear();
@@ -74138,7 +74138,7 @@ void main() {
74138
74138
 
74139
74139
  //
74140
74140
 
74141
- var Globe = index$2({
74141
+ var Globe = index$3({
74142
74142
  props: _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({
74143
74143
  onGlobeReady: {
74144
74144
  triggerUpdate: false
@@ -80337,16 +80337,16 @@ void main() {
80337
80337
  * @param {Node?} [elseNode=null] - The node that is evaluate when the condition ends up `false`.
80338
80338
  * @returns {ConditionalNode}
80339
80339
  */
80340
- const select = /*@__PURE__*/ nodeProxy( ConditionalNode );
80340
+ const select$1 = /*@__PURE__*/ nodeProxy( ConditionalNode );
80341
80341
 
80342
- addMethodChaining( 'select', select );
80342
+ addMethodChaining( 'select', select$1 );
80343
80343
 
80344
80344
  //
80345
80345
 
80346
80346
  const cond = ( ...params ) => { // @deprecated, r168
80347
80347
 
80348
80348
  console.warn( 'TSL.ConditionalNode: cond() has been renamed to select().' );
80349
- return select( ...params );
80349
+ return select$1( ...params );
80350
80350
 
80351
80351
  };
80352
80352
 
@@ -82442,7 +82442,7 @@ void main() {
82442
82442
  * @param {ConditionalNode?} conditional - An optional conditional node. It allows to decide whether the discard should be executed or not.
82443
82443
  * @return {Node} The `discard` expression.
82444
82444
  */
82445
- const Discard = ( conditional ) => ( conditional ? select( conditional, expression( 'discard' ) ) : expression( 'discard' ) ).append();
82445
+ const Discard = ( conditional ) => ( conditional ? select$1( conditional, expression( 'discard' ) ) : expression( 'discard' ) ).append();
82446
82446
 
82447
82447
  addMethodChaining( 'discard', Discard );
82448
82448
 
@@ -92258,19 +92258,19 @@ void main() {
92258
92258
 
92259
92259
  const r2 = roughness.pow2();
92260
92260
 
92261
- const a = select(
92261
+ const a = select$1(
92262
92262
  roughness.lessThan( 0.25 ),
92263
92263
  float( -339.2 ).mul( r2 ).add( float( 161.4 ).mul( roughness ) ).sub( 25.9 ),
92264
92264
  float( -8.48 ).mul( r2 ).add( float( 14.3 ).mul( roughness ) ).sub( 9.95 )
92265
92265
  );
92266
92266
 
92267
- const b = select(
92267
+ const b = select$1(
92268
92268
  roughness.lessThan( 0.25 ),
92269
92269
  float( 44.0 ).mul( r2 ).sub( float( 23.7 ).mul( roughness ) ).add( 3.26 ),
92270
92270
  float( 1.97 ).mul( r2 ).sub( float( 3.27 ).mul( roughness ) ).add( 0.72 )
92271
92271
  );
92272
92272
 
92273
- const DG = select( roughness.lessThan( 0.25 ), 0.0, float( 0.1 ).mul( roughness ).sub( 0.025 ) ).add( a.mul( dotNV ).add( b ).exp() );
92273
+ const DG = select$1( roughness.lessThan( 0.25 ), 0.0, float( 0.1 ).mul( roughness ).sub( 0.025 ) ).add( a.mul( dotNV ).add( b ).exp() );
92274
92274
 
92275
92275
  return DG.mul( 1.0 / Math.PI ).saturate();
92276
92276
 
@@ -92762,11 +92762,11 @@ void main() {
92762
92762
 
92763
92763
  If( absDirection.x.greaterThan( absDirection.y ), () => {
92764
92764
 
92765
- face.assign( select( direction.x.greaterThan( 0.0 ), 0.0, 3.0 ) );
92765
+ face.assign( select$1( direction.x.greaterThan( 0.0 ), 0.0, 3.0 ) );
92766
92766
 
92767
92767
  } ).Else( () => {
92768
92768
 
92769
- face.assign( select( direction.y.greaterThan( 0.0 ), 1.0, 4.0 ) );
92769
+ face.assign( select$1( direction.y.greaterThan( 0.0 ), 1.0, 4.0 ) );
92770
92770
 
92771
92771
  } );
92772
92772
 
@@ -92774,11 +92774,11 @@ void main() {
92774
92774
 
92775
92775
  If( absDirection.z.greaterThan( absDirection.y ), () => {
92776
92776
 
92777
- face.assign( select( direction.z.greaterThan( 0.0 ), 2.0, 5.0 ) );
92777
+ face.assign( select$1( direction.z.greaterThan( 0.0 ), 2.0, 5.0 ) );
92778
92778
 
92779
92779
  } ).Else( () => {
92780
92780
 
92781
- face.assign( select( direction.y.greaterThan( 0.0 ), 1.0, 4.0 ) );
92781
+ face.assign( select$1( direction.y.greaterThan( 0.0 ), 1.0, 4.0 ) );
92782
92782
 
92783
92783
  } );
92784
92784
 
@@ -92985,7 +92985,7 @@ void main() {
92985
92985
 
92986
92986
  const blur = /*@__PURE__*/ Fn( ( { n, latitudinal, poleAxis, outputDirection, weights, samples, dTheta, mipInt, envMap, CUBEUV_TEXEL_WIDTH, CUBEUV_TEXEL_HEIGHT, CUBEUV_MAX_MIP } ) => {
92987
92987
 
92988
- const axis = vec3( select( latitudinal, poleAxis, cross( poleAxis, outputDirection ) ) ).toVar();
92988
+ const axis = vec3( select$1( latitudinal, poleAxis, cross( poleAxis, outputDirection ) ) ).toVar();
92989
92989
 
92990
92990
  If( all( axis.equals( vec3( 0.0 ) ) ), () => {
92991
92991
 
@@ -99280,7 +99280,7 @@ void main() {
99280
99280
  If( boolNode, method ) {
99281
99281
 
99282
99282
  const methodNode = new ShaderNode( method );
99283
- this._currentCond = select( boolNode, methodNode );
99283
+ this._currentCond = select$1( boolNode, methodNode );
99284
99284
 
99285
99285
  return this.add( this._currentCond );
99286
99286
 
@@ -99296,7 +99296,7 @@ void main() {
99296
99296
  ElseIf( boolNode, method ) {
99297
99297
 
99298
99298
  const methodNode = new ShaderNode( method );
99299
- const ifNode = select( boolNode, methodNode );
99299
+ const ifNode = select$1( boolNode, methodNode );
99300
99300
 
99301
99301
  this._currentCond.elseNode = ifNode;
99302
99302
  this._currentCond = ifNode;
@@ -100449,7 +100449,7 @@ void main() {
100449
100449
  color = color.mul( exposure );
100450
100450
 
100451
100451
  const x = min$1( color.r, min$1( color.g, color.b ) );
100452
- const offset = select( x.lessThan( 0.08 ), x.sub( mul( 6.25, x.mul( x ) ) ), 0.04 );
100452
+ const offset = select$1( x.lessThan( 0.08 ), x.sub( mul( 6.25, x.mul( x ) ) ), 0.04 );
100453
100453
 
100454
100454
  color.subAssign( offset );
100455
100455
 
@@ -132654,6 +132654,1083 @@ var<${access}> ${name} : ${structName};`;
132654
132654
  // prettier-ignore
132655
132655
  curry /* ::<number | string, string, string> */(transparentize);
132656
132656
 
132657
+ var xhtml = "http://www.w3.org/1999/xhtml";
132658
+
132659
+ var namespaces = {
132660
+ svg: "http://www.w3.org/2000/svg",
132661
+ xhtml: xhtml,
132662
+ xlink: "http://www.w3.org/1999/xlink",
132663
+ xml: "http://www.w3.org/XML/1998/namespace",
132664
+ xmlns: "http://www.w3.org/2000/xmlns/"
132665
+ };
132666
+
132667
+ function namespace(name) {
132668
+ var prefix = name += "", i = prefix.indexOf(":");
132669
+ if (i >= 0 && (prefix = name.slice(0, i)) !== "xmlns") name = name.slice(i + 1);
132670
+ return namespaces.hasOwnProperty(prefix) ? {space: namespaces[prefix], local: name} : name; // eslint-disable-line no-prototype-builtins
132671
+ }
132672
+
132673
+ function creatorInherit(name) {
132674
+ return function() {
132675
+ var document = this.ownerDocument,
132676
+ uri = this.namespaceURI;
132677
+ return uri === xhtml && document.documentElement.namespaceURI === xhtml
132678
+ ? document.createElement(name)
132679
+ : document.createElementNS(uri, name);
132680
+ };
132681
+ }
132682
+
132683
+ function creatorFixed(fullname) {
132684
+ return function() {
132685
+ return this.ownerDocument.createElementNS(fullname.space, fullname.local);
132686
+ };
132687
+ }
132688
+
132689
+ function creator(name) {
132690
+ var fullname = namespace(name);
132691
+ return (fullname.local
132692
+ ? creatorFixed
132693
+ : creatorInherit)(fullname);
132694
+ }
132695
+
132696
+ function none() {}
132697
+
132698
+ function selector(selector) {
132699
+ return selector == null ? none : function() {
132700
+ return this.querySelector(selector);
132701
+ };
132702
+ }
132703
+
132704
+ function selection_select(select) {
132705
+ if (typeof select !== "function") select = selector(select);
132706
+
132707
+ for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {
132708
+ for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {
132709
+ if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {
132710
+ if ("__data__" in node) subnode.__data__ = node.__data__;
132711
+ subgroup[i] = subnode;
132712
+ }
132713
+ }
132714
+ }
132715
+
132716
+ return new Selection(subgroups, this._parents);
132717
+ }
132718
+
132719
+ // Given something array like (or null), returns something that is strictly an
132720
+ // array. This is used to ensure that array-like objects passed to d3.selectAll
132721
+ // or selection.selectAll are converted into proper arrays when creating a
132722
+ // selection; we don’t ever want to create a selection backed by a live
132723
+ // HTMLCollection or NodeList. However, note that selection.selectAll will use a
132724
+ // static NodeList as a group, since it safely derived from querySelectorAll.
132725
+ function array(x) {
132726
+ return x == null ? [] : Array.isArray(x) ? x : Array.from(x);
132727
+ }
132728
+
132729
+ function empty() {
132730
+ return [];
132731
+ }
132732
+
132733
+ function selectorAll(selector) {
132734
+ return selector == null ? empty : function() {
132735
+ return this.querySelectorAll(selector);
132736
+ };
132737
+ }
132738
+
132739
+ function arrayAll(select) {
132740
+ return function() {
132741
+ return array(select.apply(this, arguments));
132742
+ };
132743
+ }
132744
+
132745
+ function selection_selectAll(select) {
132746
+ if (typeof select === "function") select = arrayAll(select);
132747
+ else select = selectorAll(select);
132748
+
132749
+ for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {
132750
+ for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {
132751
+ if (node = group[i]) {
132752
+ subgroups.push(select.call(node, node.__data__, i, group));
132753
+ parents.push(node);
132754
+ }
132755
+ }
132756
+ }
132757
+
132758
+ return new Selection(subgroups, parents);
132759
+ }
132760
+
132761
+ function matcher(selector) {
132762
+ return function() {
132763
+ return this.matches(selector);
132764
+ };
132765
+ }
132766
+
132767
+ function childMatcher(selector) {
132768
+ return function(node) {
132769
+ return node.matches(selector);
132770
+ };
132771
+ }
132772
+
132773
+ var find = Array.prototype.find;
132774
+
132775
+ function childFind(match) {
132776
+ return function() {
132777
+ return find.call(this.children, match);
132778
+ };
132779
+ }
132780
+
132781
+ function childFirst() {
132782
+ return this.firstElementChild;
132783
+ }
132784
+
132785
+ function selection_selectChild(match) {
132786
+ return this.select(match == null ? childFirst
132787
+ : childFind(typeof match === "function" ? match : childMatcher(match)));
132788
+ }
132789
+
132790
+ var filter = Array.prototype.filter;
132791
+
132792
+ function children() {
132793
+ return Array.from(this.children);
132794
+ }
132795
+
132796
+ function childrenFilter(match) {
132797
+ return function() {
132798
+ return filter.call(this.children, match);
132799
+ };
132800
+ }
132801
+
132802
+ function selection_selectChildren(match) {
132803
+ return this.selectAll(match == null ? children
132804
+ : childrenFilter(typeof match === "function" ? match : childMatcher(match)));
132805
+ }
132806
+
132807
+ function selection_filter(match) {
132808
+ if (typeof match !== "function") match = matcher(match);
132809
+
132810
+ for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {
132811
+ for (var group = groups[j], n = group.length, subgroup = subgroups[j] = [], node, i = 0; i < n; ++i) {
132812
+ if ((node = group[i]) && match.call(node, node.__data__, i, group)) {
132813
+ subgroup.push(node);
132814
+ }
132815
+ }
132816
+ }
132817
+
132818
+ return new Selection(subgroups, this._parents);
132819
+ }
132820
+
132821
+ function sparse(update) {
132822
+ return new Array(update.length);
132823
+ }
132824
+
132825
+ function selection_enter() {
132826
+ return new Selection(this._enter || this._groups.map(sparse), this._parents);
132827
+ }
132828
+
132829
+ function EnterNode(parent, datum) {
132830
+ this.ownerDocument = parent.ownerDocument;
132831
+ this.namespaceURI = parent.namespaceURI;
132832
+ this._next = null;
132833
+ this._parent = parent;
132834
+ this.__data__ = datum;
132835
+ }
132836
+
132837
+ EnterNode.prototype = {
132838
+ constructor: EnterNode,
132839
+ appendChild: function(child) { return this._parent.insertBefore(child, this._next); },
132840
+ insertBefore: function(child, next) { return this._parent.insertBefore(child, next); },
132841
+ querySelector: function(selector) { return this._parent.querySelector(selector); },
132842
+ querySelectorAll: function(selector) { return this._parent.querySelectorAll(selector); }
132843
+ };
132844
+
132845
+ function constant(x) {
132846
+ return function() {
132847
+ return x;
132848
+ };
132849
+ }
132850
+
132851
+ function bindIndex(parent, group, enter, update, exit, data) {
132852
+ var i = 0,
132853
+ node,
132854
+ groupLength = group.length,
132855
+ dataLength = data.length;
132856
+
132857
+ // Put any non-null nodes that fit into update.
132858
+ // Put any null nodes into enter.
132859
+ // Put any remaining data into enter.
132860
+ for (; i < dataLength; ++i) {
132861
+ if (node = group[i]) {
132862
+ node.__data__ = data[i];
132863
+ update[i] = node;
132864
+ } else {
132865
+ enter[i] = new EnterNode(parent, data[i]);
132866
+ }
132867
+ }
132868
+
132869
+ // Put any non-null nodes that don’t fit into exit.
132870
+ for (; i < groupLength; ++i) {
132871
+ if (node = group[i]) {
132872
+ exit[i] = node;
132873
+ }
132874
+ }
132875
+ }
132876
+
132877
+ function bindKey(parent, group, enter, update, exit, data, key) {
132878
+ var i,
132879
+ node,
132880
+ nodeByKeyValue = new Map,
132881
+ groupLength = group.length,
132882
+ dataLength = data.length,
132883
+ keyValues = new Array(groupLength),
132884
+ keyValue;
132885
+
132886
+ // Compute the key for each node.
132887
+ // If multiple nodes have the same key, the duplicates are added to exit.
132888
+ for (i = 0; i < groupLength; ++i) {
132889
+ if (node = group[i]) {
132890
+ keyValues[i] = keyValue = key.call(node, node.__data__, i, group) + "";
132891
+ if (nodeByKeyValue.has(keyValue)) {
132892
+ exit[i] = node;
132893
+ } else {
132894
+ nodeByKeyValue.set(keyValue, node);
132895
+ }
132896
+ }
132897
+ }
132898
+
132899
+ // Compute the key for each datum.
132900
+ // If there a node associated with this key, join and add it to update.
132901
+ // If there is not (or the key is a duplicate), add it to enter.
132902
+ for (i = 0; i < dataLength; ++i) {
132903
+ keyValue = key.call(parent, data[i], i, data) + "";
132904
+ if (node = nodeByKeyValue.get(keyValue)) {
132905
+ update[i] = node;
132906
+ node.__data__ = data[i];
132907
+ nodeByKeyValue.delete(keyValue);
132908
+ } else {
132909
+ enter[i] = new EnterNode(parent, data[i]);
132910
+ }
132911
+ }
132912
+
132913
+ // Add any remaining nodes that were not bound to data to exit.
132914
+ for (i = 0; i < groupLength; ++i) {
132915
+ if ((node = group[i]) && (nodeByKeyValue.get(keyValues[i]) === node)) {
132916
+ exit[i] = node;
132917
+ }
132918
+ }
132919
+ }
132920
+
132921
+ function datum(node) {
132922
+ return node.__data__;
132923
+ }
132924
+
132925
+ function selection_data(value, key) {
132926
+ if (!arguments.length) return Array.from(this, datum);
132927
+
132928
+ var bind = key ? bindKey : bindIndex,
132929
+ parents = this._parents,
132930
+ groups = this._groups;
132931
+
132932
+ if (typeof value !== "function") value = constant(value);
132933
+
132934
+ for (var m = groups.length, update = new Array(m), enter = new Array(m), exit = new Array(m), j = 0; j < m; ++j) {
132935
+ var parent = parents[j],
132936
+ group = groups[j],
132937
+ groupLength = group.length,
132938
+ data = arraylike(value.call(parent, parent && parent.__data__, j, parents)),
132939
+ dataLength = data.length,
132940
+ enterGroup = enter[j] = new Array(dataLength),
132941
+ updateGroup = update[j] = new Array(dataLength),
132942
+ exitGroup = exit[j] = new Array(groupLength);
132943
+
132944
+ bind(parent, group, enterGroup, updateGroup, exitGroup, data, key);
132945
+
132946
+ // Now connect the enter nodes to their following update node, such that
132947
+ // appendChild can insert the materialized enter node before this node,
132948
+ // rather than at the end of the parent node.
132949
+ for (var i0 = 0, i1 = 0, previous, next; i0 < dataLength; ++i0) {
132950
+ if (previous = enterGroup[i0]) {
132951
+ if (i0 >= i1) i1 = i0 + 1;
132952
+ while (!(next = updateGroup[i1]) && ++i1 < dataLength);
132953
+ previous._next = next || null;
132954
+ }
132955
+ }
132956
+ }
132957
+
132958
+ update = new Selection(update, parents);
132959
+ update._enter = enter;
132960
+ update._exit = exit;
132961
+ return update;
132962
+ }
132963
+
132964
+ // Given some data, this returns an array-like view of it: an object that
132965
+ // exposes a length property and allows numeric indexing. Note that unlike
132966
+ // selectAll, this isn’t worried about “live” collections because the resulting
132967
+ // array will only be used briefly while data is being bound. (It is possible to
132968
+ // cause the data to change while iterating by using a key function, but please
132969
+ // don’t; we’d rather avoid a gratuitous copy.)
132970
+ function arraylike(data) {
132971
+ return typeof data === "object" && "length" in data
132972
+ ? data // Array, TypedArray, NodeList, array-like
132973
+ : Array.from(data); // Map, Set, iterable, string, or anything else
132974
+ }
132975
+
132976
+ function selection_exit() {
132977
+ return new Selection(this._exit || this._groups.map(sparse), this._parents);
132978
+ }
132979
+
132980
+ function selection_join(onenter, onupdate, onexit) {
132981
+ var enter = this.enter(), update = this, exit = this.exit();
132982
+ if (typeof onenter === "function") {
132983
+ enter = onenter(enter);
132984
+ if (enter) enter = enter.selection();
132985
+ } else {
132986
+ enter = enter.append(onenter + "");
132987
+ }
132988
+ if (onupdate != null) {
132989
+ update = onupdate(update);
132990
+ if (update) update = update.selection();
132991
+ }
132992
+ if (onexit == null) exit.remove(); else onexit(exit);
132993
+ return enter && update ? enter.merge(update).order() : update;
132994
+ }
132995
+
132996
+ function selection_merge(context) {
132997
+ var selection = context.selection ? context.selection() : context;
132998
+
132999
+ for (var groups0 = this._groups, groups1 = selection._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {
133000
+ for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {
133001
+ if (node = group0[i] || group1[i]) {
133002
+ merge[i] = node;
133003
+ }
133004
+ }
133005
+ }
133006
+
133007
+ for (; j < m0; ++j) {
133008
+ merges[j] = groups0[j];
133009
+ }
133010
+
133011
+ return new Selection(merges, this._parents);
133012
+ }
133013
+
133014
+ function selection_order() {
133015
+
133016
+ for (var groups = this._groups, j = -1, m = groups.length; ++j < m;) {
133017
+ for (var group = groups[j], i = group.length - 1, next = group[i], node; --i >= 0;) {
133018
+ if (node = group[i]) {
133019
+ if (next && node.compareDocumentPosition(next) ^ 4) next.parentNode.insertBefore(node, next);
133020
+ next = node;
133021
+ }
133022
+ }
133023
+ }
133024
+
133025
+ return this;
133026
+ }
133027
+
133028
+ function selection_sort(compare) {
133029
+ if (!compare) compare = ascending;
133030
+
133031
+ function compareNode(a, b) {
133032
+ return a && b ? compare(a.__data__, b.__data__) : !a - !b;
133033
+ }
133034
+
133035
+ for (var groups = this._groups, m = groups.length, sortgroups = new Array(m), j = 0; j < m; ++j) {
133036
+ for (var group = groups[j], n = group.length, sortgroup = sortgroups[j] = new Array(n), node, i = 0; i < n; ++i) {
133037
+ if (node = group[i]) {
133038
+ sortgroup[i] = node;
133039
+ }
133040
+ }
133041
+ sortgroup.sort(compareNode);
133042
+ }
133043
+
133044
+ return new Selection(sortgroups, this._parents).order();
133045
+ }
133046
+
133047
+ function ascending(a, b) {
133048
+ return a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;
133049
+ }
133050
+
133051
+ function selection_call() {
133052
+ var callback = arguments[0];
133053
+ arguments[0] = this;
133054
+ callback.apply(null, arguments);
133055
+ return this;
133056
+ }
133057
+
133058
+ function selection_nodes() {
133059
+ return Array.from(this);
133060
+ }
133061
+
133062
+ function selection_node() {
133063
+
133064
+ for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {
133065
+ for (var group = groups[j], i = 0, n = group.length; i < n; ++i) {
133066
+ var node = group[i];
133067
+ if (node) return node;
133068
+ }
133069
+ }
133070
+
133071
+ return null;
133072
+ }
133073
+
133074
+ function selection_size() {
133075
+ let size = 0;
133076
+ for (const node of this) ++size; // eslint-disable-line no-unused-vars
133077
+ return size;
133078
+ }
133079
+
133080
+ function selection_empty() {
133081
+ return !this.node();
133082
+ }
133083
+
133084
+ function selection_each(callback) {
133085
+
133086
+ for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {
133087
+ for (var group = groups[j], i = 0, n = group.length, node; i < n; ++i) {
133088
+ if (node = group[i]) callback.call(node, node.__data__, i, group);
133089
+ }
133090
+ }
133091
+
133092
+ return this;
133093
+ }
133094
+
133095
+ function attrRemove(name) {
133096
+ return function() {
133097
+ this.removeAttribute(name);
133098
+ };
133099
+ }
133100
+
133101
+ function attrRemoveNS(fullname) {
133102
+ return function() {
133103
+ this.removeAttributeNS(fullname.space, fullname.local);
133104
+ };
133105
+ }
133106
+
133107
+ function attrConstant(name, value) {
133108
+ return function() {
133109
+ this.setAttribute(name, value);
133110
+ };
133111
+ }
133112
+
133113
+ function attrConstantNS(fullname, value) {
133114
+ return function() {
133115
+ this.setAttributeNS(fullname.space, fullname.local, value);
133116
+ };
133117
+ }
133118
+
133119
+ function attrFunction(name, value) {
133120
+ return function() {
133121
+ var v = value.apply(this, arguments);
133122
+ if (v == null) this.removeAttribute(name);
133123
+ else this.setAttribute(name, v);
133124
+ };
133125
+ }
133126
+
133127
+ function attrFunctionNS(fullname, value) {
133128
+ return function() {
133129
+ var v = value.apply(this, arguments);
133130
+ if (v == null) this.removeAttributeNS(fullname.space, fullname.local);
133131
+ else this.setAttributeNS(fullname.space, fullname.local, v);
133132
+ };
133133
+ }
133134
+
133135
+ function selection_attr(name, value) {
133136
+ var fullname = namespace(name);
133137
+
133138
+ if (arguments.length < 2) {
133139
+ var node = this.node();
133140
+ return fullname.local
133141
+ ? node.getAttributeNS(fullname.space, fullname.local)
133142
+ : node.getAttribute(fullname);
133143
+ }
133144
+
133145
+ return this.each((value == null
133146
+ ? (fullname.local ? attrRemoveNS : attrRemove) : (typeof value === "function"
133147
+ ? (fullname.local ? attrFunctionNS : attrFunction)
133148
+ : (fullname.local ? attrConstantNS : attrConstant)))(fullname, value));
133149
+ }
133150
+
133151
+ function defaultView(node) {
133152
+ return (node.ownerDocument && node.ownerDocument.defaultView) // node is a Node
133153
+ || (node.document && node) // node is a Window
133154
+ || node.defaultView; // node is a Document
133155
+ }
133156
+
133157
+ function styleRemove(name) {
133158
+ return function() {
133159
+ this.style.removeProperty(name);
133160
+ };
133161
+ }
133162
+
133163
+ function styleConstant(name, value, priority) {
133164
+ return function() {
133165
+ this.style.setProperty(name, value, priority);
133166
+ };
133167
+ }
133168
+
133169
+ function styleFunction(name, value, priority) {
133170
+ return function() {
133171
+ var v = value.apply(this, arguments);
133172
+ if (v == null) this.style.removeProperty(name);
133173
+ else this.style.setProperty(name, v, priority);
133174
+ };
133175
+ }
133176
+
133177
+ function selection_style(name, value, priority) {
133178
+ return arguments.length > 1
133179
+ ? this.each((value == null
133180
+ ? styleRemove : typeof value === "function"
133181
+ ? styleFunction
133182
+ : styleConstant)(name, value, priority == null ? "" : priority))
133183
+ : styleValue(this.node(), name);
133184
+ }
133185
+
133186
+ function styleValue(node, name) {
133187
+ return node.style.getPropertyValue(name)
133188
+ || defaultView(node).getComputedStyle(node, null).getPropertyValue(name);
133189
+ }
133190
+
133191
+ function propertyRemove(name) {
133192
+ return function() {
133193
+ delete this[name];
133194
+ };
133195
+ }
133196
+
133197
+ function propertyConstant(name, value) {
133198
+ return function() {
133199
+ this[name] = value;
133200
+ };
133201
+ }
133202
+
133203
+ function propertyFunction(name, value) {
133204
+ return function() {
133205
+ var v = value.apply(this, arguments);
133206
+ if (v == null) delete this[name];
133207
+ else this[name] = v;
133208
+ };
133209
+ }
133210
+
133211
+ function selection_property(name, value) {
133212
+ return arguments.length > 1
133213
+ ? this.each((value == null
133214
+ ? propertyRemove : typeof value === "function"
133215
+ ? propertyFunction
133216
+ : propertyConstant)(name, value))
133217
+ : this.node()[name];
133218
+ }
133219
+
133220
+ function classArray(string) {
133221
+ return string.trim().split(/^|\s+/);
133222
+ }
133223
+
133224
+ function classList(node) {
133225
+ return node.classList || new ClassList(node);
133226
+ }
133227
+
133228
+ function ClassList(node) {
133229
+ this._node = node;
133230
+ this._names = classArray(node.getAttribute("class") || "");
133231
+ }
133232
+
133233
+ ClassList.prototype = {
133234
+ add: function(name) {
133235
+ var i = this._names.indexOf(name);
133236
+ if (i < 0) {
133237
+ this._names.push(name);
133238
+ this._node.setAttribute("class", this._names.join(" "));
133239
+ }
133240
+ },
133241
+ remove: function(name) {
133242
+ var i = this._names.indexOf(name);
133243
+ if (i >= 0) {
133244
+ this._names.splice(i, 1);
133245
+ this._node.setAttribute("class", this._names.join(" "));
133246
+ }
133247
+ },
133248
+ contains: function(name) {
133249
+ return this._names.indexOf(name) >= 0;
133250
+ }
133251
+ };
133252
+
133253
+ function classedAdd(node, names) {
133254
+ var list = classList(node), i = -1, n = names.length;
133255
+ while (++i < n) list.add(names[i]);
133256
+ }
133257
+
133258
+ function classedRemove(node, names) {
133259
+ var list = classList(node), i = -1, n = names.length;
133260
+ while (++i < n) list.remove(names[i]);
133261
+ }
133262
+
133263
+ function classedTrue(names) {
133264
+ return function() {
133265
+ classedAdd(this, names);
133266
+ };
133267
+ }
133268
+
133269
+ function classedFalse(names) {
133270
+ return function() {
133271
+ classedRemove(this, names);
133272
+ };
133273
+ }
133274
+
133275
+ function classedFunction(names, value) {
133276
+ return function() {
133277
+ (value.apply(this, arguments) ? classedAdd : classedRemove)(this, names);
133278
+ };
133279
+ }
133280
+
133281
+ function selection_classed(name, value) {
133282
+ var names = classArray(name + "");
133283
+
133284
+ if (arguments.length < 2) {
133285
+ var list = classList(this.node()), i = -1, n = names.length;
133286
+ while (++i < n) if (!list.contains(names[i])) return false;
133287
+ return true;
133288
+ }
133289
+
133290
+ return this.each((typeof value === "function"
133291
+ ? classedFunction : value
133292
+ ? classedTrue
133293
+ : classedFalse)(names, value));
133294
+ }
133295
+
133296
+ function textRemove() {
133297
+ this.textContent = "";
133298
+ }
133299
+
133300
+ function textConstant(value) {
133301
+ return function() {
133302
+ this.textContent = value;
133303
+ };
133304
+ }
133305
+
133306
+ function textFunction(value) {
133307
+ return function() {
133308
+ var v = value.apply(this, arguments);
133309
+ this.textContent = v == null ? "" : v;
133310
+ };
133311
+ }
133312
+
133313
+ function selection_text(value) {
133314
+ return arguments.length
133315
+ ? this.each(value == null
133316
+ ? textRemove : (typeof value === "function"
133317
+ ? textFunction
133318
+ : textConstant)(value))
133319
+ : this.node().textContent;
133320
+ }
133321
+
133322
+ function htmlRemove() {
133323
+ this.innerHTML = "";
133324
+ }
133325
+
133326
+ function htmlConstant(value) {
133327
+ return function() {
133328
+ this.innerHTML = value;
133329
+ };
133330
+ }
133331
+
133332
+ function htmlFunction(value) {
133333
+ return function() {
133334
+ var v = value.apply(this, arguments);
133335
+ this.innerHTML = v == null ? "" : v;
133336
+ };
133337
+ }
133338
+
133339
+ function selection_html(value) {
133340
+ return arguments.length
133341
+ ? this.each(value == null
133342
+ ? htmlRemove : (typeof value === "function"
133343
+ ? htmlFunction
133344
+ : htmlConstant)(value))
133345
+ : this.node().innerHTML;
133346
+ }
133347
+
133348
+ function raise() {
133349
+ if (this.nextSibling) this.parentNode.appendChild(this);
133350
+ }
133351
+
133352
+ function selection_raise() {
133353
+ return this.each(raise);
133354
+ }
133355
+
133356
+ function lower() {
133357
+ if (this.previousSibling) this.parentNode.insertBefore(this, this.parentNode.firstChild);
133358
+ }
133359
+
133360
+ function selection_lower() {
133361
+ return this.each(lower);
133362
+ }
133363
+
133364
+ function selection_append(name) {
133365
+ var create = typeof name === "function" ? name : creator(name);
133366
+ return this.select(function() {
133367
+ return this.appendChild(create.apply(this, arguments));
133368
+ });
133369
+ }
133370
+
133371
+ function constantNull() {
133372
+ return null;
133373
+ }
133374
+
133375
+ function selection_insert(name, before) {
133376
+ var create = typeof name === "function" ? name : creator(name),
133377
+ select = before == null ? constantNull : typeof before === "function" ? before : selector(before);
133378
+ return this.select(function() {
133379
+ return this.insertBefore(create.apply(this, arguments), select.apply(this, arguments) || null);
133380
+ });
133381
+ }
133382
+
133383
+ function remove() {
133384
+ var parent = this.parentNode;
133385
+ if (parent) parent.removeChild(this);
133386
+ }
133387
+
133388
+ function selection_remove() {
133389
+ return this.each(remove);
133390
+ }
133391
+
133392
+ function selection_cloneShallow() {
133393
+ var clone = this.cloneNode(false), parent = this.parentNode;
133394
+ return parent ? parent.insertBefore(clone, this.nextSibling) : clone;
133395
+ }
133396
+
133397
+ function selection_cloneDeep() {
133398
+ var clone = this.cloneNode(true), parent = this.parentNode;
133399
+ return parent ? parent.insertBefore(clone, this.nextSibling) : clone;
133400
+ }
133401
+
133402
+ function selection_clone(deep) {
133403
+ return this.select(deep ? selection_cloneDeep : selection_cloneShallow);
133404
+ }
133405
+
133406
+ function selection_datum(value) {
133407
+ return arguments.length
133408
+ ? this.property("__data__", value)
133409
+ : this.node().__data__;
133410
+ }
133411
+
133412
+ function contextListener(listener) {
133413
+ return function(event) {
133414
+ listener.call(this, event, this.__data__);
133415
+ };
133416
+ }
133417
+
133418
+ function parseTypenames(typenames) {
133419
+ return typenames.trim().split(/^|\s+/).map(function(t) {
133420
+ var name = "", i = t.indexOf(".");
133421
+ if (i >= 0) name = t.slice(i + 1), t = t.slice(0, i);
133422
+ return {type: t, name: name};
133423
+ });
133424
+ }
133425
+
133426
+ function onRemove(typename) {
133427
+ return function() {
133428
+ var on = this.__on;
133429
+ if (!on) return;
133430
+ for (var j = 0, i = -1, m = on.length, o; j < m; ++j) {
133431
+ if (o = on[j], (!typename.type || o.type === typename.type) && o.name === typename.name) {
133432
+ this.removeEventListener(o.type, o.listener, o.options);
133433
+ } else {
133434
+ on[++i] = o;
133435
+ }
133436
+ }
133437
+ if (++i) on.length = i;
133438
+ else delete this.__on;
133439
+ };
133440
+ }
133441
+
133442
+ function onAdd(typename, value, options) {
133443
+ return function() {
133444
+ var on = this.__on, o, listener = contextListener(value);
133445
+ if (on) for (var j = 0, m = on.length; j < m; ++j) {
133446
+ if ((o = on[j]).type === typename.type && o.name === typename.name) {
133447
+ this.removeEventListener(o.type, o.listener, o.options);
133448
+ this.addEventListener(o.type, o.listener = listener, o.options = options);
133449
+ o.value = value;
133450
+ return;
133451
+ }
133452
+ }
133453
+ this.addEventListener(typename.type, listener, options);
133454
+ o = {type: typename.type, name: typename.name, value: value, listener: listener, options: options};
133455
+ if (!on) this.__on = [o];
133456
+ else on.push(o);
133457
+ };
133458
+ }
133459
+
133460
+ function selection_on(typename, value, options) {
133461
+ var typenames = parseTypenames(typename + ""), i, n = typenames.length, t;
133462
+
133463
+ if (arguments.length < 2) {
133464
+ var on = this.node().__on;
133465
+ if (on) for (var j = 0, m = on.length, o; j < m; ++j) {
133466
+ for (i = 0, o = on[j]; i < n; ++i) {
133467
+ if ((t = typenames[i]).type === o.type && t.name === o.name) {
133468
+ return o.value;
133469
+ }
133470
+ }
133471
+ }
133472
+ return;
133473
+ }
133474
+
133475
+ on = value ? onAdd : onRemove;
133476
+ for (i = 0; i < n; ++i) this.each(on(typenames[i], value, options));
133477
+ return this;
133478
+ }
133479
+
133480
+ function dispatchEvent(node, type, params) {
133481
+ var window = defaultView(node),
133482
+ event = window.CustomEvent;
133483
+
133484
+ if (typeof event === "function") {
133485
+ event = new event(type, params);
133486
+ } else {
133487
+ event = window.document.createEvent("Event");
133488
+ if (params) event.initEvent(type, params.bubbles, params.cancelable), event.detail = params.detail;
133489
+ else event.initEvent(type, false, false);
133490
+ }
133491
+
133492
+ node.dispatchEvent(event);
133493
+ }
133494
+
133495
+ function dispatchConstant(type, params) {
133496
+ return function() {
133497
+ return dispatchEvent(this, type, params);
133498
+ };
133499
+ }
133500
+
133501
+ function dispatchFunction(type, params) {
133502
+ return function() {
133503
+ return dispatchEvent(this, type, params.apply(this, arguments));
133504
+ };
133505
+ }
133506
+
133507
+ function selection_dispatch(type, params) {
133508
+ return this.each((typeof params === "function"
133509
+ ? dispatchFunction
133510
+ : dispatchConstant)(type, params));
133511
+ }
133512
+
133513
+ function* selection_iterator() {
133514
+ for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {
133515
+ for (var group = groups[j], i = 0, n = group.length, node; i < n; ++i) {
133516
+ if (node = group[i]) yield node;
133517
+ }
133518
+ }
133519
+ }
133520
+
133521
+ var root = [null];
133522
+
133523
+ function Selection(groups, parents) {
133524
+ this._groups = groups;
133525
+ this._parents = parents;
133526
+ }
133527
+
133528
+ function selection_selection() {
133529
+ return this;
133530
+ }
133531
+
133532
+ Selection.prototype = {
133533
+ constructor: Selection,
133534
+ select: selection_select,
133535
+ selectAll: selection_selectAll,
133536
+ selectChild: selection_selectChild,
133537
+ selectChildren: selection_selectChildren,
133538
+ filter: selection_filter,
133539
+ data: selection_data,
133540
+ enter: selection_enter,
133541
+ exit: selection_exit,
133542
+ join: selection_join,
133543
+ merge: selection_merge,
133544
+ selection: selection_selection,
133545
+ order: selection_order,
133546
+ sort: selection_sort,
133547
+ call: selection_call,
133548
+ nodes: selection_nodes,
133549
+ node: selection_node,
133550
+ size: selection_size,
133551
+ empty: selection_empty,
133552
+ each: selection_each,
133553
+ attr: selection_attr,
133554
+ style: selection_style,
133555
+ property: selection_property,
133556
+ classed: selection_classed,
133557
+ text: selection_text,
133558
+ html: selection_html,
133559
+ raise: selection_raise,
133560
+ lower: selection_lower,
133561
+ append: selection_append,
133562
+ insert: selection_insert,
133563
+ remove: selection_remove,
133564
+ clone: selection_clone,
133565
+ datum: selection_datum,
133566
+ on: selection_on,
133567
+ dispatch: selection_dispatch,
133568
+ [Symbol.iterator]: selection_iterator
133569
+ };
133570
+
133571
+ function select(selector) {
133572
+ return typeof selector === "string"
133573
+ ? new Selection([[document.querySelector(selector)]], [document.documentElement])
133574
+ : new Selection([[selector]], root);
133575
+ }
133576
+
133577
+ function sourceEvent(event) {
133578
+ let sourceEvent;
133579
+ while (sourceEvent = event.sourceEvent) event = sourceEvent;
133580
+ return event;
133581
+ }
133582
+
133583
+ function pointer(event, node) {
133584
+ event = sourceEvent(event);
133585
+ if (node === undefined) node = event.currentTarget;
133586
+ if (node) {
133587
+ var svg = node.ownerSVGElement || node;
133588
+ if (svg.createSVGPoint) {
133589
+ var point = svg.createSVGPoint();
133590
+ point.x = event.clientX, point.y = event.clientY;
133591
+ point = point.matrixTransform(node.getScreenCTM().inverse());
133592
+ return [point.x, point.y];
133593
+ }
133594
+ if (node.getBoundingClientRect) {
133595
+ var rect = node.getBoundingClientRect();
133596
+ return [event.clientX - rect.left - node.clientLeft, event.clientY - rect.top - node.clientTop];
133597
+ }
133598
+ }
133599
+ return [event.pageX, event.pageY];
133600
+ }
133601
+
133602
+ function _arrayLikeToArray$1(r, a) {
133603
+ (null == a || a > r.length) && (a = r.length);
133604
+ for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
133605
+ return n;
133606
+ }
133607
+ function _arrayWithHoles$1(r) {
133608
+ if (Array.isArray(r)) return r;
133609
+ }
133610
+ function _iterableToArrayLimit$1(r, l) {
133611
+ var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
133612
+ if (null != t) {
133613
+ var e,
133614
+ n,
133615
+ i,
133616
+ u,
133617
+ a = [],
133618
+ f = true,
133619
+ o = false;
133620
+ try {
133621
+ if (i = (t = t.call(r)).next, 0 === l) ; else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
133622
+ } catch (r) {
133623
+ o = true, n = r;
133624
+ } finally {
133625
+ try {
133626
+ if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return;
133627
+ } finally {
133628
+ if (o) throw n;
133629
+ }
133630
+ }
133631
+ return a;
133632
+ }
133633
+ }
133634
+ function _nonIterableRest$1() {
133635
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
133636
+ }
133637
+ function _slicedToArray$1(r, e) {
133638
+ return _arrayWithHoles$1(r) || _iterableToArrayLimit$1(r, e) || _unsupportedIterableToArray$1(r, e) || _nonIterableRest$1();
133639
+ }
133640
+ function _typeof(o) {
133641
+ "@babel/helpers - typeof";
133642
+
133643
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
133644
+ return typeof o;
133645
+ } : function (o) {
133646
+ return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
133647
+ }, _typeof(o);
133648
+ }
133649
+ function _unsupportedIterableToArray$1(r, a) {
133650
+ if (r) {
133651
+ if ("string" == typeof r) return _arrayLikeToArray$1(r, a);
133652
+ var t = {}.toString.call(r).slice(8, -1);
133653
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$1(r, a) : undefined;
133654
+ }
133655
+ }
133656
+
133657
+ function styleInject$1(css, ref) {
133658
+ if (ref === undefined) ref = {};
133659
+ var insertAt = ref.insertAt;
133660
+ if (typeof document === 'undefined') {
133661
+ return;
133662
+ }
133663
+ var head = document.head || document.getElementsByTagName('head')[0];
133664
+ var style = document.createElement('style');
133665
+ style.type = 'text/css';
133666
+ if (insertAt === 'top') {
133667
+ if (head.firstChild) {
133668
+ head.insertBefore(style, head.firstChild);
133669
+ } else {
133670
+ head.appendChild(style);
133671
+ }
133672
+ } else {
133673
+ head.appendChild(style);
133674
+ }
133675
+ if (style.styleSheet) {
133676
+ style.styleSheet.cssText = css;
133677
+ } else {
133678
+ style.appendChild(document.createTextNode(css));
133679
+ }
133680
+ }
133681
+
133682
+ var css_248z$1 = ".float-tooltip-kap {\n position: absolute;\n width: max-content; /* prevent shrinking near right edge */\n padding: 3px 5px;\n border-radius: 3px;\n font: 12px sans-serif;\n color: #eee;\n background: rgba(0,0,0,0.6);\n pointer-events: none;\n}\n";
133683
+ styleInject$1(css_248z$1);
133684
+
133685
+ var index = index$3({
133686
+ props: {
133687
+ content: {
133688
+ "default": false
133689
+ }
133690
+ },
133691
+ init: function init(domNode, state) {
133692
+ var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
133693
+ _ref$style = _ref.style,
133694
+ style = _ref$style === undefined ? {} : _ref$style;
133695
+ var isD3Selection = !!domNode && _typeof(domNode) === 'object' && !!domNode.node && typeof domNode.node === 'function';
133696
+ var el = select(isD3Selection ? domNode.node() : domNode);
133697
+ state.tooltipEl = el.append('div').attr('class', 'float-tooltip-kap');
133698
+ Object.entries(style).forEach(function (_ref2) {
133699
+ var _ref3 = _slicedToArray$1(_ref2, 2),
133700
+ k = _ref3[0],
133701
+ v = _ref3[1];
133702
+ return state.tooltipEl.style(k, v);
133703
+ });
133704
+ state.tooltipEl // start off-screen
133705
+ .style('left', '-10000px').style('display', 'none');
133706
+ state.mouseInside = false;
133707
+ el.on('mousemove.tooltip', function (ev) {
133708
+ state.mouseInside = true;
133709
+ var mousePos = pointer(ev);
133710
+ var domNode = el.node();
133711
+ var canvasWidth = domNode.offsetWidth;
133712
+ var canvasHeight = domNode.offsetHeight;
133713
+ state.tooltipEl.style('left', mousePos[0] + 'px').style('top', mousePos[1] + 'px')
133714
+ // adjust horizontal position to not exceed canvas boundaries
133715
+ .style('transform', "translate(-".concat(mousePos[0] / canvasWidth * 100, "%, ").concat(
133716
+ // flip to above if near bottom
133717
+ canvasHeight > 130 && canvasHeight - mousePos[1] < 100 ? 'calc(-100% - 6px)' : '21px', ")"));
133718
+ });
133719
+ el.on('mouseover.tooltip', function () {
133720
+ state.mouseInside = true;
133721
+ state.content && state.tooltipEl.style('display', 'inline');
133722
+ });
133723
+ el.on('mouseout.tooltip', function () {
133724
+ state.mouseInside = false;
133725
+ state.tooltipEl.style('display', 'none');
133726
+ });
133727
+ },
133728
+ update: function update(state) {
133729
+ state.tooltipEl.style('display', !!state.content && state.mouseInside ? 'inline' : 'none');
133730
+ state.tooltipEl.html(state.content || '');
133731
+ }
133732
+ });
133733
+
132657
133734
  function styleInject(css, ref) {
132658
133735
  if (ref === undefined) ref = {};
132659
133736
  var insertAt = ref.insertAt;
@@ -132679,7 +133756,7 @@ var<${access}> ${name} : ${structName};`;
132679
133756
  }
132680
133757
  }
132681
133758
 
132682
- var css_248z = ".scene-nav-info {\n bottom: 5px;\n width: 100%;\n text-align: center;\n color: slategrey;\n opacity: 0.7;\n font-size: 10px;\n}\n\n.scene-tooltip {\n top: 0;\n color: lavender;\n font-size: 15px;\n background: rgba(0,0,0,0.5);\n padding: 2px 5px;\n border-radius: 3px;\n}\n\n.scene-nav-info, .scene-tooltip {\n position: absolute;\n font-family: sans-serif;\n pointer-events: none;\n user-select: none;\n}\n\n.scene-container canvas:focus {\n outline: none;\n}";
133759
+ var css_248z = ".scene-nav-info {\n position: absolute;\n bottom: 5px;\n width: 100%;\n text-align: center;\n color: slategrey;\n opacity: 0.7;\n font-size: 10px;\n font-family: sans-serif;\n pointer-events: none;\n user-select: none;\n}\n\n.scene-container canvas:focus {\n outline: none;\n}";
132683
133760
  styleInject(css_248z);
132684
133761
 
132685
133762
  function _arrayLikeToArray(r, a) {
@@ -132784,7 +133861,7 @@ var<${access}> ${name} : ${structName};`;
132784
133861
  Spherical: Spherical,
132785
133862
  Clock: Clock
132786
133863
  };
132787
- var threeRenderObjects = index$2({
133864
+ var threeRenderObjects = index$3({
132788
133865
  props: {
132789
133866
  width: {
132790
133867
  "default": window.innerWidth,
@@ -132820,10 +133897,7 @@ var<${access}> ${name} : ${structName};`;
132820
133897
  onChange: function onChange(_, state) {
132821
133898
  // Reset hover state
132822
133899
  state.hoverObj = null;
132823
- if (state.toolTipElem) {
132824
- state.toolTipElem.style.display = 'none';
132825
- state.toolTipElem.innerHTML = '';
132826
- }
133900
+ state.tooltip && state.tooltip.content(null);
132827
133901
  },
132828
133902
  triggerUpdate: false
132829
133903
  },
@@ -132893,7 +133967,7 @@ var<${access}> ${name} : ${structName};`;
132893
133967
  }
132894
133968
  if (topObject !== state.hoverObj) {
132895
133969
  state.onHover(topObject, state.hoverObj);
132896
- state.toolTipElem.style.display = (state.toolTipElem.innerHTML = topObject ? index$1(state.tooltipContent)(topObject) || '' : '') ? 'initial' : 'none';
133970
+ state.tooltip.content(topObject ? index$2(state.tooltipContent)(topObject) || null : null);
132897
133971
  state.hoverObj = topObject;
132898
133972
  }
132899
133973
  }
@@ -133097,9 +134171,7 @@ var<${access}> ${name} : ${structName};`;
133097
134171
  state.navInfo.style.display = state.showNavInfo ? null : 'none';
133098
134172
 
133099
134173
  // Setup tooltip
133100
- state.toolTipElem = document.createElement('div');
133101
- state.toolTipElem.classList.add('scene-tooltip');
133102
- state.container.appendChild(state.toolTipElem);
134174
+ state.tooltip = new index(state.container);
133103
134175
 
133104
134176
  // Capture pointer coords on move or touchstart
133105
134177
  state.pointerPos = new three.Vector2();
@@ -133121,14 +134193,6 @@ var<${access}> ${name} : ${structName};`;
133121
134193
  var offset = getOffset(state.container);
133122
134194
  state.pointerPos.x = ev.pageX - offset.left;
133123
134195
  state.pointerPos.y = ev.pageY - offset.top;
133124
-
133125
- // Move tooltip
133126
- state.toolTipElem.style.top = "".concat(state.pointerPos.y, "px");
133127
- state.toolTipElem.style.left = "".concat(state.pointerPos.x, "px");
133128
- // adjust horizontal position to not exceed canvas boundaries
133129
- state.toolTipElem.style.transform = "translate(-".concat(state.pointerPos.x / state.width * 100, "%, ").concat(
133130
- // flip to above if near bottom
133131
- state.height - state.pointerPos.y < 100 ? 'calc(-100% - 8px)' : '21px', ")");
133132
134196
  }
133133
134197
  function getOffset(el) {
133134
134198
  var rect = el.getBoundingClientRect(),
@@ -133363,7 +134427,7 @@ var<${access}> ${name} : ${structName};`;
133363
134427
 
133364
134428
  //
133365
134429
 
133366
- var globe = index$2({
134430
+ var globe = index$3({
133367
134431
  props: _objectSpread2$1(_objectSpread2$1({
133368
134432
  onZoom: {
133369
134433
  triggerUpdate: false
@@ -133784,7 +134848,7 @@ var<${access}> ${name} : ${structName};`;
133784
134848
  };
133785
134849
  var globeObj = getGlobeObj(obj);
133786
134850
  var objType = globeObj && globeObj.__globeObjType;
133787
- return globeObj && objType && objAccessors.hasOwnProperty(objType) && dataAccessors.hasOwnProperty(objType) ? index$1(objAccessors[objType])(dataAccessors[objType](globeObj.__data)) || '' : '';
134851
+ return globeObj && objType && objAccessors.hasOwnProperty(objType) && dataAccessors.hasOwnProperty(objType) ? index$2(objAccessors[objType])(dataAccessors[objType](globeObj.__data)) || '' : '';
133788
134852
  }).onHover(function (obj) {
133789
134853
  // Update tooltip and trigger onHover events
133790
134854
  var hoverObjFns = {