@deck.gl/arcgis 8.6.5 → 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 +75 -101
- package/dist/es5/deck-layer-view-2d.js.map +1 -1
- package/dist/es5/deck-props.js +3 -3
- package/dist/es5/deck-props.js.map +1 -1
- package/dist/es5/deck-renderer.js.map +1 -1
- package/dist/es5/index.js +22 -85
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/load-modules.js +109 -0
- package/dist/es5/load-modules.js.map +1 -0
- package/dist/esm/deck-props.js +1 -1
- package/dist/esm/deck-props.js.map +1 -1
- package/dist/esm/index.js +9 -46
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/load-modules.js +51 -0
- package/dist/esm/load-modules.js.map +1 -0
- package/dist.min.js +1 -1
- package/package.json +4 -3
- package/src/deck-props.js +1 -1
- package/src/index.js +11 -51
- package/src/load-modules.js +58 -0
package/dist/dist.dev.js
CHANGED
|
@@ -91,7 +91,7 @@ return /******/ (function(modules) { // webpackBootstrap
|
|
|
91
91
|
/******/
|
|
92
92
|
/******/
|
|
93
93
|
/******/ // Load entry module and return exports
|
|
94
|
-
/******/ return __webpack_require__(__webpack_require__.s = "./bundle.
|
|
94
|
+
/******/ return __webpack_require__(__webpack_require__.s = "./bundle.ts");
|
|
95
95
|
/******/ })
|
|
96
96
|
/************************************************************************/
|
|
97
97
|
/******/ ({
|
|
@@ -118,7 +118,7 @@ var utils = {
|
|
|
118
118
|
|
|
119
119
|
/* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
|
|
120
120
|
* Apache-2.0 */
|
|
121
|
-
var DEFAULT_VERSION = '4.
|
|
121
|
+
var DEFAULT_VERSION = '4.21';
|
|
122
122
|
var NEXT = 'next';
|
|
123
123
|
function parseVersion(version) {
|
|
124
124
|
if (version.toLowerCase() === NEXT) {
|
|
@@ -133,7 +133,7 @@ function parseVersion(version) {
|
|
|
133
133
|
/**
|
|
134
134
|
* Get the CDN url for a given version
|
|
135
135
|
*
|
|
136
|
-
* @param version Ex: '4.
|
|
136
|
+
* @param version Ex: '4.21' or '3.38'. Defaults to the latest 4.x version.
|
|
137
137
|
*/
|
|
138
138
|
function getCdnUrl(version) {
|
|
139
139
|
if (version === void 0) { version = DEFAULT_VERSION; }
|
|
@@ -142,7 +142,7 @@ function getCdnUrl(version) {
|
|
|
142
142
|
/**
|
|
143
143
|
* Get the CDN url for a the CSS for a given version and/or theme
|
|
144
144
|
*
|
|
145
|
-
* @param version Ex: '4.
|
|
145
|
+
* @param version Ex: '4.21', '3.38', or 'next'. Defaults to the latest 4.x version.
|
|
146
146
|
*/
|
|
147
147
|
function getCdnCssUrl(version) {
|
|
148
148
|
if (version === void 0) { version = DEFAULT_VERSION; }
|
|
@@ -399,27 +399,23 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
399
399
|
|
|
400
400
|
/***/ }),
|
|
401
401
|
|
|
402
|
-
/***/ "./bundle.
|
|
402
|
+
/***/ "./bundle.ts":
|
|
403
403
|
/*!*******************!*\
|
|
404
|
-
!*** ./bundle.
|
|
404
|
+
!*** ./bundle.ts ***!
|
|
405
405
|
\*******************/
|
|
406
406
|
/*! no static exports found */
|
|
407
407
|
/***/ (function(module, exports, __webpack_require__) {
|
|
408
408
|
|
|
409
|
-
const ArcGISUtils = __webpack_require__(/*! ./src */ "./src/
|
|
409
|
+
const ArcGISUtils = __webpack_require__(/*! ./src/load-modules */ "./src/load-modules.js");
|
|
410
410
|
|
|
411
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
(
|
|
535
|
-
|
|
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
|
-
//
|
|
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":
|
|
@@ -675,7 +656,7 @@ function createDeckLayer(DeckProps, Layer, DeckLayerView2D) {
|
|
|
675
656
|
|
|
676
657
|
"use strict";
|
|
677
658
|
__webpack_require__.r(__webpack_exports__);
|
|
678
|
-
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return
|
|
659
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return createDeckProps; });
|
|
679
660
|
const properties = {
|
|
680
661
|
layers: {},
|
|
681
662
|
layerFilter: {},
|
|
@@ -695,27 +676,30 @@ const properties = {
|
|
|
695
676
|
getCursor: {},
|
|
696
677
|
getTooltip: {}
|
|
697
678
|
};
|
|
698
|
-
|
|
699
679
|
/* eslint-disable callback-return */
|
|
700
|
-
|
|
680
|
+
|
|
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', {
|
|
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 loadDeckProps(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 =
|
|
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,18 +783,18 @@ 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
|
-
/***/ "./src/
|
|
815
|
-
|
|
816
|
-
!*** ./src/
|
|
817
|
-
|
|
794
|
+
/***/ "./src/load-modules.js":
|
|
795
|
+
/*!*****************************!*\
|
|
796
|
+
!*** ./src/load-modules.js ***!
|
|
797
|
+
\*****************************/
|
|
818
798
|
/*! exports provided: loadArcGISModules */
|
|
819
799
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
820
800
|
|
|
@@ -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,
|
|
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
|
-
|
|
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":
|
|
@@ -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","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;
|
|
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"}
|
package/dist/es5/deck-props.js
CHANGED
|
@@ -5,11 +5,11 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.default =
|
|
8
|
+
exports.default = createDeckProps;
|
|
9
9
|
|
|
10
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
11
|
|
|
12
|
-
function _createForOfIteratorHelper(o, allowArrayLike) { var it
|
|
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
13
|
|
|
14
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
15
|
|
|
@@ -35,7 +35,7 @@ var properties = {
|
|
|
35
35
|
getTooltip: {}
|
|
36
36
|
};
|
|
37
37
|
|
|
38
|
-
function
|
|
38
|
+
function createDeckProps(Accessor) {
|
|
39
39
|
var DeckProps = Accessor.createSubclass({
|
|
40
40
|
properties: properties,
|
|
41
41
|
constructor: function constructor() {
|
|
@@ -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","
|
|
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 +1 @@
|
|
|
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,
|
|
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,18 +2,18 @@
|
|
|
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
|
-
exports
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
|
+
Object.defineProperty(exports, "loadArcGISModules", {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function get() {
|
|
13
|
+
return _loadModules.loadArcGISModules;
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
exports.DeckRenderer = exports.DeckLayer = void 0;
|
|
17
17
|
|
|
18
18
|
var _deckProps = _interopRequireDefault(require("./deck-props"));
|
|
19
19
|
|
|
@@ -23,87 +23,24 @@ var _deckLayerView2d = _interopRequireDefault(require("./deck-layer-view-2d"));
|
|
|
23
23
|
|
|
24
24
|
var _deckRenderer = _interopRequireDefault(require("./deck-renderer"));
|
|
25
25
|
|
|
26
|
-
var
|
|
27
|
-
|
|
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; }
|
|
26
|
+
var _Accessor = _interopRequireDefault(require("@arcgis/core/core/Accessor"));
|
|
29
27
|
|
|
30
|
-
|
|
28
|
+
var _Layer = _interopRequireDefault(require("@arcgis/core/layers/Layer"));
|
|
31
29
|
|
|
32
|
-
var
|
|
30
|
+
var _BaseLayerViewGL2D = _interopRequireDefault(require("@arcgis/core/views/2d/layers/BaseLayerViewGL2D"));
|
|
33
31
|
|
|
34
|
-
|
|
35
|
-
return _loadArcGISModules.apply(this, arguments);
|
|
36
|
-
}
|
|
32
|
+
var externalRenderers = _interopRequireWildcard(require("@arcgis/core/views/3d/externalRenderers"));
|
|
37
33
|
|
|
38
|
-
|
|
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);
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
function loadArcGISModule(esri, loadScriptOptions) {
|
|
75
|
-
if (arcGIS) {
|
|
76
|
-
return arcGIS;
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
if (esri) {
|
|
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;
|
|
84
|
-
return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
|
|
85
|
-
}
|
|
34
|
+
var _loadModules = require("./load-modules");
|
|
86
35
|
|
|
87
|
-
|
|
88
|
-
var _ref2 = (0, _slicedToArray2.default)(_ref, 4),
|
|
89
|
-
Layer = _ref2[0],
|
|
90
|
-
Accessor = _ref2[1],
|
|
91
|
-
BaseLayerViewGL2D = _ref2[2],
|
|
92
|
-
externalRenderers = _ref2[3];
|
|
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); }
|
|
93
37
|
|
|
94
|
-
|
|
95
|
-
});
|
|
96
|
-
}
|
|
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; }
|
|
97
39
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
DeckLayer: DeckLayer,
|
|
105
|
-
DeckRenderer: DeckRenderer
|
|
106
|
-
};
|
|
107
|
-
return arcGIS;
|
|
108
|
-
}
|
|
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);
|
|
43
|
+
exports.DeckLayer = DeckLayer;
|
|
44
|
+
var DeckRenderer = (0, _deckRenderer.default)(DeckProps, externalRenderers);
|
|
45
|
+
exports.DeckRenderer = DeckRenderer;
|
|
109
46
|
//# sourceMappingURL=index.js.map
|
package/dist/es5/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.js"],"names":["
|
|
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"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.loadArcGISModules = loadArcGISModules;
|
|
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
|
+
|
|
18
|
+
var _deckProps = _interopRequireDefault(require("./deck-props"));
|
|
19
|
+
|
|
20
|
+
var _deckLayer = _interopRequireDefault(require("./deck-layer"));
|
|
21
|
+
|
|
22
|
+
var _deckLayerView2d = _interopRequireDefault(require("./deck-layer-view-2d"));
|
|
23
|
+
|
|
24
|
+
var _deckRenderer = _interopRequireDefault(require("./deck-renderer"));
|
|
25
|
+
|
|
26
|
+
var _esriLoader = require("esri-loader");
|
|
27
|
+
|
|
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; }
|
|
29
|
+
|
|
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; }
|
|
31
|
+
|
|
32
|
+
var arcGIS = null;
|
|
33
|
+
|
|
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);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
function loadArcGISModule(esri, loadScriptOptions) {
|
|
75
|
+
if (arcGIS) {
|
|
76
|
+
return arcGIS;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
if (esri) {
|
|
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;
|
|
84
|
+
return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
|
|
85
|
+
}
|
|
86
|
+
|
|
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
|
+
|
|
94
|
+
return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
function initialize(Layer, Accessor, BaseLayerViewGL2D, 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);
|
|
103
|
+
arcGIS = {
|
|
104
|
+
DeckLayer: DeckLayer,
|
|
105
|
+
DeckRenderer: DeckRenderer
|
|
106
|
+
};
|
|
107
|
+
return arcGIS;
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=load-modules.js.map
|
|
@@ -0,0 +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;;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/esm/deck-props.js
CHANGED
|
@@ -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","
|
|
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;AAqBA,eAAe,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"}
|
package/dist/esm/index.js
CHANGED
|
@@ -2,50 +2,13 @@ import createDeckProps from './deck-props';
|
|
|
2
2
|
import createDeckLayer from './deck-layer';
|
|
3
3
|
import createDeckLayerView2D from './deck-layer-view-2d';
|
|
4
4
|
import createDeckRenderer from './deck-renderer';
|
|
5
|
-
import
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
modules: array
|
|
15
|
-
};
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
return arcGIS;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
function loadArcGISModule(esri, loadScriptOptions) {
|
|
23
|
-
if (arcGIS) {
|
|
24
|
-
return arcGIS;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
if (esri) {
|
|
28
|
-
const Layer = esri.layers.Layer;
|
|
29
|
-
const Accessor = esri.core.Accessor;
|
|
30
|
-
const BaseLayerViewGL2D = esri.views['2d'].layers.BaseLayerViewGL2D;
|
|
31
|
-
const externalRenderers = esri.views['3d'].externalRenderers;
|
|
32
|
-
return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
return esriLoaderLoadModules(['esri/layers/Layer', 'esri/core/Accessor', 'esri/views/2d/layers/BaseLayerViewGL2D', 'esri/views/3d/externalRenderers'], loadScriptOptions).then(([Layer, Accessor, BaseLayerViewGL2D, externalRenderers]) => {
|
|
36
|
-
return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
function initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers) {
|
|
41
|
-
const DeckProps = createDeckProps(Accessor);
|
|
42
|
-
const DeckLayerView2D = createDeckLayerView2D(BaseLayerViewGL2D);
|
|
43
|
-
const DeckLayer = createDeckLayer(DeckProps, Layer, DeckLayerView2D);
|
|
44
|
-
const DeckRenderer = createDeckRenderer(DeckProps, externalRenderers);
|
|
45
|
-
arcGIS = {
|
|
46
|
-
DeckLayer,
|
|
47
|
-
DeckRenderer
|
|
48
|
-
};
|
|
49
|
-
return arcGIS;
|
|
50
|
-
}
|
|
5
|
+
import Accessor from '@arcgis/core/core/Accessor';
|
|
6
|
+
import Layer from '@arcgis/core/layers/Layer';
|
|
7
|
+
import BaseLayerViewGL2D from '@arcgis/core/views/2d/layers/BaseLayerViewGL2D';
|
|
8
|
+
import * as externalRenderers from '@arcgis/core/views/3d/externalRenderers';
|
|
9
|
+
export { loadArcGISModules } from './load-modules';
|
|
10
|
+
const DeckProps = createDeckProps(Accessor);
|
|
11
|
+
const DeckLayerView2D = createDeckLayerView2D(BaseLayerViewGL2D);
|
|
12
|
+
export const DeckLayer = createDeckLayer(DeckProps, Layer, DeckLayerView2D);
|
|
13
|
+
export const DeckRenderer = createDeckRenderer(DeckProps, externalRenderers);
|
|
51
14
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.js"],"names":["createDeckProps","createDeckLayer","createDeckLayerView2D","createDeckRenderer","
|
|
1
|
+
{"version":3,"sources":["../../src/index.js"],"names":["createDeckProps","createDeckLayer","createDeckLayerView2D","createDeckRenderer","Accessor","Layer","BaseLayerViewGL2D","externalRenderers","loadArcGISModules","DeckProps","DeckLayerView2D","DeckLayer","DeckRenderer"],"mappings":"AAAA,OAAOA,eAAP,MAA4B,cAA5B;AACA,OAAOC,eAAP,MAA4B,cAA5B;AACA,OAAOC,qBAAP,MAAkC,sBAAlC;AACA,OAAOC,kBAAP,MAA+B,iBAA/B;AAEA,OAAOC,QAAP,MAAqB,4BAArB;AACA,OAAOC,KAAP,MAAkB,2BAAlB;AACA,OAAOC,iBAAP,MAA8B,gDAA9B;AACA,OAAO,KAAKC,iBAAZ,MAAmC,yCAAnC;AAGA,SAAQC,iBAAR,QAAgC,gBAAhC;AAGA,MAAMC,SAAS,GAAGT,eAAe,CAACI,QAAD,CAAjC;AACA,MAAMM,eAAe,GAAGR,qBAAqB,CAACI,iBAAD,CAA7C;AACA,OAAO,MAAMK,SAAS,GAAGV,eAAe,CAACQ,SAAD,EAAYJ,KAAZ,EAAmBK,eAAnB,CAAjC;AACP,OAAO,MAAME,YAAY,GAAGT,kBAAkB,CAACM,SAAD,EAAYF,iBAAZ,CAAvC","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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import createDeckProps from './deck-props';
|
|
2
|
+
import createDeckLayer from './deck-layer';
|
|
3
|
+
import createDeckLayerView2D from './deck-layer-view-2d';
|
|
4
|
+
import createDeckRenderer from './deck-renderer';
|
|
5
|
+
import { loadModules as esriLoaderLoadModules } from 'esri-loader';
|
|
6
|
+
let arcGIS = null;
|
|
7
|
+
export async function loadArcGISModules(modules, loadScriptOptions) {
|
|
8
|
+
const namespace = Array.isArray(modules) ? null : modules;
|
|
9
|
+
await loadArcGISModule(namespace, loadScriptOptions);
|
|
10
|
+
|
|
11
|
+
if (Array.isArray(modules)) {
|
|
12
|
+
return esriLoaderLoadModules(modules, loadScriptOptions).then(array => {
|
|
13
|
+
return { ...arcGIS,
|
|
14
|
+
modules: array
|
|
15
|
+
};
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
return arcGIS;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
function loadArcGISModule(esri, loadScriptOptions) {
|
|
23
|
+
if (arcGIS) {
|
|
24
|
+
return arcGIS;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
if (esri) {
|
|
28
|
+
const Layer = esri.layers.Layer;
|
|
29
|
+
const Accessor = esri.core.Accessor;
|
|
30
|
+
const BaseLayerViewGL2D = esri.views['2d'].layers.BaseLayerViewGL2D;
|
|
31
|
+
const externalRenderers = esri.views['3d'].externalRenderers;
|
|
32
|
+
return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
return esriLoaderLoadModules(['esri/layers/Layer', 'esri/core/Accessor', 'esri/views/2d/layers/BaseLayerViewGL2D', 'esri/views/3d/externalRenderers'], loadScriptOptions).then(([Layer, Accessor, BaseLayerViewGL2D, externalRenderers]) => {
|
|
36
|
+
return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
function initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers) {
|
|
41
|
+
const DeckProps = createDeckProps(Accessor);
|
|
42
|
+
const DeckLayerView2D = createDeckLayerView2D(BaseLayerViewGL2D);
|
|
43
|
+
const DeckLayer = createDeckLayer(DeckProps, Layer, DeckLayerView2D);
|
|
44
|
+
const DeckRenderer = createDeckRenderer(DeckProps, externalRenderers);
|
|
45
|
+
arcGIS = {
|
|
46
|
+
DeckLayer,
|
|
47
|
+
DeckRenderer
|
|
48
|
+
};
|
|
49
|
+
return arcGIS;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=load-modules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/load-modules.js"],"names":["createDeckProps","createDeckLayer","createDeckLayerView2D","createDeckRenderer","loadModules","esriLoaderLoadModules","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,OAAOA,eAAP,MAA4B,cAA5B;AACA,OAAOC,eAAP,MAA4B,cAA5B;AACA,OAAOC,qBAAP,MAAkC,sBAAlC;AACA,OAAOC,kBAAP,MAA+B,iBAA/B;AACA,SAAQC,WAAW,IAAIC,qBAAvB,QAAmD,aAAnD;AAEA,IAAIC,MAAM,GAAG,IAAb;AAEA,OAAO,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,WAAOH,qBAAqB,CAACG,OAAD,EAAUC,iBAAV,CAArB,CAAkDK,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,SAAOlB,qBAAqB,CAC1B,CACE,mBADF,EAEE,oBAFF,EAGE,wCAHF,EAIE,iCAJF,CAD0B,EAO1BI,iBAP0B,CAArB,CAQLK,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,GAAGzB,eAAe,CAACmB,QAAD,CAAjC;AACA,QAAMO,eAAe,GAAGxB,qBAAqB,CAACmB,iBAAD,CAA7C;AACA,QAAMM,SAAS,GAAG1B,eAAe,CAACwB,SAAD,EAAYR,KAAZ,EAAmBS,eAAnB,CAAjC;AACA,QAAME,YAAY,GAAGzB,kBAAkB,CAACsB,SAAD,EAAYF,iBAAZ,CAAvC;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"}
|
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(11),o=r(12),i=r(13);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(10)},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.20"),"https://js.arcgis.com/"+e+"/"}function o(e){return!e||r(e)?function(e){void 0===e&&(e="4.20");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,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){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){"use strict";r.r(t);var n=r(3),o=r.n(n),i=r(2),a=r.n(i),c=r(0),u=r.n(c),s=r(5),l=r.n(s);function f(e,t){var r;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){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=e[Symbol.iterator]()},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){a()(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=l()(o.a.mark((function e(t,r){var n;return o.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=u()(e,4);return A(t[0],t[1],t[2],t[3])})))}function A(e,t,r,n){var o=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",a()({},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),i=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)}})}(o,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=u()(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)),c=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=u()(this.view.size,2),a=i[0],c=i[1];m.call(this,{gl:e.gl,width:a,height:c,viewState:{latitude:this.view.center.latitude,longitude:this.view.center.longitude,altitude:(t=this.view.camera.fov,r=a/c,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}()}(o,n);return S={DeckLayer:i,DeckRenderer:c}}}])}));
|
|
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.
|
|
5
|
+
"version": "8.7.0-alpha.7",
|
|
6
6
|
"publishConfig": {
|
|
7
7
|
"access": "public"
|
|
8
8
|
},
|
|
@@ -29,10 +29,11 @@
|
|
|
29
29
|
"prepublishOnly": "npm run build-bundle && npm run build-bundle -- --env.dev"
|
|
30
30
|
},
|
|
31
31
|
"peerDependencies": {
|
|
32
|
+
"@arcgis/core": "^4.0.0",
|
|
32
33
|
"@deck.gl/core": "^8.0.0"
|
|
33
34
|
},
|
|
34
35
|
"dependencies": {
|
|
35
|
-
"esri-loader": "^3.
|
|
36
|
+
"esri-loader": "^3.3.0"
|
|
36
37
|
},
|
|
37
|
-
"gitHead": "
|
|
38
|
+
"gitHead": "5187031e307035c0ef59f83cd2437443e58218c6"
|
|
38
39
|
}
|
package/src/deck-props.js
CHANGED
package/src/index.js
CHANGED
|
@@ -2,57 +2,17 @@ import createDeckProps from './deck-props';
|
|
|
2
2
|
import createDeckLayer from './deck-layer';
|
|
3
3
|
import createDeckLayerView2D from './deck-layer-view-2d';
|
|
4
4
|
import createDeckRenderer from './deck-renderer';
|
|
5
|
-
import {loadModules as esriLoaderLoadModules} from 'esri-loader';
|
|
6
5
|
|
|
7
|
-
|
|
6
|
+
import Accessor from '@arcgis/core/core/Accessor';
|
|
7
|
+
import Layer from '@arcgis/core/layers/Layer';
|
|
8
|
+
import BaseLayerViewGL2D from '@arcgis/core/views/2d/layers/BaseLayerViewGL2D';
|
|
9
|
+
import * as externalRenderers from '@arcgis/core/views/3d/externalRenderers';
|
|
8
10
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
await loadArcGISModule(namespace, loadScriptOptions);
|
|
11
|
+
// require-style loader
|
|
12
|
+
export {loadArcGISModules} from './load-modules';
|
|
12
13
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
return arcGIS;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
function loadArcGISModule(esri, loadScriptOptions) {
|
|
22
|
-
if (arcGIS) {
|
|
23
|
-
// Already loaded
|
|
24
|
-
return arcGIS;
|
|
25
|
-
}
|
|
26
|
-
if (esri) {
|
|
27
|
-
// Using user-provided dependencies
|
|
28
|
-
// Right now this object has to be manually assembled - let @arcgis/webpack-plugin handle this?
|
|
29
|
-
const Layer = esri.layers.Layer;
|
|
30
|
-
const Accessor = esri.core.Accessor;
|
|
31
|
-
const BaseLayerViewGL2D = esri.views['2d'].layers.BaseLayerViewGL2D;
|
|
32
|
-
const externalRenderers = esri.views['3d'].externalRenderers;
|
|
33
|
-
|
|
34
|
-
return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
return esriLoaderLoadModules(
|
|
38
|
-
[
|
|
39
|
-
'esri/layers/Layer',
|
|
40
|
-
'esri/core/Accessor',
|
|
41
|
-
'esri/views/2d/layers/BaseLayerViewGL2D',
|
|
42
|
-
'esri/views/3d/externalRenderers'
|
|
43
|
-
],
|
|
44
|
-
loadScriptOptions
|
|
45
|
-
).then(([Layer, Accessor, BaseLayerViewGL2D, externalRenderers]) => {
|
|
46
|
-
return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
function initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers) {
|
|
51
|
-
const DeckProps = createDeckProps(Accessor);
|
|
52
|
-
const DeckLayerView2D = createDeckLayerView2D(BaseLayerViewGL2D);
|
|
53
|
-
const DeckLayer = createDeckLayer(DeckProps, Layer, DeckLayerView2D);
|
|
54
|
-
const DeckRenderer = createDeckRenderer(DeckProps, externalRenderers);
|
|
55
|
-
|
|
56
|
-
arcGIS = {DeckLayer, DeckRenderer};
|
|
57
|
-
return arcGIS;
|
|
58
|
-
}
|
|
14
|
+
// ESM-style classes
|
|
15
|
+
const DeckProps = createDeckProps(Accessor);
|
|
16
|
+
const DeckLayerView2D = createDeckLayerView2D(BaseLayerViewGL2D);
|
|
17
|
+
export const DeckLayer = createDeckLayer(DeckProps, Layer, DeckLayerView2D);
|
|
18
|
+
export const DeckRenderer = createDeckRenderer(DeckProps, externalRenderers);
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import createDeckProps from './deck-props';
|
|
2
|
+
import createDeckLayer from './deck-layer';
|
|
3
|
+
import createDeckLayerView2D from './deck-layer-view-2d';
|
|
4
|
+
import createDeckRenderer from './deck-renderer';
|
|
5
|
+
import {loadModules as esriLoaderLoadModules} from 'esri-loader';
|
|
6
|
+
|
|
7
|
+
let arcGIS = null;
|
|
8
|
+
|
|
9
|
+
export async function loadArcGISModules(modules, loadScriptOptions) {
|
|
10
|
+
const namespace = Array.isArray(modules) ? null : modules;
|
|
11
|
+
await loadArcGISModule(namespace, loadScriptOptions);
|
|
12
|
+
|
|
13
|
+
if (Array.isArray(modules)) {
|
|
14
|
+
return esriLoaderLoadModules(modules, loadScriptOptions).then(array => {
|
|
15
|
+
return {...arcGIS, modules: array};
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
return arcGIS;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
function loadArcGISModule(esri, loadScriptOptions) {
|
|
22
|
+
if (arcGIS) {
|
|
23
|
+
// Already loaded
|
|
24
|
+
return arcGIS;
|
|
25
|
+
}
|
|
26
|
+
if (esri) {
|
|
27
|
+
// Using user-provided dependencies
|
|
28
|
+
// Right now this object has to be manually assembled - let @arcgis/webpack-plugin handle this?
|
|
29
|
+
const Layer = esri.layers.Layer;
|
|
30
|
+
const Accessor = esri.core.Accessor;
|
|
31
|
+
const BaseLayerViewGL2D = esri.views['2d'].layers.BaseLayerViewGL2D;
|
|
32
|
+
const externalRenderers = esri.views['3d'].externalRenderers;
|
|
33
|
+
|
|
34
|
+
return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
return esriLoaderLoadModules(
|
|
38
|
+
[
|
|
39
|
+
'esri/layers/Layer',
|
|
40
|
+
'esri/core/Accessor',
|
|
41
|
+
'esri/views/2d/layers/BaseLayerViewGL2D',
|
|
42
|
+
'esri/views/3d/externalRenderers'
|
|
43
|
+
],
|
|
44
|
+
loadScriptOptions
|
|
45
|
+
).then(([Layer, Accessor, BaseLayerViewGL2D, externalRenderers]) => {
|
|
46
|
+
return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
function initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers) {
|
|
51
|
+
const DeckProps = createDeckProps(Accessor);
|
|
52
|
+
const DeckLayerView2D = createDeckLayerView2D(BaseLayerViewGL2D);
|
|
53
|
+
const DeckLayer = createDeckLayer(DeckProps, Layer, DeckLayerView2D);
|
|
54
|
+
const DeckRenderer = createDeckRenderer(DeckProps, externalRenderers);
|
|
55
|
+
|
|
56
|
+
arcGIS = {DeckLayer, DeckRenderer};
|
|
57
|
+
return arcGIS;
|
|
58
|
+
}
|