globe.gl 2.27.0 → 2.27.1

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,4 +1,4 @@
1
- // Version 2.27.0 globe.gl - https://github.com/vasturiano/globe.gl
1
+ // Version 2.27.1 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) :
@@ -57,7 +57,7 @@
57
57
  return target;
58
58
  }
59
59
  function _defineProperty$3(obj, key, value) {
60
- key = _toPropertyKey$4(key);
60
+ key = _toPropertyKey$7(key);
61
61
  if (key in obj) {
62
62
  Object.defineProperty(obj, key, {
63
63
  value: value,
@@ -122,7 +122,7 @@
122
122
  function _nonIterableSpread$5() {
123
123
  throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
124
124
  }
125
- function _toPrimitive$4(input, hint) {
125
+ function _toPrimitive$7(input, hint) {
126
126
  if (typeof input !== "object" || input === null) return input;
127
127
  var prim = input[Symbol.toPrimitive];
128
128
  if (prim !== undefined) {
@@ -132,8 +132,8 @@
132
132
  }
133
133
  return (hint === "string" ? String : Number)(input);
134
134
  }
135
- function _toPropertyKey$4(arg) {
136
- var key = _toPrimitive$4(arg, "string");
135
+ function _toPropertyKey$7(arg) {
136
+ var key = _toPrimitive$7(arg, "string");
137
137
  return typeof key === "symbol" ? key : String(key);
138
138
  }
139
139
 
@@ -36303,22 +36303,47 @@
36303
36303
 
36304
36304
  var debounce_1 = debounce;
36305
36305
 
36306
+ function _iterableToArrayLimit$6(arr, i) {
36307
+ var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
36308
+ if (null != _i) {
36309
+ var _s,
36310
+ _e,
36311
+ _x,
36312
+ _r,
36313
+ _arr = [],
36314
+ _n = !0,
36315
+ _d = !1;
36316
+ try {
36317
+ if (_x = (_i = _i.call(arr)).next, 0 === i) {
36318
+ if (Object(_i) !== _i) return;
36319
+ _n = !1;
36320
+ } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
36321
+ } catch (err) {
36322
+ _d = !0, _e = err;
36323
+ } finally {
36324
+ try {
36325
+ if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;
36326
+ } finally {
36327
+ if (_d) throw _e;
36328
+ }
36329
+ }
36330
+ return _arr;
36331
+ }
36332
+ }
36306
36333
  function _classCallCheck$3(instance, Constructor) {
36307
36334
  if (!(instance instanceof Constructor)) {
36308
36335
  throw new TypeError("Cannot call a class as a function");
36309
36336
  }
36310
36337
  }
36311
-
36312
36338
  function _defineProperties$3(target, props) {
36313
36339
  for (var i = 0; i < props.length; i++) {
36314
36340
  var descriptor = props[i];
36315
36341
  descriptor.enumerable = descriptor.enumerable || false;
36316
36342
  descriptor.configurable = true;
36317
36343
  if ("value" in descriptor) descriptor.writable = true;
36318
- Object.defineProperty(target, descriptor.key, descriptor);
36344
+ Object.defineProperty(target, _toPropertyKey$6(descriptor.key), descriptor);
36319
36345
  }
36320
36346
  }
36321
-
36322
36347
  function _createClass$3(Constructor, protoProps, staticProps) {
36323
36348
  if (protoProps) _defineProperties$3(Constructor.prototype, protoProps);
36324
36349
  if (staticProps) _defineProperties$3(Constructor, staticProps);
@@ -36327,45 +36352,12 @@
36327
36352
  });
36328
36353
  return Constructor;
36329
36354
  }
36330
-
36331
36355
  function _slicedToArray$6(arr, i) {
36332
36356
  return _arrayWithHoles$6(arr) || _iterableToArrayLimit$6(arr, i) || _unsupportedIterableToArray$6(arr, i) || _nonIterableRest$6();
36333
36357
  }
36334
-
36335
36358
  function _arrayWithHoles$6(arr) {
36336
36359
  if (Array.isArray(arr)) return arr;
36337
36360
  }
36338
-
36339
- function _iterableToArrayLimit$6(arr, i) {
36340
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
36341
-
36342
- if (_i == null) return;
36343
- var _arr = [];
36344
- var _n = true;
36345
- var _d = false;
36346
-
36347
- var _s, _e;
36348
-
36349
- try {
36350
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
36351
- _arr.push(_s.value);
36352
-
36353
- if (i && _arr.length === i) break;
36354
- }
36355
- } catch (err) {
36356
- _d = true;
36357
- _e = err;
36358
- } finally {
36359
- try {
36360
- if (!_n && _i["return"] != null) _i["return"]();
36361
- } finally {
36362
- if (_d) throw _e;
36363
- }
36364
- }
36365
-
36366
- return _arr;
36367
- }
36368
-
36369
36361
  function _unsupportedIterableToArray$6(o, minLen) {
36370
36362
  if (!o) return;
36371
36363
  if (typeof o === "string") return _arrayLikeToArray$6(o, minLen);
@@ -36374,50 +36366,57 @@
36374
36366
  if (n === "Map" || n === "Set") return Array.from(o);
36375
36367
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$6(o, minLen);
36376
36368
  }
36377
-
36378
36369
  function _arrayLikeToArray$6(arr, len) {
36379
36370
  if (len == null || len > arr.length) len = arr.length;
36380
-
36381
36371
  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
36382
-
36383
36372
  return arr2;
36384
36373
  }
36385
-
36386
36374
  function _nonIterableRest$6() {
36387
36375
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
36388
36376
  }
36377
+ function _toPrimitive$6(input, hint) {
36378
+ if (typeof input !== "object" || input === null) return input;
36379
+ var prim = input[Symbol.toPrimitive];
36380
+ if (prim !== undefined) {
36381
+ var res = prim.call(input, hint || "default");
36382
+ if (typeof res !== "object") return res;
36383
+ throw new TypeError("@@toPrimitive must return a primitive value.");
36384
+ }
36385
+ return (hint === "string" ? String : Number)(input);
36386
+ }
36387
+ function _toPropertyKey$6(arg) {
36388
+ var key = _toPrimitive$6(arg, "string");
36389
+ return typeof key === "symbol" ? key : String(key);
36390
+ }
36389
36391
 
36390
36392
  var Prop = /*#__PURE__*/_createClass$3(function Prop(name, _ref) {
36391
36393
  var _ref$default = _ref["default"],
36392
- defaultVal = _ref$default === void 0 ? null : _ref$default,
36393
- _ref$triggerUpdate = _ref.triggerUpdate,
36394
- triggerUpdate = _ref$triggerUpdate === void 0 ? true : _ref$triggerUpdate,
36395
- _ref$onChange = _ref.onChange,
36396
- onChange = _ref$onChange === void 0 ? function (newVal, state) {} : _ref$onChange;
36397
-
36394
+ defaultVal = _ref$default === void 0 ? null : _ref$default,
36395
+ _ref$triggerUpdate = _ref.triggerUpdate,
36396
+ triggerUpdate = _ref$triggerUpdate === void 0 ? true : _ref$triggerUpdate,
36397
+ _ref$onChange = _ref.onChange,
36398
+ onChange = _ref$onChange === void 0 ? function (newVal, state) {} : _ref$onChange;
36398
36399
  _classCallCheck$3(this, Prop);
36399
-
36400
36400
  this.name = name;
36401
36401
  this.defaultVal = defaultVal;
36402
36402
  this.triggerUpdate = triggerUpdate;
36403
36403
  this.onChange = onChange;
36404
36404
  });
36405
-
36406
36405
  function index$2 (_ref2) {
36407
36406
  var _ref2$stateInit = _ref2.stateInit,
36408
- stateInit = _ref2$stateInit === void 0 ? function () {
36409
- return {};
36410
- } : _ref2$stateInit,
36411
- _ref2$props = _ref2.props,
36412
- rawProps = _ref2$props === void 0 ? {} : _ref2$props,
36413
- _ref2$methods = _ref2.methods,
36414
- methods = _ref2$methods === void 0 ? {} : _ref2$methods,
36415
- _ref2$aliases = _ref2.aliases,
36416
- aliases = _ref2$aliases === void 0 ? {} : _ref2$aliases,
36417
- _ref2$init = _ref2.init,
36418
- initFn = _ref2$init === void 0 ? function () {} : _ref2$init,
36419
- _ref2$update = _ref2.update,
36420
- updateFn = _ref2$update === void 0 ? function () {} : _ref2$update;
36407
+ stateInit = _ref2$stateInit === void 0 ? function () {
36408
+ return {};
36409
+ } : _ref2$stateInit,
36410
+ _ref2$props = _ref2.props,
36411
+ rawProps = _ref2$props === void 0 ? {} : _ref2$props,
36412
+ _ref2$methods = _ref2.methods,
36413
+ methods = _ref2$methods === void 0 ? {} : _ref2$methods,
36414
+ _ref2$aliases = _ref2.aliases,
36415
+ aliases = _ref2$aliases === void 0 ? {} : _ref2$aliases,
36416
+ _ref2$init = _ref2.init,
36417
+ initFn = _ref2$init === void 0 ? function () {} : _ref2$init,
36418
+ _ref2$update = _ref2.update,
36419
+ updateFn = _ref2$update === void 0 ? function () {} : _ref2$update;
36421
36420
  // Parse props into Prop instances
36422
36421
  var props = Object.keys(rawProps).map(function (propName) {
36423
36422
  return new Prop(propName, rawProps[propName]);
@@ -36425,98 +36424,94 @@
36425
36424
  return function () {
36426
36425
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
36427
36426
  // Holds component state
36428
- var state = Object.assign({}, stateInit instanceof Function ? stateInit(options) : stateInit, // Support plain objects for backwards compatibility
36427
+ var state = Object.assign({}, stateInit instanceof Function ? stateInit(options) : stateInit,
36428
+ // Support plain objects for backwards compatibility
36429
36429
  {
36430
36430
  initialised: false
36431
- }); // keeps track of which props triggered an update
36431
+ });
36432
36432
 
36433
- var changedProps = {}; // Component constructor
36433
+ // keeps track of which props triggered an update
36434
+ var changedProps = {};
36434
36435
 
36436
+ // Component constructor
36435
36437
  function comp(nodeElement) {
36436
36438
  initStatic(nodeElement, options);
36437
36439
  digest();
36438
36440
  return comp;
36439
36441
  }
36440
-
36441
36442
  var initStatic = function initStatic(nodeElement, options) {
36442
36443
  initFn.call(comp, nodeElement, state, options);
36443
36444
  state.initialised = true;
36444
36445
  };
36445
-
36446
36446
  var digest = debounce_1(function () {
36447
36447
  if (!state.initialised) {
36448
36448
  return;
36449
36449
  }
36450
-
36451
36450
  updateFn.call(comp, state, changedProps);
36452
36451
  changedProps = {};
36453
- }, 1); // Getter/setter methods
36452
+ }, 1);
36454
36453
 
36454
+ // Getter/setter methods
36455
36455
  props.forEach(function (prop) {
36456
36456
  comp[prop.name] = getSetProp(prop);
36457
-
36458
36457
  function getSetProp(_ref3) {
36459
36458
  var prop = _ref3.name,
36460
- _ref3$triggerUpdate = _ref3.triggerUpdate,
36461
- redigest = _ref3$triggerUpdate === void 0 ? false : _ref3$triggerUpdate,
36462
- _ref3$onChange = _ref3.onChange,
36463
- onChange = _ref3$onChange === void 0 ? function (newVal, state) {} : _ref3$onChange,
36464
- _ref3$defaultVal = _ref3.defaultVal,
36465
- defaultVal = _ref3$defaultVal === void 0 ? null : _ref3$defaultVal;
36459
+ _ref3$triggerUpdate = _ref3.triggerUpdate,
36460
+ redigest = _ref3$triggerUpdate === void 0 ? false : _ref3$triggerUpdate,
36461
+ _ref3$onChange = _ref3.onChange,
36462
+ onChange = _ref3$onChange === void 0 ? function (newVal, state) {} : _ref3$onChange,
36463
+ _ref3$defaultVal = _ref3.defaultVal,
36464
+ defaultVal = _ref3$defaultVal === void 0 ? null : _ref3$defaultVal;
36466
36465
  return function (_) {
36467
36466
  var curVal = state[prop];
36468
-
36469
36467
  if (!arguments.length) {
36470
36468
  return curVal;
36471
36469
  } // Getter mode
36472
36470
 
36473
-
36474
36471
  var val = _ === undefined ? defaultVal : _; // pick default if value passed is undefined
36475
-
36476
36472
  state[prop] = val;
36477
- onChange.call(comp, val, state, curVal); // track changed props
36473
+ onChange.call(comp, val, state, curVal);
36478
36474
 
36475
+ // track changed props
36479
36476
  !changedProps.hasOwnProperty(prop) && (changedProps[prop] = curVal);
36480
-
36481
36477
  if (redigest) {
36482
36478
  digest();
36483
36479
  }
36484
-
36485
36480
  return comp;
36486
36481
  };
36487
36482
  }
36488
- }); // Other methods
36483
+ });
36489
36484
 
36485
+ // Other methods
36490
36486
  Object.keys(methods).forEach(function (methodName) {
36491
36487
  comp[methodName] = function () {
36492
36488
  var _methods$methodName;
36493
-
36494
36489
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
36495
36490
  args[_key] = arguments[_key];
36496
36491
  }
36497
-
36498
36492
  return (_methods$methodName = methods[methodName]).call.apply(_methods$methodName, [comp, state].concat(args));
36499
36493
  };
36500
- }); // Link aliases
36494
+ });
36501
36495
 
36496
+ // Link aliases
36502
36497
  Object.entries(aliases).forEach(function (_ref4) {
36503
36498
  var _ref5 = _slicedToArray$6(_ref4, 2),
36504
- alias = _ref5[0],
36505
- target = _ref5[1];
36506
-
36499
+ alias = _ref5[0],
36500
+ target = _ref5[1];
36507
36501
  return comp[alias] = comp[target];
36508
- }); // Reset all component props to their default value
36502
+ });
36509
36503
 
36504
+ // Reset all component props to their default value
36510
36505
  comp.resetProps = function () {
36511
36506
  props.forEach(function (prop) {
36512
36507
  comp[prop.name](prop.defaultVal);
36513
36508
  });
36514
36509
  return comp;
36515
- }; //
36510
+ };
36516
36511
 
36512
+ //
36517
36513
 
36518
36514
  comp.resetProps(); // Apply all prop defaults
36519
-
36520
36515
  state._rerender = digest; // Expose digest method
36521
36516
 
36522
36517
  return comp;
@@ -40381,22 +40376,47 @@
40381
40376
  .clipAngle(142);
40382
40377
  }
40383
40378
 
40379
+ function _iterableToArrayLimit$5(arr, i) {
40380
+ var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
40381
+ if (null != _i) {
40382
+ var _s,
40383
+ _e,
40384
+ _x,
40385
+ _r,
40386
+ _arr = [],
40387
+ _n = !0,
40388
+ _d = !1;
40389
+ try {
40390
+ if (_x = (_i = _i.call(arr)).next, 0 === i) {
40391
+ if (Object(_i) !== _i) return;
40392
+ _n = !1;
40393
+ } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
40394
+ } catch (err) {
40395
+ _d = !0, _e = err;
40396
+ } finally {
40397
+ try {
40398
+ if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;
40399
+ } finally {
40400
+ if (_d) throw _e;
40401
+ }
40402
+ }
40403
+ return _arr;
40404
+ }
40405
+ }
40384
40406
  function _classCallCheck$2(instance, Constructor) {
40385
40407
  if (!(instance instanceof Constructor)) {
40386
40408
  throw new TypeError("Cannot call a class as a function");
40387
40409
  }
40388
40410
  }
40389
-
40390
40411
  function _defineProperties$2(target, props) {
40391
40412
  for (var i = 0; i < props.length; i++) {
40392
40413
  var descriptor = props[i];
40393
40414
  descriptor.enumerable = descriptor.enumerable || false;
40394
40415
  descriptor.configurable = true;
40395
40416
  if ("value" in descriptor) descriptor.writable = true;
40396
- Object.defineProperty(target, descriptor.key, descriptor);
40417
+ Object.defineProperty(target, _toPropertyKey$5(descriptor.key), descriptor);
40397
40418
  }
40398
40419
  }
40399
-
40400
40420
  function _createClass$2(Constructor, protoProps, staticProps) {
40401
40421
  if (protoProps) _defineProperties$2(Constructor.prototype, protoProps);
40402
40422
  if (staticProps) _defineProperties$2(Constructor, staticProps);
@@ -40405,12 +40425,10 @@
40405
40425
  });
40406
40426
  return Constructor;
40407
40427
  }
40408
-
40409
40428
  function _inherits$2(subClass, superClass) {
40410
40429
  if (typeof superClass !== "function" && superClass !== null) {
40411
40430
  throw new TypeError("Super expression must either be null or a function");
40412
40431
  }
40413
-
40414
40432
  subClass.prototype = Object.create(superClass && superClass.prototype, {
40415
40433
  constructor: {
40416
40434
  value: subClass,
@@ -40423,14 +40441,12 @@
40423
40441
  });
40424
40442
  if (superClass) _setPrototypeOf$3(subClass, superClass);
40425
40443
  }
40426
-
40427
40444
  function _getPrototypeOf$3(o) {
40428
40445
  _getPrototypeOf$3 = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
40429
40446
  return o.__proto__ || Object.getPrototypeOf(o);
40430
40447
  };
40431
40448
  return _getPrototypeOf$3(o);
40432
40449
  }
40433
-
40434
40450
  function _setPrototypeOf$3(o, p) {
40435
40451
  _setPrototypeOf$3 = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
40436
40452
  o.__proto__ = p;
@@ -40438,12 +40454,10 @@
40438
40454
  };
40439
40455
  return _setPrototypeOf$3(o, p);
40440
40456
  }
40441
-
40442
40457
  function _isNativeReflectConstruct$3() {
40443
40458
  if (typeof Reflect === "undefined" || !Reflect.construct) return false;
40444
40459
  if (Reflect.construct.sham) return false;
40445
40460
  if (typeof Proxy === "function") return true;
40446
-
40447
40461
  try {
40448
40462
  Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
40449
40463
  return true;
@@ -40451,82 +40465,40 @@
40451
40465
  return false;
40452
40466
  }
40453
40467
  }
40454
-
40455
40468
  function _assertThisInitialized$3(self) {
40456
40469
  if (self === void 0) {
40457
40470
  throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
40458
40471
  }
40459
-
40460
40472
  return self;
40461
40473
  }
40462
-
40463
40474
  function _possibleConstructorReturn$2(self, call) {
40464
40475
  if (call && (typeof call === "object" || typeof call === "function")) {
40465
40476
  return call;
40466
40477
  } else if (call !== void 0) {
40467
40478
  throw new TypeError("Derived constructors may only return object or undefined");
40468
40479
  }
40469
-
40470
40480
  return _assertThisInitialized$3(self);
40471
40481
  }
40472
-
40473
40482
  function _createSuper$2(Derived) {
40474
40483
  var hasNativeReflectConstruct = _isNativeReflectConstruct$3();
40475
-
40476
40484
  return function _createSuperInternal() {
40477
40485
  var Super = _getPrototypeOf$3(Derived),
40478
- result;
40479
-
40486
+ result;
40480
40487
  if (hasNativeReflectConstruct) {
40481
40488
  var NewTarget = _getPrototypeOf$3(this).constructor;
40482
-
40483
40489
  result = Reflect.construct(Super, arguments, NewTarget);
40484
40490
  } else {
40485
40491
  result = Super.apply(this, arguments);
40486
40492
  }
40487
-
40488
40493
  return _possibleConstructorReturn$2(this, result);
40489
40494
  };
40490
40495
  }
40491
-
40492
40496
  function _slicedToArray$5(arr, i) {
40493
40497
  return _arrayWithHoles$5(arr) || _iterableToArrayLimit$5(arr, i) || _unsupportedIterableToArray$5(arr, i) || _nonIterableRest$5();
40494
40498
  }
40495
-
40496
40499
  function _arrayWithHoles$5(arr) {
40497
40500
  if (Array.isArray(arr)) return arr;
40498
40501
  }
40499
-
40500
- function _iterableToArrayLimit$5(arr, i) {
40501
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
40502
-
40503
- if (_i == null) return;
40504
- var _arr = [];
40505
- var _n = true;
40506
- var _d = false;
40507
-
40508
- var _s, _e;
40509
-
40510
- try {
40511
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
40512
- _arr.push(_s.value);
40513
-
40514
- if (i && _arr.length === i) break;
40515
- }
40516
- } catch (err) {
40517
- _d = true;
40518
- _e = err;
40519
- } finally {
40520
- try {
40521
- if (!_n && _i["return"] != null) _i["return"]();
40522
- } finally {
40523
- if (_d) throw _e;
40524
- }
40525
- }
40526
-
40527
- return _arr;
40528
- }
40529
-
40530
40502
  function _unsupportedIterableToArray$5(o, minLen) {
40531
40503
  if (!o) return;
40532
40504
  if (typeof o === "string") return _arrayLikeToArray$5(o, minLen);
@@ -40535,29 +40507,21 @@
40535
40507
  if (n === "Map" || n === "Set") return Array.from(o);
40536
40508
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$5(o, minLen);
40537
40509
  }
40538
-
40539
40510
  function _arrayLikeToArray$5(arr, len) {
40540
40511
  if (len == null || len > arr.length) len = arr.length;
40541
-
40542
40512
  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
40543
-
40544
40513
  return arr2;
40545
40514
  }
40546
-
40547
40515
  function _nonIterableRest$5() {
40548
40516
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
40549
40517
  }
40550
-
40551
40518
  function _createForOfIteratorHelper(o, allowArrayLike) {
40552
40519
  var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
40553
-
40554
40520
  if (!it) {
40555
40521
  if (Array.isArray(o) || (it = _unsupportedIterableToArray$5(o)) || allowArrayLike && o && typeof o.length === "number") {
40556
40522
  if (it) o = it;
40557
40523
  var i = 0;
40558
-
40559
40524
  var F = function () {};
40560
-
40561
40525
  return {
40562
40526
  s: F,
40563
40527
  n: function () {
@@ -40575,13 +40539,11 @@
40575
40539
  f: F
40576
40540
  };
40577
40541
  }
40578
-
40579
40542
  throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
40580
40543
  }
40581
-
40582
40544
  var normalCompletion = true,
40583
- didErr = false,
40584
- err;
40545
+ didErr = false,
40546
+ err;
40585
40547
  return {
40586
40548
  s: function () {
40587
40549
  it = it.call(o);
@@ -40604,6 +40566,20 @@
40604
40566
  }
40605
40567
  };
40606
40568
  }
40569
+ function _toPrimitive$5(input, hint) {
40570
+ if (typeof input !== "object" || input === null) return input;
40571
+ var prim = input[Symbol.toPrimitive];
40572
+ if (prim !== undefined) {
40573
+ var res = prim.call(input, hint || "default");
40574
+ if (typeof res !== "object") return res;
40575
+ throw new TypeError("@@toPrimitive must return a primitive value.");
40576
+ }
40577
+ return (hint === "string" ? String : Number)(input);
40578
+ }
40579
+ function _toPropertyKey$5(arg) {
40580
+ var key = _toPrimitive$5(arg, "string");
40581
+ return typeof key === "symbol" ? key : String(key);
40582
+ }
40607
40583
 
40608
40584
  var interpolateLine = function interpolateLine() {
40609
40585
  var lineCoords = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
@@ -40613,19 +40589,16 @@
40613
40589
  lineCoords.forEach(function (pnt) {
40614
40590
  if (prevPnt) {
40615
40591
  var dist = geoDistance(pnt, prevPnt) * 180 / Math.PI;
40616
-
40617
40592
  if (dist > maxDegDistance) {
40618
40593
  var interpol = geoInterpolate(prevPnt, pnt);
40619
40594
  var tStep = 1 / Math.ceil(dist / maxDegDistance);
40620
40595
  var t = tStep;
40621
-
40622
40596
  while (t < 1) {
40623
40597
  result.push(interpol(t));
40624
40598
  t += tStep;
40625
40599
  }
40626
40600
  }
40627
40601
  }
40628
-
40629
40602
  result.push(prevPnt = pnt);
40630
40603
  });
40631
40604
  return result;
@@ -40637,29 +40610,25 @@
40637
40610
  Float32BufferAttribute: Float32BufferAttribute
40638
40611
  };
40639
40612
 
40613
+ // support both modes for backwards threejs compatibility
40640
40614
  var setAttributeFn$4 = new THREE$j.BufferGeometry().setAttribute ? 'setAttribute' : 'addAttribute';
40641
-
40642
40615
  var GeoJsonGeometry = /*#__PURE__*/function (_THREE$BufferGeometry) {
40643
40616
  _inherits$2(GeoJsonGeometry, _THREE$BufferGeometry);
40644
-
40645
40617
  var _super = _createSuper$2(GeoJsonGeometry);
40646
-
40647
40618
  function GeoJsonGeometry(geoJson) {
40648
40619
  var _this;
40649
-
40650
40620
  var radius = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
40651
40621
  var resolution = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 5;
40652
-
40653
40622
  _classCallCheck$2(this, GeoJsonGeometry);
40654
-
40655
40623
  _this = _super.call(this);
40656
40624
  _this.type = 'GeoJsonGeometry';
40657
40625
  _this.parameters = {
40658
40626
  geoJson: geoJson,
40659
40627
  radius: radius,
40660
40628
  resolution: resolution
40661
- }; // process various geometry types
40629
+ };
40662
40630
 
40631
+ // process various geometry types
40663
40632
  var groups = ({
40664
40633
  Point: genPoint,
40665
40634
  MultiPoint: genMultiPoint,
@@ -40669,11 +40638,11 @@
40669
40638
  MultiPolygon: genMultiPolygon
40670
40639
  }[geoJson.type] || function () {
40671
40640
  return [];
40672
- })(geoJson.coordinates, radius); // concat groups
40673
-
40641
+ })(geoJson.coordinates, radius);
40674
40642
 
40643
+ // concat groups
40675
40644
  var indices = [],
40676
- vertices = [];
40645
+ vertices = [];
40677
40646
  var groupCnt = 0;
40678
40647
  groups.forEach(function (newG) {
40679
40648
  var prevIndCnt = indices.length;
@@ -40681,12 +40650,14 @@
40681
40650
  indices: indices,
40682
40651
  vertices: vertices
40683
40652
  }, newG);
40684
-
40685
40653
  _this.addGroup(prevIndCnt, indices.length - prevIndCnt, groupCnt++);
40686
- }); // build geometry
40654
+ });
40687
40655
 
40656
+ // build geometry
40688
40657
  indices.length && _this.setIndex(indices);
40689
- vertices.length && _this[setAttributeFn$4]('position', new THREE$j.Float32BufferAttribute(vertices, 3)); //
40658
+ vertices.length && _this[setAttributeFn$4]('position', new THREE$j.Float32BufferAttribute(vertices, 3));
40659
+
40660
+ //
40690
40661
 
40691
40662
  function genPoint(coords, r) {
40692
40663
  var vertices = polar2Cartesian$2(coords[1], coords[0], r);
@@ -40696,7 +40667,6 @@
40696
40667
  indices: indices
40697
40668
  }];
40698
40669
  }
40699
-
40700
40670
  function genMultiPoint(coords, r) {
40701
40671
  var result = {
40702
40672
  vertices: [],
@@ -40706,38 +40676,30 @@
40706
40676
  return genPoint(c, r);
40707
40677
  }).forEach(function (_ref) {
40708
40678
  var _ref2 = _slicedToArray$5(_ref, 1),
40709
- newPnt = _ref2[0];
40710
-
40679
+ newPnt = _ref2[0];
40711
40680
  concatGroup(result, newPnt);
40712
40681
  });
40713
40682
  return [result];
40714
40683
  }
40715
-
40716
40684
  function genLineString(coords, r) {
40717
40685
  var coords3d = interpolateLine(coords, resolution).map(function (_ref3) {
40718
40686
  var _ref4 = _slicedToArray$5(_ref3, 2),
40719
- lng = _ref4[0],
40720
- lat = _ref4[1];
40721
-
40687
+ lng = _ref4[0],
40688
+ lat = _ref4[1];
40722
40689
  return polar2Cartesian$2(lat, lng, r);
40723
40690
  });
40724
-
40725
40691
  var _earcut$flatten = earcutExports.flatten([coords3d]),
40726
- vertices = _earcut$flatten.vertices;
40727
-
40692
+ vertices = _earcut$flatten.vertices;
40728
40693
  var numPoints = Math.round(vertices.length / 3);
40729
40694
  var indices = [];
40730
-
40731
40695
  for (var vIdx = 1; vIdx < numPoints; vIdx++) {
40732
40696
  indices.push(vIdx - 1, vIdx);
40733
40697
  }
40734
-
40735
40698
  return [{
40736
40699
  vertices: vertices,
40737
40700
  indices: indices
40738
40701
  }];
40739
40702
  }
40740
-
40741
40703
  function genMultiLineString(coords, r) {
40742
40704
  var result = {
40743
40705
  vertices: [],
@@ -40747,36 +40709,32 @@
40747
40709
  return genLineString(c, r);
40748
40710
  }).forEach(function (_ref5) {
40749
40711
  var _ref6 = _slicedToArray$5(_ref5, 1),
40750
- newLine = _ref6[0];
40751
-
40712
+ newLine = _ref6[0];
40752
40713
  concatGroup(result, newLine);
40753
40714
  });
40754
40715
  return [result];
40755
40716
  }
40756
-
40757
40717
  function genPolygon(coords, r) {
40758
40718
  var coords3d = coords.map(function (coordsSegment) {
40759
40719
  return interpolateLine(coordsSegment, resolution).map(function (_ref7) {
40760
40720
  var _ref8 = _slicedToArray$5(_ref7, 2),
40761
- lng = _ref8[0],
40762
- lat = _ref8[1];
40763
-
40721
+ lng = _ref8[0],
40722
+ lat = _ref8[1];
40764
40723
  return polar2Cartesian$2(lat, lng, r);
40765
40724
  });
40766
- }); // Each point generates 3 vertice items (x,y,z).
40725
+ });
40767
40726
 
40727
+ // Each point generates 3 vertice items (x,y,z).
40768
40728
  var _earcut$flatten2 = earcutExports.flatten(coords3d),
40769
- vertices = _earcut$flatten2.vertices,
40770
- holes = _earcut$flatten2.holes;
40771
-
40729
+ vertices = _earcut$flatten2.vertices,
40730
+ holes = _earcut$flatten2.holes;
40772
40731
  var firstHoleIdx = holes[0] || Infinity;
40773
40732
  var outerVertices = vertices.slice(0, firstHoleIdx * 3);
40774
40733
  var holeVertices = vertices.slice(firstHoleIdx * 3);
40775
40734
  var holesIdx = new Set(holes);
40776
40735
  var numPoints = Math.round(vertices.length / 3);
40777
40736
  var outerIndices = [],
40778
- holeIndices = [];
40779
-
40737
+ holeIndices = [];
40780
40738
  for (var vIdx = 1; vIdx < numPoints; vIdx++) {
40781
40739
  if (!holesIdx.has(vIdx)) {
40782
40740
  if (vIdx < firstHoleIdx) {
@@ -40786,22 +40744,18 @@
40786
40744
  }
40787
40745
  }
40788
40746
  }
40789
-
40790
40747
  var groups = [{
40791
40748
  indices: outerIndices,
40792
40749
  vertices: outerVertices
40793
40750
  }];
40794
-
40795
40751
  if (holes.length) {
40796
40752
  groups.push({
40797
40753
  indices: holeIndices,
40798
40754
  vertices: holeVertices
40799
40755
  });
40800
40756
  }
40801
-
40802
40757
  return groups;
40803
40758
  }
40804
-
40805
40759
  function genMultiPolygon(coords, r) {
40806
40760
  var outer = {
40807
40761
  vertices: [],
@@ -40815,9 +40769,8 @@
40815
40769
  return genPolygon(c, r);
40816
40770
  }).forEach(function (_ref9) {
40817
40771
  var _ref10 = _slicedToArray$5(_ref9, 2),
40818
- newOuter = _ref10[0],
40819
- newHoles = _ref10[1];
40820
-
40772
+ newOuter = _ref10[0],
40773
+ newHoles = _ref10[1];
40821
40774
  concatGroup(outer, newOuter);
40822
40775
  newHoles && concatGroup(holes, newHoles);
40823
40776
  });
@@ -40825,14 +40778,10 @@
40825
40778
  holes.vertices.length && groups.push(holes);
40826
40779
  return groups;
40827
40780
  }
40828
-
40829
40781
  return _this;
40830
40782
  }
40831
-
40832
40783
  return _createClass$2(GeoJsonGeometry);
40833
40784
  }(THREE$j.BufferGeometry); //
40834
-
40835
-
40836
40785
  function concatGroup(main, extra) {
40837
40786
  var prevVertCnt = Math.round(main.vertices.length / 3);
40838
40787
  concatArr(main.vertices, extra.vertices);
@@ -40840,11 +40789,9 @@
40840
40789
  return ind + prevVertCnt;
40841
40790
  }));
40842
40791
  }
40843
-
40844
40792
  function concatArr(target, src) {
40845
40793
  var _iterator = _createForOfIteratorHelper(src),
40846
- _step;
40847
-
40794
+ _step;
40848
40795
  try {
40849
40796
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
40850
40797
  var e = _step.value;
@@ -40856,13 +40803,14 @@
40856
40803
  _iterator.f();
40857
40804
  }
40858
40805
  }
40859
-
40860
40806
  function polar2Cartesian$2(lat, lng) {
40861
40807
  var r = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
40862
40808
  var phi = (90 - lat) * Math.PI / 180;
40863
40809
  var theta = (90 - lng) * Math.PI / 180;
40864
- return [r * Math.sin(phi) * Math.cos(theta), // x
40865
- r * Math.cos(phi), // y
40810
+ return [r * Math.sin(phi) * Math.cos(theta),
40811
+ // x
40812
+ r * Math.cos(phi),
40813
+ // y
40866
40814
  r * Math.sin(phi) * Math.sin(theta) // z
40867
40815
  ];
40868
40816
  }
@@ -42215,8 +42163,6 @@
42215
42163
  };
42216
42164
  }); // constant
42217
42165
 
42218
- var accessorFn = index$1;
42219
-
42220
42166
  // This file is autogenerated. It's used to publish ESM to npm.
42221
42167
  function _typeof(obj) {
42222
42168
  "@babel/helpers - typeof";
@@ -43396,31 +43342,51 @@
43396
43342
  };
43397
43343
  }
43398
43344
 
43345
+ function _iterableToArrayLimit$4(arr, i) {
43346
+ var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
43347
+ if (null != _i) {
43348
+ var _s,
43349
+ _e,
43350
+ _x,
43351
+ _r,
43352
+ _arr = [],
43353
+ _n = !0,
43354
+ _d = !1;
43355
+ try {
43356
+ if (_x = (_i = _i.call(arr)).next, 0 === i) {
43357
+ if (Object(_i) !== _i) return;
43358
+ _n = !1;
43359
+ } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
43360
+ } catch (err) {
43361
+ _d = !0, _e = err;
43362
+ } finally {
43363
+ try {
43364
+ if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;
43365
+ } finally {
43366
+ if (_d) throw _e;
43367
+ }
43368
+ }
43369
+ return _arr;
43370
+ }
43371
+ }
43399
43372
  function _objectWithoutPropertiesLoose$2(source, excluded) {
43400
43373
  if (source == null) return {};
43401
43374
  var target = {};
43402
43375
  var sourceKeys = Object.keys(source);
43403
43376
  var key, i;
43404
-
43405
43377
  for (i = 0; i < sourceKeys.length; i++) {
43406
43378
  key = sourceKeys[i];
43407
43379
  if (excluded.indexOf(key) >= 0) continue;
43408
43380
  target[key] = source[key];
43409
43381
  }
43410
-
43411
43382
  return target;
43412
43383
  }
43413
-
43414
43384
  function _objectWithoutProperties$2(source, excluded) {
43415
43385
  if (source == null) return {};
43416
-
43417
43386
  var target = _objectWithoutPropertiesLoose$2(source, excluded);
43418
-
43419
43387
  var key, i;
43420
-
43421
43388
  if (Object.getOwnPropertySymbols) {
43422
43389
  var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
43423
-
43424
43390
  for (i = 0; i < sourceSymbolKeys.length; i++) {
43425
43391
  key = sourceSymbolKeys[i];
43426
43392
  if (excluded.indexOf(key) >= 0) continue;
@@ -43428,60 +43394,23 @@
43428
43394
  target[key] = source[key];
43429
43395
  }
43430
43396
  }
43431
-
43432
43397
  return target;
43433
43398
  }
43434
-
43435
43399
  function _slicedToArray$4(arr, i) {
43436
43400
  return _arrayWithHoles$4(arr) || _iterableToArrayLimit$4(arr, i) || _unsupportedIterableToArray$4(arr, i) || _nonIterableRest$4();
43437
43401
  }
43438
-
43439
43402
  function _toConsumableArray$4(arr) {
43440
43403
  return _arrayWithoutHoles$4(arr) || _iterableToArray$4(arr) || _unsupportedIterableToArray$4(arr) || _nonIterableSpread$4();
43441
43404
  }
43442
-
43443
43405
  function _arrayWithoutHoles$4(arr) {
43444
43406
  if (Array.isArray(arr)) return _arrayLikeToArray$4(arr);
43445
43407
  }
43446
-
43447
43408
  function _arrayWithHoles$4(arr) {
43448
43409
  if (Array.isArray(arr)) return arr;
43449
43410
  }
43450
-
43451
43411
  function _iterableToArray$4(iter) {
43452
43412
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
43453
43413
  }
43454
-
43455
- function _iterableToArrayLimit$4(arr, i) {
43456
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
43457
-
43458
- if (_i == null) return;
43459
- var _arr = [];
43460
- var _n = true;
43461
- var _d = false;
43462
-
43463
- var _s, _e;
43464
-
43465
- try {
43466
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
43467
- _arr.push(_s.value);
43468
-
43469
- if (i && _arr.length === i) break;
43470
- }
43471
- } catch (err) {
43472
- _d = true;
43473
- _e = err;
43474
- } finally {
43475
- try {
43476
- if (!_n && _i["return"] != null) _i["return"]();
43477
- } finally {
43478
- if (_d) throw _e;
43479
- }
43480
- }
43481
-
43482
- return _arr;
43483
- }
43484
-
43485
43414
  function _unsupportedIterableToArray$4(o, minLen) {
43486
43415
  if (!o) return;
43487
43416
  if (typeof o === "string") return _arrayLikeToArray$4(o, minLen);
@@ -43490,39 +43419,29 @@
43490
43419
  if (n === "Map" || n === "Set") return Array.from(o);
43491
43420
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$4(o, minLen);
43492
43421
  }
43493
-
43494
43422
  function _arrayLikeToArray$4(arr, len) {
43495
43423
  if (len == null || len > arr.length) len = arr.length;
43496
-
43497
43424
  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
43498
-
43499
43425
  return arr2;
43500
43426
  }
43501
-
43502
43427
  function _nonIterableSpread$4() {
43503
43428
  throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
43504
43429
  }
43505
-
43506
43430
  function _nonIterableRest$4() {
43507
43431
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
43508
43432
  }
43509
-
43510
- function _toPrimitive$3(input, hint) {
43433
+ function _toPrimitive$4(input, hint) {
43511
43434
  if (typeof input !== "object" || input === null) return input;
43512
43435
  var prim = input[Symbol.toPrimitive];
43513
-
43514
43436
  if (prim !== undefined) {
43515
43437
  var res = prim.call(input, hint || "default");
43516
43438
  if (typeof res !== "object") return res;
43517
43439
  throw new TypeError("@@toPrimitive must return a primitive value.");
43518
43440
  }
43519
-
43520
43441
  return (hint === "string" ? String : Number)(input);
43521
43442
  }
43522
-
43523
- function _toPropertyKey$3(arg) {
43524
- var key = _toPrimitive$3(arg, "string");
43525
-
43443
+ function _toPropertyKey$4(arg) {
43444
+ var key = _toPrimitive$4(arg, "string");
43526
43445
  return typeof key === "symbol" ? key : String(key);
43527
43446
  }
43528
43447
 
@@ -43542,25 +43461,21 @@
43542
43461
  var itemVal = item;
43543
43462
  keys.forEach(function (_ref, idx) {
43544
43463
  var keyAccessor = _ref.keyAccessor,
43545
- isProp = _ref.isProp;
43464
+ isProp = _ref.isProp;
43546
43465
  var key;
43547
-
43548
43466
  if (isProp) {
43549
43467
  var _itemVal = itemVal,
43550
- propVal = _itemVal[keyAccessor],
43551
- rest = _objectWithoutProperties$2(_itemVal, [keyAccessor].map(_toPropertyKey$3));
43552
-
43468
+ propVal = _itemVal[keyAccessor],
43469
+ rest = _objectWithoutProperties$2(_itemVal, [keyAccessor].map(_toPropertyKey$4));
43553
43470
  key = propVal;
43554
43471
  itemVal = rest;
43555
43472
  } else {
43556
43473
  key = keyAccessor(itemVal, idx);
43557
43474
  }
43558
-
43559
43475
  if (idx + 1 < keys.length) {
43560
43476
  if (!iterObj.hasOwnProperty(key)) {
43561
43477
  iterObj[key] = {};
43562
43478
  }
43563
-
43564
43479
  iterObj = iterObj[key];
43565
43480
  } else {
43566
43481
  // Leaf key
@@ -43568,7 +43483,6 @@
43568
43483
  if (!iterObj.hasOwnProperty(key)) {
43569
43484
  iterObj[key] = [];
43570
43485
  }
43571
-
43572
43486
  iterObj[key].push(itemVal);
43573
43487
  } else {
43574
43488
  iterObj[key] = itemVal;
@@ -43577,12 +43491,10 @@
43577
43491
  });
43578
43492
  return res;
43579
43493
  }, {});
43580
-
43581
43494
  if (multiItem instanceof Function) {
43582
43495
  // Reduce leaf multiple values
43583
43496
  (function reduce(node) {
43584
43497
  var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
43585
-
43586
43498
  if (level === keys.length) {
43587
43499
  Object.keys(node).forEach(function (k) {
43588
43500
  return node[k] = multiItem(node[k]);
@@ -43593,18 +43505,14 @@
43593
43505
  });
43594
43506
  }
43595
43507
  })(indexedResult); // IIFE
43596
-
43597
43508
  }
43598
43509
 
43599
43510
  var result = indexedResult;
43600
-
43601
43511
  if (flattenKeys) {
43602
43512
  // flatten into array
43603
43513
  result = [];
43604
-
43605
43514
  (function flatten(node) {
43606
43515
  var accKeys = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
43607
-
43608
43516
  if (accKeys.length === keys.length) {
43609
43517
  result.push({
43610
43518
  keys: accKeys,
@@ -43613,37 +43521,58 @@
43613
43521
  } else {
43614
43522
  Object.entries(node).forEach(function (_ref2) {
43615
43523
  var _ref3 = _slicedToArray$4(_ref2, 2),
43616
- key = _ref3[0],
43617
- val = _ref3[1];
43618
-
43524
+ key = _ref3[0],
43525
+ val = _ref3[1];
43619
43526
  return flatten(val, [].concat(_toConsumableArray$4(accKeys), [key]));
43620
43527
  });
43621
43528
  }
43622
43529
  })(indexedResult); //IIFE
43623
43530
 
43624
-
43625
43531
  if (keyAccessors instanceof Array && keyAccessors.length === 0 && result.length === 1) {
43626
43532
  // clear keys if there's no key accessors (single result)
43627
43533
  result[0].keys = [];
43628
43534
  }
43629
43535
  }
43630
-
43631
43536
  return result;
43632
43537
  });
43633
43538
 
43539
+ function _iterableToArrayLimit$3(arr, i) {
43540
+ var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
43541
+ if (null != _i) {
43542
+ var _s,
43543
+ _e,
43544
+ _x,
43545
+ _r,
43546
+ _arr = [],
43547
+ _n = !0,
43548
+ _d = !1;
43549
+ try {
43550
+ if (_x = (_i = _i.call(arr)).next, 0 === i) {
43551
+ if (Object(_i) !== _i) return;
43552
+ _n = !1;
43553
+ } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
43554
+ } catch (err) {
43555
+ _d = !0, _e = err;
43556
+ } finally {
43557
+ try {
43558
+ if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;
43559
+ } finally {
43560
+ if (_d) throw _e;
43561
+ }
43562
+ }
43563
+ return _arr;
43564
+ }
43565
+ }
43634
43566
  function ownKeys$1(object, enumerableOnly) {
43635
43567
  var keys = Object.keys(object);
43636
-
43637
43568
  if (Object.getOwnPropertySymbols) {
43638
43569
  var symbols = Object.getOwnPropertySymbols(object);
43639
43570
  enumerableOnly && (symbols = symbols.filter(function (sym) {
43640
43571
  return Object.getOwnPropertyDescriptor(object, sym).enumerable;
43641
43572
  })), keys.push.apply(keys, symbols);
43642
43573
  }
43643
-
43644
43574
  return keys;
43645
43575
  }
43646
-
43647
43576
  function _objectSpread2$1(target) {
43648
43577
  for (var i = 1; i < arguments.length; i++) {
43649
43578
  var source = null != arguments[i] ? arguments[i] : {};
@@ -43653,11 +43582,10 @@
43653
43582
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
43654
43583
  });
43655
43584
  }
43656
-
43657
43585
  return target;
43658
43586
  }
43659
-
43660
43587
  function _defineProperty$2(obj, key, value) {
43588
+ key = _toPropertyKey$3(key);
43661
43589
  if (key in obj) {
43662
43590
  Object.defineProperty(obj, key, {
43663
43591
  value: value,
@@ -43668,35 +43596,26 @@
43668
43596
  } else {
43669
43597
  obj[key] = value;
43670
43598
  }
43671
-
43672
43599
  return obj;
43673
43600
  }
43674
-
43675
43601
  function _objectWithoutPropertiesLoose$1(source, excluded) {
43676
43602
  if (source == null) return {};
43677
43603
  var target = {};
43678
43604
  var sourceKeys = Object.keys(source);
43679
43605
  var key, i;
43680
-
43681
43606
  for (i = 0; i < sourceKeys.length; i++) {
43682
43607
  key = sourceKeys[i];
43683
43608
  if (excluded.indexOf(key) >= 0) continue;
43684
43609
  target[key] = source[key];
43685
43610
  }
43686
-
43687
43611
  return target;
43688
43612
  }
43689
-
43690
43613
  function _objectWithoutProperties$1(source, excluded) {
43691
43614
  if (source == null) return {};
43692
-
43693
43615
  var target = _objectWithoutPropertiesLoose$1(source, excluded);
43694
-
43695
43616
  var key, i;
43696
-
43697
43617
  if (Object.getOwnPropertySymbols) {
43698
43618
  var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
43699
-
43700
43619
  for (i = 0; i < sourceSymbolKeys.length; i++) {
43701
43620
  key = sourceSymbolKeys[i];
43702
43621
  if (excluded.indexOf(key) >= 0) continue;
@@ -43704,60 +43623,23 @@
43704
43623
  target[key] = source[key];
43705
43624
  }
43706
43625
  }
43707
-
43708
43626
  return target;
43709
43627
  }
43710
-
43711
43628
  function _slicedToArray$3(arr, i) {
43712
43629
  return _arrayWithHoles$3(arr) || _iterableToArrayLimit$3(arr, i) || _unsupportedIterableToArray$3(arr, i) || _nonIterableRest$3();
43713
43630
  }
43714
-
43715
43631
  function _toConsumableArray$3(arr) {
43716
43632
  return _arrayWithoutHoles$3(arr) || _iterableToArray$3(arr) || _unsupportedIterableToArray$3(arr) || _nonIterableSpread$3();
43717
43633
  }
43718
-
43719
43634
  function _arrayWithoutHoles$3(arr) {
43720
43635
  if (Array.isArray(arr)) return _arrayLikeToArray$3(arr);
43721
43636
  }
43722
-
43723
43637
  function _arrayWithHoles$3(arr) {
43724
43638
  if (Array.isArray(arr)) return arr;
43725
43639
  }
43726
-
43727
43640
  function _iterableToArray$3(iter) {
43728
43641
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
43729
43642
  }
43730
-
43731
- function _iterableToArrayLimit$3(arr, i) {
43732
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
43733
-
43734
- if (_i == null) return;
43735
- var _arr = [];
43736
- var _n = true;
43737
- var _d = false;
43738
-
43739
- var _s, _e;
43740
-
43741
- try {
43742
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
43743
- _arr.push(_s.value);
43744
-
43745
- if (i && _arr.length === i) break;
43746
- }
43747
- } catch (err) {
43748
- _d = true;
43749
- _e = err;
43750
- } finally {
43751
- try {
43752
- if (!_n && _i["return"] != null) _i["return"]();
43753
- } finally {
43754
- if (_d) throw _e;
43755
- }
43756
- }
43757
-
43758
- return _arr;
43759
- }
43760
-
43761
43643
  function _unsupportedIterableToArray$3(o, minLen) {
43762
43644
  if (!o) return;
43763
43645
  if (typeof o === "string") return _arrayLikeToArray$3(o, minLen);
@@ -43766,32 +43648,39 @@
43766
43648
  if (n === "Map" || n === "Set") return Array.from(o);
43767
43649
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$3(o, minLen);
43768
43650
  }
43769
-
43770
43651
  function _arrayLikeToArray$3(arr, len) {
43771
43652
  if (len == null || len > arr.length) len = arr.length;
43772
-
43773
43653
  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
43774
-
43775
43654
  return arr2;
43776
43655
  }
43777
-
43778
43656
  function _nonIterableSpread$3() {
43779
43657
  throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
43780
43658
  }
43781
-
43782
43659
  function _nonIterableRest$3() {
43783
43660
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
43784
43661
  }
43662
+ function _toPrimitive$3(input, hint) {
43663
+ if (typeof input !== "object" || input === null) return input;
43664
+ var prim = input[Symbol.toPrimitive];
43665
+ if (prim !== undefined) {
43666
+ var res = prim.call(input, hint || "default");
43667
+ if (typeof res !== "object") return res;
43668
+ throw new TypeError("@@toPrimitive must return a primitive value.");
43669
+ }
43670
+ return (hint === "string" ? String : Number)(input);
43671
+ }
43672
+ function _toPropertyKey$3(arg) {
43673
+ var key = _toPrimitive$3(arg, "string");
43674
+ return typeof key === "symbol" ? key : String(key);
43675
+ }
43785
43676
 
43786
43677
  var _excluded$2 = ["createObj", "updateObj", "exitObj", "objBindAttr", "dataBindAttr"];
43787
-
43788
43678
  function diffArrays(prev, next, idAccessor) {
43789
43679
  var result = {
43790
43680
  enter: [],
43791
43681
  update: [],
43792
43682
  exit: []
43793
43683
  };
43794
-
43795
43684
  if (!idAccessor) {
43796
43685
  // use object references for comparison
43797
43686
  var prevSet = new Set(prev);
@@ -43807,30 +43696,25 @@
43807
43696
  var byId = Object.assign({}, prevById, nextById);
43808
43697
  Object.entries(byId).forEach(function (_ref) {
43809
43698
  var _ref2 = _slicedToArray$3(_ref, 2),
43810
- id = _ref2[0],
43811
- item = _ref2[1];
43812
-
43699
+ id = _ref2[0],
43700
+ item = _ref2[1];
43813
43701
  var type = !prevById.hasOwnProperty(id) ? 'enter' : !nextById.hasOwnProperty(id) ? 'exit' : 'update';
43814
43702
  result[type].push(type === 'update' ? [prevById[id], nextById[id]] : item);
43815
43703
  });
43816
43704
  }
43817
-
43818
43705
  return result;
43819
43706
  }
43820
-
43821
43707
  function dataBindDiff(data, existingObjs, _ref3) {
43822
43708
  var _ref3$objBindAttr = _ref3.objBindAttr,
43823
- objBindAttr = _ref3$objBindAttr === void 0 ? '__obj' : _ref3$objBindAttr,
43824
- _ref3$dataBindAttr = _ref3.dataBindAttr,
43825
- dataBindAttr = _ref3$dataBindAttr === void 0 ? '__data' : _ref3$dataBindAttr,
43826
- idAccessor = _ref3.idAccessor,
43827
- _ref3$purge = _ref3.purge,
43828
- purge = _ref3$purge === void 0 ? false : _ref3$purge;
43829
-
43709
+ objBindAttr = _ref3$objBindAttr === void 0 ? '__obj' : _ref3$objBindAttr,
43710
+ _ref3$dataBindAttr = _ref3.dataBindAttr,
43711
+ dataBindAttr = _ref3$dataBindAttr === void 0 ? '__data' : _ref3$dataBindAttr,
43712
+ idAccessor = _ref3.idAccessor,
43713
+ _ref3$purge = _ref3.purge,
43714
+ purge = _ref3$purge === void 0 ? false : _ref3$purge;
43830
43715
  var isObjValid = function isObjValid(obj) {
43831
43716
  return obj.hasOwnProperty(dataBindAttr);
43832
43717
  };
43833
-
43834
43718
  var removeObjs = existingObjs.filter(function (obj) {
43835
43719
  return !isObjValid(obj);
43836
43720
  });
@@ -43846,15 +43730,13 @@
43846
43730
  : diffArrays(prevD, nextD, idAccessor);
43847
43731
  diff.update = diff.update.map(function (_ref4) {
43848
43732
  var _ref5 = _slicedToArray$3(_ref4, 2),
43849
- prevD = _ref5[0],
43850
- nextD = _ref5[1];
43851
-
43733
+ prevD = _ref5[0],
43734
+ nextD = _ref5[1];
43852
43735
  if (prevD !== nextD) {
43853
43736
  // transfer obj to new data point (if different)
43854
43737
  nextD[objBindAttr] = prevD[objBindAttr];
43855
43738
  nextD[objBindAttr][dataBindAttr] = nextD;
43856
43739
  }
43857
-
43858
43740
  return nextD;
43859
43741
  });
43860
43742
  diff.exit = diff.exit.concat(removeObjs.map(function (obj) {
@@ -43862,34 +43744,34 @@
43862
43744
  }));
43863
43745
  return diff;
43864
43746
  }
43865
-
43866
- function viewDigest(data, existingObjs, // list
43867
- appendObj, // item => {...} function
43747
+ function viewDigest(data, existingObjs,
43748
+ // list
43749
+ appendObj,
43750
+ // item => {...} function
43868
43751
  removeObj, // item => {...} function
43869
43752
  _ref7) {
43870
43753
  var _ref7$createObj = _ref7.createObj,
43871
- createObj = _ref7$createObj === void 0 ? function (d) {
43872
- return {};
43873
- } : _ref7$createObj,
43874
- _ref7$updateObj = _ref7.updateObj,
43875
- updateObj = _ref7$updateObj === void 0 ? function (obj, d) {} : _ref7$updateObj,
43876
- _ref7$exitObj = _ref7.exitObj,
43877
- exitObj = _ref7$exitObj === void 0 ? function (obj) {} : _ref7$exitObj,
43878
- _ref7$objBindAttr = _ref7.objBindAttr,
43879
- objBindAttr = _ref7$objBindAttr === void 0 ? '__obj' : _ref7$objBindAttr,
43880
- _ref7$dataBindAttr = _ref7.dataBindAttr,
43881
- dataBindAttr = _ref7$dataBindAttr === void 0 ? '__data' : _ref7$dataBindAttr,
43882
- dataDiffOptions = _objectWithoutProperties$1(_ref7, _excluded$2);
43883
-
43754
+ createObj = _ref7$createObj === void 0 ? function (d) {
43755
+ return {};
43756
+ } : _ref7$createObj,
43757
+ _ref7$updateObj = _ref7.updateObj,
43758
+ updateObj = _ref7$updateObj === void 0 ? function (obj, d) {} : _ref7$updateObj,
43759
+ _ref7$exitObj = _ref7.exitObj,
43760
+ exitObj = _ref7$exitObj === void 0 ? function (obj) {} : _ref7$exitObj,
43761
+ _ref7$objBindAttr = _ref7.objBindAttr,
43762
+ objBindAttr = _ref7$objBindAttr === void 0 ? '__obj' : _ref7$objBindAttr,
43763
+ _ref7$dataBindAttr = _ref7.dataBindAttr,
43764
+ dataBindAttr = _ref7$dataBindAttr === void 0 ? '__data' : _ref7$dataBindAttr,
43765
+ dataDiffOptions = _objectWithoutProperties$1(_ref7, _excluded$2);
43884
43766
  var _dataBindDiff = dataBindDiff(data, existingObjs, _objectSpread2$1({
43885
- objBindAttr: objBindAttr,
43886
- dataBindAttr: dataBindAttr
43887
- }, dataDiffOptions)),
43888
- enter = _dataBindDiff.enter,
43889
- update = _dataBindDiff.update,
43890
- exit = _dataBindDiff.exit; // Remove exiting points
43891
-
43892
-
43767
+ objBindAttr: objBindAttr,
43768
+ dataBindAttr: dataBindAttr
43769
+ }, dataDiffOptions)),
43770
+ enter = _dataBindDiff.enter,
43771
+ update = _dataBindDiff.update,
43772
+ exit = _dataBindDiff.exit;
43773
+
43774
+ // Remove exiting points
43893
43775
  exit.forEach(function (d) {
43894
43776
  var obj = d[objBindAttr];
43895
43777
  delete d[objBindAttr]; // unbind obj
@@ -43899,15 +43781,17 @@
43899
43781
  });
43900
43782
  var newObjs = createObjs(enter);
43901
43783
  var pointsData = [].concat(_toConsumableArray$3(enter), _toConsumableArray$3(update));
43902
- updateObjs(pointsData); // Add new points
43784
+ updateObjs(pointsData);
43903
43785
 
43904
- newObjs.forEach(appendObj); //
43786
+ // Add new points
43787
+ newObjs.forEach(appendObj);
43788
+
43789
+ //
43905
43790
 
43906
43791
  function createObjs(data) {
43907
43792
  var newObjs = [];
43908
43793
  data.forEach(function (d) {
43909
43794
  var obj = createObj(d);
43910
-
43911
43795
  if (obj) {
43912
43796
  obj[dataBindAttr] = d;
43913
43797
  d[objBindAttr] = obj;
@@ -43916,11 +43800,9 @@
43916
43800
  });
43917
43801
  return newObjs;
43918
43802
  }
43919
-
43920
43803
  function updateObjs(data) {
43921
43804
  data.forEach(function (d) {
43922
43805
  var obj = d[objBindAttr];
43923
-
43924
43806
  if (obj) {
43925
43807
  obj[dataBindAttr] = d;
43926
43808
  updateObj(obj, d);
@@ -64337,6 +64219,10 @@
64337
64219
  return this;
64338
64220
  }
64339
64221
  return state.globeObj.material;
64222
+ },
64223
+ _destructor: function _destructor(state) {
64224
+ emptyObject(state.globeObj);
64225
+ emptyObject(state.graticulesObj);
64340
64226
  }
64341
64227
  },
64342
64228
  stateInit: function stateInit() {
@@ -64537,11 +64423,11 @@
64537
64423
  },
64538
64424
  update: function update(state) {
64539
64425
  // Data accessors
64540
- var latAccessor = accessorFn(state.pointLat);
64541
- var lngAccessor = accessorFn(state.pointLng);
64542
- var altitudeAccessor = accessorFn(state.pointAltitude);
64543
- var radiusAccessor = accessorFn(state.pointRadius);
64544
- var colorAccessor = accessorFn(state.pointColor);
64426
+ var latAccessor = index$1(state.pointLat);
64427
+ var lngAccessor = index$1(state.pointLng);
64428
+ var altitudeAccessor = index$1(state.pointAltitude);
64429
+ var radiusAccessor = index$1(state.pointRadius);
64430
+ var colorAccessor = index$1(state.pointColor);
64545
64431
 
64546
64432
  // shared geometry
64547
64433
  var pointGeometry = new THREE$d.CylinderGeometry(1, 1, 1, state.pointResolution);
@@ -64762,6 +64648,12 @@
64762
64648
  triggerUpdate: false
64763
64649
  } // ms
64764
64650
  },
64651
+
64652
+ methods: {
64653
+ _destructor: function _destructor(state) {
64654
+ state.ticker && state.ticker.dispose();
64655
+ }
64656
+ },
64765
64657
  init: function init(threeObj, state) {
64766
64658
  // Clear the scene
64767
64659
  emptyObject(threeObj);
@@ -64770,7 +64662,8 @@
64770
64662
  state.scene = threeObj;
64771
64663
 
64772
64664
  // Kick-off dash animations
64773
- new FrameTicker$2().onTick.add(function (_, timeDelta) {
64665
+ state.ticker = new FrameTicker$2();
64666
+ state.ticker.onTick.add(function (_, timeDelta) {
64774
64667
  state.arcsData.filter(function (d) {
64775
64668
  return d.__threeObj && d.__threeObj.children.length && d.__threeObj.children[0].material && d.__threeObj.children[0].__dashAnimateStep;
64776
64669
  }).forEach(function (d) {
@@ -64783,18 +64676,18 @@
64783
64676
  },
64784
64677
  update: function update(state) {
64785
64678
  // Data accessors
64786
- var startLatAccessor = accessorFn(state.arcStartLat);
64787
- var startLngAccessor = accessorFn(state.arcStartLng);
64788
- var endLatAccessor = accessorFn(state.arcEndLat);
64789
- var endLngAccessor = accessorFn(state.arcEndLng);
64790
- var altitudeAccessor = accessorFn(state.arcAltitude);
64791
- var altitudeAutoScaleAccessor = accessorFn(state.arcAltitudeAutoScale);
64792
- var strokeAccessor = accessorFn(state.arcStroke);
64793
- var colorAccessor = accessorFn(state.arcColor);
64794
- var dashLengthAccessor = accessorFn(state.arcDashLength);
64795
- var dashGapAccessor = accessorFn(state.arcDashGap);
64796
- var dashInitialGapAccessor = accessorFn(state.arcDashInitialGap);
64797
- var dashAnimateTimeAccessor = accessorFn(state.arcDashAnimateTime);
64679
+ var startLatAccessor = index$1(state.arcStartLat);
64680
+ var startLngAccessor = index$1(state.arcStartLng);
64681
+ var endLatAccessor = index$1(state.arcEndLat);
64682
+ var endLngAccessor = index$1(state.arcEndLng);
64683
+ var altitudeAccessor = index$1(state.arcAltitude);
64684
+ var altitudeAutoScaleAccessor = index$1(state.arcAltitudeAutoScale);
64685
+ var strokeAccessor = index$1(state.arcStroke);
64686
+ var colorAccessor = index$1(state.arcColor);
64687
+ var dashLengthAccessor = index$1(state.arcDashLength);
64688
+ var dashGapAccessor = index$1(state.arcDashGap);
64689
+ var dashInitialGapAccessor = index$1(state.arcDashInitialGap);
64690
+ var dashAnimateTimeAccessor = index$1(state.arcDashAnimateTime);
64798
64691
  var sharedMaterial = new THREE$c.ShaderMaterial(_objectSpread2(_objectSpread2({}, gradientShaders$1), {}, {
64799
64692
  transparent: true,
64800
64693
  blending: THREE$c.NormalBlending
@@ -65086,13 +64979,13 @@
65086
64979
  },
65087
64980
  update: function update(state) {
65088
64981
  // Accessors
65089
- var latAccessor = accessorFn(state.hexBinPointLat);
65090
- var lngAccessor = accessorFn(state.hexBinPointLng);
65091
- var weightAccessor = accessorFn(state.hexBinPointWeight);
65092
- var altitudeAccessor = accessorFn(state.hexAltitude);
65093
- var topColorAccessor = accessorFn(state.hexTopColor);
65094
- var sideColorAccessor = accessorFn(state.hexSideColor);
65095
- var marginAccessor = accessorFn(state.hexMargin);
64982
+ var latAccessor = index$1(state.hexBinPointLat);
64983
+ var lngAccessor = index$1(state.hexBinPointLng);
64984
+ var weightAccessor = index$1(state.hexBinPointWeight);
64985
+ var altitudeAccessor = index$1(state.hexAltitude);
64986
+ var topColorAccessor = index$1(state.hexTopColor);
64987
+ var sideColorAccessor = index$1(state.hexSideColor);
64988
+ var marginAccessor = index$1(state.hexMargin);
65096
64989
  var byH3Idx = index(state.hexBinPointsData.map(function (d) {
65097
64990
  return _objectSpread2(_objectSpread2({}, d), {}, {
65098
64991
  h3Idx: latLngToCell(latAccessor(d), lngAccessor(d), state.hexBinResolution)
@@ -65305,14 +65198,14 @@
65305
65198
  },
65306
65199
  update: function update(state) {
65307
65200
  // Data accessors
65308
- var geoJsonAccessor = accessorFn(state.polygonGeoJsonGeometry);
65309
- var altitudeAccessor = accessorFn(state.polygonAltitude);
65310
- var capCurvatureResolutionAccessor = accessorFn(state.polygonCapCurvatureResolution);
65311
- var capColorAccessor = accessorFn(state.polygonCapColor);
65312
- var capMaterialAccessor = accessorFn(state.polygonCapMaterial);
65313
- var sideColorAccessor = accessorFn(state.polygonSideColor);
65314
- var sideMaterialAccessor = accessorFn(state.polygonSideMaterial);
65315
- var strokeColorAccessor = accessorFn(state.polygonStrokeColor);
65201
+ var geoJsonAccessor = index$1(state.polygonGeoJsonGeometry);
65202
+ var altitudeAccessor = index$1(state.polygonAltitude);
65203
+ var capCurvatureResolutionAccessor = index$1(state.polygonCapCurvatureResolution);
65204
+ var capColorAccessor = index$1(state.polygonCapColor);
65205
+ var capMaterialAccessor = index$1(state.polygonCapMaterial);
65206
+ var sideColorAccessor = index$1(state.polygonSideColor);
65207
+ var sideMaterialAccessor = index$1(state.polygonSideMaterial);
65208
+ var strokeColorAccessor = index$1(state.polygonStrokeColor);
65316
65209
  var singlePolygons = [];
65317
65210
  state.polygonsData.forEach(function (polygon) {
65318
65211
  var objAttrs = {
@@ -65524,12 +65417,12 @@
65524
65417
  },
65525
65418
  update: function update(state) {
65526
65419
  // Accessors
65527
- var geoJsonAccessor = accessorFn(state.hexPolygonGeoJsonGeometry);
65528
- var colorAccessor = accessorFn(state.hexPolygonColor);
65529
- var altitudeAccessor = accessorFn(state.hexPolygonAltitude);
65530
- var resolutionAccessor = accessorFn(state.hexPolygonResolution);
65531
- var marginAccessor = accessorFn(state.hexPolygonMargin);
65532
- var curvatureResolutionAccessor = accessorFn(state.hexPolygonCurvatureResolution);
65420
+ var geoJsonAccessor = index$1(state.hexPolygonGeoJsonGeometry);
65421
+ var colorAccessor = index$1(state.hexPolygonColor);
65422
+ var altitudeAccessor = index$1(state.hexPolygonAltitude);
65423
+ var resolutionAccessor = index$1(state.hexPolygonResolution);
65424
+ var marginAccessor = index$1(state.hexPolygonMargin);
65425
+ var curvatureResolutionAccessor = index$1(state.hexPolygonCurvatureResolution);
65533
65426
  threeDigest(state.hexPolygonsData, state.scene, {
65534
65427
  createObj: function createObj(d) {
65535
65428
  var obj = new THREE$9.Mesh(undefined, new THREE$9.MeshLambertMaterial({
@@ -65763,6 +65656,12 @@
65763
65656
  // ms
65764
65657
  rendererSize: {} // necessary to set correct fatline proportions
65765
65658
  },
65659
+
65660
+ methods: {
65661
+ _destructor: function _destructor(state) {
65662
+ state.ticker && state.ticker.dispose();
65663
+ }
65664
+ },
65766
65665
  init: function init(threeObj, state) {
65767
65666
  // Clear the scene
65768
65667
  emptyObject(threeObj);
@@ -65771,7 +65670,8 @@
65771
65670
  state.scene = threeObj;
65772
65671
 
65773
65672
  // Kick-off dash animations
65774
- new FrameTicker$1().onTick.add(function (_, timeDelta) {
65673
+ state.ticker = new FrameTicker$1();
65674
+ state.ticker.onTick.add(function (_, timeDelta) {
65775
65675
  state.pathsData.filter(function (d) {
65776
65676
  return d.__threeObj && d.__threeObj.children.length && d.__threeObj.children[0].material && d.__threeObj.children[0].__dashAnimateStep;
65777
65677
  }).forEach(function (d) {
@@ -65792,16 +65692,16 @@
65792
65692
  },
65793
65693
  update: function update(state) {
65794
65694
  // Data accessors
65795
- var pointsAccessor = accessorFn(state.pathPoints);
65796
- var pointLatAccessor = accessorFn(state.pathPointLat);
65797
- var pointLngAccessor = accessorFn(state.pathPointLng);
65798
- var pointAltAccessor = accessorFn(state.pathPointAlt);
65799
- var strokeAccessor = accessorFn(state.pathStroke);
65800
- var colorAccessor = accessorFn(state.pathColor);
65801
- var dashLengthAccessor = accessorFn(state.pathDashLength);
65802
- var dashGapAccessor = accessorFn(state.pathDashGap);
65803
- var dashInitialGapAccessor = accessorFn(state.pathDashInitialGap);
65804
- var dashAnimateTimeAccessor = accessorFn(state.pathDashAnimateTime);
65695
+ var pointsAccessor = index$1(state.pathPoints);
65696
+ var pointLatAccessor = index$1(state.pathPointLat);
65697
+ var pointLngAccessor = index$1(state.pathPointLng);
65698
+ var pointAltAccessor = index$1(state.pathPointAlt);
65699
+ var strokeAccessor = index$1(state.pathStroke);
65700
+ var colorAccessor = index$1(state.pathColor);
65701
+ var dashLengthAccessor = index$1(state.pathDashLength);
65702
+ var dashGapAccessor = index$1(state.pathDashGap);
65703
+ var dashInitialGapAccessor = index$1(state.pathDashInitialGap);
65704
+ var dashAnimateTimeAccessor = index$1(state.pathDashAnimateTime);
65805
65705
  var sharedShaderMaterial = new THREE$7.ShaderMaterial(_objectSpread2(_objectSpread2({}, gradientShaders), {}, {
65806
65706
  transparent: true,
65807
65707
  blending: THREE$7.NormalBlending
@@ -66128,14 +66028,14 @@
66128
66028
  },
66129
66029
  update: function update(state) {
66130
66030
  // Data accessors
66131
- var latAccessor = accessorFn(state.tileLat);
66132
- var lngAccessor = accessorFn(state.tileLng);
66133
- var altitudeAccessor = accessorFn(state.tileAltitude);
66134
- var widthAccessor = accessorFn(state.tileWidth);
66135
- var heightAccessor = accessorFn(state.tileHeight);
66136
- var useGlobeProjectionAccessor = accessorFn(state.tileUseGlobeProjection);
66137
- var materialAccessor = accessorFn(state.tileMaterial);
66138
- var curvatureResolutionAccessor = accessorFn(state.tileCurvatureResolution);
66031
+ var latAccessor = index$1(state.tileLat);
66032
+ var lngAccessor = index$1(state.tileLng);
66033
+ var altitudeAccessor = index$1(state.tileAltitude);
66034
+ var widthAccessor = index$1(state.tileWidth);
66035
+ var heightAccessor = index$1(state.tileHeight);
66036
+ var useGlobeProjectionAccessor = index$1(state.tileUseGlobeProjection);
66037
+ var materialAccessor = index$1(state.tileMaterial);
66038
+ var curvatureResolutionAccessor = index$1(state.tileCurvatureResolution);
66139
66039
  threeDigest(state.tilesData, state.scene, {
66140
66040
  createObj: function createObj() {
66141
66041
  var obj = new THREE$6.Mesh();
@@ -66281,16 +66181,16 @@
66281
66181
  },
66282
66182
  update: function update(state) {
66283
66183
  // Data accessors
66284
- var latAccessor = accessorFn(state.labelLat);
66285
- var lngAccessor = accessorFn(state.labelLng);
66286
- var altitudeAccessor = accessorFn(state.labelAltitude);
66287
- var textAccessor = accessorFn(state.labelText);
66288
- var sizeAccessor = accessorFn(state.labelSize);
66289
- var rotationAccessor = accessorFn(state.labelRotation);
66290
- var colorAccessor = accessorFn(state.labelColor);
66291
- var includeDotAccessor = accessorFn(state.labelIncludeDot);
66292
- var dotRadiusAccessor = accessorFn(state.labelDotRadius);
66293
- var dotOrientationAccessor = accessorFn(state.labelDotOrientation);
66184
+ var latAccessor = index$1(state.labelLat);
66185
+ var lngAccessor = index$1(state.labelLng);
66186
+ var altitudeAccessor = index$1(state.labelAltitude);
66187
+ var textAccessor = index$1(state.labelText);
66188
+ var sizeAccessor = index$1(state.labelSize);
66189
+ var rotationAccessor = index$1(state.labelRotation);
66190
+ var colorAccessor = index$1(state.labelColor);
66191
+ var includeDotAccessor = index$1(state.labelIncludeDot);
66192
+ var dotRadiusAccessor = index$1(state.labelDotRadius);
66193
+ var dotOrientationAccessor = index$1(state.labelDotOrientation);
66294
66194
  var orientations = new Set(['right', 'top', 'bottom']);
66295
66195
  var pxPerDeg = 2 * Math.PI * GLOBE_RADIUS / 360;
66296
66196
  var circleGeometry = new THREE$5.CircleGeometry(1, 16);
@@ -66482,21 +66382,28 @@
66482
66382
  triggerUpdate: false
66483
66383
  } // ms
66484
66384
  },
66385
+
66386
+ methods: {
66387
+ _destructor: function _destructor(state) {
66388
+ state.ticker && state.ticker.dispose();
66389
+ }
66390
+ },
66485
66391
  init: function init(threeObj, state) {
66486
66392
  // Clear the scene
66487
66393
  emptyObject(threeObj);
66488
66394
 
66489
66395
  // Main three object to manipulate
66490
66396
  state.scene = threeObj;
66491
- new FrameTicker().onTick.add(function (time) {
66397
+ state.ticker = new FrameTicker();
66398
+ state.ticker.onTick.add(function (time) {
66492
66399
  if (!state.ringsData.length) return;
66493
66400
 
66494
66401
  // Data accessors
66495
- var colorAccessor = accessorFn(state.ringColor);
66496
- var altitudeAccessor = accessorFn(state.ringAltitude);
66497
- var maxRadiusAccessor = accessorFn(state.ringMaxRadius);
66498
- var propagationSpeedAccessor = accessorFn(state.ringPropagationSpeed);
66499
- var repeatPeriodAccessor = accessorFn(state.ringRepeatPeriod);
66402
+ var colorAccessor = index$1(state.ringColor);
66403
+ var altitudeAccessor = index$1(state.ringAltitude);
66404
+ var maxRadiusAccessor = index$1(state.ringMaxRadius);
66405
+ var propagationSpeedAccessor = index$1(state.ringPropagationSpeed);
66406
+ var repeatPeriodAccessor = index$1(state.ringRepeatPeriod);
66500
66407
  state.ringsData.filter(function (d) {
66501
66408
  return d.__threeObj;
66502
66409
  }).forEach(function (d) {
@@ -66567,9 +66474,9 @@
66567
66474
  },
66568
66475
  update: function update(state) {
66569
66476
  // Data accessors
66570
- var latAccessor = accessorFn(state.ringLat);
66571
- var lngAccessor = accessorFn(state.ringLng);
66572
- var altitudeAccessor = accessorFn(state.ringAltitude);
66477
+ var latAccessor = index$1(state.ringLat);
66478
+ var lngAccessor = index$1(state.ringLng);
66479
+ var altitudeAccessor = index$1(state.ringAltitude);
66573
66480
  var globeCenter = state.scene.localToWorld(new THREE$3.Vector3(0, 0, 0)); // translate from local to world coords
66574
66481
 
66575
66482
  threeDigest(state.ringsData, state.scene, {
@@ -66653,10 +66560,10 @@
66653
66560
  update: function update(state, changedProps) {
66654
66561
  var _this = this;
66655
66562
  // Data accessors
66656
- var latAccessor = accessorFn(state.htmlLat);
66657
- var lngAccessor = accessorFn(state.htmlLng);
66658
- var altitudeAccessor = accessorFn(state.htmlAltitude);
66659
- var elemAccessor = accessorFn(state.htmlElement);
66563
+ var latAccessor = index$1(state.htmlLat);
66564
+ var lngAccessor = index$1(state.htmlLng);
66565
+ var altitudeAccessor = index$1(state.htmlAltitude);
66566
+ var elemAccessor = index$1(state.htmlElement);
66660
66567
  threeDigest(state.htmlElementsData, state.scene, {
66661
66568
  // objs need to be recreated if this prop has changed
66662
66569
  purge: changedProps.hasOwnProperty('htmlElement'),
@@ -66736,10 +66643,10 @@
66736
66643
  },
66737
66644
  update: function update(state, changedProps) {
66738
66645
  // Data accessors
66739
- var latAccessor = accessorFn(state.objectLat);
66740
- var lngAccessor = accessorFn(state.objectLng);
66741
- var altitudeAccessor = accessorFn(state.objectAltitude);
66742
- var threeObjAccessor = accessorFn(state.objectThreeObject);
66646
+ var latAccessor = index$1(state.objectLat);
66647
+ var lngAccessor = index$1(state.objectLng);
66648
+ var altitudeAccessor = index$1(state.objectAltitude);
66649
+ var threeObjAccessor = index$1(state.objectThreeObject);
66743
66650
  threeDigest(state.objectsData, state.scene, {
66744
66651
  // objs need to be recreated if this prop has changed
66745
66652
  purge: changedProps.hasOwnProperty('objectThreeObject'),
@@ -66787,8 +66694,8 @@
66787
66694
  emptyObject(state.scene);
66788
66695
  } // Clear the existing objects to create all new, if there's no update method (brute-force)
66789
66696
 
66790
- var customObjectAccessor = accessorFn(state.customThreeObject);
66791
- var customObjectUpdateAccessor = accessorFn(state.customThreeObjectUpdate);
66697
+ var customObjectAccessor = index$1(state.customThreeObject);
66698
+ var customObjectUpdateAccessor = index$1(state.customThreeObjectUpdate);
66792
66699
  threeDigest(state.customLayerData, state.scene, {
66793
66700
  // objs need to be recreated if this prop has changed
66794
66701
  purge: changedProps.hasOwnProperty('customThreeObject'),
@@ -66941,6 +66848,9 @@
66941
66848
  },
66942
66849
  _destructor: function _destructor(state) {
66943
66850
  cancelAnimationFrame(state.animationFrameRequestId);
66851
+ state.destructableLayers.forEach(function (l) {
66852
+ return l._destructor();
66853
+ });
66944
66854
  }
66945
66855
  }, linkedGlobeLayerMethods),
66946
66856
  stateInit: function stateInit() {
@@ -66962,6 +66872,9 @@
66962
66872
  return _objectSpread2(_objectSpread2({}, layers), {}, {
66963
66873
  layersThatNeedBehindGlobeChecker: Object.values(layers).filter(function (l) {
66964
66874
  return l.hasOwnProperty('isBehindGlobe');
66875
+ }),
66876
+ destructableLayers: Object.values(layers).filter(function (l) {
66877
+ return l.hasOwnProperty('_destructor');
66965
66878
  })
66966
66879
  });
66967
66880
  },
@@ -70955,7 +70868,7 @@
70955
70868
  }
70956
70869
  if (topObject !== state.hoverObj) {
70957
70870
  state.onHover(topObject, state.hoverObj);
70958
- state.toolTipElem.innerHTML = topObject ? accessorFn(state.tooltipContent)(topObject) || '' : '';
70871
+ state.toolTipElem.innerHTML = topObject ? index$1(state.tooltipContent)(topObject) || '' : '';
70959
70872
  state.hoverObj = topObject;
70960
70873
  }
70961
70874
  }
@@ -71814,7 +71727,7 @@
71814
71727
  };
71815
71728
  var globeObj = getGlobeObj(obj);
71816
71729
  var objType = globeObj && globeObj.__globeObjType;
71817
- return globeObj && objType && objAccessors.hasOwnProperty(objType) && dataAccessors.hasOwnProperty(objType) ? accessorFn(objAccessors[objType])(dataAccessors[objType](globeObj.__data)) || '' : '';
71730
+ return globeObj && objType && objAccessors.hasOwnProperty(objType) && dataAccessors.hasOwnProperty(objType) ? index$1(objAccessors[objType])(dataAccessors[objType](globeObj.__data)) || '' : '';
71818
71731
  }).onHover(function (obj) {
71819
71732
  // Update tooltip and trigger onHover events
71820
71733
  var hoverObjFns = {