react-globe.gl 2.23.1 → 2.23.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.
@@ -1,11 +1,39 @@
1
- // Version 2.23.1 react-globe.gl - https://github.com/vasturiano/react-globe.gl
1
+ // Version 2.23.3 react-globe.gl - https://github.com/vasturiano/react-globe.gl
2
2
  (function (global, factory) {
3
3
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react')) :
4
4
  typeof define === 'function' && define.amd ? define(['react'], factory) :
5
5
  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Globe = factory(global.React));
6
6
  })(this, (function (React) { 'use strict';
7
7
 
8
+ function _iterableToArrayLimit$8(arr, i) {
9
+ var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
10
+ if (null != _i) {
11
+ var _s,
12
+ _e,
13
+ _x,
14
+ _r,
15
+ _arr = [],
16
+ _n = !0,
17
+ _d = !1;
18
+ try {
19
+ if (_x = (_i = _i.call(arr)).next, 0 === i) {
20
+ if (Object(_i) !== _i) return;
21
+ _n = !1;
22
+ } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
23
+ } catch (err) {
24
+ _d = !0, _e = err;
25
+ } finally {
26
+ try {
27
+ if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;
28
+ } finally {
29
+ if (_d) throw _e;
30
+ }
31
+ }
32
+ return _arr;
33
+ }
34
+ }
8
35
  function _defineProperty$4(obj, key, value) {
36
+ key = _toPropertyKey$8(key);
9
37
  if (key in obj) {
10
38
  Object.defineProperty(obj, key, {
11
39
  value: value,
@@ -16,60 +44,23 @@
16
44
  } else {
17
45
  obj[key] = value;
18
46
  }
19
-
20
47
  return obj;
21
48
  }
22
-
23
49
  function _slicedToArray$8(arr, i) {
24
50
  return _arrayWithHoles$8(arr) || _iterableToArrayLimit$8(arr, i) || _unsupportedIterableToArray$9(arr, i) || _nonIterableRest$8();
25
51
  }
26
-
27
52
  function _toConsumableArray$7(arr) {
28
53
  return _arrayWithoutHoles$7(arr) || _iterableToArray$7(arr) || _unsupportedIterableToArray$9(arr) || _nonIterableSpread$7();
29
54
  }
30
-
31
55
  function _arrayWithoutHoles$7(arr) {
32
56
  if (Array.isArray(arr)) return _arrayLikeToArray$9(arr);
33
57
  }
34
-
35
58
  function _arrayWithHoles$8(arr) {
36
59
  if (Array.isArray(arr)) return arr;
37
60
  }
38
-
39
61
  function _iterableToArray$7(iter) {
40
62
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
41
63
  }
42
-
43
- function _iterableToArrayLimit$8(arr, i) {
44
- var _i = arr && (typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]);
45
-
46
- if (_i == null) return;
47
- var _arr = [];
48
- var _n = true;
49
- var _d = false;
50
-
51
- var _s, _e;
52
-
53
- try {
54
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
55
- _arr.push(_s.value);
56
-
57
- if (i && _arr.length === i) break;
58
- }
59
- } catch (err) {
60
- _d = true;
61
- _e = err;
62
- } finally {
63
- try {
64
- if (!_n && _i["return"] != null) _i["return"]();
65
- } finally {
66
- if (_d) throw _e;
67
- }
68
- }
69
-
70
- return _arr;
71
- }
72
-
73
64
  function _unsupportedIterableToArray$9(o, minLen) {
74
65
  if (!o) return;
75
66
  if (typeof o === "string") return _arrayLikeToArray$9(o, minLen);
@@ -78,35 +69,41 @@
78
69
  if (n === "Map" || n === "Set") return Array.from(o);
79
70
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$9(o, minLen);
80
71
  }
81
-
82
72
  function _arrayLikeToArray$9(arr, len) {
83
73
  if (len == null || len > arr.length) len = arr.length;
84
-
85
74
  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
86
-
87
75
  return arr2;
88
76
  }
89
-
90
77
  function _nonIterableSpread$7() {
91
78
  throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
92
79
  }
93
-
94
80
  function _nonIterableRest$8() {
95
81
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
96
82
  }
97
-
83
+ function _toPrimitive$8(input, hint) {
84
+ if (typeof input !== "object" || input === null) return input;
85
+ var prim = input[Symbol.toPrimitive];
86
+ if (prim !== undefined) {
87
+ var res = prim.call(input, hint || "default");
88
+ if (typeof res !== "object") return res;
89
+ throw new TypeError("@@toPrimitive must return a primitive value.");
90
+ }
91
+ return (hint === "string" ? String : Number)(input);
92
+ }
93
+ function _toPropertyKey$8(arg) {
94
+ var key = _toPrimitive$8(arg, "string");
95
+ return typeof key === "symbol" ? key : String(key);
96
+ }
98
97
  var omit = function omit(obj, keys) {
99
98
  var keySet = new Set(keys);
100
99
  return Object.assign.apply(Object, [{}].concat(_toConsumableArray$7(Object.entries(obj).filter(function (_ref2) {
101
100
  var _ref3 = _slicedToArray$8(_ref2, 1),
102
- key = _ref3[0];
103
-
101
+ key = _ref3[0];
104
102
  return !keySet.has(key);
105
103
  }).map(function (_ref4) {
106
104
  var _ref5 = _slicedToArray$8(_ref4, 2),
107
- key = _ref5[0],
108
- val = _ref5[1];
109
-
105
+ key = _ref5[0],
106
+ val = _ref5[1];
110
107
  return _defineProperty$4({}, key, val);
111
108
  }))));
112
109
  };
@@ -126,6 +123,33 @@
126
123
  }, {})
127
124
  };
128
125
 
126
+ function _iterableToArrayLimit$7(arr, i) {
127
+ var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
128
+ if (null != _i) {
129
+ var _s,
130
+ _e,
131
+ _x,
132
+ _r,
133
+ _arr = [],
134
+ _n = !0,
135
+ _d = !1;
136
+ try {
137
+ if (_x = (_i = _i.call(arr)).next, 0 === i) {
138
+ if (Object(_i) !== _i) return;
139
+ _n = !1;
140
+ } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
141
+ } catch (err) {
142
+ _d = !0, _e = err;
143
+ } finally {
144
+ try {
145
+ if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;
146
+ } finally {
147
+ if (_d) throw _e;
148
+ }
149
+ }
150
+ return _arr;
151
+ }
152
+ }
129
153
  function _typeof$1(obj) {
130
154
  "@babel/helpers - typeof";
131
155
 
@@ -150,30 +174,6 @@
150
174
  function _iterableToArray$6(iter) {
151
175
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
152
176
  }
153
- function _iterableToArrayLimit$7(arr, i) {
154
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
155
- if (_i == null) return;
156
- var _arr = [];
157
- var _n = true;
158
- var _d = false;
159
- var _s, _e;
160
- try {
161
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
162
- _arr.push(_s.value);
163
- if (i && _arr.length === i) break;
164
- }
165
- } catch (err) {
166
- _d = true;
167
- _e = err;
168
- } finally {
169
- try {
170
- if (!_n && _i["return"] != null) _i["return"]();
171
- } finally {
172
- if (_d) throw _e;
173
- }
174
- }
175
- return _arr;
176
- }
177
177
  function _unsupportedIterableToArray$8(o, minLen) {
178
178
  if (!o) return;
179
179
  if (typeof o === "string") return _arrayLikeToArray$8(o, minLen);
@@ -230,13 +230,13 @@
230
230
  }));
231
231
  return kapsuleComponent(configOptions);
232
232
  }, []);
233
- React.useLayoutEffect(function () {
233
+ useEffectOnce(function () {
234
234
  comp(nodeMapper(domEl.current)); // mount kapsule synchronously on this element ref, optionally mapped into an object that the kapsule understands
235
- }, []);
236
- useEffectStrictNoop(function () {
235
+ }, React.useLayoutEffect);
236
+ useEffectOnce(function () {
237
237
  // invoke destructor on unmount, if it exists
238
238
  return comp._destructor instanceof Function ? comp._destructor : undefined;
239
- }, []);
239
+ });
240
240
 
241
241
  // Call a component method
242
242
  var _call = React.useCallback(function (method) {
@@ -274,15 +274,37 @@
274
274
 
275
275
  //
276
276
 
277
- function useEffectStrictNoop(effect, deps) {
278
- var unmountTimeout = React.useRef();
279
- React.useEffect(function () {
280
- clearTimeout(unmountTimeout.current);
281
- var unmountFn = effect();
282
- if (unmountFn) return function () {
283
- return unmountTimeout.current = setTimeout(unmountFn);
277
+ // Handle R18 strict mode double mount at init
278
+ function useEffectOnce(effect) {
279
+ var useEffectFn = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : React.useEffect;
280
+ var destroyFunc = React.useRef();
281
+ var effectCalled = React.useRef(false);
282
+ var renderAfterCalled = React.useRef(false);
283
+ var _useState3 = React.useState(0),
284
+ _useState4 = _slicedToArray$7(_useState3, 2);
285
+ _useState4[0];
286
+ var setVal = _useState4[1];
287
+ if (effectCalled.current) {
288
+ renderAfterCalled.current = true;
289
+ }
290
+ useEffectFn(function () {
291
+ // only execute the effect first time around
292
+ if (!effectCalled.current) {
293
+ destroyFunc.current = effect();
294
+ effectCalled.current = true;
295
+ }
296
+
297
+ // this forces one render after the effect is run
298
+ setVal(function (val) {
299
+ return val + 1;
300
+ });
301
+ return function () {
302
+ // if the comp didn't render since the useEffect was called,
303
+ // we know it's the dummy React cycle
304
+ if (!renderAfterCalled.current) return;
305
+ if (destroyFunc.current) destroyFunc.current();
284
306
  };
285
- }, deps);
307
+ }, []);
286
308
  }
287
309
 
288
310
  /**
@@ -36445,22 +36467,47 @@
36445
36467
 
36446
36468
  var debounce_1 = debounce;
36447
36469
 
36470
+ function _iterableToArrayLimit$6(arr, i) {
36471
+ var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
36472
+ if (null != _i) {
36473
+ var _s,
36474
+ _e,
36475
+ _x,
36476
+ _r,
36477
+ _arr = [],
36478
+ _n = !0,
36479
+ _d = !1;
36480
+ try {
36481
+ if (_x = (_i = _i.call(arr)).next, 0 === i) {
36482
+ if (Object(_i) !== _i) return;
36483
+ _n = !1;
36484
+ } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
36485
+ } catch (err) {
36486
+ _d = !0, _e = err;
36487
+ } finally {
36488
+ try {
36489
+ if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;
36490
+ } finally {
36491
+ if (_d) throw _e;
36492
+ }
36493
+ }
36494
+ return _arr;
36495
+ }
36496
+ }
36448
36497
  function _classCallCheck$3(instance, Constructor) {
36449
36498
  if (!(instance instanceof Constructor)) {
36450
36499
  throw new TypeError("Cannot call a class as a function");
36451
36500
  }
36452
36501
  }
36453
-
36454
36502
  function _defineProperties$3(target, props) {
36455
36503
  for (var i = 0; i < props.length; i++) {
36456
36504
  var descriptor = props[i];
36457
36505
  descriptor.enumerable = descriptor.enumerable || false;
36458
36506
  descriptor.configurable = true;
36459
36507
  if ("value" in descriptor) descriptor.writable = true;
36460
- Object.defineProperty(target, descriptor.key, descriptor);
36508
+ Object.defineProperty(target, _toPropertyKey$7(descriptor.key), descriptor);
36461
36509
  }
36462
36510
  }
36463
-
36464
36511
  function _createClass$3(Constructor, protoProps, staticProps) {
36465
36512
  if (protoProps) _defineProperties$3(Constructor.prototype, protoProps);
36466
36513
  if (staticProps) _defineProperties$3(Constructor, staticProps);
@@ -36469,45 +36516,12 @@
36469
36516
  });
36470
36517
  return Constructor;
36471
36518
  }
36472
-
36473
36519
  function _slicedToArray$6(arr, i) {
36474
36520
  return _arrayWithHoles$6(arr) || _iterableToArrayLimit$6(arr, i) || _unsupportedIterableToArray$7(arr, i) || _nonIterableRest$6();
36475
36521
  }
36476
-
36477
36522
  function _arrayWithHoles$6(arr) {
36478
36523
  if (Array.isArray(arr)) return arr;
36479
36524
  }
36480
-
36481
- function _iterableToArrayLimit$6(arr, i) {
36482
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
36483
-
36484
- if (_i == null) return;
36485
- var _arr = [];
36486
- var _n = true;
36487
- var _d = false;
36488
-
36489
- var _s, _e;
36490
-
36491
- try {
36492
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
36493
- _arr.push(_s.value);
36494
-
36495
- if (i && _arr.length === i) break;
36496
- }
36497
- } catch (err) {
36498
- _d = true;
36499
- _e = err;
36500
- } finally {
36501
- try {
36502
- if (!_n && _i["return"] != null) _i["return"]();
36503
- } finally {
36504
- if (_d) throw _e;
36505
- }
36506
- }
36507
-
36508
- return _arr;
36509
- }
36510
-
36511
36525
  function _unsupportedIterableToArray$7(o, minLen) {
36512
36526
  if (!o) return;
36513
36527
  if (typeof o === "string") return _arrayLikeToArray$7(o, minLen);
@@ -36516,50 +36530,57 @@
36516
36530
  if (n === "Map" || n === "Set") return Array.from(o);
36517
36531
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$7(o, minLen);
36518
36532
  }
36519
-
36520
36533
  function _arrayLikeToArray$7(arr, len) {
36521
36534
  if (len == null || len > arr.length) len = arr.length;
36522
-
36523
36535
  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
36524
-
36525
36536
  return arr2;
36526
36537
  }
36527
-
36528
36538
  function _nonIterableRest$6() {
36529
36539
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
36530
36540
  }
36541
+ function _toPrimitive$7(input, hint) {
36542
+ if (typeof input !== "object" || input === null) return input;
36543
+ var prim = input[Symbol.toPrimitive];
36544
+ if (prim !== undefined) {
36545
+ var res = prim.call(input, hint || "default");
36546
+ if (typeof res !== "object") return res;
36547
+ throw new TypeError("@@toPrimitive must return a primitive value.");
36548
+ }
36549
+ return (hint === "string" ? String : Number)(input);
36550
+ }
36551
+ function _toPropertyKey$7(arg) {
36552
+ var key = _toPrimitive$7(arg, "string");
36553
+ return typeof key === "symbol" ? key : String(key);
36554
+ }
36531
36555
 
36532
36556
  var Prop = /*#__PURE__*/_createClass$3(function Prop(name, _ref) {
36533
36557
  var _ref$default = _ref["default"],
36534
- defaultVal = _ref$default === void 0 ? null : _ref$default,
36535
- _ref$triggerUpdate = _ref.triggerUpdate,
36536
- triggerUpdate = _ref$triggerUpdate === void 0 ? true : _ref$triggerUpdate,
36537
- _ref$onChange = _ref.onChange,
36538
- onChange = _ref$onChange === void 0 ? function (newVal, state) {} : _ref$onChange;
36539
-
36558
+ defaultVal = _ref$default === void 0 ? null : _ref$default,
36559
+ _ref$triggerUpdate = _ref.triggerUpdate,
36560
+ triggerUpdate = _ref$triggerUpdate === void 0 ? true : _ref$triggerUpdate,
36561
+ _ref$onChange = _ref.onChange,
36562
+ onChange = _ref$onChange === void 0 ? function (newVal, state) {} : _ref$onChange;
36540
36563
  _classCallCheck$3(this, Prop);
36541
-
36542
36564
  this.name = name;
36543
36565
  this.defaultVal = defaultVal;
36544
36566
  this.triggerUpdate = triggerUpdate;
36545
36567
  this.onChange = onChange;
36546
36568
  });
36547
-
36548
36569
  function index$2 (_ref2) {
36549
36570
  var _ref2$stateInit = _ref2.stateInit,
36550
- stateInit = _ref2$stateInit === void 0 ? function () {
36551
- return {};
36552
- } : _ref2$stateInit,
36553
- _ref2$props = _ref2.props,
36554
- rawProps = _ref2$props === void 0 ? {} : _ref2$props,
36555
- _ref2$methods = _ref2.methods,
36556
- methods = _ref2$methods === void 0 ? {} : _ref2$methods,
36557
- _ref2$aliases = _ref2.aliases,
36558
- aliases = _ref2$aliases === void 0 ? {} : _ref2$aliases,
36559
- _ref2$init = _ref2.init,
36560
- initFn = _ref2$init === void 0 ? function () {} : _ref2$init,
36561
- _ref2$update = _ref2.update,
36562
- updateFn = _ref2$update === void 0 ? function () {} : _ref2$update;
36571
+ stateInit = _ref2$stateInit === void 0 ? function () {
36572
+ return {};
36573
+ } : _ref2$stateInit,
36574
+ _ref2$props = _ref2.props,
36575
+ rawProps = _ref2$props === void 0 ? {} : _ref2$props,
36576
+ _ref2$methods = _ref2.methods,
36577
+ methods = _ref2$methods === void 0 ? {} : _ref2$methods,
36578
+ _ref2$aliases = _ref2.aliases,
36579
+ aliases = _ref2$aliases === void 0 ? {} : _ref2$aliases,
36580
+ _ref2$init = _ref2.init,
36581
+ initFn = _ref2$init === void 0 ? function () {} : _ref2$init,
36582
+ _ref2$update = _ref2.update,
36583
+ updateFn = _ref2$update === void 0 ? function () {} : _ref2$update;
36563
36584
  // Parse props into Prop instances
36564
36585
  var props = Object.keys(rawProps).map(function (propName) {
36565
36586
  return new Prop(propName, rawProps[propName]);
@@ -36567,98 +36588,94 @@
36567
36588
  return function () {
36568
36589
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
36569
36590
  // Holds component state
36570
- var state = Object.assign({}, stateInit instanceof Function ? stateInit(options) : stateInit, // Support plain objects for backwards compatibility
36591
+ var state = Object.assign({}, stateInit instanceof Function ? stateInit(options) : stateInit,
36592
+ // Support plain objects for backwards compatibility
36571
36593
  {
36572
36594
  initialised: false
36573
- }); // keeps track of which props triggered an update
36595
+ });
36574
36596
 
36575
- var changedProps = {}; // Component constructor
36597
+ // keeps track of which props triggered an update
36598
+ var changedProps = {};
36576
36599
 
36600
+ // Component constructor
36577
36601
  function comp(nodeElement) {
36578
36602
  initStatic(nodeElement, options);
36579
36603
  digest();
36580
36604
  return comp;
36581
36605
  }
36582
-
36583
36606
  var initStatic = function initStatic(nodeElement, options) {
36584
36607
  initFn.call(comp, nodeElement, state, options);
36585
36608
  state.initialised = true;
36586
36609
  };
36587
-
36588
36610
  var digest = debounce_1(function () {
36589
36611
  if (!state.initialised) {
36590
36612
  return;
36591
36613
  }
36592
-
36593
36614
  updateFn.call(comp, state, changedProps);
36594
36615
  changedProps = {};
36595
- }, 1); // Getter/setter methods
36616
+ }, 1);
36596
36617
 
36618
+ // Getter/setter methods
36597
36619
  props.forEach(function (prop) {
36598
36620
  comp[prop.name] = getSetProp(prop);
36599
-
36600
36621
  function getSetProp(_ref3) {
36601
36622
  var prop = _ref3.name,
36602
- _ref3$triggerUpdate = _ref3.triggerUpdate,
36603
- redigest = _ref3$triggerUpdate === void 0 ? false : _ref3$triggerUpdate,
36604
- _ref3$onChange = _ref3.onChange,
36605
- onChange = _ref3$onChange === void 0 ? function (newVal, state) {} : _ref3$onChange,
36606
- _ref3$defaultVal = _ref3.defaultVal,
36607
- defaultVal = _ref3$defaultVal === void 0 ? null : _ref3$defaultVal;
36623
+ _ref3$triggerUpdate = _ref3.triggerUpdate,
36624
+ redigest = _ref3$triggerUpdate === void 0 ? false : _ref3$triggerUpdate,
36625
+ _ref3$onChange = _ref3.onChange,
36626
+ onChange = _ref3$onChange === void 0 ? function (newVal, state) {} : _ref3$onChange,
36627
+ _ref3$defaultVal = _ref3.defaultVal,
36628
+ defaultVal = _ref3$defaultVal === void 0 ? null : _ref3$defaultVal;
36608
36629
  return function (_) {
36609
36630
  var curVal = state[prop];
36610
-
36611
36631
  if (!arguments.length) {
36612
36632
  return curVal;
36613
36633
  } // Getter mode
36614
36634
 
36615
-
36616
36635
  var val = _ === undefined ? defaultVal : _; // pick default if value passed is undefined
36617
-
36618
36636
  state[prop] = val;
36619
- onChange.call(comp, val, state, curVal); // track changed props
36637
+ onChange.call(comp, val, state, curVal);
36620
36638
 
36639
+ // track changed props
36621
36640
  !changedProps.hasOwnProperty(prop) && (changedProps[prop] = curVal);
36622
-
36623
36641
  if (redigest) {
36624
36642
  digest();
36625
36643
  }
36626
-
36627
36644
  return comp;
36628
36645
  };
36629
36646
  }
36630
- }); // Other methods
36647
+ });
36631
36648
 
36649
+ // Other methods
36632
36650
  Object.keys(methods).forEach(function (methodName) {
36633
36651
  comp[methodName] = function () {
36634
36652
  var _methods$methodName;
36635
-
36636
36653
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
36637
36654
  args[_key] = arguments[_key];
36638
36655
  }
36639
-
36640
36656
  return (_methods$methodName = methods[methodName]).call.apply(_methods$methodName, [comp, state].concat(args));
36641
36657
  };
36642
- }); // Link aliases
36658
+ });
36643
36659
 
36660
+ // Link aliases
36644
36661
  Object.entries(aliases).forEach(function (_ref4) {
36645
36662
  var _ref5 = _slicedToArray$6(_ref4, 2),
36646
- alias = _ref5[0],
36647
- target = _ref5[1];
36648
-
36663
+ alias = _ref5[0],
36664
+ target = _ref5[1];
36649
36665
  return comp[alias] = comp[target];
36650
- }); // Reset all component props to their default value
36666
+ });
36651
36667
 
36668
+ // Reset all component props to their default value
36652
36669
  comp.resetProps = function () {
36653
36670
  props.forEach(function (prop) {
36654
36671
  comp[prop.name](prop.defaultVal);
36655
36672
  });
36656
36673
  return comp;
36657
- }; //
36674
+ };
36658
36675
 
36676
+ //
36659
36677
 
36660
36678
  comp.resetProps(); // Apply all prop defaults
36661
-
36662
36679
  state._rerender = digest; // Expose digest method
36663
36680
 
36664
36681
  return comp;
@@ -40521,22 +40538,47 @@
40521
40538
  .clipAngle(142);
40522
40539
  }
40523
40540
 
40541
+ function _iterableToArrayLimit$5(arr, i) {
40542
+ var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
40543
+ if (null != _i) {
40544
+ var _s,
40545
+ _e,
40546
+ _x,
40547
+ _r,
40548
+ _arr = [],
40549
+ _n = !0,
40550
+ _d = !1;
40551
+ try {
40552
+ if (_x = (_i = _i.call(arr)).next, 0 === i) {
40553
+ if (Object(_i) !== _i) return;
40554
+ _n = !1;
40555
+ } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
40556
+ } catch (err) {
40557
+ _d = !0, _e = err;
40558
+ } finally {
40559
+ try {
40560
+ if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;
40561
+ } finally {
40562
+ if (_d) throw _e;
40563
+ }
40564
+ }
40565
+ return _arr;
40566
+ }
40567
+ }
40524
40568
  function _classCallCheck$2(instance, Constructor) {
40525
40569
  if (!(instance instanceof Constructor)) {
40526
40570
  throw new TypeError("Cannot call a class as a function");
40527
40571
  }
40528
40572
  }
40529
-
40530
40573
  function _defineProperties$2(target, props) {
40531
40574
  for (var i = 0; i < props.length; i++) {
40532
40575
  var descriptor = props[i];
40533
40576
  descriptor.enumerable = descriptor.enumerable || false;
40534
40577
  descriptor.configurable = true;
40535
40578
  if ("value" in descriptor) descriptor.writable = true;
40536
- Object.defineProperty(target, descriptor.key, descriptor);
40579
+ Object.defineProperty(target, _toPropertyKey$6(descriptor.key), descriptor);
40537
40580
  }
40538
40581
  }
40539
-
40540
40582
  function _createClass$2(Constructor, protoProps, staticProps) {
40541
40583
  if (protoProps) _defineProperties$2(Constructor.prototype, protoProps);
40542
40584
  if (staticProps) _defineProperties$2(Constructor, staticProps);
@@ -40545,12 +40587,10 @@
40545
40587
  });
40546
40588
  return Constructor;
40547
40589
  }
40548
-
40549
40590
  function _inherits$2(subClass, superClass) {
40550
40591
  if (typeof superClass !== "function" && superClass !== null) {
40551
40592
  throw new TypeError("Super expression must either be null or a function");
40552
40593
  }
40553
-
40554
40594
  subClass.prototype = Object.create(superClass && superClass.prototype, {
40555
40595
  constructor: {
40556
40596
  value: subClass,
@@ -40563,14 +40603,12 @@
40563
40603
  });
40564
40604
  if (superClass) _setPrototypeOf$3(subClass, superClass);
40565
40605
  }
40566
-
40567
40606
  function _getPrototypeOf$3(o) {
40568
40607
  _getPrototypeOf$3 = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
40569
40608
  return o.__proto__ || Object.getPrototypeOf(o);
40570
40609
  };
40571
40610
  return _getPrototypeOf$3(o);
40572
40611
  }
40573
-
40574
40612
  function _setPrototypeOf$3(o, p) {
40575
40613
  _setPrototypeOf$3 = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
40576
40614
  o.__proto__ = p;
@@ -40578,12 +40616,10 @@
40578
40616
  };
40579
40617
  return _setPrototypeOf$3(o, p);
40580
40618
  }
40581
-
40582
40619
  function _isNativeReflectConstruct$3() {
40583
40620
  if (typeof Reflect === "undefined" || !Reflect.construct) return false;
40584
40621
  if (Reflect.construct.sham) return false;
40585
40622
  if (typeof Proxy === "function") return true;
40586
-
40587
40623
  try {
40588
40624
  Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
40589
40625
  return true;
@@ -40591,82 +40627,40 @@
40591
40627
  return false;
40592
40628
  }
40593
40629
  }
40594
-
40595
40630
  function _assertThisInitialized$3(self) {
40596
40631
  if (self === void 0) {
40597
40632
  throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
40598
40633
  }
40599
-
40600
40634
  return self;
40601
40635
  }
40602
-
40603
40636
  function _possibleConstructorReturn$2(self, call) {
40604
40637
  if (call && (typeof call === "object" || typeof call === "function")) {
40605
40638
  return call;
40606
40639
  } else if (call !== void 0) {
40607
40640
  throw new TypeError("Derived constructors may only return object or undefined");
40608
40641
  }
40609
-
40610
40642
  return _assertThisInitialized$3(self);
40611
40643
  }
40612
-
40613
40644
  function _createSuper$2(Derived) {
40614
40645
  var hasNativeReflectConstruct = _isNativeReflectConstruct$3();
40615
-
40616
40646
  return function _createSuperInternal() {
40617
40647
  var Super = _getPrototypeOf$3(Derived),
40618
- result;
40619
-
40648
+ result;
40620
40649
  if (hasNativeReflectConstruct) {
40621
40650
  var NewTarget = _getPrototypeOf$3(this).constructor;
40622
-
40623
40651
  result = Reflect.construct(Super, arguments, NewTarget);
40624
40652
  } else {
40625
40653
  result = Super.apply(this, arguments);
40626
40654
  }
40627
-
40628
40655
  return _possibleConstructorReturn$2(this, result);
40629
40656
  };
40630
40657
  }
40631
-
40632
40658
  function _slicedToArray$5(arr, i) {
40633
40659
  return _arrayWithHoles$5(arr) || _iterableToArrayLimit$5(arr, i) || _unsupportedIterableToArray$6(arr, i) || _nonIterableRest$5();
40634
40660
  }
40635
-
40636
40661
  function _arrayWithHoles$5(arr) {
40637
40662
  if (Array.isArray(arr)) return arr;
40638
40663
  }
40639
-
40640
- function _iterableToArrayLimit$5(arr, i) {
40641
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
40642
-
40643
- if (_i == null) return;
40644
- var _arr = [];
40645
- var _n = true;
40646
- var _d = false;
40647
-
40648
- var _s, _e;
40649
-
40650
- try {
40651
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
40652
- _arr.push(_s.value);
40653
-
40654
- if (i && _arr.length === i) break;
40655
- }
40656
- } catch (err) {
40657
- _d = true;
40658
- _e = err;
40659
- } finally {
40660
- try {
40661
- if (!_n && _i["return"] != null) _i["return"]();
40662
- } finally {
40663
- if (_d) throw _e;
40664
- }
40665
- }
40666
-
40667
- return _arr;
40668
- }
40669
-
40670
40664
  function _unsupportedIterableToArray$6(o, minLen) {
40671
40665
  if (!o) return;
40672
40666
  if (typeof o === "string") return _arrayLikeToArray$6(o, minLen);
@@ -40675,29 +40669,21 @@
40675
40669
  if (n === "Map" || n === "Set") return Array.from(o);
40676
40670
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$6(o, minLen);
40677
40671
  }
40678
-
40679
40672
  function _arrayLikeToArray$6(arr, len) {
40680
40673
  if (len == null || len > arr.length) len = arr.length;
40681
-
40682
40674
  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
40683
-
40684
40675
  return arr2;
40685
40676
  }
40686
-
40687
40677
  function _nonIterableRest$5() {
40688
40678
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
40689
40679
  }
40690
-
40691
40680
  function _createForOfIteratorHelper(o, allowArrayLike) {
40692
40681
  var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
40693
-
40694
40682
  if (!it) {
40695
40683
  if (Array.isArray(o) || (it = _unsupportedIterableToArray$6(o)) || allowArrayLike && o && typeof o.length === "number") {
40696
40684
  if (it) o = it;
40697
40685
  var i = 0;
40698
-
40699
40686
  var F = function () {};
40700
-
40701
40687
  return {
40702
40688
  s: F,
40703
40689
  n: function () {
@@ -40715,13 +40701,11 @@
40715
40701
  f: F
40716
40702
  };
40717
40703
  }
40718
-
40719
40704
  throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
40720
40705
  }
40721
-
40722
40706
  var normalCompletion = true,
40723
- didErr = false,
40724
- err;
40707
+ didErr = false,
40708
+ err;
40725
40709
  return {
40726
40710
  s: function () {
40727
40711
  it = it.call(o);
@@ -40744,6 +40728,20 @@
40744
40728
  }
40745
40729
  };
40746
40730
  }
40731
+ function _toPrimitive$6(input, hint) {
40732
+ if (typeof input !== "object" || input === null) return input;
40733
+ var prim = input[Symbol.toPrimitive];
40734
+ if (prim !== undefined) {
40735
+ var res = prim.call(input, hint || "default");
40736
+ if (typeof res !== "object") return res;
40737
+ throw new TypeError("@@toPrimitive must return a primitive value.");
40738
+ }
40739
+ return (hint === "string" ? String : Number)(input);
40740
+ }
40741
+ function _toPropertyKey$6(arg) {
40742
+ var key = _toPrimitive$6(arg, "string");
40743
+ return typeof key === "symbol" ? key : String(key);
40744
+ }
40747
40745
 
40748
40746
  var interpolateLine = function interpolateLine() {
40749
40747
  var lineCoords = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
@@ -40753,19 +40751,16 @@
40753
40751
  lineCoords.forEach(function (pnt) {
40754
40752
  if (prevPnt) {
40755
40753
  var dist = geoDistance(pnt, prevPnt) * 180 / Math.PI;
40756
-
40757
40754
  if (dist > maxDegDistance) {
40758
40755
  var interpol = geoInterpolate(prevPnt, pnt);
40759
40756
  var tStep = 1 / Math.ceil(dist / maxDegDistance);
40760
40757
  var t = tStep;
40761
-
40762
40758
  while (t < 1) {
40763
40759
  result.push(interpol(t));
40764
40760
  t += tStep;
40765
40761
  }
40766
40762
  }
40767
40763
  }
40768
-
40769
40764
  result.push(prevPnt = pnt);
40770
40765
  });
40771
40766
  return result;
@@ -40777,29 +40772,25 @@
40777
40772
  Float32BufferAttribute: Float32BufferAttribute
40778
40773
  };
40779
40774
 
40775
+ // support both modes for backwards threejs compatibility
40780
40776
  var setAttributeFn$4 = new THREE$j.BufferGeometry().setAttribute ? 'setAttribute' : 'addAttribute';
40781
-
40782
40777
  var GeoJsonGeometry = /*#__PURE__*/function (_THREE$BufferGeometry) {
40783
40778
  _inherits$2(GeoJsonGeometry, _THREE$BufferGeometry);
40784
-
40785
40779
  var _super = _createSuper$2(GeoJsonGeometry);
40786
-
40787
40780
  function GeoJsonGeometry(geoJson) {
40788
40781
  var _this;
40789
-
40790
40782
  var radius = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
40791
40783
  var resolution = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 5;
40792
-
40793
40784
  _classCallCheck$2(this, GeoJsonGeometry);
40794
-
40795
40785
  _this = _super.call(this);
40796
40786
  _this.type = 'GeoJsonGeometry';
40797
40787
  _this.parameters = {
40798
40788
  geoJson: geoJson,
40799
40789
  radius: radius,
40800
40790
  resolution: resolution
40801
- }; // process various geometry types
40791
+ };
40802
40792
 
40793
+ // process various geometry types
40803
40794
  var groups = ({
40804
40795
  Point: genPoint,
40805
40796
  MultiPoint: genMultiPoint,
@@ -40809,11 +40800,11 @@
40809
40800
  MultiPolygon: genMultiPolygon
40810
40801
  }[geoJson.type] || function () {
40811
40802
  return [];
40812
- })(geoJson.coordinates, radius); // concat groups
40813
-
40803
+ })(geoJson.coordinates, radius);
40814
40804
 
40805
+ // concat groups
40815
40806
  var indices = [],
40816
- vertices = [];
40807
+ vertices = [];
40817
40808
  var groupCnt = 0;
40818
40809
  groups.forEach(function (newG) {
40819
40810
  var prevIndCnt = indices.length;
@@ -40821,12 +40812,14 @@
40821
40812
  indices: indices,
40822
40813
  vertices: vertices
40823
40814
  }, newG);
40824
-
40825
40815
  _this.addGroup(prevIndCnt, indices.length - prevIndCnt, groupCnt++);
40826
- }); // build geometry
40816
+ });
40827
40817
 
40818
+ // build geometry
40828
40819
  indices.length && _this.setIndex(indices);
40829
- vertices.length && _this[setAttributeFn$4]('position', new THREE$j.Float32BufferAttribute(vertices, 3)); //
40820
+ vertices.length && _this[setAttributeFn$4]('position', new THREE$j.Float32BufferAttribute(vertices, 3));
40821
+
40822
+ //
40830
40823
 
40831
40824
  function genPoint(coords, r) {
40832
40825
  var vertices = polar2Cartesian$2(coords[1], coords[0], r);
@@ -40836,7 +40829,6 @@
40836
40829
  indices: indices
40837
40830
  }];
40838
40831
  }
40839
-
40840
40832
  function genMultiPoint(coords, r) {
40841
40833
  var result = {
40842
40834
  vertices: [],
@@ -40846,38 +40838,30 @@
40846
40838
  return genPoint(c, r);
40847
40839
  }).forEach(function (_ref) {
40848
40840
  var _ref2 = _slicedToArray$5(_ref, 1),
40849
- newPnt = _ref2[0];
40850
-
40841
+ newPnt = _ref2[0];
40851
40842
  concatGroup(result, newPnt);
40852
40843
  });
40853
40844
  return [result];
40854
40845
  }
40855
-
40856
40846
  function genLineString(coords, r) {
40857
40847
  var coords3d = interpolateLine(coords, resolution).map(function (_ref3) {
40858
40848
  var _ref4 = _slicedToArray$5(_ref3, 2),
40859
- lng = _ref4[0],
40860
- lat = _ref4[1];
40861
-
40849
+ lng = _ref4[0],
40850
+ lat = _ref4[1];
40862
40851
  return polar2Cartesian$2(lat, lng, r);
40863
40852
  });
40864
-
40865
40853
  var _earcut$flatten = earcutExports.flatten([coords3d]),
40866
- vertices = _earcut$flatten.vertices;
40867
-
40854
+ vertices = _earcut$flatten.vertices;
40868
40855
  var numPoints = Math.round(vertices.length / 3);
40869
40856
  var indices = [];
40870
-
40871
40857
  for (var vIdx = 1; vIdx < numPoints; vIdx++) {
40872
40858
  indices.push(vIdx - 1, vIdx);
40873
40859
  }
40874
-
40875
40860
  return [{
40876
40861
  vertices: vertices,
40877
40862
  indices: indices
40878
40863
  }];
40879
40864
  }
40880
-
40881
40865
  function genMultiLineString(coords, r) {
40882
40866
  var result = {
40883
40867
  vertices: [],
@@ -40887,36 +40871,32 @@
40887
40871
  return genLineString(c, r);
40888
40872
  }).forEach(function (_ref5) {
40889
40873
  var _ref6 = _slicedToArray$5(_ref5, 1),
40890
- newLine = _ref6[0];
40891
-
40874
+ newLine = _ref6[0];
40892
40875
  concatGroup(result, newLine);
40893
40876
  });
40894
40877
  return [result];
40895
40878
  }
40896
-
40897
40879
  function genPolygon(coords, r) {
40898
40880
  var coords3d = coords.map(function (coordsSegment) {
40899
40881
  return interpolateLine(coordsSegment, resolution).map(function (_ref7) {
40900
40882
  var _ref8 = _slicedToArray$5(_ref7, 2),
40901
- lng = _ref8[0],
40902
- lat = _ref8[1];
40903
-
40883
+ lng = _ref8[0],
40884
+ lat = _ref8[1];
40904
40885
  return polar2Cartesian$2(lat, lng, r);
40905
40886
  });
40906
- }); // Each point generates 3 vertice items (x,y,z).
40887
+ });
40907
40888
 
40889
+ // Each point generates 3 vertice items (x,y,z).
40908
40890
  var _earcut$flatten2 = earcutExports.flatten(coords3d),
40909
- vertices = _earcut$flatten2.vertices,
40910
- holes = _earcut$flatten2.holes;
40911
-
40891
+ vertices = _earcut$flatten2.vertices,
40892
+ holes = _earcut$flatten2.holes;
40912
40893
  var firstHoleIdx = holes[0] || Infinity;
40913
40894
  var outerVertices = vertices.slice(0, firstHoleIdx * 3);
40914
40895
  var holeVertices = vertices.slice(firstHoleIdx * 3);
40915
40896
  var holesIdx = new Set(holes);
40916
40897
  var numPoints = Math.round(vertices.length / 3);
40917
40898
  var outerIndices = [],
40918
- holeIndices = [];
40919
-
40899
+ holeIndices = [];
40920
40900
  for (var vIdx = 1; vIdx < numPoints; vIdx++) {
40921
40901
  if (!holesIdx.has(vIdx)) {
40922
40902
  if (vIdx < firstHoleIdx) {
@@ -40926,22 +40906,18 @@
40926
40906
  }
40927
40907
  }
40928
40908
  }
40929
-
40930
40909
  var groups = [{
40931
40910
  indices: outerIndices,
40932
40911
  vertices: outerVertices
40933
40912
  }];
40934
-
40935
40913
  if (holes.length) {
40936
40914
  groups.push({
40937
40915
  indices: holeIndices,
40938
40916
  vertices: holeVertices
40939
40917
  });
40940
40918
  }
40941
-
40942
40919
  return groups;
40943
40920
  }
40944
-
40945
40921
  function genMultiPolygon(coords, r) {
40946
40922
  var outer = {
40947
40923
  vertices: [],
@@ -40955,9 +40931,8 @@
40955
40931
  return genPolygon(c, r);
40956
40932
  }).forEach(function (_ref9) {
40957
40933
  var _ref10 = _slicedToArray$5(_ref9, 2),
40958
- newOuter = _ref10[0],
40959
- newHoles = _ref10[1];
40960
-
40934
+ newOuter = _ref10[0],
40935
+ newHoles = _ref10[1];
40961
40936
  concatGroup(outer, newOuter);
40962
40937
  newHoles && concatGroup(holes, newHoles);
40963
40938
  });
@@ -40965,14 +40940,10 @@
40965
40940
  holes.vertices.length && groups.push(holes);
40966
40941
  return groups;
40967
40942
  }
40968
-
40969
40943
  return _this;
40970
40944
  }
40971
-
40972
40945
  return _createClass$2(GeoJsonGeometry);
40973
40946
  }(THREE$j.BufferGeometry); //
40974
-
40975
-
40976
40947
  function concatGroup(main, extra) {
40977
40948
  var prevVertCnt = Math.round(main.vertices.length / 3);
40978
40949
  concatArr(main.vertices, extra.vertices);
@@ -40980,11 +40951,9 @@
40980
40951
  return ind + prevVertCnt;
40981
40952
  }));
40982
40953
  }
40983
-
40984
40954
  function concatArr(target, src) {
40985
40955
  var _iterator = _createForOfIteratorHelper(src),
40986
- _step;
40987
-
40956
+ _step;
40988
40957
  try {
40989
40958
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
40990
40959
  var e = _step.value;
@@ -40996,13 +40965,14 @@
40996
40965
  _iterator.f();
40997
40966
  }
40998
40967
  }
40999
-
41000
40968
  function polar2Cartesian$2(lat, lng) {
41001
40969
  var r = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
41002
40970
  var phi = (90 - lat) * Math.PI / 180;
41003
40971
  var theta = (90 - lng) * Math.PI / 180;
41004
- return [r * Math.sin(phi) * Math.cos(theta), // x
41005
- r * Math.cos(phi), // y
40972
+ return [r * Math.sin(phi) * Math.cos(theta),
40973
+ // x
40974
+ r * Math.cos(phi),
40975
+ // y
41006
40976
  r * Math.sin(phi) * Math.sin(theta) // z
41007
40977
  ];
41008
40978
  }
@@ -43534,31 +43504,51 @@
43534
43504
  };
43535
43505
  }
43536
43506
 
43507
+ function _iterableToArrayLimit$4(arr, i) {
43508
+ var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
43509
+ if (null != _i) {
43510
+ var _s,
43511
+ _e,
43512
+ _x,
43513
+ _r,
43514
+ _arr = [],
43515
+ _n = !0,
43516
+ _d = !1;
43517
+ try {
43518
+ if (_x = (_i = _i.call(arr)).next, 0 === i) {
43519
+ if (Object(_i) !== _i) return;
43520
+ _n = !1;
43521
+ } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
43522
+ } catch (err) {
43523
+ _d = !0, _e = err;
43524
+ } finally {
43525
+ try {
43526
+ if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;
43527
+ } finally {
43528
+ if (_d) throw _e;
43529
+ }
43530
+ }
43531
+ return _arr;
43532
+ }
43533
+ }
43537
43534
  function _objectWithoutPropertiesLoose$3(source, excluded) {
43538
43535
  if (source == null) return {};
43539
43536
  var target = {};
43540
43537
  var sourceKeys = Object.keys(source);
43541
43538
  var key, i;
43542
-
43543
43539
  for (i = 0; i < sourceKeys.length; i++) {
43544
43540
  key = sourceKeys[i];
43545
43541
  if (excluded.indexOf(key) >= 0) continue;
43546
43542
  target[key] = source[key];
43547
43543
  }
43548
-
43549
43544
  return target;
43550
43545
  }
43551
-
43552
43546
  function _objectWithoutProperties$3(source, excluded) {
43553
43547
  if (source == null) return {};
43554
-
43555
43548
  var target = _objectWithoutPropertiesLoose$3(source, excluded);
43556
-
43557
43549
  var key, i;
43558
-
43559
43550
  if (Object.getOwnPropertySymbols) {
43560
43551
  var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
43561
-
43562
43552
  for (i = 0; i < sourceSymbolKeys.length; i++) {
43563
43553
  key = sourceSymbolKeys[i];
43564
43554
  if (excluded.indexOf(key) >= 0) continue;
@@ -43566,60 +43556,23 @@
43566
43556
  target[key] = source[key];
43567
43557
  }
43568
43558
  }
43569
-
43570
43559
  return target;
43571
43560
  }
43572
-
43573
43561
  function _slicedToArray$4(arr, i) {
43574
43562
  return _arrayWithHoles$4(arr) || _iterableToArrayLimit$4(arr, i) || _unsupportedIterableToArray$5(arr, i) || _nonIterableRest$4();
43575
43563
  }
43576
-
43577
43564
  function _toConsumableArray$5(arr) {
43578
43565
  return _arrayWithoutHoles$5(arr) || _iterableToArray$5(arr) || _unsupportedIterableToArray$5(arr) || _nonIterableSpread$5();
43579
43566
  }
43580
-
43581
43567
  function _arrayWithoutHoles$5(arr) {
43582
43568
  if (Array.isArray(arr)) return _arrayLikeToArray$5(arr);
43583
43569
  }
43584
-
43585
43570
  function _arrayWithHoles$4(arr) {
43586
43571
  if (Array.isArray(arr)) return arr;
43587
43572
  }
43588
-
43589
43573
  function _iterableToArray$5(iter) {
43590
43574
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
43591
43575
  }
43592
-
43593
- function _iterableToArrayLimit$4(arr, i) {
43594
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
43595
-
43596
- if (_i == null) return;
43597
- var _arr = [];
43598
- var _n = true;
43599
- var _d = false;
43600
-
43601
- var _s, _e;
43602
-
43603
- try {
43604
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
43605
- _arr.push(_s.value);
43606
-
43607
- if (i && _arr.length === i) break;
43608
- }
43609
- } catch (err) {
43610
- _d = true;
43611
- _e = err;
43612
- } finally {
43613
- try {
43614
- if (!_n && _i["return"] != null) _i["return"]();
43615
- } finally {
43616
- if (_d) throw _e;
43617
- }
43618
- }
43619
-
43620
- return _arr;
43621
- }
43622
-
43623
43576
  function _unsupportedIterableToArray$5(o, minLen) {
43624
43577
  if (!o) return;
43625
43578
  if (typeof o === "string") return _arrayLikeToArray$5(o, minLen);
@@ -43628,39 +43581,29 @@
43628
43581
  if (n === "Map" || n === "Set") return Array.from(o);
43629
43582
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$5(o, minLen);
43630
43583
  }
43631
-
43632
43584
  function _arrayLikeToArray$5(arr, len) {
43633
43585
  if (len == null || len > arr.length) len = arr.length;
43634
-
43635
43586
  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
43636
-
43637
43587
  return arr2;
43638
43588
  }
43639
-
43640
43589
  function _nonIterableSpread$5() {
43641
43590
  throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
43642
43591
  }
43643
-
43644
43592
  function _nonIterableRest$4() {
43645
43593
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
43646
43594
  }
43647
-
43648
- function _toPrimitive$4(input, hint) {
43595
+ function _toPrimitive$5(input, hint) {
43649
43596
  if (typeof input !== "object" || input === null) return input;
43650
43597
  var prim = input[Symbol.toPrimitive];
43651
-
43652
43598
  if (prim !== undefined) {
43653
43599
  var res = prim.call(input, hint || "default");
43654
43600
  if (typeof res !== "object") return res;
43655
43601
  throw new TypeError("@@toPrimitive must return a primitive value.");
43656
43602
  }
43657
-
43658
43603
  return (hint === "string" ? String : Number)(input);
43659
43604
  }
43660
-
43661
- function _toPropertyKey$4(arg) {
43662
- var key = _toPrimitive$4(arg, "string");
43663
-
43605
+ function _toPropertyKey$5(arg) {
43606
+ var key = _toPrimitive$5(arg, "string");
43664
43607
  return typeof key === "symbol" ? key : String(key);
43665
43608
  }
43666
43609
 
@@ -43680,25 +43623,21 @@
43680
43623
  var itemVal = item;
43681
43624
  keys.forEach(function (_ref, idx) {
43682
43625
  var keyAccessor = _ref.keyAccessor,
43683
- isProp = _ref.isProp;
43626
+ isProp = _ref.isProp;
43684
43627
  var key;
43685
-
43686
43628
  if (isProp) {
43687
43629
  var _itemVal = itemVal,
43688
- propVal = _itemVal[keyAccessor],
43689
- rest = _objectWithoutProperties$3(_itemVal, [keyAccessor].map(_toPropertyKey$4));
43690
-
43630
+ propVal = _itemVal[keyAccessor],
43631
+ rest = _objectWithoutProperties$3(_itemVal, [keyAccessor].map(_toPropertyKey$5));
43691
43632
  key = propVal;
43692
43633
  itemVal = rest;
43693
43634
  } else {
43694
43635
  key = keyAccessor(itemVal, idx);
43695
43636
  }
43696
-
43697
43637
  if (idx + 1 < keys.length) {
43698
43638
  if (!iterObj.hasOwnProperty(key)) {
43699
43639
  iterObj[key] = {};
43700
43640
  }
43701
-
43702
43641
  iterObj = iterObj[key];
43703
43642
  } else {
43704
43643
  // Leaf key
@@ -43706,7 +43645,6 @@
43706
43645
  if (!iterObj.hasOwnProperty(key)) {
43707
43646
  iterObj[key] = [];
43708
43647
  }
43709
-
43710
43648
  iterObj[key].push(itemVal);
43711
43649
  } else {
43712
43650
  iterObj[key] = itemVal;
@@ -43715,12 +43653,10 @@
43715
43653
  });
43716
43654
  return res;
43717
43655
  }, {});
43718
-
43719
43656
  if (multiItem instanceof Function) {
43720
43657
  // Reduce leaf multiple values
43721
43658
  (function reduce(node) {
43722
43659
  var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
43723
-
43724
43660
  if (level === keys.length) {
43725
43661
  Object.keys(node).forEach(function (k) {
43726
43662
  return node[k] = multiItem(node[k]);
@@ -43731,18 +43667,14 @@
43731
43667
  });
43732
43668
  }
43733
43669
  })(indexedResult); // IIFE
43734
-
43735
43670
  }
43736
43671
 
43737
43672
  var result = indexedResult;
43738
-
43739
43673
  if (flattenKeys) {
43740
43674
  // flatten into array
43741
43675
  result = [];
43742
-
43743
43676
  (function flatten(node) {
43744
43677
  var accKeys = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
43745
-
43746
43678
  if (accKeys.length === keys.length) {
43747
43679
  result.push({
43748
43680
  keys: accKeys,
@@ -43751,37 +43683,58 @@
43751
43683
  } else {
43752
43684
  Object.entries(node).forEach(function (_ref2) {
43753
43685
  var _ref3 = _slicedToArray$4(_ref2, 2),
43754
- key = _ref3[0],
43755
- val = _ref3[1];
43756
-
43686
+ key = _ref3[0],
43687
+ val = _ref3[1];
43757
43688
  return flatten(val, [].concat(_toConsumableArray$5(accKeys), [key]));
43758
43689
  });
43759
43690
  }
43760
43691
  })(indexedResult); //IIFE
43761
43692
 
43762
-
43763
43693
  if (keyAccessors instanceof Array && keyAccessors.length === 0 && result.length === 1) {
43764
43694
  // clear keys if there's no key accessors (single result)
43765
43695
  result[0].keys = [];
43766
43696
  }
43767
43697
  }
43768
-
43769
43698
  return result;
43770
43699
  });
43771
43700
 
43701
+ function _iterableToArrayLimit$3(arr, i) {
43702
+ var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
43703
+ if (null != _i) {
43704
+ var _s,
43705
+ _e,
43706
+ _x,
43707
+ _r,
43708
+ _arr = [],
43709
+ _n = !0,
43710
+ _d = !1;
43711
+ try {
43712
+ if (_x = (_i = _i.call(arr)).next, 0 === i) {
43713
+ if (Object(_i) !== _i) return;
43714
+ _n = !1;
43715
+ } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
43716
+ } catch (err) {
43717
+ _d = !0, _e = err;
43718
+ } finally {
43719
+ try {
43720
+ if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;
43721
+ } finally {
43722
+ if (_d) throw _e;
43723
+ }
43724
+ }
43725
+ return _arr;
43726
+ }
43727
+ }
43772
43728
  function ownKeys$2(object, enumerableOnly) {
43773
43729
  var keys = Object.keys(object);
43774
-
43775
43730
  if (Object.getOwnPropertySymbols) {
43776
43731
  var symbols = Object.getOwnPropertySymbols(object);
43777
43732
  enumerableOnly && (symbols = symbols.filter(function (sym) {
43778
43733
  return Object.getOwnPropertyDescriptor(object, sym).enumerable;
43779
43734
  })), keys.push.apply(keys, symbols);
43780
43735
  }
43781
-
43782
43736
  return keys;
43783
43737
  }
43784
-
43785
43738
  function _objectSpread2$2(target) {
43786
43739
  for (var i = 1; i < arguments.length; i++) {
43787
43740
  var source = null != arguments[i] ? arguments[i] : {};
@@ -43791,11 +43744,10 @@
43791
43744
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
43792
43745
  });
43793
43746
  }
43794
-
43795
43747
  return target;
43796
43748
  }
43797
-
43798
43749
  function _defineProperty$3(obj, key, value) {
43750
+ key = _toPropertyKey$4(key);
43799
43751
  if (key in obj) {
43800
43752
  Object.defineProperty(obj, key, {
43801
43753
  value: value,
@@ -43806,35 +43758,26 @@
43806
43758
  } else {
43807
43759
  obj[key] = value;
43808
43760
  }
43809
-
43810
43761
  return obj;
43811
43762
  }
43812
-
43813
43763
  function _objectWithoutPropertiesLoose$2(source, excluded) {
43814
43764
  if (source == null) return {};
43815
43765
  var target = {};
43816
43766
  var sourceKeys = Object.keys(source);
43817
43767
  var key, i;
43818
-
43819
43768
  for (i = 0; i < sourceKeys.length; i++) {
43820
43769
  key = sourceKeys[i];
43821
43770
  if (excluded.indexOf(key) >= 0) continue;
43822
43771
  target[key] = source[key];
43823
43772
  }
43824
-
43825
43773
  return target;
43826
43774
  }
43827
-
43828
43775
  function _objectWithoutProperties$2(source, excluded) {
43829
43776
  if (source == null) return {};
43830
-
43831
43777
  var target = _objectWithoutPropertiesLoose$2(source, excluded);
43832
-
43833
43778
  var key, i;
43834
-
43835
43779
  if (Object.getOwnPropertySymbols) {
43836
43780
  var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
43837
-
43838
43781
  for (i = 0; i < sourceSymbolKeys.length; i++) {
43839
43782
  key = sourceSymbolKeys[i];
43840
43783
  if (excluded.indexOf(key) >= 0) continue;
@@ -43842,60 +43785,23 @@
43842
43785
  target[key] = source[key];
43843
43786
  }
43844
43787
  }
43845
-
43846
43788
  return target;
43847
43789
  }
43848
-
43849
43790
  function _slicedToArray$3(arr, i) {
43850
43791
  return _arrayWithHoles$3(arr) || _iterableToArrayLimit$3(arr, i) || _unsupportedIterableToArray$4(arr, i) || _nonIterableRest$3();
43851
43792
  }
43852
-
43853
43793
  function _toConsumableArray$4(arr) {
43854
43794
  return _arrayWithoutHoles$4(arr) || _iterableToArray$4(arr) || _unsupportedIterableToArray$4(arr) || _nonIterableSpread$4();
43855
43795
  }
43856
-
43857
43796
  function _arrayWithoutHoles$4(arr) {
43858
43797
  if (Array.isArray(arr)) return _arrayLikeToArray$4(arr);
43859
43798
  }
43860
-
43861
43799
  function _arrayWithHoles$3(arr) {
43862
43800
  if (Array.isArray(arr)) return arr;
43863
43801
  }
43864
-
43865
43802
  function _iterableToArray$4(iter) {
43866
43803
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
43867
43804
  }
43868
-
43869
- function _iterableToArrayLimit$3(arr, i) {
43870
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
43871
-
43872
- if (_i == null) return;
43873
- var _arr = [];
43874
- var _n = true;
43875
- var _d = false;
43876
-
43877
- var _s, _e;
43878
-
43879
- try {
43880
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
43881
- _arr.push(_s.value);
43882
-
43883
- if (i && _arr.length === i) break;
43884
- }
43885
- } catch (err) {
43886
- _d = true;
43887
- _e = err;
43888
- } finally {
43889
- try {
43890
- if (!_n && _i["return"] != null) _i["return"]();
43891
- } finally {
43892
- if (_d) throw _e;
43893
- }
43894
- }
43895
-
43896
- return _arr;
43897
- }
43898
-
43899
43805
  function _unsupportedIterableToArray$4(o, minLen) {
43900
43806
  if (!o) return;
43901
43807
  if (typeof o === "string") return _arrayLikeToArray$4(o, minLen);
@@ -43904,32 +43810,39 @@
43904
43810
  if (n === "Map" || n === "Set") return Array.from(o);
43905
43811
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$4(o, minLen);
43906
43812
  }
43907
-
43908
43813
  function _arrayLikeToArray$4(arr, len) {
43909
43814
  if (len == null || len > arr.length) len = arr.length;
43910
-
43911
43815
  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
43912
-
43913
43816
  return arr2;
43914
43817
  }
43915
-
43916
43818
  function _nonIterableSpread$4() {
43917
43819
  throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
43918
43820
  }
43919
-
43920
43821
  function _nonIterableRest$3() {
43921
43822
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
43922
43823
  }
43824
+ function _toPrimitive$4(input, hint) {
43825
+ if (typeof input !== "object" || input === null) return input;
43826
+ var prim = input[Symbol.toPrimitive];
43827
+ if (prim !== undefined) {
43828
+ var res = prim.call(input, hint || "default");
43829
+ if (typeof res !== "object") return res;
43830
+ throw new TypeError("@@toPrimitive must return a primitive value.");
43831
+ }
43832
+ return (hint === "string" ? String : Number)(input);
43833
+ }
43834
+ function _toPropertyKey$4(arg) {
43835
+ var key = _toPrimitive$4(arg, "string");
43836
+ return typeof key === "symbol" ? key : String(key);
43837
+ }
43923
43838
 
43924
43839
  var _excluded$2 = ["createObj", "updateObj", "exitObj", "objBindAttr", "dataBindAttr"];
43925
-
43926
43840
  function diffArrays(prev, next, idAccessor) {
43927
43841
  var result = {
43928
43842
  enter: [],
43929
43843
  update: [],
43930
43844
  exit: []
43931
43845
  };
43932
-
43933
43846
  if (!idAccessor) {
43934
43847
  // use object references for comparison
43935
43848
  var prevSet = new Set(prev);
@@ -43945,30 +43858,25 @@
43945
43858
  var byId = Object.assign({}, prevById, nextById);
43946
43859
  Object.entries(byId).forEach(function (_ref) {
43947
43860
  var _ref2 = _slicedToArray$3(_ref, 2),
43948
- id = _ref2[0],
43949
- item = _ref2[1];
43950
-
43861
+ id = _ref2[0],
43862
+ item = _ref2[1];
43951
43863
  var type = !prevById.hasOwnProperty(id) ? 'enter' : !nextById.hasOwnProperty(id) ? 'exit' : 'update';
43952
43864
  result[type].push(type === 'update' ? [prevById[id], nextById[id]] : item);
43953
43865
  });
43954
43866
  }
43955
-
43956
43867
  return result;
43957
43868
  }
43958
-
43959
43869
  function dataBindDiff(data, existingObjs, _ref3) {
43960
43870
  var _ref3$objBindAttr = _ref3.objBindAttr,
43961
- objBindAttr = _ref3$objBindAttr === void 0 ? '__obj' : _ref3$objBindAttr,
43962
- _ref3$dataBindAttr = _ref3.dataBindAttr,
43963
- dataBindAttr = _ref3$dataBindAttr === void 0 ? '__data' : _ref3$dataBindAttr,
43964
- idAccessor = _ref3.idAccessor,
43965
- _ref3$purge = _ref3.purge,
43966
- purge = _ref3$purge === void 0 ? false : _ref3$purge;
43967
-
43871
+ objBindAttr = _ref3$objBindAttr === void 0 ? '__obj' : _ref3$objBindAttr,
43872
+ _ref3$dataBindAttr = _ref3.dataBindAttr,
43873
+ dataBindAttr = _ref3$dataBindAttr === void 0 ? '__data' : _ref3$dataBindAttr,
43874
+ idAccessor = _ref3.idAccessor,
43875
+ _ref3$purge = _ref3.purge,
43876
+ purge = _ref3$purge === void 0 ? false : _ref3$purge;
43968
43877
  var isObjValid = function isObjValid(obj) {
43969
43878
  return obj.hasOwnProperty(dataBindAttr);
43970
43879
  };
43971
-
43972
43880
  var removeObjs = existingObjs.filter(function (obj) {
43973
43881
  return !isObjValid(obj);
43974
43882
  });
@@ -43984,15 +43892,13 @@
43984
43892
  : diffArrays(prevD, nextD, idAccessor);
43985
43893
  diff.update = diff.update.map(function (_ref4) {
43986
43894
  var _ref5 = _slicedToArray$3(_ref4, 2),
43987
- prevD = _ref5[0],
43988
- nextD = _ref5[1];
43989
-
43895
+ prevD = _ref5[0],
43896
+ nextD = _ref5[1];
43990
43897
  if (prevD !== nextD) {
43991
43898
  // transfer obj to new data point (if different)
43992
43899
  nextD[objBindAttr] = prevD[objBindAttr];
43993
43900
  nextD[objBindAttr][dataBindAttr] = nextD;
43994
43901
  }
43995
-
43996
43902
  return nextD;
43997
43903
  });
43998
43904
  diff.exit = diff.exit.concat(removeObjs.map(function (obj) {
@@ -44000,34 +43906,34 @@
44000
43906
  }));
44001
43907
  return diff;
44002
43908
  }
44003
-
44004
- function viewDigest(data, existingObjs, // list
44005
- appendObj, // item => {...} function
43909
+ function viewDigest(data, existingObjs,
43910
+ // list
43911
+ appendObj,
43912
+ // item => {...} function
44006
43913
  removeObj, // item => {...} function
44007
43914
  _ref7) {
44008
43915
  var _ref7$createObj = _ref7.createObj,
44009
- createObj = _ref7$createObj === void 0 ? function (d) {
44010
- return {};
44011
- } : _ref7$createObj,
44012
- _ref7$updateObj = _ref7.updateObj,
44013
- updateObj = _ref7$updateObj === void 0 ? function (obj, d) {} : _ref7$updateObj,
44014
- _ref7$exitObj = _ref7.exitObj,
44015
- exitObj = _ref7$exitObj === void 0 ? function (obj) {} : _ref7$exitObj,
44016
- _ref7$objBindAttr = _ref7.objBindAttr,
44017
- objBindAttr = _ref7$objBindAttr === void 0 ? '__obj' : _ref7$objBindAttr,
44018
- _ref7$dataBindAttr = _ref7.dataBindAttr,
44019
- dataBindAttr = _ref7$dataBindAttr === void 0 ? '__data' : _ref7$dataBindAttr,
44020
- dataDiffOptions = _objectWithoutProperties$2(_ref7, _excluded$2);
44021
-
43916
+ createObj = _ref7$createObj === void 0 ? function (d) {
43917
+ return {};
43918
+ } : _ref7$createObj,
43919
+ _ref7$updateObj = _ref7.updateObj,
43920
+ updateObj = _ref7$updateObj === void 0 ? function (obj, d) {} : _ref7$updateObj,
43921
+ _ref7$exitObj = _ref7.exitObj,
43922
+ exitObj = _ref7$exitObj === void 0 ? function (obj) {} : _ref7$exitObj,
43923
+ _ref7$objBindAttr = _ref7.objBindAttr,
43924
+ objBindAttr = _ref7$objBindAttr === void 0 ? '__obj' : _ref7$objBindAttr,
43925
+ _ref7$dataBindAttr = _ref7.dataBindAttr,
43926
+ dataBindAttr = _ref7$dataBindAttr === void 0 ? '__data' : _ref7$dataBindAttr,
43927
+ dataDiffOptions = _objectWithoutProperties$2(_ref7, _excluded$2);
44022
43928
  var _dataBindDiff = dataBindDiff(data, existingObjs, _objectSpread2$2({
44023
- objBindAttr: objBindAttr,
44024
- dataBindAttr: dataBindAttr
44025
- }, dataDiffOptions)),
44026
- enter = _dataBindDiff.enter,
44027
- update = _dataBindDiff.update,
44028
- exit = _dataBindDiff.exit; // Remove exiting points
44029
-
44030
-
43929
+ objBindAttr: objBindAttr,
43930
+ dataBindAttr: dataBindAttr
43931
+ }, dataDiffOptions)),
43932
+ enter = _dataBindDiff.enter,
43933
+ update = _dataBindDiff.update,
43934
+ exit = _dataBindDiff.exit;
43935
+
43936
+ // Remove exiting points
44031
43937
  exit.forEach(function (d) {
44032
43938
  var obj = d[objBindAttr];
44033
43939
  delete d[objBindAttr]; // unbind obj
@@ -44037,15 +43943,17 @@
44037
43943
  });
44038
43944
  var newObjs = createObjs(enter);
44039
43945
  var pointsData = [].concat(_toConsumableArray$4(enter), _toConsumableArray$4(update));
44040
- updateObjs(pointsData); // Add new points
43946
+ updateObjs(pointsData);
44041
43947
 
44042
- newObjs.forEach(appendObj); //
43948
+ // Add new points
43949
+ newObjs.forEach(appendObj);
43950
+
43951
+ //
44043
43952
 
44044
43953
  function createObjs(data) {
44045
43954
  var newObjs = [];
44046
43955
  data.forEach(function (d) {
44047
43956
  var obj = createObj(d);
44048
-
44049
43957
  if (obj) {
44050
43958
  obj[dataBindAttr] = d;
44051
43959
  d[objBindAttr] = obj;
@@ -44054,11 +43962,9 @@
44054
43962
  });
44055
43963
  return newObjs;
44056
43964
  }
44057
-
44058
43965
  function updateObjs(data) {
44059
43966
  data.forEach(function (d) {
44060
43967
  var obj = d[objBindAttr];
44061
-
44062
43968
  if (obj) {
44063
43969
  obj[dataBindAttr] = d;
44064
43970
  updateObj(obj, d);
@@ -64475,6 +64381,10 @@
64475
64381
  return this;
64476
64382
  }
64477
64383
  return state.globeObj.material;
64384
+ },
64385
+ _destructor: function _destructor(state) {
64386
+ emptyObject(state.globeObj);
64387
+ emptyObject(state.graticulesObj);
64478
64388
  }
64479
64389
  },
64480
64390
  stateInit: function stateInit() {
@@ -64900,6 +64810,12 @@
64900
64810
  triggerUpdate: false
64901
64811
  } // ms
64902
64812
  },
64813
+
64814
+ methods: {
64815
+ _destructor: function _destructor(state) {
64816
+ state.ticker && state.ticker.dispose();
64817
+ }
64818
+ },
64903
64819
  init: function init(threeObj, state) {
64904
64820
  // Clear the scene
64905
64821
  emptyObject(threeObj);
@@ -64908,7 +64824,8 @@
64908
64824
  state.scene = threeObj;
64909
64825
 
64910
64826
  // Kick-off dash animations
64911
- new FrameTicker$2().onTick.add(function (_, timeDelta) {
64827
+ state.ticker = new FrameTicker$2();
64828
+ state.ticker.onTick.add(function (_, timeDelta) {
64912
64829
  state.arcsData.filter(function (d) {
64913
64830
  return d.__threeObj && d.__threeObj.children.length && d.__threeObj.children[0].material && d.__threeObj.children[0].__dashAnimateStep;
64914
64831
  }).forEach(function (d) {
@@ -65901,6 +65818,12 @@
65901
65818
  // ms
65902
65819
  rendererSize: {} // necessary to set correct fatline proportions
65903
65820
  },
65821
+
65822
+ methods: {
65823
+ _destructor: function _destructor(state) {
65824
+ state.ticker && state.ticker.dispose();
65825
+ }
65826
+ },
65904
65827
  init: function init(threeObj, state) {
65905
65828
  // Clear the scene
65906
65829
  emptyObject(threeObj);
@@ -65909,7 +65832,8 @@
65909
65832
  state.scene = threeObj;
65910
65833
 
65911
65834
  // Kick-off dash animations
65912
- new FrameTicker$1().onTick.add(function (_, timeDelta) {
65835
+ state.ticker = new FrameTicker$1();
65836
+ state.ticker.onTick.add(function (_, timeDelta) {
65913
65837
  state.pathsData.filter(function (d) {
65914
65838
  return d.__threeObj && d.__threeObj.children.length && d.__threeObj.children[0].material && d.__threeObj.children[0].__dashAnimateStep;
65915
65839
  }).forEach(function (d) {
@@ -66620,13 +66544,20 @@
66620
66544
  triggerUpdate: false
66621
66545
  } // ms
66622
66546
  },
66547
+
66548
+ methods: {
66549
+ _destructor: function _destructor(state) {
66550
+ state.ticker && state.ticker.dispose();
66551
+ }
66552
+ },
66623
66553
  init: function init(threeObj, state) {
66624
66554
  // Clear the scene
66625
66555
  emptyObject(threeObj);
66626
66556
 
66627
66557
  // Main three object to manipulate
66628
66558
  state.scene = threeObj;
66629
- new FrameTicker().onTick.add(function (time) {
66559
+ state.ticker = new FrameTicker();
66560
+ state.ticker.onTick.add(function (time) {
66630
66561
  if (!state.ringsData.length) return;
66631
66562
 
66632
66563
  // Data accessors
@@ -67079,6 +67010,9 @@
67079
67010
  },
67080
67011
  _destructor: function _destructor(state) {
67081
67012
  cancelAnimationFrame(state.animationFrameRequestId);
67013
+ state.destructableLayers.forEach(function (l) {
67014
+ return l._destructor();
67015
+ });
67082
67016
  }
67083
67017
  }, linkedGlobeLayerMethods),
67084
67018
  stateInit: function stateInit() {
@@ -67100,6 +67034,9 @@
67100
67034
  return _objectSpread2$1(_objectSpread2$1({}, layers), {}, {
67101
67035
  layersThatNeedBehindGlobeChecker: Object.values(layers).filter(function (l) {
67102
67036
  return l.hasOwnProperty('isBehindGlobe');
67037
+ }),
67038
+ destructableLayers: Object.values(layers).filter(function (l) {
67039
+ return l.hasOwnProperty('_destructor');
67103
67040
  })
67104
67041
  });
67105
67042
  },