@deck.gl/arcgis 8.7.0-alpha.3 → 8.7.0-alpha.7

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/dist.dev.js CHANGED
@@ -91,15 +91,15 @@ return /******/ (function(modules) { // webpackBootstrap
91
91
  /******/
92
92
  /******/
93
93
  /******/ // Load entry module and return exports
94
- /******/ return __webpack_require__(__webpack_require__.s = "./bundle.js");
94
+ /******/ return __webpack_require__(__webpack_require__.s = "./bundle.ts");
95
95
  /******/ })
96
96
  /************************************************************************/
97
97
  /******/ ({
98
98
 
99
99
  /***/ "../../node_modules/esri-loader/dist/umd/esri-loader.js":
100
- /*!***********************************************************************************!*\
101
- !*** /Users/alasarr/dev/deck.gl/node_modules/esri-loader/dist/umd/esri-loader.js ***!
102
- \***********************************************************************************/
100
+ /*!************************************************************************************!*\
101
+ !*** /Users/missx/Source/deck.gl/node_modules/esri-loader/dist/umd/esri-loader.js ***!
102
+ \************************************************************************************/
103
103
  /*! no static exports found */
104
104
  /***/ (function(module, exports, __webpack_require__) {
105
105
 
@@ -399,27 +399,23 @@ Object.defineProperty(exports, '__esModule', { value: true });
399
399
 
400
400
  /***/ }),
401
401
 
402
- /***/ "./bundle.js":
402
+ /***/ "./bundle.ts":
403
403
  /*!*******************!*\
404
- !*** ./bundle.js ***!
404
+ !*** ./bundle.ts ***!
405
405
  \*******************/
406
406
  /*! no static exports found */
407
407
  /***/ (function(module, exports, __webpack_require__) {
408
408
 
409
409
  const ArcGISUtils = __webpack_require__(/*! ./src/load-modules */ "./src/load-modules.js");
410
410
 
411
- /* global window, global */
412
- const _global = typeof window === 'undefined' ? global : window;
413
- const deck = _global.deck || {};
411
+ const deck = globalThis.deck || {}; // Check if peer dependencies are included
414
412
 
415
- // Check if peer dependencies are included
416
413
  if (!deck.Layer) {
417
414
  throw new Error('@deck.gl/core is not found');
418
415
  }
419
416
 
420
417
  module.exports = Object.assign(deck, ArcGISUtils);
421
418
 
422
-
423
419
  /***/ }),
424
420
 
425
421
  /***/ "./src/commons.js":
@@ -441,13 +437,9 @@ __webpack_require__.r(__webpack_exports__);
441
437
  /* eslint-disable no-invalid-this */
442
438
 
443
439
 
444
-
445
-
446
440
  function initializeResources(gl) {
447
441
  Object(_luma_gl_core__WEBPACK_IMPORTED_MODULE_1__["instrumentGLContext"])(gl);
448
-
449
442
  this.buffer = new _luma_gl_core__WEBPACK_IMPORTED_MODULE_1__["Buffer"](gl, new Int8Array([-1, -1, 1, -1, -1, 1, 1, 1]));
450
-
451
443
  this.model = new _luma_gl_core__WEBPACK_IMPORTED_MODULE_1__["Model"](gl, {
452
444
  vs: `
453
445
  attribute vec2 a_pos;
@@ -473,31 +465,26 @@ function initializeResources(gl) {
473
465
  vertexCount: 4,
474
466
  drawMode: gl.TRIANGLE_STRIP
475
467
  });
476
-
477
- this.deckFbo = new _luma_gl_core__WEBPACK_IMPORTED_MODULE_1__["Framebuffer"](gl, {width: 1, height: 1});
478
-
468
+ this.deckFbo = new _luma_gl_core__WEBPACK_IMPORTED_MODULE_1__["Framebuffer"](gl, {
469
+ width: 1,
470
+ height: 1
471
+ });
479
472
  this.deckInstance = new _deck_gl_core__WEBPACK_IMPORTED_MODULE_0__["Deck"]({
480
473
  // The view state will be set dynamically to track the MapView current extent.
481
474
  viewState: {},
482
-
483
475
  // Input is handled by the ArcGIS API for JavaScript.
484
476
  controller: false,
485
-
486
477
  // We use the same WebGL context as the ArcGIS API for JavaScript.
487
478
  gl,
488
-
489
479
  // We need depth testing in general; we don't know what layers might be added to the deck.
490
480
  parameters: {
491
481
  depthTest: true
492
482
  },
493
-
494
483
  // This deck renders into an auxiliary framebuffer.
495
484
  _framebuffer: this.deckFbo,
496
-
497
485
  // To disable canvas resizing, since the FBO is owned by the ArcGIS API for JavaScript.
498
486
  width: null,
499
487
  height: null,
500
-
501
488
  _customRender: redrawReason => {
502
489
  if (redrawReason === 'arcgis') {
503
490
  this.deckInstance._drawLayers(redrawReason);
@@ -507,46 +494,47 @@ function initializeResources(gl) {
507
494
  }
508
495
  });
509
496
  }
510
-
511
- function render({gl, width, height, viewState}) {
497
+ function render({
498
+ gl,
499
+ width,
500
+ height,
501
+ viewState
502
+ }) {
512
503
  const screenFbo = gl.getParameter(gl.FRAMEBUFFER_BINDING);
513
-
514
504
  /* global window */
505
+
515
506
  const dpr = window.devicePixelRatio;
516
507
  width = Math.round(width * dpr);
517
508
  height = Math.round(height * dpr);
518
-
519
- this.deckFbo.resize({width, height});
520
-
521
- this.deckInstance.setProps({viewState});
522
- // redraw deck immediately into deckFbo
523
- this.deckInstance.redraw('arcgis');
524
-
525
- // We overlay the texture on top of the map using the full-screen quad.
526
- Object(_luma_gl_core__WEBPACK_IMPORTED_MODULE_1__["withParameters"])(
527
- gl,
528
- {
529
- blend: true,
530
- blendFunc: [gl.ONE, gl.ONE_MINUS_SRC_ALPHA],
531
- framebuffer: screenFbo,
532
- viewport: [0, 0, width, height]
533
- },
534
- () => {
535
- this.model.setUniforms({u_texture: this.deckFbo}).draw();
536
- }
537
- );
509
+ this.deckFbo.resize({
510
+ width,
511
+ height
512
+ });
513
+ this.deckInstance.setProps({
514
+ viewState
515
+ }); // redraw deck immediately into deckFbo
516
+
517
+ this.deckInstance.redraw('arcgis'); // We overlay the texture on top of the map using the full-screen quad.
518
+
519
+ Object(_luma_gl_core__WEBPACK_IMPORTED_MODULE_1__["withParameters"])(gl, {
520
+ blend: true,
521
+ blendFunc: [gl.ONE, gl.ONE_MINUS_SRC_ALPHA],
522
+ framebuffer: screenFbo,
523
+ viewport: [0, 0, width, height]
524
+ }, () => {
525
+ this.model.setUniforms({
526
+ u_texture: this.deckFbo
527
+ }).draw();
528
+ });
538
529
  }
539
-
540
530
  function finalizeResources() {
541
531
  this.deckInstance?.finalize();
542
532
  this.deckInstance = null;
543
-
544
533
  this.model?.delete();
545
534
  this.buffer?.delete();
546
535
  this.deckFbo?.delete();
547
536
  }
548
537
 
549
-
550
538
  /***/ }),
551
539
 
552
540
  /***/ "./src/deck-layer-view-2d.js":
@@ -561,7 +549,6 @@ __webpack_require__.r(__webpack_exports__);
561
549
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return createDeckLayerView2D; });
562
550
  /* harmony import */ var _commons__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./commons */ "./src/commons.js");
563
551
 
564
-
565
552
  function createDeckLayerView2D(BaseLayerViewGL2D) {
566
553
  return BaseLayerViewGL2D.createSubclass({
567
554
  properties: {
@@ -576,12 +563,10 @@ function createDeckLayerView2D(BaseLayerViewGL2D) {
576
563
  // We use a full-screen quad and shaders to composite the frame rendered
577
564
  // with deck.gl on top of the MapView. Composition uses the MapView context.
578
565
  const gl = this.context;
579
- _commons__WEBPACK_IMPORTED_MODULE_0__["initializeResources"].call(this, gl);
566
+ _commons__WEBPACK_IMPORTED_MODULE_0__["initializeResources"].call(this, gl); // Update deck props
580
567
 
581
- // Update deck props
582
- this.layer.deck.on('change', props => this.deckInstance.setProps(props));
568
+ this.layer.deck.on('change', props => this.deckInstance.setProps(props)); // We need to start drawing the deck.gl layer immediately.
583
569
 
584
- // We need to start drawing the deck.gl layer immediately.
585
570
  this.deckInstance.setProps(this.layer.deck.toJSON());
586
571
  },
587
572
 
@@ -596,10 +581,9 @@ function createDeckLayerView2D(BaseLayerViewGL2D) {
596
581
 
597
582
  // Called every time that the layer view must be rendered.
598
583
  render(renderParameters) {
599
- const [width, height] = this.view.state.size;
600
- // The view state must be kept in-sync with the MapView of the ArcGIS API.
601
- const state = renderParameters.state;
584
+ const [width, height] = this.view.state.size; // The view state must be kept in-sync with the MapView of the ArcGIS API.
602
585
 
586
+ const state = renderParameters.state;
603
587
  _commons__WEBPACK_IMPORTED_MODULE_0__["render"].call(this, {
604
588
  gl: renderParameters.context,
605
589
  width,
@@ -613,10 +597,10 @@ function createDeckLayerView2D(BaseLayerViewGL2D) {
613
597
  }
614
598
  });
615
599
  }
600
+
616
601
  });
617
602
  }
618
603
 
619
-
620
604
  /***/ }),
621
605
 
622
606
  /***/ "./src/deck-layer.js":
@@ -651,19 +635,16 @@ function createDeckLayer(DeckProps, Layer, DeckLayerView2D) {
651
635
  view,
652
636
  layer: this
653
637
  });
654
- }
638
+ } // eslint-disable-next-line
655
639
 
656
- // eslint-disable-next-line
657
- console.error(
658
- 'DeckLayer does not support SceneView at the moment. Use DeckRenderer instead.'
659
- );
660
640
 
641
+ console.error('DeckLayer does not support SceneView at the moment. Use DeckRenderer instead.');
661
642
  return null;
662
643
  }
644
+
663
645
  });
664
646
  }
665
647
 
666
-
667
648
  /***/ }),
668
649
 
669
650
  /***/ "./src/deck-props.js":
@@ -695,27 +676,30 @@ const properties = {
695
676
  getCursor: {},
696
677
  getTooltip: {}
697
678
  };
698
-
699
679
  /* eslint-disable callback-return */
680
+
700
681
  function createDeckProps(Accessor) {
701
682
  const DeckProps = Accessor.createSubclass({
702
683
  properties,
703
684
 
704
685
  constructor() {
705
686
  this._callbacks = {};
706
-
707
687
  this.watch(Object.keys(properties), (newValue, oldValue, propName) => {
708
- this.emit('change', {[propName]: newValue});
688
+ this.emit('change', {
689
+ [propName]: newValue
690
+ });
709
691
  });
710
692
  },
711
693
 
712
694
  on(eventName, cb) {
713
695
  this._callbacks[eventName] = this._callbacks[eventName] || [];
696
+
714
697
  this._callbacks[eventName].push(cb);
715
698
  },
716
699
 
717
700
  emit(eventName, details) {
718
701
  const callbacks = this._callbacks[eventName];
702
+
719
703
  if (callbacks) {
720
704
  for (const cb of callbacks) {
721
705
  cb(details);
@@ -725,19 +709,20 @@ function createDeckProps(Accessor) {
725
709
 
726
710
  toJSON() {
727
711
  const result = {};
712
+
728
713
  for (const key of this.keys()) {
729
714
  if (this[key] !== undefined) {
730
715
  result[key] = this[key];
731
716
  }
732
717
  }
718
+
733
719
  return result;
734
720
  }
735
- });
736
721
 
722
+ });
737
723
  return DeckProps;
738
724
  }
739
725
 
740
-
741
726
  /***/ }),
742
727
 
743
728
  /***/ "./src/deck-renderer.js":
@@ -752,13 +737,11 @@ __webpack_require__.r(__webpack_exports__);
752
737
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return createDeckRenderer; });
753
738
  /* harmony import */ var _commons__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./commons */ "./src/commons.js");
754
739
  /* eslint-disable no-invalid-this */
740
+ // ArcGIS fov is corner-to-corner
755
741
 
756
-
757
-
758
- // ArcGIS fov is corner-to-corner
759
742
  function arcgisFOVToDeckAltitude(fov, aspectRatio) {
760
743
  const D = Math.sqrt(1 + aspectRatio ** 2);
761
- const halfFOV = (fov / 2 / 180) * Math.PI;
744
+ const halfFOV = fov / 2 / 180 * Math.PI;
762
745
  return D / 2 / Math.tan(halfFOV);
763
746
  }
764
747
 
@@ -772,9 +755,7 @@ function createDeckRenderer(DeckProps, externalRenderers) {
772
755
  setup(context) {
773
756
  const gl = context.gl;
774
757
  _commons__WEBPACK_IMPORTED_MODULE_0__["initializeResources"].call(this, gl);
775
-
776
758
  this.deck.on('change', props => this.deckInstance.setProps(props));
777
-
778
759
  this.deckInstance.setProps(this.deck.toJSON());
779
760
  }
780
761
 
@@ -788,7 +769,6 @@ function createDeckRenderer(DeckProps, externalRenderers) {
788
769
 
789
770
  render(context) {
790
771
  const [width, height] = this.view.size;
791
-
792
772
  _commons__WEBPACK_IMPORTED_MODULE_0__["render"].call(this, {
793
773
  gl: context.gl,
794
774
  width,
@@ -803,12 +783,12 @@ function createDeckRenderer(DeckProps, externalRenderers) {
803
783
  }
804
784
  });
805
785
  }
786
+
806
787
  }
807
788
 
808
789
  return DeckRenderer;
809
790
  }
810
791
 
811
-
812
792
  /***/ }),
813
793
 
814
794
  /***/ "./src/load-modules.js":
@@ -832,18 +812,19 @@ __webpack_require__.r(__webpack_exports__);
832
812
 
833
813
 
834
814
 
835
-
836
815
  let arcGIS = null;
837
-
838
816
  async function loadArcGISModules(modules, loadScriptOptions) {
839
817
  const namespace = Array.isArray(modules) ? null : modules;
840
818
  await loadArcGISModule(namespace, loadScriptOptions);
841
819
 
842
820
  if (Array.isArray(modules)) {
843
821
  return Object(esri_loader__WEBPACK_IMPORTED_MODULE_4__["loadModules"])(modules, loadScriptOptions).then(array => {
844
- return {...arcGIS, modules: array};
822
+ return { ...arcGIS,
823
+ modules: array
824
+ };
845
825
  });
846
826
  }
827
+
847
828
  return arcGIS;
848
829
  }
849
830
 
@@ -852,6 +833,7 @@ function loadArcGISModule(esri, loadScriptOptions) {
852
833
  // Already loaded
853
834
  return arcGIS;
854
835
  }
836
+
855
837
  if (esri) {
856
838
  // Using user-provided dependencies
857
839
  // Right now this object has to be manually assembled - let @arcgis/webpack-plugin handle this?
@@ -859,19 +841,10 @@ function loadArcGISModule(esri, loadScriptOptions) {
859
841
  const Accessor = esri.core.Accessor;
860
842
  const BaseLayerViewGL2D = esri.views['2d'].layers.BaseLayerViewGL2D;
861
843
  const externalRenderers = esri.views['3d'].externalRenderers;
862
-
863
844
  return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
864
845
  }
865
846
 
866
- return Object(esri_loader__WEBPACK_IMPORTED_MODULE_4__["loadModules"])(
867
- [
868
- 'esri/layers/Layer',
869
- 'esri/core/Accessor',
870
- 'esri/views/2d/layers/BaseLayerViewGL2D',
871
- 'esri/views/3d/externalRenderers'
872
- ],
873
- loadScriptOptions
874
- ).then(([Layer, Accessor, BaseLayerViewGL2D, externalRenderers]) => {
847
+ return Object(esri_loader__WEBPACK_IMPORTED_MODULE_4__["loadModules"])(['esri/layers/Layer', 'esri/core/Accessor', 'esri/views/2d/layers/BaseLayerViewGL2D', 'esri/views/3d/externalRenderers'], loadScriptOptions).then(([Layer, Accessor, BaseLayerViewGL2D, externalRenderers]) => {
875
848
  return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
876
849
  });
877
850
  }
@@ -881,12 +854,13 @@ function initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers) {
881
854
  const DeckLayerView2D = Object(_deck_layer_view_2d__WEBPACK_IMPORTED_MODULE_2__["default"])(BaseLayerViewGL2D);
882
855
  const DeckLayer = Object(_deck_layer__WEBPACK_IMPORTED_MODULE_1__["default"])(DeckProps, Layer, DeckLayerView2D);
883
856
  const DeckRenderer = Object(_deck_renderer__WEBPACK_IMPORTED_MODULE_3__["default"])(DeckProps, externalRenderers);
884
-
885
- arcGIS = {DeckLayer, DeckRenderer};
857
+ arcGIS = {
858
+ DeckLayer,
859
+ DeckRenderer
860
+ };
886
861
  return arcGIS;
887
862
  }
888
863
 
889
-
890
864
  /***/ }),
891
865
 
892
866
  /***/ "@deck.gl/core":
@@ -12,6 +12,8 @@ var _core = require("@deck.gl/core");
12
12
  var _core2 = require("@luma.gl/core");
13
13
 
14
14
  function initializeResources(gl) {
15
+ var _this = this;
16
+
15
17
  (0, _core2.instrumentGLContext)(gl);
16
18
  this.buffer = new _core2.Buffer(gl, new Int8Array([-1, -1, 1, -1, -1, 1, 1, 1]));
17
19
  this.model = new _core2.Model(gl, {
@@ -30,39 +32,40 @@ function initializeResources(gl) {
30
32
  this.deckInstance = new _core.Deck({
31
33
  viewState: {},
32
34
  controller: false,
33
- gl,
35
+ gl: gl,
34
36
  parameters: {
35
37
  depthTest: true
36
38
  },
37
39
  _framebuffer: this.deckFbo,
38
40
  width: null,
39
41
  height: null,
40
- _customRender: redrawReason => {
42
+ _customRender: function _customRender(redrawReason) {
41
43
  if (redrawReason === 'arcgis') {
42
- this.deckInstance._drawLayers(redrawReason);
44
+ _this.deckInstance._drawLayers(redrawReason);
43
45
  } else {
44
- this.redraw();
46
+ _this.redraw();
45
47
  }
46
48
  }
47
49
  });
48
50
  }
49
51
 
50
- function render({
51
- gl,
52
- width,
53
- height,
54
- viewState
55
- }) {
56
- const screenFbo = gl.getParameter(36006);
57
- const dpr = window.devicePixelRatio;
52
+ function render(_ref) {
53
+ var _this2 = this;
54
+
55
+ var gl = _ref.gl,
56
+ width = _ref.width,
57
+ height = _ref.height,
58
+ viewState = _ref.viewState;
59
+ var screenFbo = gl.getParameter(36006);
60
+ var dpr = window.devicePixelRatio;
58
61
  width = Math.round(width * dpr);
59
62
  height = Math.round(height * dpr);
60
63
  this.deckFbo.resize({
61
- width,
62
- height
64
+ width: width,
65
+ height: height
63
66
  });
64
67
  this.deckInstance.setProps({
65
- viewState
68
+ viewState: viewState
66
69
  });
67
70
  this.deckInstance.redraw('arcgis');
68
71
  (0, _core2.withParameters)(gl, {
@@ -70,9 +73,9 @@ function render({
70
73
  blendFunc: [1, 771],
71
74
  framebuffer: screenFbo,
72
75
  viewport: [0, 0, width, height]
73
- }, () => {
74
- this.model.setUniforms({
75
- u_texture: this.deckFbo
76
+ }, function () {
77
+ _this2.model.setUniforms({
78
+ u_texture: _this2.deckFbo
76
79
  }).draw();
77
80
  });
78
81
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/commons.js"],"names":["initializeResources","gl","buffer","Buffer","Int8Array","model","Model","vs","fs","attributes","a_pos","vertexCount","drawMode","deckFbo","Framebuffer","width","height","deckInstance","Deck","viewState","controller","parameters","depthTest","_framebuffer","_customRender","redrawReason","_drawLayers","redraw","render","screenFbo","getParameter","dpr","window","devicePixelRatio","Math","round","resize","setProps","blend","blendFunc","framebuffer","viewport","setUniforms","u_texture","draw","finalizeResources","finalize","delete"],"mappings":";;;;;;;;;AAEA;;AACA;;AAEO,SAASA,mBAAT,CAA6BC,EAA7B,EAAiC;AACtC,kCAAoBA,EAApB;AAEA,OAAKC,MAAL,GAAc,IAAIC,aAAJ,CAAWF,EAAX,EAAe,IAAIG,SAAJ,CAAc,CAAC,CAAC,CAAF,EAAK,CAAC,CAAN,EAAS,CAAT,EAAY,CAAC,CAAb,EAAgB,CAAC,CAAjB,EAAoB,CAApB,EAAuB,CAAvB,EAA0B,CAA1B,CAAd,CAAf,CAAd;AAEA,OAAKC,KAAL,GAAa,IAAIC,YAAJ,CAAUL,EAAV,EAAc;AACzBM,IAAAA,EAAE,sMADuB;AASzBC,IAAAA,EAAE,wQATuB;AAmBzBC,IAAAA,UAAU,EAAE;AACVC,MAAAA,KAAK,EAAE,KAAKR;AADF,KAnBa;AAsBzBS,IAAAA,WAAW,EAAE,CAtBY;AAuBzBC,IAAAA,QAAQ;AAvBiB,GAAd,CAAb;AA0BA,OAAKC,OAAL,GAAe,IAAIC,kBAAJ,CAAgBb,EAAhB,EAAoB;AAACc,IAAAA,KAAK,EAAE,CAAR;AAAWC,IAAAA,MAAM,EAAE;AAAnB,GAApB,CAAf;AAEA,OAAKC,YAAL,GAAoB,IAAIC,UAAJ,CAAS;AAE3BC,IAAAA,SAAS,EAAE,EAFgB;AAK3BC,IAAAA,UAAU,EAAE,KALe;AAQ3BnB,IAAAA,EAR2B;AAW3BoB,IAAAA,UAAU,EAAE;AACVC,MAAAA,SAAS,EAAE;AADD,KAXe;AAgB3BC,IAAAA,YAAY,EAAE,KAAKV,OAhBQ;AAmB3BE,IAAAA,KAAK,EAAE,IAnBoB;AAoB3BC,IAAAA,MAAM,EAAE,IApBmB;AAsB3BQ,IAAAA,aAAa,EAAEC,YAAY,IAAI;AAC7B,UAAIA,YAAY,KAAK,QAArB,EAA+B;AAC7B,aAAKR,YAAL,CAAkBS,WAAlB,CAA8BD,YAA9B;AACD,OAFD,MAEO;AACL,aAAKE,MAAL;AACD;AACF;AA5B0B,GAAT,CAApB;AA8BD;;AAEM,SAASC,MAAT,CAAgB;AAAC3B,EAAAA,EAAD;AAAKc,EAAAA,KAAL;AAAYC,EAAAA,MAAZ;AAAoBG,EAAAA;AAApB,CAAhB,EAAgD;AACrD,QAAMU,SAAS,GAAG5B,EAAE,CAAC6B,YAAH,OAAlB;AAGA,QAAMC,GAAG,GAAGC,MAAM,CAACC,gBAAnB;AACAlB,EAAAA,KAAK,GAAGmB,IAAI,CAACC,KAAL,CAAWpB,KAAK,GAAGgB,GAAnB,CAAR;AACAf,EAAAA,MAAM,GAAGkB,IAAI,CAACC,KAAL,CAAWnB,MAAM,GAAGe,GAApB,CAAT;AAEA,OAAKlB,OAAL,CAAauB,MAAb,CAAoB;AAACrB,IAAAA,KAAD;AAAQC,IAAAA;AAAR,GAApB;AAEA,OAAKC,YAAL,CAAkBoB,QAAlB,CAA2B;AAAClB,IAAAA;AAAD,GAA3B;AAEA,OAAKF,YAAL,CAAkBU,MAAlB,CAAyB,QAAzB;AAGA,6BACE1B,EADF,EAEE;AACEqC,IAAAA,KAAK,EAAE,IADT;AAEEC,IAAAA,SAAS,EAAE,QAFb;AAGEC,IAAAA,WAAW,EAAEX,SAHf;AAIEY,IAAAA,QAAQ,EAAE,CAAC,CAAD,EAAI,CAAJ,EAAO1B,KAAP,EAAcC,MAAd;AAJZ,GAFF,EAQE,MAAM;AACJ,SAAKX,KAAL,CAAWqC,WAAX,CAAuB;AAACC,MAAAA,SAAS,EAAE,KAAK9B;AAAjB,KAAvB,EAAkD+B,IAAlD;AACD,GAVH;AAYD;;AAEM,SAASC,iBAAT,GAA6B;AAAA;;AAClC,6BAAK5B,YAAL,0EAAmB6B,QAAnB;AACA,OAAK7B,YAAL,GAAoB,IAApB;AAEA,sBAAKZ,KAAL,4DAAY0C,MAAZ;AACA,uBAAK7C,MAAL,8DAAa6C,MAAb;AACA,wBAAKlC,OAAL,gEAAckC,MAAd;AACD","sourcesContent":["/* eslint-disable no-invalid-this */\n\nimport {Deck} from '@deck.gl/core';\nimport {Model, Buffer, Framebuffer, instrumentGLContext, withParameters} from '@luma.gl/core';\n\nexport function initializeResources(gl) {\n instrumentGLContext(gl);\n\n this.buffer = new Buffer(gl, new Int8Array([-1, -1, 1, -1, -1, 1, 1, 1]));\n\n this.model = new Model(gl, {\n vs: `\n attribute vec2 a_pos;\n varying vec2 v_texcoord;\n void main(void) {\n gl_Position = vec4(a_pos, 0.0, 1.0);\n v_texcoord = (a_pos + 1.0) / 2.0;\n }\n `,\n fs: `\n precision mediump float;\n uniform sampler2D u_texture;\n varying vec2 v_texcoord;\n void main(void) {\n vec4 rgba = texture2D(u_texture, v_texcoord);\n rgba.rgb *= rgba.a;\n gl_FragColor = rgba;\n }\n `,\n attributes: {\n a_pos: this.buffer\n },\n vertexCount: 4,\n drawMode: gl.TRIANGLE_STRIP\n });\n\n this.deckFbo = new Framebuffer(gl, {width: 1, height: 1});\n\n this.deckInstance = new Deck({\n // The view state will be set dynamically to track the MapView current extent.\n viewState: {},\n\n // Input is handled by the ArcGIS API for JavaScript.\n controller: false,\n\n // We use the same WebGL context as the ArcGIS API for JavaScript.\n gl,\n\n // We need depth testing in general; we don't know what layers might be added to the deck.\n parameters: {\n depthTest: true\n },\n\n // This deck renders into an auxiliary framebuffer.\n _framebuffer: this.deckFbo,\n\n // To disable canvas resizing, since the FBO is owned by the ArcGIS API for JavaScript.\n width: null,\n height: null,\n\n _customRender: redrawReason => {\n if (redrawReason === 'arcgis') {\n this.deckInstance._drawLayers(redrawReason);\n } else {\n this.redraw();\n }\n }\n });\n}\n\nexport function render({gl, width, height, viewState}) {\n const screenFbo = gl.getParameter(gl.FRAMEBUFFER_BINDING);\n\n /* global window */\n const dpr = window.devicePixelRatio;\n width = Math.round(width * dpr);\n height = Math.round(height * dpr);\n\n this.deckFbo.resize({width, height});\n\n this.deckInstance.setProps({viewState});\n // redraw deck immediately into deckFbo\n this.deckInstance.redraw('arcgis');\n\n // We overlay the texture on top of the map using the full-screen quad.\n withParameters(\n gl,\n {\n blend: true,\n blendFunc: [gl.ONE, gl.ONE_MINUS_SRC_ALPHA],\n framebuffer: screenFbo,\n viewport: [0, 0, width, height]\n },\n () => {\n this.model.setUniforms({u_texture: this.deckFbo}).draw();\n }\n );\n}\n\nexport function finalizeResources() {\n this.deckInstance?.finalize();\n this.deckInstance = null;\n\n this.model?.delete();\n this.buffer?.delete();\n this.deckFbo?.delete();\n}\n"],"file":"commons.js"}
1
+ {"version":3,"sources":["../../src/commons.js"],"names":["initializeResources","gl","buffer","Buffer","Int8Array","model","Model","vs","fs","attributes","a_pos","vertexCount","drawMode","deckFbo","Framebuffer","width","height","deckInstance","Deck","viewState","controller","parameters","depthTest","_framebuffer","_customRender","redrawReason","_drawLayers","redraw","render","screenFbo","getParameter","dpr","window","devicePixelRatio","Math","round","resize","setProps","blend","blendFunc","framebuffer","viewport","setUniforms","u_texture","draw","finalizeResources","finalize","delete"],"mappings":";;;;;;;;;AAEA;;AACA;;AAEO,SAASA,mBAAT,CAA6BC,EAA7B,EAAiC;AAAA;;AACtC,kCAAoBA,EAApB;AAEA,OAAKC,MAAL,GAAc,IAAIC,aAAJ,CAAWF,EAAX,EAAe,IAAIG,SAAJ,CAAc,CAAC,CAAC,CAAF,EAAK,CAAC,CAAN,EAAS,CAAT,EAAY,CAAC,CAAb,EAAgB,CAAC,CAAjB,EAAoB,CAApB,EAAuB,CAAvB,EAA0B,CAA1B,CAAd,CAAf,CAAd;AAEA,OAAKC,KAAL,GAAa,IAAIC,YAAJ,CAAUL,EAAV,EAAc;AACzBM,IAAAA,EAAE,sMADuB;AASzBC,IAAAA,EAAE,wQATuB;AAmBzBC,IAAAA,UAAU,EAAE;AACVC,MAAAA,KAAK,EAAE,KAAKR;AADF,KAnBa;AAsBzBS,IAAAA,WAAW,EAAE,CAtBY;AAuBzBC,IAAAA,QAAQ;AAvBiB,GAAd,CAAb;AA0BA,OAAKC,OAAL,GAAe,IAAIC,kBAAJ,CAAgBb,EAAhB,EAAoB;AAACc,IAAAA,KAAK,EAAE,CAAR;AAAWC,IAAAA,MAAM,EAAE;AAAnB,GAApB,CAAf;AAEA,OAAKC,YAAL,GAAoB,IAAIC,UAAJ,CAAS;AAE3BC,IAAAA,SAAS,EAAE,EAFgB;AAK3BC,IAAAA,UAAU,EAAE,KALe;AAQ3BnB,IAAAA,EAAE,EAAFA,EAR2B;AAW3BoB,IAAAA,UAAU,EAAE;AACVC,MAAAA,SAAS,EAAE;AADD,KAXe;AAgB3BC,IAAAA,YAAY,EAAE,KAAKV,OAhBQ;AAmB3BE,IAAAA,KAAK,EAAE,IAnBoB;AAoB3BC,IAAAA,MAAM,EAAE,IApBmB;AAsB3BQ,IAAAA,aAAa,EAAE,uBAAAC,YAAY,EAAI;AAC7B,UAAIA,YAAY,KAAK,QAArB,EAA+B;AAC7B,QAAA,KAAI,CAACR,YAAL,CAAkBS,WAAlB,CAA8BD,YAA9B;AACD,OAFD,MAEO;AACL,QAAA,KAAI,CAACE,MAAL;AACD;AACF;AA5B0B,GAAT,CAApB;AA8BD;;AAEM,SAASC,MAAT,OAAgD;AAAA;;AAAA,MAA/B3B,EAA+B,QAA/BA,EAA+B;AAAA,MAA3Bc,KAA2B,QAA3BA,KAA2B;AAAA,MAApBC,MAAoB,QAApBA,MAAoB;AAAA,MAAZG,SAAY,QAAZA,SAAY;AACrD,MAAMU,SAAS,GAAG5B,EAAE,CAAC6B,YAAH,OAAlB;AAGA,MAAMC,GAAG,GAAGC,MAAM,CAACC,gBAAnB;AACAlB,EAAAA,KAAK,GAAGmB,IAAI,CAACC,KAAL,CAAWpB,KAAK,GAAGgB,GAAnB,CAAR;AACAf,EAAAA,MAAM,GAAGkB,IAAI,CAACC,KAAL,CAAWnB,MAAM,GAAGe,GAApB,CAAT;AAEA,OAAKlB,OAAL,CAAauB,MAAb,CAAoB;AAACrB,IAAAA,KAAK,EAALA,KAAD;AAAQC,IAAAA,MAAM,EAANA;AAAR,GAApB;AAEA,OAAKC,YAAL,CAAkBoB,QAAlB,CAA2B;AAAClB,IAAAA,SAAS,EAATA;AAAD,GAA3B;AAEA,OAAKF,YAAL,CAAkBU,MAAlB,CAAyB,QAAzB;AAGA,6BACE1B,EADF,EAEE;AACEqC,IAAAA,KAAK,EAAE,IADT;AAEEC,IAAAA,SAAS,EAAE,QAFb;AAGEC,IAAAA,WAAW,EAAEX,SAHf;AAIEY,IAAAA,QAAQ,EAAE,CAAC,CAAD,EAAI,CAAJ,EAAO1B,KAAP,EAAcC,MAAd;AAJZ,GAFF,EAQE,YAAM;AACJ,IAAA,MAAI,CAACX,KAAL,CAAWqC,WAAX,CAAuB;AAACC,MAAAA,SAAS,EAAE,MAAI,CAAC9B;AAAjB,KAAvB,EAAkD+B,IAAlD;AACD,GAVH;AAYD;;AAEM,SAASC,iBAAT,GAA6B;AAAA;;AAClC,6BAAK5B,YAAL,0EAAmB6B,QAAnB;AACA,OAAK7B,YAAL,GAAoB,IAApB;AAEA,sBAAKZ,KAAL,4DAAY0C,MAAZ;AACA,uBAAK7C,MAAL,8DAAa6C,MAAb;AACA,wBAAKlC,OAAL,gEAAckC,MAAd;AACD","sourcesContent":["/* eslint-disable no-invalid-this */\n\nimport {Deck} from '@deck.gl/core';\nimport {Model, Buffer, Framebuffer, instrumentGLContext, withParameters} from '@luma.gl/core';\n\nexport function initializeResources(gl) {\n instrumentGLContext(gl);\n\n this.buffer = new Buffer(gl, new Int8Array([-1, -1, 1, -1, -1, 1, 1, 1]));\n\n this.model = new Model(gl, {\n vs: `\n attribute vec2 a_pos;\n varying vec2 v_texcoord;\n void main(void) {\n gl_Position = vec4(a_pos, 0.0, 1.0);\n v_texcoord = (a_pos + 1.0) / 2.0;\n }\n `,\n fs: `\n precision mediump float;\n uniform sampler2D u_texture;\n varying vec2 v_texcoord;\n void main(void) {\n vec4 rgba = texture2D(u_texture, v_texcoord);\n rgba.rgb *= rgba.a;\n gl_FragColor = rgba;\n }\n `,\n attributes: {\n a_pos: this.buffer\n },\n vertexCount: 4,\n drawMode: gl.TRIANGLE_STRIP\n });\n\n this.deckFbo = new Framebuffer(gl, {width: 1, height: 1});\n\n this.deckInstance = new Deck({\n // The view state will be set dynamically to track the MapView current extent.\n viewState: {},\n\n // Input is handled by the ArcGIS API for JavaScript.\n controller: false,\n\n // We use the same WebGL context as the ArcGIS API for JavaScript.\n gl,\n\n // We need depth testing in general; we don't know what layers might be added to the deck.\n parameters: {\n depthTest: true\n },\n\n // This deck renders into an auxiliary framebuffer.\n _framebuffer: this.deckFbo,\n\n // To disable canvas resizing, since the FBO is owned by the ArcGIS API for JavaScript.\n width: null,\n height: null,\n\n _customRender: redrawReason => {\n if (redrawReason === 'arcgis') {\n this.deckInstance._drawLayers(redrawReason);\n } else {\n this.redraw();\n }\n }\n });\n}\n\nexport function render({gl, width, height, viewState}) {\n const screenFbo = gl.getParameter(gl.FRAMEBUFFER_BINDING);\n\n /* global window */\n const dpr = window.devicePixelRatio;\n width = Math.round(width * dpr);\n height = Math.round(height * dpr);\n\n this.deckFbo.resize({width, height});\n\n this.deckInstance.setProps({viewState});\n // redraw deck immediately into deckFbo\n this.deckInstance.redraw('arcgis');\n\n // We overlay the texture on top of the map using the full-screen quad.\n withParameters(\n gl,\n {\n blend: true,\n blendFunc: [gl.ONE, gl.ONE_MINUS_SRC_ALPHA],\n framebuffer: screenFbo,\n viewport: [0, 0, width, height]\n },\n () => {\n this.model.setUniforms({u_texture: this.deckFbo}).draw();\n }\n );\n}\n\nexport function finalizeResources() {\n this.deckInstance?.finalize();\n this.deckInstance = null;\n\n this.model?.delete();\n this.buffer?.delete();\n this.deckFbo?.delete();\n}\n"],"file":"commons.js"}
@@ -1,10 +1,14 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports.default = createDeckLayerView2D;
7
9
 
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+
8
12
  var _commons = require("./commons");
9
13
 
10
14
  function createDeckLayerView2D(BaseLayerViewGL2D) {
@@ -15,32 +19,35 @@ function createDeckLayerView2D(BaseLayerViewGL2D) {
15
19
  model: {},
16
20
  buffer: {}
17
21
  },
22
+ attach: function attach() {
23
+ var _this = this;
18
24
 
19
- attach() {
20
- const gl = this.context;
25
+ var gl = this.context;
21
26
 
22
27
  _commons.initializeResources.call(this, gl);
23
28
 
24
- this.layer.deck.on('change', props => this.deckInstance.setProps(props));
29
+ this.layer.deck.on('change', function (props) {
30
+ return _this.deckInstance.setProps(props);
31
+ });
25
32
  this.deckInstance.setProps(this.layer.deck.toJSON());
26
33
  },
27
-
28
- redraw() {
34
+ redraw: function redraw() {
29
35
  this.requestRender();
30
36
  },
31
-
32
- detach() {
37
+ detach: function detach() {
33
38
  _commons.finalizeResources.call(this);
34
39
  },
40
+ render: function render(renderParameters) {
41
+ var _this$view$state$size = (0, _slicedToArray2.default)(this.view.state.size, 2),
42
+ width = _this$view$state$size[0],
43
+ height = _this$view$state$size[1];
35
44
 
36
- render(renderParameters) {
37
- const [width, height] = this.view.state.size;
38
- const state = renderParameters.state;
45
+ var state = renderParameters.state;
39
46
 
40
47
  _commons.render.call(this, {
41
48
  gl: renderParameters.context,
42
- width,
43
- height,
49
+ width: width,
50
+ height: height,
44
51
  viewState: {
45
52
  latitude: this.view.center.latitude,
46
53
  longitude: this.view.center.longitude,
@@ -50,7 +57,6 @@ function createDeckLayerView2D(BaseLayerViewGL2D) {
50
57
  }
51
58
  });
52
59
  }
53
-
54
60
  });
55
61
  }
56
62
  //# sourceMappingURL=deck-layer-view-2d.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/deck-layer-view-2d.js"],"names":["createDeckLayerView2D","BaseLayerViewGL2D","createSubclass","properties","deckgl","deckFbo","model","buffer","attach","gl","context","initializeResources","call","layer","deck","on","props","deckInstance","setProps","toJSON","redraw","requestRender","detach","finalizeResources","render","renderParameters","width","height","view","state","size","viewState","latitude","center","longitude","zoom","featuresTilingScheme","scaleToLevel","scale","bearing","rotation","pitch"],"mappings":";;;;;;;AAAA;;AAEe,SAASA,qBAAT,CAA+BC,iBAA/B,EAAkD;AAC/D,SAAOA,iBAAiB,CAACC,cAAlB,CAAiC;AACtCC,IAAAA,UAAU,EAAE;AACVC,MAAAA,MAAM,EAAE,EADE;AAEVC,MAAAA,OAAO,EAAE,EAFC;AAGVC,MAAAA,KAAK,EAAE,EAHG;AAIVC,MAAAA,MAAM,EAAE;AAJE,KAD0B;;AAStCC,IAAAA,MAAM,GAAG;AAGP,YAAMC,EAAE,GAAG,KAAKC,OAAhB;;AACAC,mCAAoBC,IAApB,CAAyB,IAAzB,EAA+BH,EAA/B;;AAGA,WAAKI,KAAL,CAAWC,IAAX,CAAgBC,EAAhB,CAAmB,QAAnB,EAA6BC,KAAK,IAAI,KAAKC,YAAL,CAAkBC,QAAlB,CAA2BF,KAA3B,CAAtC;AAGA,WAAKC,YAAL,CAAkBC,QAAlB,CAA2B,KAAKL,KAAL,CAAWC,IAAX,CAAgBK,MAAhB,EAA3B;AACD,KApBqC;;AAsBtCC,IAAAA,MAAM,GAAG;AACP,WAAKC,aAAL;AACD,KAxBqC;;AA2BtCC,IAAAA,MAAM,GAAG;AACPC,iCAAkBX,IAAlB,CAAuB,IAAvB;AACD,KA7BqC;;AAgCtCY,IAAAA,MAAM,CAACC,gBAAD,EAAmB;AACvB,YAAM,CAACC,KAAD,EAAQC,MAAR,IAAkB,KAAKC,IAAL,CAAUC,KAAV,CAAgBC,IAAxC;AAEA,YAAMD,KAAK,GAAGJ,gBAAgB,CAACI,KAA/B;;AAEAL,sBAAOZ,IAAP,CAAY,IAAZ,EAAkB;AAChBH,QAAAA,EAAE,EAAEgB,gBAAgB,CAACf,OADL;AAEhBgB,QAAAA,KAFgB;AAGhBC,QAAAA,MAHgB;AAIhBI,QAAAA,SAAS,EAAE;AACTC,UAAAA,QAAQ,EAAE,KAAKJ,IAAL,CAAUK,MAAV,CAAiBD,QADlB;AAETE,UAAAA,SAAS,EAAE,KAAKN,IAAL,CAAUK,MAAV,CAAiBC,SAFnB;AAGTC,UAAAA,IAAI,EAAE,KAAKP,IAAL,CAAUQ,oBAAV,CAA+BC,YAA/B,CAA4CR,KAAK,CAACS,KAAlD,CAHG;AAITC,UAAAA,OAAO,EAAE,CAACV,KAAK,CAACW,QAJP;AAKTC,UAAAA,KAAK,EAAE;AALE;AAJK,OAAlB;AAYD;;AAjDqC,GAAjC,CAAP;AAmDD","sourcesContent":["import {initializeResources, render, finalizeResources} from './commons';\n\nexport default function createDeckLayerView2D(BaseLayerViewGL2D) {\n return BaseLayerViewGL2D.createSubclass({\n properties: {\n deckgl: {},\n deckFbo: {},\n model: {},\n buffer: {}\n },\n\n // Attach is called as soon as the layer view is ready to start rendering.\n attach() {\n // We use a full-screen quad and shaders to composite the frame rendered\n // with deck.gl on top of the MapView. Composition uses the MapView context.\n const gl = this.context;\n initializeResources.call(this, gl);\n\n // Update deck props\n this.layer.deck.on('change', props => this.deckInstance.setProps(props));\n\n // We need to start drawing the deck.gl layer immediately.\n this.deckInstance.setProps(this.layer.deck.toJSON());\n },\n\n redraw() {\n this.requestRender();\n },\n\n // Called when the layer must be destroyed.\n detach() {\n finalizeResources.call(this);\n },\n\n // Called every time that the layer view must be rendered.\n render(renderParameters) {\n const [width, height] = this.view.state.size;\n // The view state must be kept in-sync with the MapView of the ArcGIS API.\n const state = renderParameters.state;\n\n render.call(this, {\n gl: renderParameters.context,\n width,\n height,\n viewState: {\n latitude: this.view.center.latitude,\n longitude: this.view.center.longitude,\n zoom: this.view.featuresTilingScheme.scaleToLevel(state.scale),\n bearing: -state.rotation,\n pitch: 0\n }\n });\n }\n });\n}\n"],"file":"deck-layer-view-2d.js"}
1
+ {"version":3,"sources":["../../src/deck-layer-view-2d.js"],"names":["createDeckLayerView2D","BaseLayerViewGL2D","createSubclass","properties","deckgl","deckFbo","model","buffer","attach","gl","context","initializeResources","call","layer","deck","on","props","deckInstance","setProps","toJSON","redraw","requestRender","detach","finalizeResources","render","renderParameters","view","state","size","width","height","viewState","latitude","center","longitude","zoom","featuresTilingScheme","scaleToLevel","scale","bearing","rotation","pitch"],"mappings":";;;;;;;;;;;AAAA;;AAEe,SAASA,qBAAT,CAA+BC,iBAA/B,EAAkD;AAC/D,SAAOA,iBAAiB,CAACC,cAAlB,CAAiC;AACtCC,IAAAA,UAAU,EAAE;AACVC,MAAAA,MAAM,EAAE,EADE;AAEVC,MAAAA,OAAO,EAAE,EAFC;AAGVC,MAAAA,KAAK,EAAE,EAHG;AAIVC,MAAAA,MAAM,EAAE;AAJE,KAD0B;AAStCC,IAAAA,MATsC,oBAS7B;AAAA;;AAGP,UAAMC,EAAE,GAAG,KAAKC,OAAhB;;AACAC,mCAAoBC,IAApB,CAAyB,IAAzB,EAA+BH,EAA/B;;AAGA,WAAKI,KAAL,CAAWC,IAAX,CAAgBC,EAAhB,CAAmB,QAAnB,EAA6B,UAAAC,KAAK;AAAA,eAAI,KAAI,CAACC,YAAL,CAAkBC,QAAlB,CAA2BF,KAA3B,CAAJ;AAAA,OAAlC;AAGA,WAAKC,YAAL,CAAkBC,QAAlB,CAA2B,KAAKL,KAAL,CAAWC,IAAX,CAAgBK,MAAhB,EAA3B;AACD,KApBqC;AAsBtCC,IAAAA,MAtBsC,oBAsB7B;AACP,WAAKC,aAAL;AACD,KAxBqC;AA2BtCC,IAAAA,MA3BsC,oBA2B7B;AACPC,iCAAkBX,IAAlB,CAAuB,IAAvB;AACD,KA7BqC;AAgCtCY,IAAAA,MAhCsC,kBAgC/BC,gBAhC+B,EAgCb;AACvB,+DAAwB,KAAKC,IAAL,CAAUC,KAAV,CAAgBC,IAAxC;AAAA,UAAOC,KAAP;AAAA,UAAcC,MAAd;;AAEA,UAAMH,KAAK,GAAGF,gBAAgB,CAACE,KAA/B;;AAEAH,sBAAOZ,IAAP,CAAY,IAAZ,EAAkB;AAChBH,QAAAA,EAAE,EAAEgB,gBAAgB,CAACf,OADL;AAEhBmB,QAAAA,KAAK,EAALA,KAFgB;AAGhBC,QAAAA,MAAM,EAANA,MAHgB;AAIhBC,QAAAA,SAAS,EAAE;AACTC,UAAAA,QAAQ,EAAE,KAAKN,IAAL,CAAUO,MAAV,CAAiBD,QADlB;AAETE,UAAAA,SAAS,EAAE,KAAKR,IAAL,CAAUO,MAAV,CAAiBC,SAFnB;AAGTC,UAAAA,IAAI,EAAE,KAAKT,IAAL,CAAUU,oBAAV,CAA+BC,YAA/B,CAA4CV,KAAK,CAACW,KAAlD,CAHG;AAITC,UAAAA,OAAO,EAAE,CAACZ,KAAK,CAACa,QAJP;AAKTC,UAAAA,KAAK,EAAE;AALE;AAJK,OAAlB;AAYD;AAjDqC,GAAjC,CAAP;AAmDD","sourcesContent":["import {initializeResources, render, finalizeResources} from './commons';\n\nexport default function createDeckLayerView2D(BaseLayerViewGL2D) {\n return BaseLayerViewGL2D.createSubclass({\n properties: {\n deckgl: {},\n deckFbo: {},\n model: {},\n buffer: {}\n },\n\n // Attach is called as soon as the layer view is ready to start rendering.\n attach() {\n // We use a full-screen quad and shaders to composite the frame rendered\n // with deck.gl on top of the MapView. Composition uses the MapView context.\n const gl = this.context;\n initializeResources.call(this, gl);\n\n // Update deck props\n this.layer.deck.on('change', props => this.deckInstance.setProps(props));\n\n // We need to start drawing the deck.gl layer immediately.\n this.deckInstance.setProps(this.layer.deck.toJSON());\n },\n\n redraw() {\n this.requestRender();\n },\n\n // Called when the layer must be destroyed.\n detach() {\n finalizeResources.call(this);\n },\n\n // Called every time that the layer view must be rendered.\n render(renderParameters) {\n const [width, height] = this.view.state.size;\n // The view state must be kept in-sync with the MapView of the ArcGIS API.\n const state = renderParameters.state;\n\n render.call(this, {\n gl: renderParameters.context,\n width,\n height,\n viewState: {\n latitude: this.view.center.latitude,\n longitude: this.view.center.longitude,\n zoom: this.view.featuresTilingScheme.scaleToLevel(state.scale),\n bearing: -state.rotation,\n pitch: 0\n }\n });\n }\n });\n}\n"],"file":"deck-layer-view-2d.js"}
@@ -12,15 +12,13 @@ function createDeckLayer(DeckProps, Layer, DeckLayerView2D) {
12
12
  blendMode: {},
13
13
  effect: {}
14
14
  },
15
-
16
- constructor() {
15
+ constructor: function constructor() {
17
16
  this.deck = new DeckProps();
18
17
  },
19
-
20
- createLayerView(view) {
18
+ createLayerView: function createLayerView(view) {
21
19
  if (view.type === '2d') {
22
20
  return new DeckLayerView2D({
23
- view,
21
+ view: view,
24
22
  layer: this
25
23
  });
26
24
  }
@@ -28,7 +26,6 @@ function createDeckLayer(DeckProps, Layer, DeckLayerView2D) {
28
26
  console.error('DeckLayer does not support SceneView at the moment. Use DeckRenderer instead.');
29
27
  return null;
30
28
  }
31
-
32
29
  });
33
30
  }
34
31
  //# sourceMappingURL=deck-layer.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/deck-layer.js"],"names":["createDeckLayer","DeckProps","Layer","DeckLayerView2D","createSubclass","properties","deck","blendMode","effect","constructor","createLayerView","view","type","layer","console","error"],"mappings":";;;;;;;AAAe,SAASA,eAAT,CAAyBC,SAAzB,EAAoCC,KAApC,EAA2CC,eAA3C,EAA4D;AAGzE,SAAOD,KAAK,CAACE,cAAN,CAAqB;AAC1BC,IAAAA,UAAU,EAAE;AACVC,MAAAA,IAAI,EAAE,EADI;AAEVC,MAAAA,SAAS,EAAE,EAFD;AAGVC,MAAAA,MAAM,EAAE;AAHE,KADc;;AAO1BC,IAAAA,WAAW,GAAG;AACZ,WAAKH,IAAL,GAAY,IAAIL,SAAJ,EAAZ;AACD,KATyB;;AAa1BS,IAAAA,eAAe,CAACC,IAAD,EAAO;AACpB,UAAIA,IAAI,CAACC,IAAL,KAAc,IAAlB,EAAwB;AACtB,eAAO,IAAIT,eAAJ,CAAoB;AACzBQ,UAAAA,IADyB;AAEzBE,UAAAA,KAAK,EAAE;AAFkB,SAApB,CAAP;AAID;;AAGDC,MAAAA,OAAO,CAACC,KAAR,CACE,+EADF;AAIA,aAAO,IAAP;AACD;;AA3ByB,GAArB,CAAP;AA6BD","sourcesContent":["export default function createDeckLayer(DeckProps, Layer, DeckLayerView2D) {\n // A layer that displays inside a MapView using an instance\n // of the layer view defined above.\n return Layer.createSubclass({\n properties: {\n deck: {},\n blendMode: {},\n effect: {}\n },\n\n constructor() {\n this.deck = new DeckProps();\n },\n\n // Called by the MapView whenever a layer view\n // needs to be created for a given layer.\n createLayerView(view) {\n if (view.type === '2d') {\n return new DeckLayerView2D({\n view,\n layer: this\n });\n }\n\n // eslint-disable-next-line\n console.error(\n 'DeckLayer does not support SceneView at the moment. Use DeckRenderer instead.'\n );\n\n return null;\n }\n });\n}\n"],"file":"deck-layer.js"}
1
+ {"version":3,"sources":["../../src/deck-layer.js"],"names":["createDeckLayer","DeckProps","Layer","DeckLayerView2D","createSubclass","properties","deck","blendMode","effect","constructor","createLayerView","view","type","layer","console","error"],"mappings":";;;;;;;AAAe,SAASA,eAAT,CAAyBC,SAAzB,EAAoCC,KAApC,EAA2CC,eAA3C,EAA4D;AAGzE,SAAOD,KAAK,CAACE,cAAN,CAAqB;AAC1BC,IAAAA,UAAU,EAAE;AACVC,MAAAA,IAAI,EAAE,EADI;AAEVC,MAAAA,SAAS,EAAE,EAFD;AAGVC,MAAAA,MAAM,EAAE;AAHE,KADc;AAO1BC,IAAAA,WAP0B,yBAOZ;AACZ,WAAKH,IAAL,GAAY,IAAIL,SAAJ,EAAZ;AACD,KATyB;AAa1BS,IAAAA,eAb0B,2BAaVC,IAbU,EAaJ;AACpB,UAAIA,IAAI,CAACC,IAAL,KAAc,IAAlB,EAAwB;AACtB,eAAO,IAAIT,eAAJ,CAAoB;AACzBQ,UAAAA,IAAI,EAAJA,IADyB;AAEzBE,UAAAA,KAAK,EAAE;AAFkB,SAApB,CAAP;AAID;;AAGDC,MAAAA,OAAO,CAACC,KAAR,CACE,+EADF;AAIA,aAAO,IAAP;AACD;AA3ByB,GAArB,CAAP;AA6BD","sourcesContent":["export default function createDeckLayer(DeckProps, Layer, DeckLayerView2D) {\n // A layer that displays inside a MapView using an instance\n // of the layer view defined above.\n return Layer.createSubclass({\n properties: {\n deck: {},\n blendMode: {},\n effect: {}\n },\n\n constructor() {\n this.deck = new DeckProps();\n },\n\n // Called by the MapView whenever a layer view\n // needs to be created for a given layer.\n createLayerView(view) {\n if (view.type === '2d') {\n return new DeckLayerView2D({\n view,\n layer: this\n });\n }\n\n // eslint-disable-next-line\n console.error(\n 'DeckLayer does not support SceneView at the moment. Use DeckRenderer instead.'\n );\n\n return null;\n }\n });\n}\n"],"file":"deck-layer.js"}
@@ -1,10 +1,21 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports.default = createDeckProps;
7
- const properties = {
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
13
+
14
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
15
+
16
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
17
+
18
+ var properties = {
8
19
  layers: {},
9
20
  layerFilter: {},
10
21
  parameters: {},
@@ -25,46 +36,62 @@ const properties = {
25
36
  };
26
37
 
27
38
  function createDeckProps(Accessor) {
28
- const DeckProps = Accessor.createSubclass({
29
- properties,
39
+ var DeckProps = Accessor.createSubclass({
40
+ properties: properties,
41
+ constructor: function constructor() {
42
+ var _this = this;
30
43
 
31
- constructor() {
32
44
  this._callbacks = {};
33
- this.watch(Object.keys(properties), (newValue, oldValue, propName) => {
34
- this.emit('change', {
35
- [propName]: newValue
36
- });
45
+ this.watch(Object.keys(properties), function (newValue, oldValue, propName) {
46
+ _this.emit('change', (0, _defineProperty2.default)({}, propName, newValue));
37
47
  });
38
48
  },
39
-
40
- on(eventName, cb) {
49
+ on: function on(eventName, cb) {
41
50
  this._callbacks[eventName] = this._callbacks[eventName] || [];
42
51
 
43
52
  this._callbacks[eventName].push(cb);
44
53
  },
45
-
46
- emit(eventName, details) {
47
- const callbacks = this._callbacks[eventName];
54
+ emit: function emit(eventName, details) {
55
+ var callbacks = this._callbacks[eventName];
48
56
 
49
57
  if (callbacks) {
50
- for (const cb of callbacks) {
51
- cb(details);
58
+ var _iterator = _createForOfIteratorHelper(callbacks),
59
+ _step;
60
+
61
+ try {
62
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
63
+ var cb = _step.value;
64
+ cb(details);
65
+ }
66
+ } catch (err) {
67
+ _iterator.e(err);
68
+ } finally {
69
+ _iterator.f();
52
70
  }
53
71
  }
54
72
  },
73
+ toJSON: function toJSON() {
74
+ var result = {};
55
75
 
56
- toJSON() {
57
- const result = {};
76
+ var _iterator2 = _createForOfIteratorHelper(this.keys()),
77
+ _step2;
58
78
 
59
- for (const key of this.keys()) {
60
- if (this[key] !== undefined) {
61
- result[key] = this[key];
79
+ try {
80
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
81
+ var key = _step2.value;
82
+
83
+ if (this[key] !== undefined) {
84
+ result[key] = this[key];
85
+ }
62
86
  }
87
+ } catch (err) {
88
+ _iterator2.e(err);
89
+ } finally {
90
+ _iterator2.f();
63
91
  }
64
92
 
65
93
  return result;
66
94
  }
67
-
68
95
  });
69
96
  return DeckProps;
70
97
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/deck-props.js"],"names":["properties","layers","layerFilter","parameters","effects","pickingRadius","onBeforeRender","onAfterRender","onClick","onHover","onDragStart","onDrag","onDragEnd","onError","debug","drawPickingColors","getCursor","getTooltip","createDeckProps","Accessor","DeckProps","createSubclass","constructor","_callbacks","watch","Object","keys","newValue","oldValue","propName","emit","on","eventName","cb","push","details","callbacks","toJSON","result","key","undefined"],"mappings":";;;;;;AAAA,MAAMA,UAAU,GAAG;AACjBC,EAAAA,MAAM,EAAE,EADS;AAEjBC,EAAAA,WAAW,EAAE,EAFI;AAGjBC,EAAAA,UAAU,EAAE,EAHK;AAIjBC,EAAAA,OAAO,EAAE,EAJQ;AAKjBC,EAAAA,aAAa,EAAE,EALE;AAMjBC,EAAAA,cAAc,EAAE,EANC;AAOjBC,EAAAA,aAAa,EAAE,EAPE;AAQjBC,EAAAA,OAAO,EAAE,EARQ;AASjBC,EAAAA,OAAO,EAAE,EATQ;AAUjBC,EAAAA,WAAW,EAAE,EAVI;AAWjBC,EAAAA,MAAM,EAAE,EAXS;AAYjBC,EAAAA,SAAS,EAAE,EAZM;AAajBC,EAAAA,OAAO,EAAE,EAbQ;AAcjBC,EAAAA,KAAK,EAAE,EAdU;AAejBC,EAAAA,iBAAiB,EAAE,EAfF;AAgBjBC,EAAAA,SAAS,EAAE,EAhBM;AAiBjBC,EAAAA,UAAU,EAAE;AAjBK,CAAnB;;AAqBe,SAASC,eAAT,CAAyBC,QAAzB,EAAmC;AAChD,QAAMC,SAAS,GAAGD,QAAQ,CAACE,cAAT,CAAwB;AACxCrB,IAAAA,UADwC;;AAGxCsB,IAAAA,WAAW,GAAG;AACZ,WAAKC,UAAL,GAAkB,EAAlB;AAEA,WAAKC,KAAL,CAAWC,MAAM,CAACC,IAAP,CAAY1B,UAAZ,CAAX,EAAoC,CAAC2B,QAAD,EAAWC,QAAX,EAAqBC,QAArB,KAAkC;AACpE,aAAKC,IAAL,CAAU,QAAV,EAAoB;AAAC,WAACD,QAAD,GAAYF;AAAb,SAApB;AACD,OAFD;AAGD,KATuC;;AAWxCI,IAAAA,EAAE,CAACC,SAAD,EAAYC,EAAZ,EAAgB;AAChB,WAAKV,UAAL,CAAgBS,SAAhB,IAA6B,KAAKT,UAAL,CAAgBS,SAAhB,KAA8B,EAA3D;;AACA,WAAKT,UAAL,CAAgBS,SAAhB,EAA2BE,IAA3B,CAAgCD,EAAhC;AACD,KAduC;;AAgBxCH,IAAAA,IAAI,CAACE,SAAD,EAAYG,OAAZ,EAAqB;AACvB,YAAMC,SAAS,GAAG,KAAKb,UAAL,CAAgBS,SAAhB,CAAlB;;AACA,UAAII,SAAJ,EAAe;AACb,aAAK,MAAMH,EAAX,IAAiBG,SAAjB,EAA4B;AAC1BH,UAAAA,EAAE,CAACE,OAAD,CAAF;AACD;AACF;AACF,KAvBuC;;AAyBxCE,IAAAA,MAAM,GAAG;AACP,YAAMC,MAAM,GAAG,EAAf;;AACA,WAAK,MAAMC,GAAX,IAAkB,KAAKb,IAAL,EAAlB,EAA+B;AAC7B,YAAI,KAAKa,GAAL,MAAcC,SAAlB,EAA6B;AAC3BF,UAAAA,MAAM,CAACC,GAAD,CAAN,GAAc,KAAKA,GAAL,CAAd;AACD;AACF;;AACD,aAAOD,MAAP;AACD;;AAjCuC,GAAxB,CAAlB;AAoCA,SAAOlB,SAAP;AACD","sourcesContent":["const properties = {\n layers: {},\n layerFilter: {},\n parameters: {},\n effects: {},\n pickingRadius: {},\n onBeforeRender: {},\n onAfterRender: {},\n onClick: {},\n onHover: {},\n onDragStart: {},\n onDrag: {},\n onDragEnd: {},\n onError: {},\n debug: {},\n drawPickingColors: {},\n getCursor: {},\n getTooltip: {}\n};\n\n/* eslint-disable callback-return */\nexport default function createDeckProps(Accessor) {\n const DeckProps = Accessor.createSubclass({\n properties,\n\n constructor() {\n this._callbacks = {};\n\n this.watch(Object.keys(properties), (newValue, oldValue, propName) => {\n this.emit('change', {[propName]: newValue});\n });\n },\n\n on(eventName, cb) {\n this._callbacks[eventName] = this._callbacks[eventName] || [];\n this._callbacks[eventName].push(cb);\n },\n\n emit(eventName, details) {\n const callbacks = this._callbacks[eventName];\n if (callbacks) {\n for (const cb of callbacks) {\n cb(details);\n }\n }\n },\n\n toJSON() {\n const result = {};\n for (const key of this.keys()) {\n if (this[key] !== undefined) {\n result[key] = this[key];\n }\n }\n return result;\n }\n });\n\n return DeckProps;\n}\n"],"file":"deck-props.js"}
1
+ {"version":3,"sources":["../../src/deck-props.js"],"names":["properties","layers","layerFilter","parameters","effects","pickingRadius","onBeforeRender","onAfterRender","onClick","onHover","onDragStart","onDrag","onDragEnd","onError","debug","drawPickingColors","getCursor","getTooltip","createDeckProps","Accessor","DeckProps","createSubclass","constructor","_callbacks","watch","Object","keys","newValue","oldValue","propName","emit","on","eventName","cb","push","details","callbacks","toJSON","result","key","undefined"],"mappings":";;;;;;;;;;;;;;;;;AAAA,IAAMA,UAAU,GAAG;AACjBC,EAAAA,MAAM,EAAE,EADS;AAEjBC,EAAAA,WAAW,EAAE,EAFI;AAGjBC,EAAAA,UAAU,EAAE,EAHK;AAIjBC,EAAAA,OAAO,EAAE,EAJQ;AAKjBC,EAAAA,aAAa,EAAE,EALE;AAMjBC,EAAAA,cAAc,EAAE,EANC;AAOjBC,EAAAA,aAAa,EAAE,EAPE;AAQjBC,EAAAA,OAAO,EAAE,EARQ;AASjBC,EAAAA,OAAO,EAAE,EATQ;AAUjBC,EAAAA,WAAW,EAAE,EAVI;AAWjBC,EAAAA,MAAM,EAAE,EAXS;AAYjBC,EAAAA,SAAS,EAAE,EAZM;AAajBC,EAAAA,OAAO,EAAE,EAbQ;AAcjBC,EAAAA,KAAK,EAAE,EAdU;AAejBC,EAAAA,iBAAiB,EAAE,EAfF;AAgBjBC,EAAAA,SAAS,EAAE,EAhBM;AAiBjBC,EAAAA,UAAU,EAAE;AAjBK,CAAnB;;AAqBe,SAASC,eAAT,CAAyBC,QAAzB,EAAmC;AAChD,MAAMC,SAAS,GAAGD,QAAQ,CAACE,cAAT,CAAwB;AACxCrB,IAAAA,UAAU,EAAVA,UADwC;AAGxCsB,IAAAA,WAHwC,yBAG1B;AAAA;;AACZ,WAAKC,UAAL,GAAkB,EAAlB;AAEA,WAAKC,KAAL,CAAWC,MAAM,CAACC,IAAP,CAAY1B,UAAZ,CAAX,EAAoC,UAAC2B,QAAD,EAAWC,QAAX,EAAqBC,QAArB,EAAkC;AACpE,QAAA,KAAI,CAACC,IAAL,CAAU,QAAV,oCAAsBD,QAAtB,EAAiCF,QAAjC;AACD,OAFD;AAGD,KATuC;AAWxCI,IAAAA,EAXwC,cAWrCC,SAXqC,EAW1BC,EAX0B,EAWtB;AAChB,WAAKV,UAAL,CAAgBS,SAAhB,IAA6B,KAAKT,UAAL,CAAgBS,SAAhB,KAA8B,EAA3D;;AACA,WAAKT,UAAL,CAAgBS,SAAhB,EAA2BE,IAA3B,CAAgCD,EAAhC;AACD,KAduC;AAgBxCH,IAAAA,IAhBwC,gBAgBnCE,SAhBmC,EAgBxBG,OAhBwB,EAgBf;AACvB,UAAMC,SAAS,GAAG,KAAKb,UAAL,CAAgBS,SAAhB,CAAlB;;AACA,UAAII,SAAJ,EAAe;AAAA,mDACIA,SADJ;AAAA;;AAAA;AACb,8DAA4B;AAAA,gBAAjBH,EAAiB;AAC1BA,YAAAA,EAAE,CAACE,OAAD,CAAF;AACD;AAHY;AAAA;AAAA;AAAA;AAAA;AAId;AACF,KAvBuC;AAyBxCE,IAAAA,MAzBwC,oBAyB/B;AACP,UAAMC,MAAM,GAAG,EAAf;;AADO,kDAEW,KAAKZ,IAAL,EAFX;AAAA;;AAAA;AAEP,+DAA+B;AAAA,cAApBa,GAAoB;;AAC7B,cAAI,KAAKA,GAAL,MAAcC,SAAlB,EAA6B;AAC3BF,YAAAA,MAAM,CAACC,GAAD,CAAN,GAAc,KAAKA,GAAL,CAAd;AACD;AACF;AANM;AAAA;AAAA;AAAA;AAAA;;AAOP,aAAOD,MAAP;AACD;AAjCuC,GAAxB,CAAlB;AAoCA,SAAOlB,SAAP;AACD","sourcesContent":["const properties = {\n layers: {},\n layerFilter: {},\n parameters: {},\n effects: {},\n pickingRadius: {},\n onBeforeRender: {},\n onAfterRender: {},\n onClick: {},\n onHover: {},\n onDragStart: {},\n onDrag: {},\n onDragEnd: {},\n onError: {},\n debug: {},\n drawPickingColors: {},\n getCursor: {},\n getTooltip: {}\n};\n\n/* eslint-disable callback-return */\nexport default function createDeckProps(Accessor) {\n const DeckProps = Accessor.createSubclass({\n properties,\n\n constructor() {\n this._callbacks = {};\n\n this.watch(Object.keys(properties), (newValue, oldValue, propName) => {\n this.emit('change', {[propName]: newValue});\n });\n },\n\n on(eventName, cb) {\n this._callbacks[eventName] = this._callbacks[eventName] || [];\n this._callbacks[eventName].push(cb);\n },\n\n emit(eventName, details) {\n const callbacks = this._callbacks[eventName];\n if (callbacks) {\n for (const cb of callbacks) {\n cb(details);\n }\n }\n },\n\n toJSON() {\n const result = {};\n for (const key of this.keys()) {\n if (this[key] !== undefined) {\n result[key] = this[key];\n }\n }\n return result;\n }\n });\n\n return DeckProps;\n}\n"],"file":"deck-props.js"}
@@ -1,61 +1,82 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports.default = createDeckRenderer;
7
9
 
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+
12
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
+
14
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
+
8
16
  var _commons = require("./commons");
9
17
 
10
18
  function arcgisFOVToDeckAltitude(fov, aspectRatio) {
11
- const D = Math.sqrt(1 + aspectRatio ** 2);
12
- const halfFOV = fov / 2 / 180 * Math.PI;
19
+ var D = Math.sqrt(1 + Math.pow(aspectRatio, 2));
20
+ var halfFOV = fov / 2 / 180 * Math.PI;
13
21
  return D / 2 / Math.tan(halfFOV);
14
22
  }
15
23
 
16
24
  function createDeckRenderer(DeckProps, externalRenderers) {
17
- class DeckRenderer {
18
- constructor(view, props) {
25
+ var DeckRenderer = function () {
26
+ function DeckRenderer(view, props) {
27
+ (0, _classCallCheck2.default)(this, DeckRenderer);
19
28
  this.view = view;
20
29
  this.deck = new DeckProps(props);
21
30
  }
22
31
 
23
- setup(context) {
24
- const gl = context.gl;
25
-
26
- _commons.initializeResources.call(this, gl);
32
+ (0, _createClass2.default)(DeckRenderer, [{
33
+ key: "setup",
34
+ value: function setup(context) {
35
+ var _this = this;
27
36
 
28
- this.deck.on('change', props => this.deckInstance.setProps(props));
29
- this.deckInstance.setProps(this.deck.toJSON());
30
- }
37
+ var gl = context.gl;
31
38
 
32
- dispose() {
33
- _commons.finalizeResources.call(this);
34
- }
39
+ _commons.initializeResources.call(this, gl);
35
40
 
36
- redraw() {
37
- externalRenderers.requestRender(this.view);
38
- }
39
-
40
- render(context) {
41
- const [width, height] = this.view.size;
42
-
43
- _commons.render.call(this, {
44
- gl: context.gl,
45
- width,
46
- height,
47
- viewState: {
48
- latitude: this.view.center.latitude,
49
- longitude: this.view.center.longitude,
50
- altitude: arcgisFOVToDeckAltitude(this.view.camera.fov, width / height),
51
- zoom: this.view.zoom,
52
- bearing: this.view.camera.heading,
53
- pitch: this.view.camera.tilt
54
- }
55
- });
56
- }
41
+ this.deck.on('change', function (props) {
42
+ return _this.deckInstance.setProps(props);
43
+ });
44
+ this.deckInstance.setProps(this.deck.toJSON());
45
+ }
46
+ }, {
47
+ key: "dispose",
48
+ value: function dispose() {
49
+ _commons.finalizeResources.call(this);
50
+ }
51
+ }, {
52
+ key: "redraw",
53
+ value: function redraw() {
54
+ externalRenderers.requestRender(this.view);
55
+ }
56
+ }, {
57
+ key: "render",
58
+ value: function render(context) {
59
+ var _this$view$size = (0, _slicedToArray2.default)(this.view.size, 2),
60
+ width = _this$view$size[0],
61
+ height = _this$view$size[1];
57
62
 
58
- }
63
+ _commons.render.call(this, {
64
+ gl: context.gl,
65
+ width: width,
66
+ height: height,
67
+ viewState: {
68
+ latitude: this.view.center.latitude,
69
+ longitude: this.view.center.longitude,
70
+ altitude: arcgisFOVToDeckAltitude(this.view.camera.fov, width / height),
71
+ zoom: this.view.zoom,
72
+ bearing: this.view.camera.heading,
73
+ pitch: this.view.camera.tilt
74
+ }
75
+ });
76
+ }
77
+ }]);
78
+ return DeckRenderer;
79
+ }();
59
80
 
60
81
  return DeckRenderer;
61
82
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/deck-renderer.js"],"names":["arcgisFOVToDeckAltitude","fov","aspectRatio","D","Math","sqrt","halfFOV","PI","tan","createDeckRenderer","DeckProps","externalRenderers","DeckRenderer","constructor","view","props","deck","setup","context","gl","initializeResources","call","on","deckInstance","setProps","toJSON","dispose","finalizeResources","redraw","requestRender","render","width","height","size","viewState","latitude","center","longitude","altitude","camera","zoom","bearing","heading","pitch","tilt"],"mappings":";;;;;;;AAEA;;AAGA,SAASA,uBAAT,CAAiCC,GAAjC,EAAsCC,WAAtC,EAAmD;AACjD,QAAMC,CAAC,GAAGC,IAAI,CAACC,IAAL,CAAU,IAAIH,WAAW,IAAI,CAA7B,CAAV;AACA,QAAMI,OAAO,GAAIL,GAAG,GAAG,CAAN,GAAU,GAAX,GAAkBG,IAAI,CAACG,EAAvC;AACA,SAAOJ,CAAC,GAAG,CAAJ,GAAQC,IAAI,CAACI,GAAL,CAASF,OAAT,CAAf;AACD;;AAEc,SAASG,kBAAT,CAA4BC,SAA5B,EAAuCC,iBAAvC,EAA0D;AACvE,QAAMC,YAAN,CAAmB;AACjBC,IAAAA,WAAW,CAACC,IAAD,EAAOC,KAAP,EAAc;AACvB,WAAKD,IAAL,GAAYA,IAAZ;AACA,WAAKE,IAAL,GAAY,IAAIN,SAAJ,CAAcK,KAAd,CAAZ;AACD;;AAEDE,IAAAA,KAAK,CAACC,OAAD,EAAU;AACb,YAAMC,EAAE,GAAGD,OAAO,CAACC,EAAnB;;AACAC,mCAAoBC,IAApB,CAAyB,IAAzB,EAA+BF,EAA/B;;AAEA,WAAKH,IAAL,CAAUM,EAAV,CAAa,QAAb,EAAuBP,KAAK,IAAI,KAAKQ,YAAL,CAAkBC,QAAlB,CAA2BT,KAA3B,CAAhC;AAEA,WAAKQ,YAAL,CAAkBC,QAAlB,CAA2B,KAAKR,IAAL,CAAUS,MAAV,EAA3B;AACD;;AAEDC,IAAAA,OAAO,GAAG;AACRC,iCAAkBN,IAAlB,CAAuB,IAAvB;AACD;;AAEDO,IAAAA,MAAM,GAAG;AACPjB,MAAAA,iBAAiB,CAACkB,aAAlB,CAAgC,KAAKf,IAArC;AACD;;AAEDgB,IAAAA,MAAM,CAACZ,OAAD,EAAU;AACd,YAAM,CAACa,KAAD,EAAQC,MAAR,IAAkB,KAAKlB,IAAL,CAAUmB,IAAlC;;AAEAH,sBAAOT,IAAP,CAAY,IAAZ,EAAkB;AAChBF,QAAAA,EAAE,EAAED,OAAO,CAACC,EADI;AAEhBY,QAAAA,KAFgB;AAGhBC,QAAAA,MAHgB;AAIhBE,QAAAA,SAAS,EAAE;AACTC,UAAAA,QAAQ,EAAE,KAAKrB,IAAL,CAAUsB,MAAV,CAAiBD,QADlB;AAETE,UAAAA,SAAS,EAAE,KAAKvB,IAAL,CAAUsB,MAAV,CAAiBC,SAFnB;AAGTC,UAAAA,QAAQ,EAAEtC,uBAAuB,CAAC,KAAKc,IAAL,CAAUyB,MAAV,CAAiBtC,GAAlB,EAAuB8B,KAAK,GAAGC,MAA/B,CAHxB;AAITQ,UAAAA,IAAI,EAAE,KAAK1B,IAAL,CAAU0B,IAJP;AAKTC,UAAAA,OAAO,EAAE,KAAK3B,IAAL,CAAUyB,MAAV,CAAiBG,OALjB;AAMTC,UAAAA,KAAK,EAAE,KAAK7B,IAAL,CAAUyB,MAAV,CAAiBK;AANf;AAJK,OAAlB;AAaD;;AAvCgB;;AA0CnB,SAAOhC,YAAP;AACD","sourcesContent":["/* eslint-disable no-invalid-this */\n\nimport {initializeResources, render, finalizeResources} from './commons';\n\n// ArcGIS fov is corner-to-corner\nfunction arcgisFOVToDeckAltitude(fov, aspectRatio) {\n const D = Math.sqrt(1 + aspectRatio ** 2);\n const halfFOV = (fov / 2 / 180) * Math.PI;\n return D / 2 / Math.tan(halfFOV);\n}\n\nexport default function createDeckRenderer(DeckProps, externalRenderers) {\n class DeckRenderer {\n constructor(view, props) {\n this.view = view;\n this.deck = new DeckProps(props);\n }\n\n setup(context) {\n const gl = context.gl;\n initializeResources.call(this, gl);\n\n this.deck.on('change', props => this.deckInstance.setProps(props));\n\n this.deckInstance.setProps(this.deck.toJSON());\n }\n\n dispose() {\n finalizeResources.call(this);\n }\n\n redraw() {\n externalRenderers.requestRender(this.view);\n }\n\n render(context) {\n const [width, height] = this.view.size;\n\n render.call(this, {\n gl: context.gl,\n width,\n height,\n viewState: {\n latitude: this.view.center.latitude,\n longitude: this.view.center.longitude,\n altitude: arcgisFOVToDeckAltitude(this.view.camera.fov, width / height),\n zoom: this.view.zoom,\n bearing: this.view.camera.heading,\n pitch: this.view.camera.tilt\n }\n });\n }\n }\n\n return DeckRenderer;\n}\n"],"file":"deck-renderer.js"}
1
+ {"version":3,"sources":["../../src/deck-renderer.js"],"names":["arcgisFOVToDeckAltitude","fov","aspectRatio","D","Math","sqrt","halfFOV","PI","tan","createDeckRenderer","DeckProps","externalRenderers","DeckRenderer","view","props","deck","context","gl","initializeResources","call","on","deckInstance","setProps","toJSON","finalizeResources","requestRender","size","width","height","render","viewState","latitude","center","longitude","altitude","camera","zoom","bearing","heading","pitch","tilt"],"mappings":";;;;;;;;;;;;;;;AAEA;;AAGA,SAASA,uBAAT,CAAiCC,GAAjC,EAAsCC,WAAtC,EAAmD;AACjD,MAAMC,CAAC,GAAGC,IAAI,CAACC,IAAL,CAAU,aAAIH,WAAJ,EAAmB,CAAnB,CAAV,CAAV;AACA,MAAMI,OAAO,GAAIL,GAAG,GAAG,CAAN,GAAU,GAAX,GAAkBG,IAAI,CAACG,EAAvC;AACA,SAAOJ,CAAC,GAAG,CAAJ,GAAQC,IAAI,CAACI,GAAL,CAASF,OAAT,CAAf;AACD;;AAEc,SAASG,kBAAT,CAA4BC,SAA5B,EAAuCC,iBAAvC,EAA0D;AAAA,MACjEC,YADiE;AAErE,0BAAYC,IAAZ,EAAkBC,KAAlB,EAAyB;AAAA;AACvB,WAAKD,IAAL,GAAYA,IAAZ;AACA,WAAKE,IAAL,GAAY,IAAIL,SAAJ,CAAcI,KAAd,CAAZ;AACD;;AALoE;AAAA;AAAA,aAOrE,eAAME,OAAN,EAAe;AAAA;;AACb,YAAMC,EAAE,GAAGD,OAAO,CAACC,EAAnB;;AACAC,qCAAoBC,IAApB,CAAyB,IAAzB,EAA+BF,EAA/B;;AAEA,aAAKF,IAAL,CAAUK,EAAV,CAAa,QAAb,EAAuB,UAAAN,KAAK;AAAA,iBAAI,KAAI,CAACO,YAAL,CAAkBC,QAAlB,CAA2BR,KAA3B,CAAJ;AAAA,SAA5B;AAEA,aAAKO,YAAL,CAAkBC,QAAlB,CAA2B,KAAKP,IAAL,CAAUQ,MAAV,EAA3B;AACD;AAdoE;AAAA;AAAA,aAgBrE,mBAAU;AACRC,mCAAkBL,IAAlB,CAAuB,IAAvB;AACD;AAlBoE;AAAA;AAAA,aAoBrE,kBAAS;AACPR,QAAAA,iBAAiB,CAACc,aAAlB,CAAgC,KAAKZ,IAArC;AACD;AAtBoE;AAAA;AAAA,aAwBrE,gBAAOG,OAAP,EAAgB;AACd,2DAAwB,KAAKH,IAAL,CAAUa,IAAlC;AAAA,YAAOC,KAAP;AAAA,YAAcC,MAAd;;AAEAC,wBAAOV,IAAP,CAAY,IAAZ,EAAkB;AAChBF,UAAAA,EAAE,EAAED,OAAO,CAACC,EADI;AAEhBU,UAAAA,KAAK,EAALA,KAFgB;AAGhBC,UAAAA,MAAM,EAANA,MAHgB;AAIhBE,UAAAA,SAAS,EAAE;AACTC,YAAAA,QAAQ,EAAE,KAAKlB,IAAL,CAAUmB,MAAV,CAAiBD,QADlB;AAETE,YAAAA,SAAS,EAAE,KAAKpB,IAAL,CAAUmB,MAAV,CAAiBC,SAFnB;AAGTC,YAAAA,QAAQ,EAAElC,uBAAuB,CAAC,KAAKa,IAAL,CAAUsB,MAAV,CAAiBlC,GAAlB,EAAuB0B,KAAK,GAAGC,MAA/B,CAHxB;AAITQ,YAAAA,IAAI,EAAE,KAAKvB,IAAL,CAAUuB,IAJP;AAKTC,YAAAA,OAAO,EAAE,KAAKxB,IAAL,CAAUsB,MAAV,CAAiBG,OALjB;AAMTC,YAAAA,KAAK,EAAE,KAAK1B,IAAL,CAAUsB,MAAV,CAAiBK;AANf;AAJK,SAAlB;AAaD;AAxCoE;AAAA;AAAA;;AA2CvE,SAAO5B,YAAP;AACD","sourcesContent":["/* eslint-disable no-invalid-this */\n\nimport {initializeResources, render, finalizeResources} from './commons';\n\n// ArcGIS fov is corner-to-corner\nfunction arcgisFOVToDeckAltitude(fov, aspectRatio) {\n const D = Math.sqrt(1 + aspectRatio ** 2);\n const halfFOV = (fov / 2 / 180) * Math.PI;\n return D / 2 / Math.tan(halfFOV);\n}\n\nexport default function createDeckRenderer(DeckProps, externalRenderers) {\n class DeckRenderer {\n constructor(view, props) {\n this.view = view;\n this.deck = new DeckProps(props);\n }\n\n setup(context) {\n const gl = context.gl;\n initializeResources.call(this, gl);\n\n this.deck.on('change', props => this.deckInstance.setProps(props));\n\n this.deckInstance.setProps(this.deck.toJSON());\n }\n\n dispose() {\n finalizeResources.call(this);\n }\n\n redraw() {\n externalRenderers.requestRender(this.view);\n }\n\n render(context) {\n const [width, height] = this.view.size;\n\n render.call(this, {\n gl: context.gl,\n width,\n height,\n viewState: {\n latitude: this.view.center.latitude,\n longitude: this.view.center.longitude,\n altitude: arcgisFOVToDeckAltitude(this.view.camera.fov, width / height),\n zoom: this.view.zoom,\n bearing: this.view.camera.heading,\n pitch: this.view.camera.tilt\n }\n });\n }\n }\n\n return DeckRenderer;\n}\n"],"file":"deck-renderer.js"}
package/dist/es5/index.js CHANGED
@@ -2,12 +2,14 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
5
7
  Object.defineProperty(exports, "__esModule", {
6
8
  value: true
7
9
  });
8
10
  Object.defineProperty(exports, "loadArcGISModules", {
9
11
  enumerable: true,
10
- get: function () {
12
+ get: function get() {
11
13
  return _loadModules.loadArcGISModules;
12
14
  }
13
15
  });
@@ -31,14 +33,14 @@ var externalRenderers = _interopRequireWildcard(require("@arcgis/core/views/3d/e
31
33
 
32
34
  var _loadModules = require("./load-modules");
33
35
 
34
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
36
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
37
 
36
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
38
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
37
39
 
38
- const DeckProps = (0, _deckProps.default)(_Accessor.default);
39
- const DeckLayerView2D = (0, _deckLayerView2d.default)(_BaseLayerViewGL2D.default);
40
- const DeckLayer = (0, _deckLayer.default)(DeckProps, _Layer.default, DeckLayerView2D);
40
+ var DeckProps = (0, _deckProps.default)(_Accessor.default);
41
+ var DeckLayerView2D = (0, _deckLayerView2d.default)(_BaseLayerViewGL2D.default);
42
+ var DeckLayer = (0, _deckLayer.default)(DeckProps, _Layer.default, DeckLayerView2D);
41
43
  exports.DeckLayer = DeckLayer;
42
- const DeckRenderer = (0, _deckRenderer.default)(DeckProps, externalRenderers);
44
+ var DeckRenderer = (0, _deckRenderer.default)(DeckProps, externalRenderers);
43
45
  exports.DeckRenderer = DeckRenderer;
44
46
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.js"],"names":["DeckProps","Accessor","DeckLayerView2D","BaseLayerViewGL2D","DeckLayer","Layer","DeckRenderer","externalRenderers"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AAGA;;;;;;AAGA,MAAMA,SAAS,GAAG,wBAAgBC,iBAAhB,CAAlB;AACA,MAAMC,eAAe,GAAG,8BAAsBC,0BAAtB,CAAxB;AACO,MAAMC,SAAS,GAAG,wBAAgBJ,SAAhB,EAA2BK,cAA3B,EAAkCH,eAAlC,CAAlB;;AACA,MAAMI,YAAY,GAAG,2BAAmBN,SAAnB,EAA8BO,iBAA9B,CAArB","sourcesContent":["import createDeckProps from './deck-props';\nimport createDeckLayer from './deck-layer';\nimport createDeckLayerView2D from './deck-layer-view-2d';\nimport createDeckRenderer from './deck-renderer';\n\nimport Accessor from '@arcgis/core/core/Accessor';\nimport Layer from '@arcgis/core/layers/Layer';\nimport BaseLayerViewGL2D from '@arcgis/core/views/2d/layers/BaseLayerViewGL2D';\nimport * as externalRenderers from '@arcgis/core/views/3d/externalRenderers';\n\n// require-style loader\nexport {loadArcGISModules} from './load-modules';\n\n// ESM-style classes\nconst DeckProps = createDeckProps(Accessor);\nconst DeckLayerView2D = createDeckLayerView2D(BaseLayerViewGL2D);\nexport const DeckLayer = createDeckLayer(DeckProps, Layer, DeckLayerView2D);\nexport const DeckRenderer = createDeckRenderer(DeckProps, externalRenderers);\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../src/index.js"],"names":["DeckProps","Accessor","DeckLayerView2D","BaseLayerViewGL2D","DeckLayer","Layer","DeckRenderer","externalRenderers"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AAGA;;;;;;AAGA,IAAMA,SAAS,GAAG,wBAAgBC,iBAAhB,CAAlB;AACA,IAAMC,eAAe,GAAG,8BAAsBC,0BAAtB,CAAxB;AACO,IAAMC,SAAS,GAAG,wBAAgBJ,SAAhB,EAA2BK,cAA3B,EAAkCH,eAAlC,CAAlB;;AACA,IAAMI,YAAY,GAAG,2BAAmBN,SAAnB,EAA8BO,iBAA9B,CAArB","sourcesContent":["import createDeckProps from './deck-props';\nimport createDeckLayer from './deck-layer';\nimport createDeckLayerView2D from './deck-layer-view-2d';\nimport createDeckRenderer from './deck-renderer';\n\nimport Accessor from '@arcgis/core/core/Accessor';\nimport Layer from '@arcgis/core/layers/Layer';\nimport BaseLayerViewGL2D from '@arcgis/core/views/2d/layers/BaseLayerViewGL2D';\nimport * as externalRenderers from '@arcgis/core/views/3d/externalRenderers';\n\n// require-style loader\nexport {loadArcGISModules} from './load-modules';\n\n// ESM-style classes\nconst DeckProps = createDeckProps(Accessor);\nconst DeckLayerView2D = createDeckLayerView2D(BaseLayerViewGL2D);\nexport const DeckLayer = createDeckLayer(DeckProps, Layer, DeckLayerView2D);\nexport const DeckRenderer = createDeckRenderer(DeckProps, externalRenderers);\n"],"file":"index.js"}
@@ -7,6 +7,14 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.loadArcGISModules = loadArcGISModules;
9
9
 
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
16
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
17
+
10
18
  var _deckProps = _interopRequireDefault(require("./deck-props"));
11
19
 
12
20
  var _deckLayer = _interopRequireDefault(require("./deck-layer"));
@@ -17,21 +25,50 @@ var _deckRenderer = _interopRequireDefault(require("./deck-renderer"));
17
25
 
18
26
  var _esriLoader = require("esri-loader");
19
27
 
20
- let arcGIS = null;
28
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
21
29
 
22
- async function loadArcGISModules(modules, loadScriptOptions) {
23
- const namespace = Array.isArray(modules) ? null : modules;
24
- await loadArcGISModule(namespace, loadScriptOptions);
30
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
25
31
 
26
- if (Array.isArray(modules)) {
27
- return (0, _esriLoader.loadModules)(modules, loadScriptOptions).then(array => {
28
- return { ...arcGIS,
29
- modules: array
30
- };
31
- });
32
- }
32
+ var arcGIS = null;
33
33
 
34
- return arcGIS;
34
+ function loadArcGISModules(_x, _x2) {
35
+ return _loadArcGISModules.apply(this, arguments);
36
+ }
37
+
38
+ function _loadArcGISModules() {
39
+ _loadArcGISModules = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(modules, loadScriptOptions) {
40
+ var namespace;
41
+ return _regenerator.default.wrap(function _callee$(_context) {
42
+ while (1) {
43
+ switch (_context.prev = _context.next) {
44
+ case 0:
45
+ namespace = Array.isArray(modules) ? null : modules;
46
+ _context.next = 3;
47
+ return loadArcGISModule(namespace, loadScriptOptions);
48
+
49
+ case 3:
50
+ if (!Array.isArray(modules)) {
51
+ _context.next = 5;
52
+ break;
53
+ }
54
+
55
+ return _context.abrupt("return", (0, _esriLoader.loadModules)(modules, loadScriptOptions).then(function (array) {
56
+ return _objectSpread(_objectSpread({}, arcGIS), {}, {
57
+ modules: array
58
+ });
59
+ }));
60
+
61
+ case 5:
62
+ return _context.abrupt("return", arcGIS);
63
+
64
+ case 6:
65
+ case "end":
66
+ return _context.stop();
67
+ }
68
+ }
69
+ }, _callee);
70
+ }));
71
+ return _loadArcGISModules.apply(this, arguments);
35
72
  }
36
73
 
37
74
  function loadArcGISModule(esri, loadScriptOptions) {
@@ -40,26 +77,32 @@ function loadArcGISModule(esri, loadScriptOptions) {
40
77
  }
41
78
 
42
79
  if (esri) {
43
- const Layer = esri.layers.Layer;
44
- const Accessor = esri.core.Accessor;
45
- const BaseLayerViewGL2D = esri.views['2d'].layers.BaseLayerViewGL2D;
46
- const externalRenderers = esri.views['3d'].externalRenderers;
80
+ var Layer = esri.layers.Layer;
81
+ var Accessor = esri.core.Accessor;
82
+ var BaseLayerViewGL2D = esri.views['2d'].layers.BaseLayerViewGL2D;
83
+ var externalRenderers = esri.views['3d'].externalRenderers;
47
84
  return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
48
85
  }
49
86
 
50
- return (0, _esriLoader.loadModules)(['esri/layers/Layer', 'esri/core/Accessor', 'esri/views/2d/layers/BaseLayerViewGL2D', 'esri/views/3d/externalRenderers'], loadScriptOptions).then(([Layer, Accessor, BaseLayerViewGL2D, externalRenderers]) => {
87
+ return (0, _esriLoader.loadModules)(['esri/layers/Layer', 'esri/core/Accessor', 'esri/views/2d/layers/BaseLayerViewGL2D', 'esri/views/3d/externalRenderers'], loadScriptOptions).then(function (_ref) {
88
+ var _ref2 = (0, _slicedToArray2.default)(_ref, 4),
89
+ Layer = _ref2[0],
90
+ Accessor = _ref2[1],
91
+ BaseLayerViewGL2D = _ref2[2],
92
+ externalRenderers = _ref2[3];
93
+
51
94
  return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
52
95
  });
53
96
  }
54
97
 
55
98
  function initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers) {
56
- const DeckProps = (0, _deckProps.default)(Accessor);
57
- const DeckLayerView2D = (0, _deckLayerView2d.default)(BaseLayerViewGL2D);
58
- const DeckLayer = (0, _deckLayer.default)(DeckProps, Layer, DeckLayerView2D);
59
- const DeckRenderer = (0, _deckRenderer.default)(DeckProps, externalRenderers);
99
+ var DeckProps = (0, _deckProps.default)(Accessor);
100
+ var DeckLayerView2D = (0, _deckLayerView2d.default)(BaseLayerViewGL2D);
101
+ var DeckLayer = (0, _deckLayer.default)(DeckProps, Layer, DeckLayerView2D);
102
+ var DeckRenderer = (0, _deckRenderer.default)(DeckProps, externalRenderers);
60
103
  arcGIS = {
61
- DeckLayer,
62
- DeckRenderer
104
+ DeckLayer: DeckLayer,
105
+ DeckRenderer: DeckRenderer
63
106
  };
64
107
  return arcGIS;
65
108
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/load-modules.js"],"names":["arcGIS","loadArcGISModules","modules","loadScriptOptions","namespace","Array","isArray","loadArcGISModule","then","array","esri","Layer","layers","Accessor","core","BaseLayerViewGL2D","views","externalRenderers","initialize","DeckProps","DeckLayerView2D","DeckLayer","DeckRenderer"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAIA,MAAM,GAAG,IAAb;;AAEO,eAAeC,iBAAf,CAAiCC,OAAjC,EAA0CC,iBAA1C,EAA6D;AAClE,QAAMC,SAAS,GAAGC,KAAK,CAACC,OAAN,CAAcJ,OAAd,IAAyB,IAAzB,GAAgCA,OAAlD;AACA,QAAMK,gBAAgB,CAACH,SAAD,EAAYD,iBAAZ,CAAtB;;AAEA,MAAIE,KAAK,CAACC,OAAN,CAAcJ,OAAd,CAAJ,EAA4B;AAC1B,WAAO,6BAAsBA,OAAtB,EAA+BC,iBAA/B,EAAkDK,IAAlD,CAAuDC,KAAK,IAAI;AACrE,aAAO,EAAC,GAAGT,MAAJ;AAAYE,QAAAA,OAAO,EAAEO;AAArB,OAAP;AACD,KAFM,CAAP;AAGD;;AACD,SAAOT,MAAP;AACD;;AAED,SAASO,gBAAT,CAA0BG,IAA1B,EAAgCP,iBAAhC,EAAmD;AACjD,MAAIH,MAAJ,EAAY;AAEV,WAAOA,MAAP;AACD;;AACD,MAAIU,IAAJ,EAAU;AAGR,UAAMC,KAAK,GAAGD,IAAI,CAACE,MAAL,CAAYD,KAA1B;AACA,UAAME,QAAQ,GAAGH,IAAI,CAACI,IAAL,CAAUD,QAA3B;AACA,UAAME,iBAAiB,GAAGL,IAAI,CAACM,KAAL,CAAW,IAAX,EAAiBJ,MAAjB,CAAwBG,iBAAlD;AACA,UAAME,iBAAiB,GAAGP,IAAI,CAACM,KAAL,CAAW,IAAX,EAAiBC,iBAA3C;AAEA,WAAOC,UAAU,CAACP,KAAD,EAAQE,QAAR,EAAkBE,iBAAlB,EAAqCE,iBAArC,CAAjB;AACD;;AAED,SAAO,6BACL,CACE,mBADF,EAEE,oBAFF,EAGE,wCAHF,EAIE,iCAJF,CADK,EAOLd,iBAPK,EAQLK,IARK,CAQA,CAAC,CAACG,KAAD,EAAQE,QAAR,EAAkBE,iBAAlB,EAAqCE,iBAArC,CAAD,KAA6D;AAClE,WAAOC,UAAU,CAACP,KAAD,EAAQE,QAAR,EAAkBE,iBAAlB,EAAqCE,iBAArC,CAAjB;AACD,GAVM,CAAP;AAWD;;AAED,SAASC,UAAT,CAAoBP,KAApB,EAA2BE,QAA3B,EAAqCE,iBAArC,EAAwDE,iBAAxD,EAA2E;AACzE,QAAME,SAAS,GAAG,wBAAgBN,QAAhB,CAAlB;AACA,QAAMO,eAAe,GAAG,8BAAsBL,iBAAtB,CAAxB;AACA,QAAMM,SAAS,GAAG,wBAAgBF,SAAhB,EAA2BR,KAA3B,EAAkCS,eAAlC,CAAlB;AACA,QAAME,YAAY,GAAG,2BAAmBH,SAAnB,EAA8BF,iBAA9B,CAArB;AAEAjB,EAAAA,MAAM,GAAG;AAACqB,IAAAA,SAAD;AAAYC,IAAAA;AAAZ,GAAT;AACA,SAAOtB,MAAP;AACD","sourcesContent":["import createDeckProps from './deck-props';\nimport createDeckLayer from './deck-layer';\nimport createDeckLayerView2D from './deck-layer-view-2d';\nimport createDeckRenderer from './deck-renderer';\nimport {loadModules as esriLoaderLoadModules} from 'esri-loader';\n\nlet arcGIS = null;\n\nexport async function loadArcGISModules(modules, loadScriptOptions) {\n const namespace = Array.isArray(modules) ? null : modules;\n await loadArcGISModule(namespace, loadScriptOptions);\n\n if (Array.isArray(modules)) {\n return esriLoaderLoadModules(modules, loadScriptOptions).then(array => {\n return {...arcGIS, modules: array};\n });\n }\n return arcGIS;\n}\n\nfunction loadArcGISModule(esri, loadScriptOptions) {\n if (arcGIS) {\n // Already loaded\n return arcGIS;\n }\n if (esri) {\n // Using user-provided dependencies\n // Right now this object has to be manually assembled - let @arcgis/webpack-plugin handle this?\n const Layer = esri.layers.Layer;\n const Accessor = esri.core.Accessor;\n const BaseLayerViewGL2D = esri.views['2d'].layers.BaseLayerViewGL2D;\n const externalRenderers = esri.views['3d'].externalRenderers;\n\n return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);\n }\n\n return esriLoaderLoadModules(\n [\n 'esri/layers/Layer',\n 'esri/core/Accessor',\n 'esri/views/2d/layers/BaseLayerViewGL2D',\n 'esri/views/3d/externalRenderers'\n ],\n loadScriptOptions\n ).then(([Layer, Accessor, BaseLayerViewGL2D, externalRenderers]) => {\n return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);\n });\n}\n\nfunction initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers) {\n const DeckProps = createDeckProps(Accessor);\n const DeckLayerView2D = createDeckLayerView2D(BaseLayerViewGL2D);\n const DeckLayer = createDeckLayer(DeckProps, Layer, DeckLayerView2D);\n const DeckRenderer = createDeckRenderer(DeckProps, externalRenderers);\n\n arcGIS = {DeckLayer, DeckRenderer};\n return arcGIS;\n}\n"],"file":"load-modules.js"}
1
+ {"version":3,"sources":["../../src/load-modules.js"],"names":["arcGIS","loadArcGISModules","modules","loadScriptOptions","namespace","Array","isArray","loadArcGISModule","then","array","esri","Layer","layers","Accessor","core","BaseLayerViewGL2D","views","externalRenderers","initialize","DeckProps","DeckLayerView2D","DeckLayer","DeckRenderer"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAIA,MAAM,GAAG,IAAb;;SAEsBC,iB;;;;;iFAAf,iBAAiCC,OAAjC,EAA0CC,iBAA1C;AAAA;AAAA;AAAA;AAAA;AAAA;AACCC,YAAAA,SADD,GACaC,KAAK,CAACC,OAAN,CAAcJ,OAAd,IAAyB,IAAzB,GAAgCA,OAD7C;AAAA;AAAA,mBAECK,gBAAgB,CAACH,SAAD,EAAYD,iBAAZ,CAFjB;;AAAA;AAAA,iBAIDE,KAAK,CAACC,OAAN,CAAcJ,OAAd,CAJC;AAAA;AAAA;AAAA;;AAAA,6CAKI,6BAAsBA,OAAtB,EAA+BC,iBAA/B,EAAkDK,IAAlD,CAAuD,UAAAC,KAAK,EAAI;AACrE,qDAAWT,MAAX;AAAmBE,gBAAAA,OAAO,EAAEO;AAA5B;AACD,aAFM,CALJ;;AAAA;AAAA,6CASET,MATF;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G;;;;AAYP,SAASO,gBAAT,CAA0BG,IAA1B,EAAgCP,iBAAhC,EAAmD;AACjD,MAAIH,MAAJ,EAAY;AAEV,WAAOA,MAAP;AACD;;AACD,MAAIU,IAAJ,EAAU;AAGR,QAAMC,KAAK,GAAGD,IAAI,CAACE,MAAL,CAAYD,KAA1B;AACA,QAAME,QAAQ,GAAGH,IAAI,CAACI,IAAL,CAAUD,QAA3B;AACA,QAAME,iBAAiB,GAAGL,IAAI,CAACM,KAAL,CAAW,IAAX,EAAiBJ,MAAjB,CAAwBG,iBAAlD;AACA,QAAME,iBAAiB,GAAGP,IAAI,CAACM,KAAL,CAAW,IAAX,EAAiBC,iBAA3C;AAEA,WAAOC,UAAU,CAACP,KAAD,EAAQE,QAAR,EAAkBE,iBAAlB,EAAqCE,iBAArC,CAAjB;AACD;;AAED,SAAO,6BACL,CACE,mBADF,EAEE,oBAFF,EAGE,wCAHF,EAIE,iCAJF,CADK,EAOLd,iBAPK,EAQLK,IARK,CAQA,gBAA6D;AAAA;AAAA,QAA3DG,KAA2D;AAAA,QAApDE,QAAoD;AAAA,QAA1CE,iBAA0C;AAAA,QAAvBE,iBAAuB;;AAClE,WAAOC,UAAU,CAACP,KAAD,EAAQE,QAAR,EAAkBE,iBAAlB,EAAqCE,iBAArC,CAAjB;AACD,GAVM,CAAP;AAWD;;AAED,SAASC,UAAT,CAAoBP,KAApB,EAA2BE,QAA3B,EAAqCE,iBAArC,EAAwDE,iBAAxD,EAA2E;AACzE,MAAME,SAAS,GAAG,wBAAgBN,QAAhB,CAAlB;AACA,MAAMO,eAAe,GAAG,8BAAsBL,iBAAtB,CAAxB;AACA,MAAMM,SAAS,GAAG,wBAAgBF,SAAhB,EAA2BR,KAA3B,EAAkCS,eAAlC,CAAlB;AACA,MAAME,YAAY,GAAG,2BAAmBH,SAAnB,EAA8BF,iBAA9B,CAArB;AAEAjB,EAAAA,MAAM,GAAG;AAACqB,IAAAA,SAAS,EAATA,SAAD;AAAYC,IAAAA,YAAY,EAAZA;AAAZ,GAAT;AACA,SAAOtB,MAAP;AACD","sourcesContent":["import createDeckProps from './deck-props';\nimport createDeckLayer from './deck-layer';\nimport createDeckLayerView2D from './deck-layer-view-2d';\nimport createDeckRenderer from './deck-renderer';\nimport {loadModules as esriLoaderLoadModules} from 'esri-loader';\n\nlet arcGIS = null;\n\nexport async function loadArcGISModules(modules, loadScriptOptions) {\n const namespace = Array.isArray(modules) ? null : modules;\n await loadArcGISModule(namespace, loadScriptOptions);\n\n if (Array.isArray(modules)) {\n return esriLoaderLoadModules(modules, loadScriptOptions).then(array => {\n return {...arcGIS, modules: array};\n });\n }\n return arcGIS;\n}\n\nfunction loadArcGISModule(esri, loadScriptOptions) {\n if (arcGIS) {\n // Already loaded\n return arcGIS;\n }\n if (esri) {\n // Using user-provided dependencies\n // Right now this object has to be manually assembled - let @arcgis/webpack-plugin handle this?\n const Layer = esri.layers.Layer;\n const Accessor = esri.core.Accessor;\n const BaseLayerViewGL2D = esri.views['2d'].layers.BaseLayerViewGL2D;\n const externalRenderers = esri.views['3d'].externalRenderers;\n\n return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);\n }\n\n return esriLoaderLoadModules(\n [\n 'esri/layers/Layer',\n 'esri/core/Accessor',\n 'esri/views/2d/layers/BaseLayerViewGL2D',\n 'esri/views/3d/externalRenderers'\n ],\n loadScriptOptions\n ).then(([Layer, Accessor, BaseLayerViewGL2D, externalRenderers]) => {\n return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);\n });\n}\n\nfunction initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers) {\n const DeckProps = createDeckProps(Accessor);\n const DeckLayerView2D = createDeckLayerView2D(BaseLayerViewGL2D);\n const DeckLayer = createDeckLayer(DeckProps, Layer, DeckLayerView2D);\n const DeckRenderer = createDeckRenderer(DeckProps, externalRenderers);\n\n arcGIS = {DeckLayer, DeckRenderer};\n return arcGIS;\n}\n"],"file":"load-modules.js"}
package/dist.min.js CHANGED
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("luma"),require("deck")):"function"==typeof define&&define.amd?define(["luma","deck"],t):"object"==typeof exports?exports.deck=t(require("luma"),require("deck")):e.deck=t(e.luma,e.deck)}(window,(function(e,t){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=9)}([function(e,t,r){var n=r(10),o=r(11),i=r(12);e.exports=function(e,t){return n(e)||o(e,t)||i()}},function(t,r){t.exports=e},function(e,t){e.exports=function(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}},function(e,t,r){e.exports=r(13)},function(e,t,r){!function(e){"use strict";var t={Promise:"undefined"!=typeof window?window.Promise:void 0};function r(e){if("next"===e.toLowerCase())return"next";var t=e&&e.match(/^(\d)\.(\d+)/);return t&&{major:parseInt(t[1],10),minor:parseInt(t[2],10)}}function n(e){return void 0===e&&(e="4.21"),"https://js.arcgis.com/"+e+"/"}function o(e){return!e||r(e)?function(e){void 0===e&&(e="4.21");var t=n(e),o=r(e);return"next"!==o&&3===o.major?t+(o.minor<=10?"js/":"")+"esri/css/esri.css":t+"esri/themes/light/main.css"}(e):e}function i(e,t){var r=o(e),n=function(e){return document.querySelector('link[href*="'+e+'"]')}(r);return n||function(e,t){if(t){var r=document.querySelector(t);r.parentNode.insertBefore(e,r)}else document.head.appendChild(e)}(n=function(e){var t=document.createElement("link");return t.rel="stylesheet",t.href=e,t}(r),t),n}var a={};function c(e,t,r){var n;r&&(n=function(e,t){var r=function(n){t(n.error||new Error("There was an error attempting to load "+e.src)),e.removeEventListener("error",r,!1)};return e.addEventListener("error",r,!1),r}(e,r));var o=function(){t(e),e.removeEventListener("load",o,!1),n&&e.removeEventListener("error",n,!1)};e.addEventListener("load",o,!1)}function u(){return document.querySelector("script[data-esri-loader]")}function s(){var e=window.require;return e&&e.on}function l(e){void 0===e&&(e={});var r={};[a,e].forEach((function(e){for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[t]=e[t])}));var o=r.version,l=r.url||n(o);return new t.Promise((function(e,t){var n=u();if(n){var a=n.getAttribute("src");a!==l?t(new Error("The ArcGIS API for JavaScript is already loaded ("+a+").")):s()?e(n):c(n,e,t)}else if(s())t(new Error("The ArcGIS API for JavaScript is already loaded."));else{var f=r.css;f&&i(!0===f?o:f,r.insertCssBefore),c(n=function(e){var t=document.createElement("script");return t.type="text/javascript",t.src=e,t.setAttribute("data-esri-loader","loading"),t}(l),(function(){n.setAttribute("data-esri-loader","loaded"),e(n)}),t),document.body.appendChild(n)}}))}function f(e){return new t.Promise((function(t,r){var n=window.require.on("error",r);window.require(e,(function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];n.remove(),t(e)}))}))}e.utils=t,e.loadModules=function(e,t){if(void 0===t&&(t={}),s())return f(e);var r=u(),n=r&&r.getAttribute("src");return!t.url&&n&&(t.url=n),l(t).then((function(){return f(e)}))},e.getScript=u,e.isLoaded=s,e.loadScript=l,e.setDefaultOptions=function(e){void 0===e&&(e={}),a=e},e.loadCss=i,Object.defineProperty(e,"__esModule",{value:!0})}(t)},function(e,t){function r(e,t,r,n,o,i,a){try{var c=e[i](a),u=c.value}catch(e){return void r(e)}c.done?t(u):Promise.resolve(u).then(n,o)}e.exports=function(e){return function(){var t=this,n=arguments;return new Promise((function(o,i){var a=e.apply(t,n);function c(e){r(a,o,i,c,u,"next",e)}function u(e){r(a,o,i,c,u,"throw",e)}c(void 0)}))}}},function(e,r){e.exports=t},function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t){function r(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}e.exports=function(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e}},function(e,t,r){var n=r(14),o=("undefined"==typeof window?global:window).deck||{};if(!o.Layer)throw new Error("@deck.gl/core is not found");e.exports=Object.assign(o,n)},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var r=[],n=!0,o=!1,i=void 0;try{for(var a,c=e[Symbol.iterator]();!(n=(a=c.next()).done)&&(r.push(a.value),!t||r.length!==t);n=!0);}catch(e){o=!0,i=e}finally{try{n||null==c.return||c.return()}finally{if(o)throw i}}return r}}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}},function(e,t,r){var n=function(e){"use strict";var t=Object.prototype,r=t.hasOwnProperty,n="function"==typeof Symbol?Symbol:{},o=n.iterator||"@@iterator",i=n.asyncIterator||"@@asyncIterator",a=n.toStringTag||"@@toStringTag";function c(e,t,r,n){var o=t&&t.prototype instanceof l?t:l,i=Object.create(o.prototype),a=new k(n||[]);return i._invoke=function(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return j()}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var c=g(a,r);if(c){if(c===s)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var l=u(e,t,r);if("normal"===l.type){if(n=r.done?"completed":"suspendedYield",l.arg===s)continue;return{value:l.arg,done:r.done}}"throw"===l.type&&(n="completed",r.method="throw",r.arg=l.arg)}}}(e,r,a),i}function u(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=c;var s={};function l(){}function f(){}function d(){}var h={};h[o]=function(){return this};var v=Object.getPrototypeOf,p=v&&v(v(O([])));p&&p!==t&&r.call(p,o)&&(h=p);var y=d.prototype=l.prototype=Object.create(h);function m(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function w(e){var t;this._invoke=function(n,o){function i(){return new Promise((function(t,i){!function t(n,o,i,a){var c=u(e[n],e,o);if("throw"!==c.type){var s=c.arg,l=s.value;return l&&"object"==typeof l&&r.call(l,"__await")?Promise.resolve(l.__await).then((function(e){t("next",e,i,a)}),(function(e){t("throw",e,i,a)})):Promise.resolve(l).then((function(e){s.value=e,i(s)}),(function(e){return t("throw",e,i,a)}))}a(c.arg)}(n,o,t,i)}))}return t=t?t.then(i,i):i()}}function g(e,t){var r=e.iterator[t.method];if(void 0===r){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,g(e,t),"throw"===t.method))return s;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return s}var n=u(r,e.iterator,t.arg);if("throw"===n.type)return t.method="throw",t.arg=n.arg,t.delegate=null,s;var o=n.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,s):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,s)}function b(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function x(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function k(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(b,this),this.reset(!0)}function O(e){if(e){var t=e[o];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,i=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return i.next=i}}return{next:j}}function j(){return{value:void 0,done:!0}}return f.prototype=y.constructor=d,d.constructor=f,d[a]=f.displayName="GeneratorFunction",e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,d):(e.__proto__=d,a in e||(e[a]="GeneratorFunction")),e.prototype=Object.create(y),e},e.awrap=function(e){return{__await:e}},m(w.prototype),w.prototype[i]=function(){return this},e.AsyncIterator=w,e.async=function(t,r,n,o){var i=new w(c(t,r,n,o));return e.isGeneratorFunction(r)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},m(y),y[a]="Generator",y[o]=function(){return this},y.toString=function(){return"[object Generator]"},e.keys=function(e){var t=[];for(var r in e)t.push(r);return t.reverse(),function r(){for(;t.length;){var n=t.pop();if(n in e)return r.value=n,r.done=!1,r}return r.done=!0,r}},e.values=O,k.prototype={constructor:k,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,s):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),s},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),x(r),s}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;x(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:O(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),s}},e}(e.exports);try{regeneratorRuntime=n}catch(e){Function("r","regeneratorRuntime = r")(n)}},function(e,t,r){"use strict";r.r(t);var n=r(2),o=r.n(n),i=r(0),a=r.n(i),c=r(5),u=r.n(c),s=r(3),l=r.n(s);function f(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return d(e,t)}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,c=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){c=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(c)throw i}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var h={layers:{},layerFilter:{},parameters:{},effects:{},pickingRadius:{},onBeforeRender:{},onAfterRender:{},onClick:{},onHover:{},onDragStart:{},onDrag:{},onDragEnd:{},onError:{},debug:{},drawPickingColors:{},getCursor:{},getTooltip:{}};var v=r(6),p=r(1);function y(e){var t=this;Object(p.instrumentGLContext)(e),this.buffer=new p.Buffer(e,new Int8Array([-1,-1,1,-1,-1,1,1,1])),this.model=new p.Model(e,{vs:"\n attribute vec2 a_pos;\n varying vec2 v_texcoord;\n void main(void) {\n gl_Position = vec4(a_pos, 0.0, 1.0);\n v_texcoord = (a_pos + 1.0) / 2.0;\n }\n ",fs:"\n precision mediump float;\n uniform sampler2D u_texture;\n varying vec2 v_texcoord;\n void main(void) {\n vec4 rgba = texture2D(u_texture, v_texcoord);\n rgba.rgb *= rgba.a;\n gl_FragColor = rgba;\n }\n ",attributes:{a_pos:this.buffer},vertexCount:4,drawMode:5}),this.deckFbo=new p.Framebuffer(e,{width:1,height:1}),this.deckInstance=new v.Deck({viewState:{},controller:!1,gl:e,parameters:{depthTest:!0},_framebuffer:this.deckFbo,width:null,height:null,_customRender:function(e){"arcgis"===e?t.deckInstance._drawLayers(e):t.redraw()}})}function m(e){var t=this,r=e.gl,n=e.width,o=e.height,i=e.viewState,a=r.getParameter(36006),c=window.devicePixelRatio;n=Math.round(n*c),o=Math.round(o*c),this.deckFbo.resize({width:n,height:o}),this.deckInstance.setProps({viewState:i}),this.deckInstance.redraw("arcgis"),Object(p.withParameters)(r,{blend:!0,blendFunc:[1,771],framebuffer:a,viewport:[0,0,n,o]},(function(){t.model.setUniforms({u_texture:t.deckFbo}).draw()}))}function w(){var e,t,r,n;null===(e=this.deckInstance)||void 0===e||e.finalize(),this.deckInstance=null,null===(t=this.model)||void 0===t||t.delete(),null===(r=this.buffer)||void 0===r||r.delete(),null===(n=this.deckFbo)||void 0===n||n.delete()}var g=r(7),b=r.n(g),x=r(8),k=r.n(x);var O=r(4);function j(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function L(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?j(Object(r),!0).forEach((function(t){o()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):j(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}r.d(t,"loadArcGISModules",(function(){return _}));var S=null;function _(e,t){return P.apply(this,arguments)}function P(){return(P=u()(l.a.mark((function e(t,r){var n;return l.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=Array.isArray(t)?null:t,e.next=3,E(n,r);case 3:if(!Array.isArray(t)){e.next=5;break}return e.abrupt("return",Object(O.loadModules)(t,r).then((function(e){return L(L({},S),{},{modules:e})})));case 5:return e.abrupt("return",S);case 6:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function E(e,t){return S||(e?A(e.layers.Layer,e.core.Accessor,e.views["2d"].layers.BaseLayerViewGL2D,e.views["3d"].externalRenderers):Object(O.loadModules)(["esri/layers/Layer","esri/core/Accessor","esri/views/2d/layers/BaseLayerViewGL2D","esri/views/3d/externalRenderers"],t).then((function(e){var t=a()(e,4);return A(t[0],t[1],t[2],t[3])})))}function A(e,t,r,n){var i=function(e){return e.createSubclass({properties:h,constructor:function(){var e=this;this._callbacks={},this.watch(Object.keys(h),(function(t,r,n){e.emit("change",o()({},n,t))}))},on:function(e,t){this._callbacks[e]=this._callbacks[e]||[],this._callbacks[e].push(t)},emit:function(e,t){var r=this._callbacks[e];if(r){var n,o=f(r);try{for(o.s();!(n=o.n()).done;){(0,n.value)(t)}}catch(e){o.e(e)}finally{o.f()}}},toJSON:function(){var e,t={},r=f(this.keys());try{for(r.s();!(e=r.n()).done;){var n=e.value;void 0!==this[n]&&(t[n]=this[n])}}catch(e){r.e(e)}finally{r.f()}return t}})}(t),c=function(e,t,r){return t.createSubclass({properties:{deck:{},blendMode:{},effect:{}},constructor:function(){this.deck=new e},createLayerView:function(e){return"2d"===e.type?new r({view:e,layer:this}):(console.error("DeckLayer does not support SceneView at the moment. Use DeckRenderer instead."),null)}})}(i,e,function(e){return e.createSubclass({properties:{deckgl:{},deckFbo:{},model:{},buffer:{}},attach:function(){var e=this,t=this.context;y.call(this,t),this.layer.deck.on("change",(function(t){return e.deckInstance.setProps(t)})),this.deckInstance.setProps(this.layer.deck.toJSON())},redraw:function(){this.requestRender()},detach:function(){w.call(this)},render:function(e){var t=a()(this.view.state.size,2),r=t[0],n=t[1],o=e.state;m.call(this,{gl:e.context,width:r,height:n,viewState:{latitude:this.view.center.latitude,longitude:this.view.center.longitude,zoom:this.view.featuresTilingScheme.scaleToLevel(o.scale),bearing:-o.rotation,pitch:0}})}})}(r)),u=function(e,t){return function(){function r(t,n){b()(this,r),this.view=t,this.deck=new e(n)}return k()(r,[{key:"setup",value:function(e){var t=this,r=e.gl;y.call(this,r),this.deck.on("change",(function(e){return t.deckInstance.setProps(e)})),this.deckInstance.setProps(this.deck.toJSON())}},{key:"dispose",value:function(){w.call(this)}},{key:"redraw",value:function(){t.requestRender(this.view)}},{key:"render",value:function(e){var t,r,n,o,i=a()(this.view.size,2),c=i[0],u=i[1];m.call(this,{gl:e.gl,width:c,height:u,viewState:{latitude:this.view.center.latitude,longitude:this.view.center.longitude,altitude:(t=this.view.camera.fov,r=c/u,n=Math.sqrt(1+Math.pow(r,2)),o=t/2/180*Math.PI,n/2/Math.tan(o)),zoom:this.view.zoom,bearing:this.view.camera.heading,pitch:this.view.camera.tilt}})}}]),r}()}(i,n);return S={DeckLayer:c,DeckRenderer:u}}}])}));
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("luma"),require("deck")):"function"==typeof define&&define.amd?define(["luma","deck"],t):"object"==typeof exports?exports.deck=t(require("luma"),require("deck")):e.deck=t(e.luma,e.deck)}(window,(function(e,t){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=9)}([function(e,t,r){var n=r(10),o=r(11),i=r(12);e.exports=function(e,t){return n(e)||o(e,t)||i()}},function(t,r){t.exports=e},function(e,t){e.exports=function(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}},function(e,t,r){e.exports=r(13)},function(e,t,r){!function(e){"use strict";var t={Promise:"undefined"!=typeof window?window.Promise:void 0};function r(e){if("next"===e.toLowerCase())return"next";var t=e&&e.match(/^(\d)\.(\d+)/);return t&&{major:parseInt(t[1],10),minor:parseInt(t[2],10)}}function n(e){return void 0===e&&(e="4.21"),"https://js.arcgis.com/"+e+"/"}function o(e){return!e||r(e)?function(e){void 0===e&&(e="4.21");var t=n(e),o=r(e);return"next"!==o&&3===o.major?t+(o.minor<=10?"js/":"")+"esri/css/esri.css":t+"esri/themes/light/main.css"}(e):e}function i(e,t){var r=o(e),n=function(e){return document.querySelector('link[href*="'+e+'"]')}(r);return n||function(e,t){if(t){var r=document.querySelector(t);r.parentNode.insertBefore(e,r)}else document.head.appendChild(e)}(n=function(e){var t=document.createElement("link");return t.rel="stylesheet",t.href=e,t}(r),t),n}var a={};function c(e,t,r){var n;r&&(n=function(e,t){var r=function(n){t(n.error||new Error("There was an error attempting to load "+e.src)),e.removeEventListener("error",r,!1)};return e.addEventListener("error",r,!1),r}(e,r));var o=function(){t(e),e.removeEventListener("load",o,!1),n&&e.removeEventListener("error",n,!1)};e.addEventListener("load",o,!1)}function u(){return document.querySelector("script[data-esri-loader]")}function s(){var e=window.require;return e&&e.on}function l(e){void 0===e&&(e={});var r={};[a,e].forEach((function(e){for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[t]=e[t])}));var o=r.version,l=r.url||n(o);return new t.Promise((function(e,t){var n=u();if(n){var a=n.getAttribute("src");a!==l?t(new Error("The ArcGIS API for JavaScript is already loaded ("+a+").")):s()?e(n):c(n,e,t)}else if(s())t(new Error("The ArcGIS API for JavaScript is already loaded."));else{var f=r.css;f&&i(!0===f?o:f,r.insertCssBefore),c(n=function(e){var t=document.createElement("script");return t.type="text/javascript",t.src=e,t.setAttribute("data-esri-loader","loading"),t}(l),(function(){n.setAttribute("data-esri-loader","loaded"),e(n)}),t),document.body.appendChild(n)}}))}function f(e){return new t.Promise((function(t,r){var n=window.require.on("error",r);window.require(e,(function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];n.remove(),t(e)}))}))}e.utils=t,e.loadModules=function(e,t){if(void 0===t&&(t={}),s())return f(e);var r=u(),n=r&&r.getAttribute("src");return!t.url&&n&&(t.url=n),l(t).then((function(){return f(e)}))},e.getScript=u,e.isLoaded=s,e.loadScript=l,e.setDefaultOptions=function(e){void 0===e&&(e={}),a=e},e.loadCss=i,Object.defineProperty(e,"__esModule",{value:!0})}(t)},function(e,t){function r(e,t,r,n,o,i,a){try{var c=e[i](a),u=c.value}catch(e){return void r(e)}c.done?t(u):Promise.resolve(u).then(n,o)}e.exports=function(e){return function(){var t=this,n=arguments;return new Promise((function(o,i){var a=e.apply(t,n);function c(e){r(a,o,i,c,u,"next",e)}function u(e){r(a,o,i,c,u,"throw",e)}c(void 0)}))}}},function(e,r){e.exports=t},function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t){function r(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}e.exports=function(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e}},function(e,t,r){var n=r(14),o=globalThis.deck||{};if(!o.Layer)throw new Error("@deck.gl/core is not found");e.exports=Object.assign(o,n)},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var r=[],n=!0,o=!1,i=void 0;try{for(var a,c=e[Symbol.iterator]();!(n=(a=c.next()).done)&&(r.push(a.value),!t||r.length!==t);n=!0);}catch(e){o=!0,i=e}finally{try{n||null==c.return||c.return()}finally{if(o)throw i}}return r}}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}},function(e,t,r){var n=function(e){"use strict";var t=Object.prototype,r=t.hasOwnProperty,n="function"==typeof Symbol?Symbol:{},o=n.iterator||"@@iterator",i=n.asyncIterator||"@@asyncIterator",a=n.toStringTag||"@@toStringTag";function c(e,t,r,n){var o=t&&t.prototype instanceof l?t:l,i=Object.create(o.prototype),a=new k(n||[]);return i._invoke=function(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return j()}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var c=g(a,r);if(c){if(c===s)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var l=u(e,t,r);if("normal"===l.type){if(n=r.done?"completed":"suspendedYield",l.arg===s)continue;return{value:l.arg,done:r.done}}"throw"===l.type&&(n="completed",r.method="throw",r.arg=l.arg)}}}(e,r,a),i}function u(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=c;var s={};function l(){}function f(){}function d(){}var h={};h[o]=function(){return this};var v=Object.getPrototypeOf,p=v&&v(v(O([])));p&&p!==t&&r.call(p,o)&&(h=p);var y=d.prototype=l.prototype=Object.create(h);function m(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function w(e){var t;this._invoke=function(n,o){function i(){return new Promise((function(t,i){!function t(n,o,i,a){var c=u(e[n],e,o);if("throw"!==c.type){var s=c.arg,l=s.value;return l&&"object"==typeof l&&r.call(l,"__await")?Promise.resolve(l.__await).then((function(e){t("next",e,i,a)}),(function(e){t("throw",e,i,a)})):Promise.resolve(l).then((function(e){s.value=e,i(s)}),(function(e){return t("throw",e,i,a)}))}a(c.arg)}(n,o,t,i)}))}return t=t?t.then(i,i):i()}}function g(e,t){var r=e.iterator[t.method];if(void 0===r){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,g(e,t),"throw"===t.method))return s;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return s}var n=u(r,e.iterator,t.arg);if("throw"===n.type)return t.method="throw",t.arg=n.arg,t.delegate=null,s;var o=n.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,s):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,s)}function b(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function x(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function k(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(b,this),this.reset(!0)}function O(e){if(e){var t=e[o];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,i=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return i.next=i}}return{next:j}}function j(){return{value:void 0,done:!0}}return f.prototype=y.constructor=d,d.constructor=f,d[a]=f.displayName="GeneratorFunction",e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,d):(e.__proto__=d,a in e||(e[a]="GeneratorFunction")),e.prototype=Object.create(y),e},e.awrap=function(e){return{__await:e}},m(w.prototype),w.prototype[i]=function(){return this},e.AsyncIterator=w,e.async=function(t,r,n,o){var i=new w(c(t,r,n,o));return e.isGeneratorFunction(r)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},m(y),y[a]="Generator",y[o]=function(){return this},y.toString=function(){return"[object Generator]"},e.keys=function(e){var t=[];for(var r in e)t.push(r);return t.reverse(),function r(){for(;t.length;){var n=t.pop();if(n in e)return r.value=n,r.done=!1,r}return r.done=!0,r}},e.values=O,k.prototype={constructor:k,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,s):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),s},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),x(r),s}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;x(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:O(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),s}},e}(e.exports);try{regeneratorRuntime=n}catch(e){Function("r","regeneratorRuntime = r")(n)}},function(e,t,r){"use strict";r.r(t);var n=r(2),o=r.n(n),i=r(0),a=r.n(i),c=r(5),u=r.n(c),s=r(3),l=r.n(s);function f(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return d(e,t)}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,c=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){c=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(c)throw i}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var h={layers:{},layerFilter:{},parameters:{},effects:{},pickingRadius:{},onBeforeRender:{},onAfterRender:{},onClick:{},onHover:{},onDragStart:{},onDrag:{},onDragEnd:{},onError:{},debug:{},drawPickingColors:{},getCursor:{},getTooltip:{}};var v=r(6),p=r(1);function y(e){var t=this;Object(p.instrumentGLContext)(e),this.buffer=new p.Buffer(e,new Int8Array([-1,-1,1,-1,-1,1,1,1])),this.model=new p.Model(e,{vs:"\n attribute vec2 a_pos;\n varying vec2 v_texcoord;\n void main(void) {\n gl_Position = vec4(a_pos, 0.0, 1.0);\n v_texcoord = (a_pos + 1.0) / 2.0;\n }\n ",fs:"\n precision mediump float;\n uniform sampler2D u_texture;\n varying vec2 v_texcoord;\n void main(void) {\n vec4 rgba = texture2D(u_texture, v_texcoord);\n rgba.rgb *= rgba.a;\n gl_FragColor = rgba;\n }\n ",attributes:{a_pos:this.buffer},vertexCount:4,drawMode:5}),this.deckFbo=new p.Framebuffer(e,{width:1,height:1}),this.deckInstance=new v.Deck({viewState:{},controller:!1,gl:e,parameters:{depthTest:!0},_framebuffer:this.deckFbo,width:null,height:null,_customRender:function(e){"arcgis"===e?t.deckInstance._drawLayers(e):t.redraw()}})}function m(e){var t=this,r=e.gl,n=e.width,o=e.height,i=e.viewState,a=r.getParameter(36006),c=window.devicePixelRatio;n=Math.round(n*c),o=Math.round(o*c),this.deckFbo.resize({width:n,height:o}),this.deckInstance.setProps({viewState:i}),this.deckInstance.redraw("arcgis"),Object(p.withParameters)(r,{blend:!0,blendFunc:[1,771],framebuffer:a,viewport:[0,0,n,o]},(function(){t.model.setUniforms({u_texture:t.deckFbo}).draw()}))}function w(){var e,t,r,n;null===(e=this.deckInstance)||void 0===e||e.finalize(),this.deckInstance=null,null===(t=this.model)||void 0===t||t.delete(),null===(r=this.buffer)||void 0===r||r.delete(),null===(n=this.deckFbo)||void 0===n||n.delete()}var g=r(7),b=r.n(g),x=r(8),k=r.n(x);var O=r(4);function j(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function L(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?j(Object(r),!0).forEach((function(t){o()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):j(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}r.d(t,"loadArcGISModules",(function(){return _}));var S=null;function _(e,t){return P.apply(this,arguments)}function P(){return(P=u()(l.a.mark((function e(t,r){var n;return l.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=Array.isArray(t)?null:t,e.next=3,E(n,r);case 3:if(!Array.isArray(t)){e.next=5;break}return e.abrupt("return",Object(O.loadModules)(t,r).then((function(e){return L(L({},S),{},{modules:e})})));case 5:return e.abrupt("return",S);case 6:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function E(e,t){return S||(e?A(e.layers.Layer,e.core.Accessor,e.views["2d"].layers.BaseLayerViewGL2D,e.views["3d"].externalRenderers):Object(O.loadModules)(["esri/layers/Layer","esri/core/Accessor","esri/views/2d/layers/BaseLayerViewGL2D","esri/views/3d/externalRenderers"],t).then((function(e){var t=a()(e,4);return A(t[0],t[1],t[2],t[3])})))}function A(e,t,r,n){var i=function(e){return e.createSubclass({properties:h,constructor:function(){var e=this;this._callbacks={},this.watch(Object.keys(h),(function(t,r,n){e.emit("change",o()({},n,t))}))},on:function(e,t){this._callbacks[e]=this._callbacks[e]||[],this._callbacks[e].push(t)},emit:function(e,t){var r=this._callbacks[e];if(r){var n,o=f(r);try{for(o.s();!(n=o.n()).done;){(0,n.value)(t)}}catch(e){o.e(e)}finally{o.f()}}},toJSON:function(){var e,t={},r=f(this.keys());try{for(r.s();!(e=r.n()).done;){var n=e.value;void 0!==this[n]&&(t[n]=this[n])}}catch(e){r.e(e)}finally{r.f()}return t}})}(t),c=function(e,t,r){return t.createSubclass({properties:{deck:{},blendMode:{},effect:{}},constructor:function(){this.deck=new e},createLayerView:function(e){return"2d"===e.type?new r({view:e,layer:this}):(console.error("DeckLayer does not support SceneView at the moment. Use DeckRenderer instead."),null)}})}(i,e,function(e){return e.createSubclass({properties:{deckgl:{},deckFbo:{},model:{},buffer:{}},attach:function(){var e=this,t=this.context;y.call(this,t),this.layer.deck.on("change",(function(t){return e.deckInstance.setProps(t)})),this.deckInstance.setProps(this.layer.deck.toJSON())},redraw:function(){this.requestRender()},detach:function(){w.call(this)},render:function(e){var t=a()(this.view.state.size,2),r=t[0],n=t[1],o=e.state;m.call(this,{gl:e.context,width:r,height:n,viewState:{latitude:this.view.center.latitude,longitude:this.view.center.longitude,zoom:this.view.featuresTilingScheme.scaleToLevel(o.scale),bearing:-o.rotation,pitch:0}})}})}(r)),u=function(e,t){return function(){function r(t,n){b()(this,r),this.view=t,this.deck=new e(n)}return k()(r,[{key:"setup",value:function(e){var t=this,r=e.gl;y.call(this,r),this.deck.on("change",(function(e){return t.deckInstance.setProps(e)})),this.deckInstance.setProps(this.deck.toJSON())}},{key:"dispose",value:function(){w.call(this)}},{key:"redraw",value:function(){t.requestRender(this.view)}},{key:"render",value:function(e){var t,r,n,o,i=a()(this.view.size,2),c=i[0],u=i[1];m.call(this,{gl:e.gl,width:c,height:u,viewState:{latitude:this.view.center.latitude,longitude:this.view.center.longitude,altitude:(t=this.view.camera.fov,r=c/u,n=Math.sqrt(1+Math.pow(r,2)),o=t/2/180*Math.PI,n/2/Math.tan(o)),zoom:this.view.zoom,bearing:this.view.camera.heading,pitch:this.view.camera.tilt}})}}]),r}()}(i,n);return S={DeckLayer:c,DeckRenderer:u}}}])}));
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@deck.gl/arcgis",
3
3
  "description": "Use deck.gl as a custom ArcGIS API for JavaScript layer",
4
4
  "license": "MIT",
5
- "version": "8.7.0-alpha.3",
5
+ "version": "8.7.0-alpha.7",
6
6
  "publishConfig": {
7
7
  "access": "public"
8
8
  },
@@ -35,5 +35,5 @@
35
35
  "dependencies": {
36
36
  "esri-loader": "^3.3.0"
37
37
  },
38
- "gitHead": "03fd8c4caae96d66bd651cb76e11a6d05acf8f8c"
38
+ "gitHead": "5187031e307035c0ef59f83cd2437443e58218c6"
39
39
  }