@deck.gl/arcgis 9.0.0-beta.1 → 9.0.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dist.dev.js +305 -8266
- package/dist.min.js +2 -133
- package/package.json +14 -7
- package/src/commons.ts +2 -3
- package/dist/es5/commons.js +0 -95
- package/dist/es5/commons.js.map +0 -1
- package/dist/es5/deck-layer-view-2d.js +0 -62
- package/dist/es5/deck-layer-view-2d.js.map +0 -1
- package/dist/es5/deck-layer.js +0 -31
- package/dist/es5/deck-layer.js.map +0 -1
- package/dist/es5/deck-props.js +0 -98
- package/dist/es5/deck-props.js.map +0 -1
- package/dist/es5/deck-renderer.js +0 -78
- package/dist/es5/deck-renderer.js.map +0 -1
- package/dist/es5/index.js +0 -46
- package/dist/es5/index.js.map +0 -1
- package/dist/es5/load-modules.js +0 -109
- package/dist/es5/load-modules.js.map +0 -1
- package/dist/esm/commons.js +0 -96
- package/dist/esm/commons.js.map +0 -1
- package/dist/esm/deck-layer-view-2d.js +0 -45
- package/dist/esm/deck-layer-view-2d.js.map +0 -1
- package/dist/esm/deck-layer.js +0 -27
- package/dist/esm/deck-layer.js.map +0 -1
- package/dist/esm/deck-props.js +0 -64
- package/dist/esm/deck-props.js.map +0 -1
- package/dist/esm/deck-renderer.js +0 -52
- package/dist/esm/deck-renderer.js.map +0 -1
- package/dist/esm/index.js +0 -14
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/load-modules.js +0 -51
- package/dist/esm/load-modules.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
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/commons.js
DELETED
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
import { Model } from '@luma.gl/engine';
|
|
2
|
-
import { GL } from '@luma.gl/constants';
|
|
3
|
-
import { withGLParameters } from '@luma.gl/webgl';
|
|
4
|
-
import { Deck } from '@deck.gl/core';
|
|
5
|
-
export function initializeResources(device) {
|
|
6
|
-
this.buffer = device.createBuffer(new Int8Array([-1, -1, 1, -1, -1, 1, 1, 1]));
|
|
7
|
-
this.model = new Model(device, {
|
|
8
|
-
vs: `\
|
|
9
|
-
#version 300 es
|
|
10
|
-
in vec2 a_pos;
|
|
11
|
-
out vec2 v_texcoord;
|
|
12
|
-
void main(void) {
|
|
13
|
-
gl_Position = vec4(a_pos, 0.0, 1.0);
|
|
14
|
-
v_texcoord = (a_pos + 1.0) / 2.0;
|
|
15
|
-
}
|
|
16
|
-
`,
|
|
17
|
-
fs: `\
|
|
18
|
-
#version 300 es
|
|
19
|
-
precision mediump float;
|
|
20
|
-
uniform sampler2D u_texture;
|
|
21
|
-
in vec2 v_texcoord;
|
|
22
|
-
out vec4 fragColor;
|
|
23
|
-
void main(void) {
|
|
24
|
-
vec4 rgba = texture(u_texture, v_texcoord);
|
|
25
|
-
rgba.rgb *= rgba.a;
|
|
26
|
-
fragColor = rgba;
|
|
27
|
-
}
|
|
28
|
-
`,
|
|
29
|
-
attributes: {
|
|
30
|
-
a_pos: this.buffer
|
|
31
|
-
},
|
|
32
|
-
vertexCount: 4,
|
|
33
|
-
drawMode: 5
|
|
34
|
-
});
|
|
35
|
-
this.deckFbo = device.createFramebuffer({
|
|
36
|
-
width: 1,
|
|
37
|
-
height: 1
|
|
38
|
-
});
|
|
39
|
-
this.deckInstance = new Deck({
|
|
40
|
-
viewState: {},
|
|
41
|
-
controller: false,
|
|
42
|
-
gl: device.gl,
|
|
43
|
-
parameters: {
|
|
44
|
-
depthTest: true
|
|
45
|
-
},
|
|
46
|
-
_framebuffer: this.deckFbo,
|
|
47
|
-
width: null,
|
|
48
|
-
height: null,
|
|
49
|
-
_customRender: redrawReason => {
|
|
50
|
-
if (redrawReason === 'arcgis') {
|
|
51
|
-
this.deckInstance._drawLayers(redrawReason);
|
|
52
|
-
} else {
|
|
53
|
-
this.redraw();
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
export function render({
|
|
59
|
-
gl,
|
|
60
|
-
width,
|
|
61
|
-
height,
|
|
62
|
-
viewState
|
|
63
|
-
}) {
|
|
64
|
-
const screenFbo = gl.getParameter(36006);
|
|
65
|
-
const dpr = window.devicePixelRatio;
|
|
66
|
-
width = Math.round(width * dpr);
|
|
67
|
-
height = Math.round(height * dpr);
|
|
68
|
-
this.deckFbo.resize({
|
|
69
|
-
width,
|
|
70
|
-
height
|
|
71
|
-
});
|
|
72
|
-
this.deckInstance.setProps({
|
|
73
|
-
viewState
|
|
74
|
-
});
|
|
75
|
-
this.deckInstance.redraw('arcgis');
|
|
76
|
-
withGLParameters(gl, {
|
|
77
|
-
blend: true,
|
|
78
|
-
blendFunc: [1, 771],
|
|
79
|
-
framebuffer: screenFbo,
|
|
80
|
-
viewport: [0, 0, width, height]
|
|
81
|
-
}, () => {
|
|
82
|
-
this.model.setUniforms({
|
|
83
|
-
u_texture: this.deckFbo
|
|
84
|
-
}).draw(this.context.renderPass);
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
export function finalizeResources() {
|
|
88
|
-
var _this$deckInstance, _this$model, _this$buffer, _this$deckFbo;
|
|
89
|
-
|
|
90
|
-
(_this$deckInstance = this.deckInstance) === null || _this$deckInstance === void 0 ? void 0 : _this$deckInstance.finalize();
|
|
91
|
-
this.deckInstance = null;
|
|
92
|
-
(_this$model = this.model) === null || _this$model === void 0 ? void 0 : _this$model.delete();
|
|
93
|
-
(_this$buffer = this.buffer) === null || _this$buffer === void 0 ? void 0 : _this$buffer.delete();
|
|
94
|
-
(_this$deckFbo = this.deckFbo) === null || _this$deckFbo === void 0 ? void 0 : _this$deckFbo.delete();
|
|
95
|
-
}
|
|
96
|
-
//# sourceMappingURL=commons.js.map
|
package/dist/esm/commons.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/commons.ts"],"names":["Model","GL","withGLParameters","Deck","initializeResources","device","buffer","createBuffer","Int8Array","model","vs","fs","attributes","a_pos","vertexCount","drawMode","deckFbo","createFramebuffer","width","height","deckInstance","viewState","controller","gl","parameters","depthTest","_framebuffer","_customRender","redrawReason","_drawLayers","redraw","render","screenFbo","getParameter","dpr","window","devicePixelRatio","Math","round","resize","setProps","blend","blendFunc","framebuffer","viewport","setUniforms","u_texture","draw","context","renderPass","finalizeResources","finalize","delete"],"mappings":"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","sourcesContent":["/* eslint-disable no-invalid-this */\n\nimport type {Device} from '@luma.gl/core';\nimport {Model} from '@luma.gl/engine';\nimport {GL} from '@luma.gl/constants';\nimport {withGLParameters} from '@luma.gl/webgl';\n\nimport {Deck} from '@deck.gl/core';\n\nexport function initializeResources(device: Device) {\n // What is `this` referring to this function???\n this.buffer = device.createBuffer(new Int8Array([-1, -1, 1, -1, -1, 1, 1, 1]));\n\n this.model = new Model(device, {\n vs: `\\\n#version 300 es\nin vec2 a_pos;\nout vec2 v_texcoord;\nvoid main(void) {\n gl_Position = vec4(a_pos, 0.0, 1.0);\n v_texcoord = (a_pos + 1.0) / 2.0;\n}\n `,\n fs: `\\\n#version 300 es\nprecision mediump float;\nuniform sampler2D u_texture;\nin vec2 v_texcoord;\nout vec4 fragColor;\nvoid main(void) {\n vec4 rgba = texture(u_texture, v_texcoord);\n rgba.rgb *= rgba.a;\n fragColor = rgba;\n}\n `,\n attributes: {\n // eslint-disable-next-line camelcase\n a_pos: this.buffer\n },\n vertexCount: 4,\n drawMode: GL.TRIANGLE_STRIP\n });\n\n this.deckFbo = device.createFramebuffer({width: 1, height: 1});\n\n this.deckInstance = new Deck({\n // The view state will be set dynamically to track the MapView current extent.\n viewState: {},\n\n // Input is handled by the ArcGIS API for JavaScript.\n controller: false,\n\n // We use the same WebGL context as the ArcGIS API for JavaScript.\n gl: device.gl,\n\n // We need depth testing in general; we don't know what layers might be added to the deck.\n parameters: {\n depthTest: true\n },\n\n // This deck renders into an auxiliary framebuffer.\n _framebuffer: this.deckFbo,\n\n // To disable canvas resizing, since the FBO is owned by the ArcGIS API for JavaScript.\n width: null,\n height: null,\n\n _customRender: redrawReason => {\n if (redrawReason === 'arcgis') {\n this.deckInstance._drawLayers(redrawReason);\n } else {\n this.redraw();\n }\n }\n });\n}\n\nexport function render({gl, width, height, viewState}) {\n const screenFbo = gl.getParameter(gl.FRAMEBUFFER_BINDING);\n\n /* global window */\n const dpr = window.devicePixelRatio;\n width = Math.round(width * dpr);\n height = Math.round(height * dpr);\n\n this.deckFbo.resize({width, height});\n\n this.deckInstance.setProps({viewState});\n // redraw deck immediately into deckFbo\n this.deckInstance.redraw('arcgis');\n\n // We overlay the texture on top of the map using the full-screen quad.\n withGLParameters(\n gl,\n {\n blend: true,\n blendFunc: [gl.ONE, gl.ONE_MINUS_SRC_ALPHA],\n framebuffer: screenFbo,\n viewport: [0, 0, width, height]\n },\n () => {\n // eslint-disable-next-line camelcase\n this.model.setUniforms({u_texture: this.deckFbo}).draw(this.context.renderPass);\n }\n );\n}\n\nexport function finalizeResources() {\n this.deckInstance?.finalize();\n this.deckInstance = null;\n\n this.model?.delete();\n this.buffer?.delete();\n this.deckFbo?.delete();\n}\n"],"file":"commons.js"}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { initializeResources, render, finalizeResources } from './commons';
|
|
2
|
-
export default function createDeckLayerView2D(BaseLayerViewGL2D) {
|
|
3
|
-
return BaseLayerViewGL2D.createSubclass({
|
|
4
|
-
properties: {
|
|
5
|
-
deckgl: {},
|
|
6
|
-
deckFbo: {},
|
|
7
|
-
model: {},
|
|
8
|
-
buffer: {}
|
|
9
|
-
},
|
|
10
|
-
|
|
11
|
-
attach() {
|
|
12
|
-
const gl = this.context;
|
|
13
|
-
initializeResources.call(this, gl);
|
|
14
|
-
this.layer.deck.on('change', props => this.deckInstance.setProps(props));
|
|
15
|
-
this.deckInstance.setProps(this.layer.deck.toJSON());
|
|
16
|
-
},
|
|
17
|
-
|
|
18
|
-
redraw() {
|
|
19
|
-
this.requestRender();
|
|
20
|
-
},
|
|
21
|
-
|
|
22
|
-
detach() {
|
|
23
|
-
finalizeResources.call(this);
|
|
24
|
-
},
|
|
25
|
-
|
|
26
|
-
render(renderParameters) {
|
|
27
|
-
const [width, height] = this.view.state.size;
|
|
28
|
-
const state = renderParameters.state;
|
|
29
|
-
render.call(this, {
|
|
30
|
-
gl: renderParameters.context,
|
|
31
|
-
width,
|
|
32
|
-
height,
|
|
33
|
-
viewState: {
|
|
34
|
-
latitude: this.view.center.latitude,
|
|
35
|
-
longitude: this.view.center.longitude,
|
|
36
|
-
zoom: this.view.featuresTilingScheme.scaleToLevel(state.scale),
|
|
37
|
-
bearing: -state.rotation,
|
|
38
|
-
pitch: 0
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
//# sourceMappingURL=deck-layer-view-2d.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/deck-layer-view-2d.js"],"names":["initializeResources","render","finalizeResources","createDeckLayerView2D","BaseLayerViewGL2D","createSubclass","properties","deckgl","deckFbo","model","buffer","attach","gl","context","call","layer","deck","on","props","deckInstance","setProps","toJSON","redraw","requestRender","detach","renderParameters","width","height","view","state","size","viewState","latitude","center","longitude","zoom","featuresTilingScheme","scaleToLevel","scale","bearing","rotation","pitch"],"mappings":"AAAA,SAAQA,mBAAR,EAA6BC,MAA7B,EAAqCC,iBAArC,QAA6D,WAA7D;AAEA,eAAe,SAASC,qBAAT,CAA+BC,iBAA/B,EAAkD;AAC/D,SAAOA,iBAAiB,CAACC,cAAlB,CAAiC;AACtCC,IAAAA,UAAU,EAAE;AACVC,MAAAA,MAAM,EAAE,EADE;AAEVC,MAAAA,OAAO,EAAE,EAFC;AAGVC,MAAAA,KAAK,EAAE,EAHG;AAIVC,MAAAA,MAAM,EAAE;AAJE,KAD0B;;AAStCC,IAAAA,MAAM,GAAG;AAGP,YAAMC,EAAE,GAAG,KAAKC,OAAhB;AACAb,MAAAA,mBAAmB,CAACc,IAApB,CAAyB,IAAzB,EAA+BF,EAA/B;AAGA,WAAKG,KAAL,CAAWC,IAAX,CAAgBC,EAAhB,CAAmB,QAAnB,EAA6BC,KAAK,IAAI,KAAKC,YAAL,CAAkBC,QAAlB,CAA2BF,KAA3B,CAAtC;AAGA,WAAKC,YAAL,CAAkBC,QAAlB,CAA2B,KAAKL,KAAL,CAAWC,IAAX,CAAgBK,MAAhB,EAA3B;AACD,KApBqC;;AAsBtCC,IAAAA,MAAM,GAAG;AACP,WAAKC,aAAL;AACD,KAxBqC;;AA2BtCC,IAAAA,MAAM,GAAG;AACPtB,MAAAA,iBAAiB,CAACY,IAAlB,CAAuB,IAAvB;AACD,KA7BqC;;AAgCtCb,IAAAA,MAAM,CAACwB,gBAAD,EAAmB;AACvB,YAAM,CAACC,KAAD,EAAQC,MAAR,IAAkB,KAAKC,IAAL,CAAUC,KAAV,CAAgBC,IAAxC;AAEA,YAAMD,KAAK,GAAGJ,gBAAgB,CAACI,KAA/B;AAEA5B,MAAAA,MAAM,CAACa,IAAP,CAAY,IAAZ,EAAkB;AAChBF,QAAAA,EAAE,EAAEa,gBAAgB,CAACZ,OADL;AAEhBa,QAAAA,KAFgB;AAGhBC,QAAAA,MAHgB;AAIhBI,QAAAA,SAAS,EAAE;AACTC,UAAAA,QAAQ,EAAE,KAAKJ,IAAL,CAAUK,MAAV,CAAiBD,QADlB;AAETE,UAAAA,SAAS,EAAE,KAAKN,IAAL,CAAUK,MAAV,CAAiBC,SAFnB;AAGTC,UAAAA,IAAI,EAAE,KAAKP,IAAL,CAAUQ,oBAAV,CAA+BC,YAA/B,CAA4CR,KAAK,CAACS,KAAlD,CAHG;AAITC,UAAAA,OAAO,EAAE,CAACV,KAAK,CAACW,QAJP;AAKTC,UAAAA,KAAK,EAAE;AALE;AAJK,OAAlB;AAYD;;AAjDqC,GAAjC,CAAP;AAmDD","sourcesContent":["import {initializeResources, render, finalizeResources} from './commons';\n\nexport default function createDeckLayerView2D(BaseLayerViewGL2D) {\n return BaseLayerViewGL2D.createSubclass({\n properties: {\n deckgl: {},\n deckFbo: {},\n model: {},\n buffer: {}\n },\n\n // Attach is called as soon as the layer view is ready to start rendering.\n attach() {\n // We use a full-screen quad and shaders to composite the frame rendered\n // with deck.gl on top of the MapView. Composition uses the MapView context.\n const gl = this.context;\n initializeResources.call(this, gl);\n\n // Update deck props\n this.layer.deck.on('change', props => this.deckInstance.setProps(props));\n\n // We need to start drawing the deck.gl layer immediately.\n this.deckInstance.setProps(this.layer.deck.toJSON());\n },\n\n redraw() {\n this.requestRender();\n },\n\n // Called when the layer must be destroyed.\n detach() {\n finalizeResources.call(this);\n },\n\n // Called every time that the layer view must be rendered.\n render(renderParameters) {\n const [width, height] = this.view.state.size;\n // The view state must be kept in-sync with the MapView of the ArcGIS API.\n const state = renderParameters.state;\n\n render.call(this, {\n gl: renderParameters.context,\n width,\n height,\n viewState: {\n latitude: this.view.center.latitude,\n longitude: this.view.center.longitude,\n zoom: this.view.featuresTilingScheme.scaleToLevel(state.scale),\n bearing: -state.rotation,\n pitch: 0\n }\n });\n }\n });\n}\n"],"file":"deck-layer-view-2d.js"}
|
package/dist/esm/deck-layer.js
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
export default function createDeckLayer(DeckProps, Layer, DeckLayerView2D) {
|
|
2
|
-
return Layer.createSubclass({
|
|
3
|
-
properties: {
|
|
4
|
-
deck: {},
|
|
5
|
-
blendMode: {},
|
|
6
|
-
effect: {}
|
|
7
|
-
},
|
|
8
|
-
|
|
9
|
-
constructor() {
|
|
10
|
-
this.deck = new DeckProps();
|
|
11
|
-
},
|
|
12
|
-
|
|
13
|
-
createLayerView(view) {
|
|
14
|
-
if (view.type === '2d') {
|
|
15
|
-
return new DeckLayerView2D({
|
|
16
|
-
view,
|
|
17
|
-
layer: this
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
console.error('DeckLayer does not support SceneView at the moment. Use DeckRenderer instead.');
|
|
22
|
-
return null;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=deck-layer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/deck-layer.js"],"names":["createDeckLayer","DeckProps","Layer","DeckLayerView2D","createSubclass","properties","deck","blendMode","effect","constructor","createLayerView","view","type","layer","console","error"],"mappings":"AAAA,eAAe,SAASA,eAAT,CAAyBC,SAAzB,EAAoCC,KAApC,EAA2CC,eAA3C,EAA4D;AAGzE,SAAOD,KAAK,CAACE,cAAN,CAAqB;AAC1BC,IAAAA,UAAU,EAAE;AACVC,MAAAA,IAAI,EAAE,EADI;AAEVC,MAAAA,SAAS,EAAE,EAFD;AAGVC,MAAAA,MAAM,EAAE;AAHE,KADc;;AAO1BC,IAAAA,WAAW,GAAG;AACZ,WAAKH,IAAL,GAAY,IAAIL,SAAJ,EAAZ;AACD,KATyB;;AAa1BS,IAAAA,eAAe,CAACC,IAAD,EAAO;AACpB,UAAIA,IAAI,CAACC,IAAL,KAAc,IAAlB,EAAwB;AACtB,eAAO,IAAIT,eAAJ,CAAoB;AACzBQ,UAAAA,IADyB;AAEzBE,UAAAA,KAAK,EAAE;AAFkB,SAApB,CAAP;AAID;;AAGDC,MAAAA,OAAO,CAACC,KAAR,CACE,+EADF;AAIA,aAAO,IAAP;AACD;;AA3ByB,GAArB,CAAP;AA6BD","sourcesContent":["export default function createDeckLayer(DeckProps, Layer, DeckLayerView2D) {\n // A layer that displays inside a MapView using an instance\n // of the layer view defined above.\n return Layer.createSubclass({\n properties: {\n deck: {},\n blendMode: {},\n effect: {}\n },\n\n constructor() {\n this.deck = new DeckProps();\n },\n\n // Called by the MapView whenever a layer view\n // needs to be created for a given layer.\n createLayerView(view) {\n if (view.type === '2d') {\n return new DeckLayerView2D({\n view,\n layer: this\n });\n }\n\n // eslint-disable-next-line\n console.error(\n 'DeckLayer does not support SceneView at the moment. Use DeckRenderer instead.'\n );\n\n return null;\n }\n });\n}\n"],"file":"deck-layer.js"}
|
package/dist/esm/deck-props.js
DELETED
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
const properties = {
|
|
2
|
-
layers: {},
|
|
3
|
-
layerFilter: {},
|
|
4
|
-
parameters: {},
|
|
5
|
-
effects: {},
|
|
6
|
-
pickingRadius: {},
|
|
7
|
-
onBeforeRender: {},
|
|
8
|
-
onAfterRender: {},
|
|
9
|
-
onClick: {},
|
|
10
|
-
onHover: {},
|
|
11
|
-
onDragStart: {},
|
|
12
|
-
onDrag: {},
|
|
13
|
-
onDragEnd: {},
|
|
14
|
-
onError: {},
|
|
15
|
-
debug: {},
|
|
16
|
-
drawPickingColors: {},
|
|
17
|
-
getCursor: {},
|
|
18
|
-
getTooltip: {}
|
|
19
|
-
};
|
|
20
|
-
export default function createDeckProps(Accessor) {
|
|
21
|
-
const DeckProps = Accessor.createSubclass({
|
|
22
|
-
properties,
|
|
23
|
-
|
|
24
|
-
constructor() {
|
|
25
|
-
this._callbacks = {};
|
|
26
|
-
this.watch(Object.keys(properties), (newValue, oldValue, propName) => {
|
|
27
|
-
this.emit('change', {
|
|
28
|
-
[propName]: newValue
|
|
29
|
-
});
|
|
30
|
-
});
|
|
31
|
-
},
|
|
32
|
-
|
|
33
|
-
on(eventName, cb) {
|
|
34
|
-
this._callbacks[eventName] = this._callbacks[eventName] || [];
|
|
35
|
-
|
|
36
|
-
this._callbacks[eventName].push(cb);
|
|
37
|
-
},
|
|
38
|
-
|
|
39
|
-
emit(eventName, details) {
|
|
40
|
-
const callbacks = this._callbacks[eventName];
|
|
41
|
-
|
|
42
|
-
if (callbacks) {
|
|
43
|
-
for (const cb of callbacks) {
|
|
44
|
-
cb(details);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
},
|
|
48
|
-
|
|
49
|
-
toJSON() {
|
|
50
|
-
const result = {};
|
|
51
|
-
|
|
52
|
-
for (const key of this.keys()) {
|
|
53
|
-
if (this[key] !== undefined) {
|
|
54
|
-
result[key] = this[key];
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
return result;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
});
|
|
62
|
-
return DeckProps;
|
|
63
|
-
}
|
|
64
|
-
//# sourceMappingURL=deck-props.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { initializeResources, render, finalizeResources } from './commons';
|
|
2
|
-
|
|
3
|
-
function arcgisFOVToDeckAltitude(fov, aspectRatio) {
|
|
4
|
-
const D = Math.sqrt(1 + aspectRatio ** 2);
|
|
5
|
-
const halfFOV = fov / 2 / 180 * Math.PI;
|
|
6
|
-
return D / 2 / Math.tan(halfFOV);
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export default function createDeckRenderer(DeckProps, externalRenderers) {
|
|
10
|
-
class DeckRenderer {
|
|
11
|
-
constructor(view, props) {
|
|
12
|
-
this.view = view;
|
|
13
|
-
this.deck = new DeckProps(props);
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
setup(context) {
|
|
17
|
-
const gl = context.gl;
|
|
18
|
-
initializeResources.call(this, gl);
|
|
19
|
-
this.deck.on('change', props => this.deckInstance.setProps(props));
|
|
20
|
-
this.deckInstance.setProps(this.deck.toJSON());
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
dispose() {
|
|
24
|
-
finalizeResources.call(this);
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
redraw() {
|
|
28
|
-
externalRenderers.requestRender(this.view);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
render(context) {
|
|
32
|
-
const [width, height] = this.view.size;
|
|
33
|
-
render.call(this, {
|
|
34
|
-
gl: context.gl,
|
|
35
|
-
width,
|
|
36
|
-
height,
|
|
37
|
-
viewState: {
|
|
38
|
-
latitude: this.view.center.latitude,
|
|
39
|
-
longitude: this.view.center.longitude,
|
|
40
|
-
altitude: arcgisFOVToDeckAltitude(this.view.camera.fov, width / height),
|
|
41
|
-
zoom: this.view.zoom,
|
|
42
|
-
bearing: this.view.camera.heading,
|
|
43
|
-
pitch: this.view.camera.tilt
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
return DeckRenderer;
|
|
51
|
-
}
|
|
52
|
-
//# sourceMappingURL=deck-renderer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/deck-renderer.js"],"names":["initializeResources","render","finalizeResources","arcgisFOVToDeckAltitude","fov","aspectRatio","D","Math","sqrt","halfFOV","PI","tan","createDeckRenderer","DeckProps","externalRenderers","DeckRenderer","constructor","view","props","deck","setup","context","gl","call","on","deckInstance","setProps","toJSON","dispose","redraw","requestRender","width","height","size","viewState","latitude","center","longitude","altitude","camera","zoom","bearing","heading","pitch","tilt"],"mappings":"AAEA,SAAQA,mBAAR,EAA6BC,MAA7B,EAAqCC,iBAArC,QAA6D,WAA7D;;AAGA,SAASC,uBAAT,CAAiCC,GAAjC,EAAsCC,WAAtC,EAAmD;AACjD,QAAMC,CAAC,GAAGC,IAAI,CAACC,IAAL,CAAU,IAAIH,WAAW,IAAI,CAA7B,CAAV;AACA,QAAMI,OAAO,GAAIL,GAAG,GAAG,CAAN,GAAU,GAAX,GAAkBG,IAAI,CAACG,EAAvC;AACA,SAAOJ,CAAC,GAAG,CAAJ,GAAQC,IAAI,CAACI,GAAL,CAASF,OAAT,CAAf;AACD;;AAED,eAAe,SAASG,kBAAT,CAA4BC,SAA5B,EAAuCC,iBAAvC,EAA0D;AACvE,QAAMC,YAAN,CAAmB;AACjBC,IAAAA,WAAW,CAACC,IAAD,EAAOC,KAAP,EAAc;AACvB,WAAKD,IAAL,GAAYA,IAAZ;AACA,WAAKE,IAAL,GAAY,IAAIN,SAAJ,CAAcK,KAAd,CAAZ;AACD;;AAEDE,IAAAA,KAAK,CAACC,OAAD,EAAU;AACb,YAAMC,EAAE,GAAGD,OAAO,CAACC,EAAnB;AACAtB,MAAAA,mBAAmB,CAACuB,IAApB,CAAyB,IAAzB,EAA+BD,EAA/B;AAEA,WAAKH,IAAL,CAAUK,EAAV,CAAa,QAAb,EAAuBN,KAAK,IAAI,KAAKO,YAAL,CAAkBC,QAAlB,CAA2BR,KAA3B,CAAhC;AAEA,WAAKO,YAAL,CAAkBC,QAAlB,CAA2B,KAAKP,IAAL,CAAUQ,MAAV,EAA3B;AACD;;AAEDC,IAAAA,OAAO,GAAG;AACR1B,MAAAA,iBAAiB,CAACqB,IAAlB,CAAuB,IAAvB;AACD;;AAEDM,IAAAA,MAAM,GAAG;AACPf,MAAAA,iBAAiB,CAACgB,aAAlB,CAAgC,KAAKb,IAArC;AACD;;AAEDhB,IAAAA,MAAM,CAACoB,OAAD,EAAU;AACd,YAAM,CAACU,KAAD,EAAQC,MAAR,IAAkB,KAAKf,IAAL,CAAUgB,IAAlC;AAEAhC,MAAAA,MAAM,CAACsB,IAAP,CAAY,IAAZ,EAAkB;AAChBD,QAAAA,EAAE,EAAED,OAAO,CAACC,EADI;AAEhBS,QAAAA,KAFgB;AAGhBC,QAAAA,MAHgB;AAIhBE,QAAAA,SAAS,EAAE;AACTC,UAAAA,QAAQ,EAAE,KAAKlB,IAAL,CAAUmB,MAAV,CAAiBD,QADlB;AAETE,UAAAA,SAAS,EAAE,KAAKpB,IAAL,CAAUmB,MAAV,CAAiBC,SAFnB;AAGTC,UAAAA,QAAQ,EAAEnC,uBAAuB,CAAC,KAAKc,IAAL,CAAUsB,MAAV,CAAiBnC,GAAlB,EAAuB2B,KAAK,GAAGC,MAA/B,CAHxB;AAITQ,UAAAA,IAAI,EAAE,KAAKvB,IAAL,CAAUuB,IAJP;AAKTC,UAAAA,OAAO,EAAE,KAAKxB,IAAL,CAAUsB,MAAV,CAAiBG,OALjB;AAMTC,UAAAA,KAAK,EAAE,KAAK1B,IAAL,CAAUsB,MAAV,CAAiBK;AANf;AAJK,OAAlB;AAaD;;AAvCgB;;AA0CnB,SAAO7B,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/esm/index.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
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 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);
|
|
14
|
-
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
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"}
|
package/dist/esm/load-modules.js
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|