@deck.gl/arcgis 8.9.0-alpha.5 → 8.9.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/dist.dev.js CHANGED
@@ -1,447 +1,354 @@
1
- (function webpackUniversalModuleDefinition(root, factory) {
2
- if(typeof exports === 'object' && typeof module === 'object')
3
- module.exports = factory(require("deck"), require("luma"));
4
- else if(typeof define === 'function' && define.amd)
5
- define(["deck", "luma"], factory);
6
- else if(typeof exports === 'object')
7
- exports["deck"] = factory(require("deck"), require("luma"));
8
- else
9
- root["deck"] = factory(root["deck"], root["luma"]);
10
- })(window, function(__WEBPACK_EXTERNAL_MODULE__deck_gl_core__, __WEBPACK_EXTERNAL_MODULE__luma_gl_core__) {
11
- return /******/ (function(modules) { // webpackBootstrap
12
- /******/ // The module cache
13
- /******/ var installedModules = {};
14
- /******/
15
- /******/ // The require function
16
- /******/ function __webpack_require__(moduleId) {
17
- /******/
18
- /******/ // Check if module is in cache
19
- /******/ if(installedModules[moduleId]) {
20
- /******/ return installedModules[moduleId].exports;
21
- /******/ }
22
- /******/ // Create a new module (and put it into the cache)
23
- /******/ var module = installedModules[moduleId] = {
24
- /******/ i: moduleId,
25
- /******/ l: false,
26
- /******/ exports: {}
27
- /******/ };
28
- /******/
29
- /******/ // Execute the module function
30
- /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
31
- /******/
32
- /******/ // Flag the module as loaded
33
- /******/ module.l = true;
34
- /******/
35
- /******/ // Return the exports of the module
36
- /******/ return module.exports;
37
- /******/ }
38
- /******/
39
- /******/
40
- /******/ // expose the modules object (__webpack_modules__)
41
- /******/ __webpack_require__.m = modules;
42
- /******/
43
- /******/ // expose the module cache
44
- /******/ __webpack_require__.c = installedModules;
45
- /******/
46
- /******/ // define getter function for harmony exports
47
- /******/ __webpack_require__.d = function(exports, name, getter) {
48
- /******/ if(!__webpack_require__.o(exports, name)) {
49
- /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
50
- /******/ }
51
- /******/ };
52
- /******/
53
- /******/ // define __esModule on exports
54
- /******/ __webpack_require__.r = function(exports) {
55
- /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
56
- /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
57
- /******/ }
58
- /******/ Object.defineProperty(exports, '__esModule', { value: true });
59
- /******/ };
60
- /******/
61
- /******/ // create a fake namespace object
62
- /******/ // mode & 1: value is a module id, require it
63
- /******/ // mode & 2: merge all properties of value into the ns
64
- /******/ // mode & 4: return value when already ns object
65
- /******/ // mode & 8|1: behave like require
66
- /******/ __webpack_require__.t = function(value, mode) {
67
- /******/ if(mode & 1) value = __webpack_require__(value);
68
- /******/ if(mode & 8) return value;
69
- /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
70
- /******/ var ns = Object.create(null);
71
- /******/ __webpack_require__.r(ns);
72
- /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
73
- /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
74
- /******/ return ns;
75
- /******/ };
76
- /******/
77
- /******/ // getDefaultExport function for compatibility with non-harmony modules
78
- /******/ __webpack_require__.n = function(module) {
79
- /******/ var getter = module && module.__esModule ?
80
- /******/ function getDefault() { return module['default']; } :
81
- /******/ function getModuleExports() { return module; };
82
- /******/ __webpack_require__.d(getter, 'a', getter);
83
- /******/ return getter;
84
- /******/ };
85
- /******/
86
- /******/ // Object.prototype.hasOwnProperty.call
87
- /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
88
- /******/
89
- /******/ // __webpack_public_path__
90
- /******/ __webpack_require__.p = "";
91
- /******/
92
- /******/
93
- /******/ // Load entry module and return exports
94
- /******/ return __webpack_require__(__webpack_require__.s = "./bundle.ts");
95
- /******/ })
96
- /************************************************************************/
97
- /******/ ({
98
-
99
- /***/ "../../node_modules/esri-loader/dist/umd/esri-loader.js":
100
- /*!***********************************************************************************!*\
101
- !*** /Users/alasarr/dev/deck.gl/node_modules/esri-loader/dist/umd/esri-loader.js ***!
102
- \***********************************************************************************/
103
- /*! no static exports found */
104
- /***/ (function(module, exports, __webpack_require__) {
105
-
106
- (function (global, factory) {
107
- true ? factory(exports) :
108
- undefined;
109
- }(this, (function (exports) { 'use strict';
110
-
111
- /* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
112
- * Apache-2.0 */
113
- var isBrowser = typeof window !== 'undefined';
114
- // allow consuming libraries to provide their own Promise implementations
115
- var utils = {
116
- Promise: isBrowser ? window['Promise'] : undefined
117
- };
118
-
119
- /* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
120
- * Apache-2.0 */
121
- var DEFAULT_VERSION = '4.21';
122
- var NEXT = 'next';
123
- function parseVersion(version) {
124
- if (version.toLowerCase() === NEXT) {
125
- return NEXT;
126
- }
127
- var match = version && version.match(/^(\d)\.(\d+)/);
128
- return match && {
129
- major: parseInt(match[1], 10),
130
- minor: parseInt(match[2], 10)
131
- };
132
- }
133
- /**
134
- * Get the CDN url for a given version
135
- *
136
- * @param version Ex: '4.21' or '3.38'. Defaults to the latest 4.x version.
137
- */
138
- function getCdnUrl(version) {
139
- if (version === void 0) { version = DEFAULT_VERSION; }
140
- return "https://js.arcgis.com/" + version + "/";
141
- }
142
- /**
143
- * Get the CDN url for a the CSS for a given version and/or theme
144
- *
145
- * @param version Ex: '4.21', '3.38', or 'next'. Defaults to the latest 4.x version.
146
- */
147
- function getCdnCssUrl(version) {
148
- if (version === void 0) { version = DEFAULT_VERSION; }
149
- var baseUrl = getCdnUrl(version);
150
- var parsedVersion = parseVersion(version);
151
- if (parsedVersion !== NEXT && parsedVersion.major === 3) {
152
- // NOTE: at 3.11 the CSS moved from the /js folder to the root
153
- var path = parsedVersion.minor <= 10 ? 'js/' : '';
154
- return "" + baseUrl + path + "esri/css/esri.css";
1
+ "use strict";
2
+ var deck = (() => {
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __commonJS = (cb, mod) => function __require() {
10
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
11
+ };
12
+ var __export = (target, all) => {
13
+ for (var name in all)
14
+ __defProp(target, name, { get: all[name], enumerable: true });
15
+ };
16
+ var __copyProps = (to, from, except, desc) => {
17
+ if (from && typeof from === "object" || typeof from === "function") {
18
+ for (let key of __getOwnPropNames(from))
19
+ if (!__hasOwnProp.call(to, key) && key !== except)
20
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
155
21
  }
156
- else {
157
- // assume 4.x
158
- return baseUrl + "esri/themes/light/main.css";
22
+ return to;
23
+ };
24
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
25
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+
31
+ // external-global-plugin:@deck.gl/core
32
+ var require_core = __commonJS({
33
+ "external-global-plugin:@deck.gl/core"(exports, module) {
34
+ module.exports = globalThis.deck;
159
35
  }
160
- }
36
+ });
161
37
 
162
- /* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
163
- * Apache-2.0 */
164
- function createStylesheetLink(href) {
165
- var link = document.createElement('link');
166
- link.rel = 'stylesheet';
167
- link.href = href;
168
- return link;
169
- }
170
- function insertLink(link, before) {
171
- if (before) {
172
- // the link should be inserted before a specific node
173
- var beforeNode = document.querySelector(before);
174
- beforeNode.parentNode.insertBefore(link, beforeNode);
175
- }
176
- else {
177
- // append the link to then end of the head tag
178
- document.head.appendChild(link);
38
+ // external-global-plugin:@luma.gl/core
39
+ var require_core2 = __commonJS({
40
+ "external-global-plugin:@luma.gl/core"(exports, module) {
41
+ module.exports = globalThis.luma;
179
42
  }
180
- }
181
- // check if the css url has been injected or added manually
182
- function getCss(url) {
183
- return document.querySelector("link[href*=\"" + url + "\"]");
184
- }
185
- function getCssUrl(urlOrVersion) {
186
- return !urlOrVersion || parseVersion(urlOrVersion)
187
- // if it's a valid version string return the CDN URL
188
- ? getCdnCssUrl(urlOrVersion)
189
- // otherwise assume it's a URL and return that
190
- : urlOrVersion;
191
- }
192
- // lazy load the CSS needed for the ArcGIS API
193
- function loadCss(urlOrVersion, before) {
194
- var url = getCssUrl(urlOrVersion);
195
- var link = getCss(url);
196
- if (!link) {
197
- // create & load the css link
198
- link = createStylesheetLink(url);
199
- insertLink(link, before);
200
- }
201
- return link;
202
- }
43
+ });
203
44
 
204
- /* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
205
- * Apache-2.0 */
206
- var defaultOptions = {};
207
- function createScript(url) {
208
- var script = document.createElement('script');
209
- script.type = 'text/javascript';
210
- script.src = url;
211
- script.setAttribute('data-esri-loader', 'loading');
212
- return script;
213
- }
214
- // add a one-time load handler to script
215
- // and optionally add a one time error handler as well
216
- function handleScriptLoad(script, callback, errback) {
217
- var onScriptError;
218
- if (errback) {
219
- // set up an error handler as well
220
- onScriptError = handleScriptError(script, errback);
221
- }
222
- var onScriptLoad = function () {
223
- // pass the script to the callback
224
- callback(script);
225
- // remove this event listener
226
- script.removeEventListener('load', onScriptLoad, false);
227
- if (onScriptError) {
228
- // remove the error listener as well
229
- script.removeEventListener('error', onScriptError, false);
45
+ // ../../node_modules/esri-loader/dist/umd/esri-loader.js
46
+ var require_esri_loader = __commonJS({
47
+ "../../node_modules/esri-loader/dist/umd/esri-loader.js"(exports, module) {
48
+ (function(global, factory) {
49
+ typeof exports === "object" && typeof module !== "undefined" ? factory(exports) : typeof define === "function" && define.amd ? define(["exports"], factory) : factory(global.esriLoader = global.esriLoader || {});
50
+ })(exports, function(exports2) {
51
+ "use strict";
52
+ var isBrowser = typeof window !== "undefined";
53
+ var utils = {
54
+ Promise: isBrowser ? window["Promise"] : void 0
55
+ };
56
+ var DEFAULT_VERSION = "4.21";
57
+ var NEXT = "next";
58
+ function parseVersion(version) {
59
+ if (version.toLowerCase() === NEXT) {
60
+ return NEXT;
61
+ }
62
+ var match = version && version.match(/^(\d)\.(\d+)/);
63
+ return match && {
64
+ major: parseInt(match[1], 10),
65
+ minor: parseInt(match[2], 10)
66
+ };
230
67
  }
231
- };
232
- script.addEventListener('load', onScriptLoad, false);
233
- }
234
- // add a one-time error handler to the script
235
- function handleScriptError(script, callback) {
236
- var onScriptError = function (e) {
237
- // reject the promise and remove this event listener
238
- callback(e.error || new Error("There was an error attempting to load " + script.src));
239
- // remove this event listener
240
- script.removeEventListener('error', onScriptError, false);
241
- };
242
- script.addEventListener('error', onScriptError, false);
243
- return onScriptError;
244
- }
245
- // allow the user to configure default script options rather than passing options to `loadModules` each time
246
- function setDefaultOptions(options) {
247
- if (options === void 0) { options = {}; }
248
- defaultOptions = options;
249
- }
250
- // get the script injected by this library
251
- function getScript() {
252
- return document.querySelector('script[data-esri-loader]');
253
- }
254
- // has ArcGIS API been loaded on the page yet?
255
- function isLoaded() {
256
- var globalRequire = window['require'];
257
- // .on() ensures that it's Dojo's AMD loader
258
- return globalRequire && globalRequire.on;
259
- }
260
- // load the ArcGIS API on the page
261
- function loadScript(options) {
262
- if (options === void 0) { options = {}; }
263
- // we would have liked to use spread like { ...defaultOptions, ...options }
264
- // but TS would inject a polyfill that would require use to configure rollup w content: 'window'
265
- // if we have another occasion to use spread, let's do that and replace this for...in
266
- var opts = {};
267
- [defaultOptions, options].forEach(function (obj) {
268
- for (var prop in obj) {
269
- if (Object.prototype.hasOwnProperty.call(obj, prop)) {
270
- opts[prop] = obj[prop];
68
+ function getCdnUrl(version) {
69
+ if (version === void 0) {
70
+ version = DEFAULT_VERSION;
71
+ }
72
+ return "https://js.arcgis.com/" + version + "/";
73
+ }
74
+ function getCdnCssUrl(version) {
75
+ if (version === void 0) {
76
+ version = DEFAULT_VERSION;
77
+ }
78
+ var baseUrl = getCdnUrl(version);
79
+ var parsedVersion = parseVersion(version);
80
+ if (parsedVersion !== NEXT && parsedVersion.major === 3) {
81
+ var path = parsedVersion.minor <= 10 ? "js/" : "";
82
+ return "" + baseUrl + path + "esri/css/esri.css";
83
+ } else {
84
+ return baseUrl + "esri/themes/light/main.css";
85
+ }
86
+ }
87
+ function createStylesheetLink(href) {
88
+ var link = document.createElement("link");
89
+ link.rel = "stylesheet";
90
+ link.href = href;
91
+ return link;
92
+ }
93
+ function insertLink(link, before) {
94
+ if (before) {
95
+ var beforeNode = document.querySelector(before);
96
+ beforeNode.parentNode.insertBefore(link, beforeNode);
97
+ } else {
98
+ document.head.appendChild(link);
99
+ }
100
+ }
101
+ function getCss(url) {
102
+ return document.querySelector('link[href*="' + url + '"]');
103
+ }
104
+ function getCssUrl(urlOrVersion) {
105
+ return !urlOrVersion || parseVersion(urlOrVersion) ? getCdnCssUrl(urlOrVersion) : urlOrVersion;
106
+ }
107
+ function loadCss(urlOrVersion, before) {
108
+ var url = getCssUrl(urlOrVersion);
109
+ var link = getCss(url);
110
+ if (!link) {
111
+ link = createStylesheetLink(url);
112
+ insertLink(link, before);
113
+ }
114
+ return link;
115
+ }
116
+ var defaultOptions = {};
117
+ function createScript(url) {
118
+ var script = document.createElement("script");
119
+ script.type = "text/javascript";
120
+ script.src = url;
121
+ script.setAttribute("data-esri-loader", "loading");
122
+ return script;
123
+ }
124
+ function handleScriptLoad(script, callback, errback) {
125
+ var onScriptError;
126
+ if (errback) {
127
+ onScriptError = handleScriptError(script, errback);
128
+ }
129
+ var onScriptLoad = function() {
130
+ callback(script);
131
+ script.removeEventListener("load", onScriptLoad, false);
132
+ if (onScriptError) {
133
+ script.removeEventListener("error", onScriptError, false);
271
134
  }
135
+ };
136
+ script.addEventListener("load", onScriptLoad, false);
272
137
  }
273
- });
274
- // URL to load
275
- var version = opts.version;
276
- var url = opts.url || getCdnUrl(version);
277
- return new utils.Promise(function (resolve, reject) {
278
- var script = getScript();
279
- if (script) {
280
- // the API is already loaded or in the process of loading...
281
- // NOTE: have to test against scr attribute value, not script.src
282
- // b/c the latter will return the full url for relative paths
283
- var src = script.getAttribute('src');
284
- if (src !== url) {
285
- // potentially trying to load a different version of the API
286
- reject(new Error("The ArcGIS API for JavaScript is already loaded (" + src + ")."));
138
+ function handleScriptError(script, callback) {
139
+ var onScriptError = function(e) {
140
+ callback(e.error || new Error("There was an error attempting to load " + script.src));
141
+ script.removeEventListener("error", onScriptError, false);
142
+ };
143
+ script.addEventListener("error", onScriptError, false);
144
+ return onScriptError;
145
+ }
146
+ function setDefaultOptions(options) {
147
+ if (options === void 0) {
148
+ options = {};
149
+ }
150
+ defaultOptions = options;
151
+ }
152
+ function getScript() {
153
+ return document.querySelector("script[data-esri-loader]");
154
+ }
155
+ function isLoaded() {
156
+ var globalRequire = window["require"];
157
+ return globalRequire && globalRequire.on;
158
+ }
159
+ function loadScript(options) {
160
+ if (options === void 0) {
161
+ options = {};
162
+ }
163
+ var opts = {};
164
+ [defaultOptions, options].forEach(function(obj) {
165
+ for (var prop in obj) {
166
+ if (Object.prototype.hasOwnProperty.call(obj, prop)) {
167
+ opts[prop] = obj[prop];
168
+ }
287
169
  }
288
- else {
170
+ });
171
+ var version = opts.version;
172
+ var url = opts.url || getCdnUrl(version);
173
+ return new utils.Promise(function(resolve, reject) {
174
+ var script = getScript();
175
+ if (script) {
176
+ var src = script.getAttribute("src");
177
+ if (src !== url) {
178
+ reject(new Error("The ArcGIS API for JavaScript is already loaded (" + src + ")."));
179
+ } else {
289
180
  if (isLoaded()) {
290
- // the script has already successfully loaded
291
- resolve(script);
292
- }
293
- else {
294
- // wait for the script to load and then resolve
295
- handleScriptLoad(script, resolve, reject);
181
+ resolve(script);
182
+ } else {
183
+ handleScriptLoad(script, resolve, reject);
296
184
  }
297
- }
298
- }
299
- else {
300
- if (isLoaded()) {
301
- // the API has been loaded by some other means
302
- // potentially trying to load a different version of the API
185
+ }
186
+ } else {
187
+ if (isLoaded()) {
303
188
  reject(new Error("The ArcGIS API for JavaScript is already loaded."));
304
- }
305
- else {
306
- // this is the first time attempting to load the API
189
+ } else {
307
190
  var css = opts.css;
308
191
  if (css) {
309
- var useVersion = css === true;
310
- // load the css before loading the script
311
- loadCss(useVersion ? version : css, opts.insertCssBefore);
192
+ var useVersion = css === true;
193
+ loadCss(useVersion ? version : css, opts.insertCssBefore);
312
194
  }
313
- // create a script object whose source points to the API
314
195
  script = createScript(url);
315
- // _currentUrl = url;
316
- // once the script is loaded...
317
- handleScriptLoad(script, function () {
318
- // update the status of the script
319
- script.setAttribute('data-esri-loader', 'loaded');
320
- // return the script
321
- resolve(script);
196
+ handleScriptLoad(script, function() {
197
+ script.setAttribute("data-esri-loader", "loaded");
198
+ resolve(script);
322
199
  }, reject);
323
- // load the script
324
200
  document.body.appendChild(script);
201
+ }
325
202
  }
203
+ });
326
204
  }
327
- });
328
- }
329
-
330
- /* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
331
- * Apache-2.0 */
332
- // wrap Dojo's require() in a promise
333
- function requireModules(modules) {
334
- return new utils.Promise(function (resolve, reject) {
335
- // If something goes wrong loading the esri/dojo scripts, reject with the error.
336
- var errorHandler = window['require'].on('error', reject);
337
- window['require'](modules, function () {
338
- var args = [];
339
- for (var _i = 0; _i < arguments.length; _i++) {
205
+ function requireModules(modules) {
206
+ return new utils.Promise(function(resolve, reject) {
207
+ var errorHandler = window["require"].on("error", reject);
208
+ window["require"](modules, function() {
209
+ var args = [];
210
+ for (var _i = 0; _i < arguments.length; _i++) {
340
211
  args[_i] = arguments[_i];
212
+ }
213
+ errorHandler.remove();
214
+ resolve(args);
215
+ });
216
+ });
217
+ }
218
+ function loadModules(modules, loadScriptOptions) {
219
+ if (loadScriptOptions === void 0) {
220
+ loadScriptOptions = {};
221
+ }
222
+ if (!isLoaded()) {
223
+ var script = getScript();
224
+ var src = script && script.getAttribute("src");
225
+ if (!loadScriptOptions.url && src) {
226
+ loadScriptOptions.url = src;
341
227
  }
342
- // remove error handler
343
- errorHandler.remove();
344
- // Resolve with the parameters from dojo require as an array.
345
- resolve(args);
346
- });
347
- });
348
- }
349
- // returns a promise that resolves with an array of the required modules
350
- // also will attempt to lazy load the ArcGIS API if it has not already been loaded
351
- function loadModules(modules, loadScriptOptions) {
352
- if (loadScriptOptions === void 0) { loadScriptOptions = {}; }
353
- if (!isLoaded()) {
354
- // script is not yet loaded, is it in the process of loading?
355
- var script = getScript();
356
- var src = script && script.getAttribute('src');
357
- if (!loadScriptOptions.url && src) {
358
- // script is still loading and user did not specify a URL
359
- // in this case we want to default to the URL that's being loaded
360
- // instead of defaulting to the latest 4.x URL
361
- loadScriptOptions.url = src;
228
+ return loadScript(loadScriptOptions).then(function() {
229
+ return requireModules(modules);
230
+ });
231
+ } else {
232
+ return requireModules(modules);
233
+ }
362
234
  }
363
- // attempt to load the script then load the modules
364
- return loadScript(loadScriptOptions).then(function () { return requireModules(modules); });
365
- }
366
- else {
367
- // script is already loaded, just load the modules
368
- return requireModules(modules);
235
+ exports2.utils = utils;
236
+ exports2.loadModules = loadModules;
237
+ exports2.getScript = getScript;
238
+ exports2.isLoaded = isLoaded;
239
+ exports2.loadScript = loadScript;
240
+ exports2.setDefaultOptions = setDefaultOptions;
241
+ exports2.loadCss = loadCss;
242
+ Object.defineProperty(exports2, "__esModule", { value: true });
243
+ });
369
244
  }
370
- }
371
-
372
- /*
373
- Copyright (c) 2017 Esri
374
- Licensed under the Apache License, Version 2.0 (the "License");
375
- you may not use this file except in compliance with the License.
376
- You may obtain a copy of the License at
377
- http://www.apache.org/licenses/LICENSE-2.0
378
- Unless required by applicable law or agreed to in writing, software
379
- distributed under the License is distributed on an "AS IS" BASIS,
380
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
381
- See the License for the specific language governing permissions and
382
- limitations under the License.
383
- */
384
- // re-export the functions that are part of the public API
385
-
386
- exports.utils = utils;
387
- exports.loadModules = loadModules;
388
- exports.getScript = getScript;
389
- exports.isLoaded = isLoaded;
390
- exports.loadScript = loadScript;
391
- exports.setDefaultOptions = setDefaultOptions;
392
- exports.loadCss = loadCss;
393
-
394
- Object.defineProperty(exports, '__esModule', { value: true });
395
-
396
- })));
397
- //# sourceMappingURL=esri-loader.js.map
398
-
399
-
400
- /***/ }),
401
-
402
- /***/ "./bundle.ts":
403
- /*!*******************!*\
404
- !*** ./bundle.ts ***!
405
- \*******************/
406
- /*! no static exports found */
407
- /***/ (function(module, exports, __webpack_require__) {
408
-
409
- const ArcGISUtils = __webpack_require__(/*! ./src/load-modules */ "./src/load-modules.js");
410
-
411
- const deck = globalThis.deck || {}; // Check if peer dependencies are included
412
-
413
- if (!deck.Layer) {
414
- throw new Error('@deck.gl/core is not found');
415
- }
416
-
417
- module.exports = Object.assign(deck, ArcGISUtils);
245
+ });
418
246
 
419
- /***/ }),
247
+ // bundle.ts
248
+ var bundle_exports = {};
249
+ __export(bundle_exports, {
250
+ loadArcGISModules: () => loadArcGISModules
251
+ });
420
252
 
421
- /***/ "./src/commons.js":
422
- /*!************************!*\
423
- !*** ./src/commons.js ***!
424
- \************************/
425
- /*! exports provided: initializeResources, render, finalizeResources */
426
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
253
+ // ../core/bundle/peer-dependency.ts
254
+ var peer_dependency_exports = {};
255
+ var import_core = __toESM(require_core());
256
+ __reExport(peer_dependency_exports, __toESM(require_core()));
257
+ if (!import_core.Layer) {
258
+ throw new Error("@deck.gl/core is not found");
259
+ }
427
260
 
428
- "use strict";
429
- __webpack_require__.r(__webpack_exports__);
430
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "initializeResources", function() { return initializeResources; });
431
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
432
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "finalizeResources", function() { return finalizeResources; });
433
- /* harmony import */ var _deck_gl_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @deck.gl/core */ "@deck.gl/core");
434
- /* harmony import */ var _deck_gl_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_deck_gl_core__WEBPACK_IMPORTED_MODULE_0__);
435
- /* harmony import */ var _luma_gl_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @luma.gl/core */ "@luma.gl/core");
436
- /* harmony import */ var _luma_gl_core__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_luma_gl_core__WEBPACK_IMPORTED_MODULE_1__);
437
- /* eslint-disable no-invalid-this */
261
+ // bundle.ts
262
+ __reExport(bundle_exports, peer_dependency_exports);
263
+
264
+ // src/deck-props.js
265
+ var properties = {
266
+ layers: {},
267
+ layerFilter: {},
268
+ parameters: {},
269
+ effects: {},
270
+ pickingRadius: {},
271
+ onBeforeRender: {},
272
+ onAfterRender: {},
273
+ onClick: {},
274
+ onHover: {},
275
+ onDragStart: {},
276
+ onDrag: {},
277
+ onDragEnd: {},
278
+ onError: {},
279
+ debug: {},
280
+ drawPickingColors: {},
281
+ getCursor: {},
282
+ getTooltip: {}
283
+ };
284
+ function createDeckProps(Accessor) {
285
+ const DeckProps = Accessor.createSubclass({
286
+ properties,
287
+ constructor() {
288
+ this._callbacks = {};
289
+ this.watch(Object.keys(properties), (newValue, oldValue, propName) => {
290
+ this.emit("change", {
291
+ [propName]: newValue
292
+ });
293
+ });
294
+ },
295
+ on(eventName, cb) {
296
+ this._callbacks[eventName] = this._callbacks[eventName] || [];
297
+ this._callbacks[eventName].push(cb);
298
+ },
299
+ emit(eventName, details) {
300
+ const callbacks = this._callbacks[eventName];
301
+ if (callbacks) {
302
+ for (const cb of callbacks) {
303
+ cb(details);
304
+ }
305
+ }
306
+ },
307
+ toJSON() {
308
+ const result = {};
309
+ for (const key of this.keys()) {
310
+ if (this[key] !== void 0) {
311
+ result[key] = this[key];
312
+ }
313
+ }
314
+ return result;
315
+ }
316
+ });
317
+ return DeckProps;
318
+ }
438
319
 
320
+ // src/deck-layer.js
321
+ function createDeckLayer(DeckProps, Layer2, DeckLayerView2D) {
322
+ return Layer2.createSubclass({
323
+ properties: {
324
+ deck: {},
325
+ blendMode: {},
326
+ effect: {}
327
+ },
328
+ constructor() {
329
+ this.deck = new DeckProps();
330
+ },
331
+ createLayerView(view) {
332
+ if (view.type === "2d") {
333
+ return new DeckLayerView2D({
334
+ view,
335
+ layer: this
336
+ });
337
+ }
338
+ console.error("DeckLayer does not support SceneView at the moment. Use DeckRenderer instead.");
339
+ return null;
340
+ }
341
+ });
342
+ }
439
343
 
440
- function initializeResources(gl) {
441
- Object(_luma_gl_core__WEBPACK_IMPORTED_MODULE_1__["instrumentGLContext"])(gl);
442
- this.buffer = new _luma_gl_core__WEBPACK_IMPORTED_MODULE_1__["Buffer"](gl, new Int8Array([-1, -1, 1, -1, -1, 1, 1, 1]));
443
- this.model = new _luma_gl_core__WEBPACK_IMPORTED_MODULE_1__["Model"](gl, {
444
- vs: `
344
+ // src/commons.js
345
+ var import_core2 = __toESM(require_core());
346
+ var import_core3 = __toESM(require_core2());
347
+ function initializeResources(gl) {
348
+ (0, import_core3.instrumentGLContext)(gl);
349
+ this.buffer = new import_core3.Buffer(gl, new Int8Array([-1, -1, 1, -1, -1, 1, 1, 1]));
350
+ this.model = new import_core3.Model(gl, {
351
+ vs: `
445
352
  attribute vec2 a_pos;
446
353
  varying vec2 v_texcoord;
447
354
  void main(void) {
@@ -449,7 +356,7 @@ function initializeResources(gl) {
449
356
  v_texcoord = (a_pos + 1.0) / 2.0;
450
357
  }
451
358
  `,
452
- fs: `
359
+ fs: `
453
360
  precision mediump float;
454
361
  uniform sampler2D u_texture;
455
362
  varying vec2 v_texcoord;
@@ -459,431 +366,197 @@ function initializeResources(gl) {
459
366
  gl_FragColor = rgba;
460
367
  }
461
368
  `,
462
- attributes: {
463
- a_pos: this.buffer
464
- },
465
- vertexCount: 4,
466
- drawMode: gl.TRIANGLE_STRIP
467
- });
468
- this.deckFbo = new _luma_gl_core__WEBPACK_IMPORTED_MODULE_1__["Framebuffer"](gl, {
469
- width: 1,
470
- height: 1
471
- });
472
- this.deckInstance = new _deck_gl_core__WEBPACK_IMPORTED_MODULE_0__["Deck"]({
473
- // The view state will be set dynamically to track the MapView current extent.
474
- viewState: {},
475
- // Input is handled by the ArcGIS API for JavaScript.
476
- controller: false,
477
- // We use the same WebGL context as the ArcGIS API for JavaScript.
478
- gl,
479
- // We need depth testing in general; we don't know what layers might be added to the deck.
480
- parameters: {
481
- depthTest: true
482
- },
483
- // This deck renders into an auxiliary framebuffer.
484
- _framebuffer: this.deckFbo,
485
- // To disable canvas resizing, since the FBO is owned by the ArcGIS API for JavaScript.
486
- width: null,
487
- height: null,
488
- _customRender: redrawReason => {
489
- if (redrawReason === 'arcgis') {
490
- this.deckInstance._drawLayers(redrawReason);
491
- } else {
492
- this.redraw();
369
+ attributes: {
370
+ a_pos: this.buffer
371
+ },
372
+ vertexCount: 4,
373
+ drawMode: gl.TRIANGLE_STRIP
374
+ });
375
+ this.deckFbo = new import_core3.Framebuffer(gl, {
376
+ width: 1,
377
+ height: 1
378
+ });
379
+ this.deckInstance = new import_core2.Deck({
380
+ viewState: {},
381
+ controller: false,
382
+ gl,
383
+ parameters: {
384
+ depthTest: true
385
+ },
386
+ _framebuffer: this.deckFbo,
387
+ width: null,
388
+ height: null,
389
+ _customRender: (redrawReason) => {
390
+ if (redrawReason === "arcgis") {
391
+ this.deckInstance._drawLayers(redrawReason);
392
+ } else {
393
+ this.redraw();
394
+ }
493
395
  }
494
- }
495
- });
496
- }
497
- function render({
498
- gl,
499
- width,
500
- height,
501
- viewState
502
- }) {
503
- const screenFbo = gl.getParameter(gl.FRAMEBUFFER_BINDING);
504
- /* global window */
505
-
506
- const dpr = window.devicePixelRatio;
507
- width = Math.round(width * dpr);
508
- height = Math.round(height * dpr);
509
- this.deckFbo.resize({
396
+ });
397
+ }
398
+ function render({
399
+ gl,
510
400
  width,
511
- height
512
- });
513
- this.deckInstance.setProps({
401
+ height,
514
402
  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
- });
529
- }
530
- function finalizeResources() {
531
- this.deckInstance?.finalize();
532
- this.deckInstance = null;
533
- this.model?.delete();
534
- this.buffer?.delete();
535
- this.deckFbo?.delete();
536
- }
537
-
538
- /***/ }),
539
-
540
- /***/ "./src/deck-layer-view-2d.js":
541
- /*!***********************************!*\
542
- !*** ./src/deck-layer-view-2d.js ***!
543
- \***********************************/
544
- /*! exports provided: default */
545
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
546
-
547
- "use strict";
548
- __webpack_require__.r(__webpack_exports__);
549
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return createDeckLayerView2D; });
550
- /* harmony import */ var _commons__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./commons */ "./src/commons.js");
551
-
552
- function createDeckLayerView2D(BaseLayerViewGL2D) {
553
- return BaseLayerViewGL2D.createSubclass({
554
- properties: {
555
- deckgl: {},
556
- deckFbo: {},
557
- model: {},
558
- buffer: {}
559
- },
560
-
561
- // Attach is called as soon as the layer view is ready to start rendering.
562
- attach() {
563
- // We use a full-screen quad and shaders to composite the frame rendered
564
- // with deck.gl on top of the MapView. Composition uses the MapView context.
565
- const gl = this.context;
566
- _commons__WEBPACK_IMPORTED_MODULE_0__["initializeResources"].call(this, gl); // Update deck props
567
-
568
- this.layer.deck.on('change', props => this.deckInstance.setProps(props)); // We need to start drawing the deck.gl layer immediately.
569
-
570
- this.deckInstance.setProps(this.layer.deck.toJSON());
571
- },
572
-
573
- redraw() {
574
- this.requestRender();
575
- },
576
-
577
- // Called when the layer must be destroyed.
578
- detach() {
579
- _commons__WEBPACK_IMPORTED_MODULE_0__["finalizeResources"].call(this);
580
- },
581
-
582
- // Called every time that the layer view must be rendered.
583
- render(renderParameters) {
584
- const [width, height] = this.view.state.size; // The view state must be kept in-sync with the MapView of the ArcGIS API.
585
-
586
- const state = renderParameters.state;
587
- _commons__WEBPACK_IMPORTED_MODULE_0__["render"].call(this, {
588
- gl: renderParameters.context,
589
- width,
590
- height,
591
- viewState: {
592
- latitude: this.view.center.latitude,
593
- longitude: this.view.center.longitude,
594
- zoom: this.view.featuresTilingScheme.scaleToLevel(state.scale),
595
- bearing: -state.rotation,
596
- pitch: 0
597
- }
598
- });
599
- }
600
-
601
- });
602
- }
603
-
604
- /***/ }),
605
-
606
- /***/ "./src/deck-layer.js":
607
- /*!***************************!*\
608
- !*** ./src/deck-layer.js ***!
609
- \***************************/
610
- /*! exports provided: default */
611
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
612
-
613
- "use strict";
614
- __webpack_require__.r(__webpack_exports__);
615
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return createDeckLayer; });
616
- function createDeckLayer(DeckProps, Layer, DeckLayerView2D) {
617
- // A layer that displays inside a MapView using an instance
618
- // of the layer view defined above.
619
- return Layer.createSubclass({
620
- properties: {
621
- deck: {},
622
- blendMode: {},
623
- effect: {}
624
- },
625
-
626
- constructor() {
627
- this.deck = new DeckProps();
628
- },
629
-
630
- // Called by the MapView whenever a layer view
631
- // needs to be created for a given layer.
632
- createLayerView(view) {
633
- if (view.type === '2d') {
634
- return new DeckLayerView2D({
635
- view,
636
- layer: this
637
- });
638
- } // eslint-disable-next-line
639
-
640
-
641
- console.error('DeckLayer does not support SceneView at the moment. Use DeckRenderer instead.');
642
- return null;
643
- }
644
-
645
- });
646
- }
647
-
648
- /***/ }),
649
-
650
- /***/ "./src/deck-props.js":
651
- /*!***************************!*\
652
- !*** ./src/deck-props.js ***!
653
- \***************************/
654
- /*! exports provided: default */
655
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
656
-
657
- "use strict";
658
- __webpack_require__.r(__webpack_exports__);
659
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return createDeckProps; });
660
- const properties = {
661
- layers: {},
662
- layerFilter: {},
663
- parameters: {},
664
- effects: {},
665
- pickingRadius: {},
666
- onBeforeRender: {},
667
- onAfterRender: {},
668
- onClick: {},
669
- onHover: {},
670
- onDragStart: {},
671
- onDrag: {},
672
- onDragEnd: {},
673
- onError: {},
674
- debug: {},
675
- drawPickingColors: {},
676
- getCursor: {},
677
- getTooltip: {}
678
- };
679
- /* eslint-disable callback-return */
680
-
681
- function createDeckProps(Accessor) {
682
- const DeckProps = Accessor.createSubclass({
683
- properties,
403
+ }) {
404
+ const screenFbo = gl.getParameter(gl.FRAMEBUFFER_BINDING);
405
+ const dpr = window.devicePixelRatio;
406
+ width = Math.round(width * dpr);
407
+ height = Math.round(height * dpr);
408
+ this.deckFbo.resize({
409
+ width,
410
+ height
411
+ });
412
+ this.deckInstance.setProps({
413
+ viewState
414
+ });
415
+ this.deckInstance.redraw("arcgis");
416
+ (0, import_core3.withParameters)(gl, {
417
+ blend: true,
418
+ blendFunc: [gl.ONE, gl.ONE_MINUS_SRC_ALPHA],
419
+ framebuffer: screenFbo,
420
+ viewport: [0, 0, width, height]
421
+ }, () => {
422
+ this.model.setUniforms({
423
+ u_texture: this.deckFbo
424
+ }).draw();
425
+ });
426
+ }
427
+ function finalizeResources() {
428
+ this.deckInstance?.finalize();
429
+ this.deckInstance = null;
430
+ this.model?.delete();
431
+ this.buffer?.delete();
432
+ this.deckFbo?.delete();
433
+ }
684
434
 
685
- constructor() {
686
- this._callbacks = {};
687
- this.watch(Object.keys(properties), (newValue, oldValue, propName) => {
688
- this.emit('change', {
689
- [propName]: newValue
435
+ // src/deck-layer-view-2d.js
436
+ function createDeckLayerView2D(BaseLayerViewGL2D) {
437
+ return BaseLayerViewGL2D.createSubclass({
438
+ properties: {
439
+ deckgl: {},
440
+ deckFbo: {},
441
+ model: {},
442
+ buffer: {}
443
+ },
444
+ attach() {
445
+ const gl = this.context;
446
+ initializeResources.call(this, gl);
447
+ this.layer.deck.on("change", (props) => this.deckInstance.setProps(props));
448
+ this.deckInstance.setProps(this.layer.deck.toJSON());
449
+ },
450
+ redraw() {
451
+ this.requestRender();
452
+ },
453
+ detach() {
454
+ finalizeResources.call(this);
455
+ },
456
+ render(renderParameters) {
457
+ const [width, height] = this.view.state.size;
458
+ const state = renderParameters.state;
459
+ render.call(this, {
460
+ gl: renderParameters.context,
461
+ width,
462
+ height,
463
+ viewState: {
464
+ latitude: this.view.center.latitude,
465
+ longitude: this.view.center.longitude,
466
+ zoom: this.view.featuresTilingScheme.scaleToLevel(state.scale),
467
+ bearing: -state.rotation,
468
+ pitch: 0
469
+ }
690
470
  });
691
- });
692
- },
693
-
694
- on(eventName, cb) {
695
- this._callbacks[eventName] = this._callbacks[eventName] || [];
696
-
697
- this._callbacks[eventName].push(cb);
698
- },
699
-
700
- emit(eventName, details) {
701
- const callbacks = this._callbacks[eventName];
702
-
703
- if (callbacks) {
704
- for (const cb of callbacks) {
705
- cb(details);
706
- }
707
471
  }
708
- },
709
-
710
- toJSON() {
711
- const result = {};
472
+ });
473
+ }
712
474
 
713
- for (const key of this.keys()) {
714
- if (this[key] !== undefined) {
715
- result[key] = this[key];
716
- }
475
+ // src/deck-renderer.js
476
+ function arcgisFOVToDeckAltitude(fov, aspectRatio) {
477
+ const D = Math.sqrt(1 + aspectRatio ** 2);
478
+ const halfFOV = fov / 2 / 180 * Math.PI;
479
+ return D / 2 / Math.tan(halfFOV);
480
+ }
481
+ function createDeckRenderer(DeckProps, externalRenderers) {
482
+ class DeckRenderer {
483
+ constructor(view, props) {
484
+ this.view = view;
485
+ this.deck = new DeckProps(props);
486
+ }
487
+ setup(context) {
488
+ const gl = context.gl;
489
+ initializeResources.call(this, gl);
490
+ this.deck.on("change", (props) => this.deckInstance.setProps(props));
491
+ this.deckInstance.setProps(this.deck.toJSON());
492
+ }
493
+ dispose() {
494
+ finalizeResources.call(this);
495
+ }
496
+ redraw() {
497
+ externalRenderers.requestRender(this.view);
498
+ }
499
+ render(context) {
500
+ const [width, height] = this.view.size;
501
+ render.call(this, {
502
+ gl: context.gl,
503
+ width,
504
+ height,
505
+ viewState: {
506
+ latitude: this.view.center.latitude,
507
+ longitude: this.view.center.longitude,
508
+ altitude: arcgisFOVToDeckAltitude(this.view.camera.fov, width / height),
509
+ zoom: this.view.zoom,
510
+ bearing: this.view.camera.heading,
511
+ pitch: this.view.camera.tilt
512
+ }
513
+ });
717
514
  }
718
-
719
- return result;
720
- }
721
-
722
- });
723
- return DeckProps;
724
- }
725
-
726
- /***/ }),
727
-
728
- /***/ "./src/deck-renderer.js":
729
- /*!******************************!*\
730
- !*** ./src/deck-renderer.js ***!
731
- \******************************/
732
- /*! exports provided: default */
733
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
734
-
735
- "use strict";
736
- __webpack_require__.r(__webpack_exports__);
737
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return createDeckRenderer; });
738
- /* harmony import */ var _commons__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./commons */ "./src/commons.js");
739
- /* eslint-disable no-invalid-this */
740
- // ArcGIS fov is corner-to-corner
741
-
742
- function arcgisFOVToDeckAltitude(fov, aspectRatio) {
743
- const D = Math.sqrt(1 + aspectRatio ** 2);
744
- const halfFOV = fov / 2 / 180 * Math.PI;
745
- return D / 2 / Math.tan(halfFOV);
746
- }
747
-
748
- function createDeckRenderer(DeckProps, externalRenderers) {
749
- class DeckRenderer {
750
- constructor(view, props) {
751
- this.view = view;
752
- this.deck = new DeckProps(props);
753
- }
754
-
755
- setup(context) {
756
- const gl = context.gl;
757
- _commons__WEBPACK_IMPORTED_MODULE_0__["initializeResources"].call(this, gl);
758
- this.deck.on('change', props => this.deckInstance.setProps(props));
759
- this.deckInstance.setProps(this.deck.toJSON());
760
- }
761
-
762
- dispose() {
763
- _commons__WEBPACK_IMPORTED_MODULE_0__["finalizeResources"].call(this);
764
- }
765
-
766
- redraw() {
767
- externalRenderers.requestRender(this.view);
768
515
  }
516
+ return DeckRenderer;
517
+ }
769
518
 
770
- render(context) {
771
- const [width, height] = this.view.size;
772
- _commons__WEBPACK_IMPORTED_MODULE_0__["render"].call(this, {
773
- gl: context.gl,
774
- width,
775
- height,
776
- viewState: {
777
- latitude: this.view.center.latitude,
778
- longitude: this.view.center.longitude,
779
- altitude: arcgisFOVToDeckAltitude(this.view.camera.fov, width / height),
780
- zoom: this.view.zoom,
781
- bearing: this.view.camera.heading,
782
- pitch: this.view.camera.tilt
783
- }
519
+ // src/load-modules.js
520
+ var import_esri_loader = __toESM(require_esri_loader());
521
+ var arcGIS = null;
522
+ async function loadArcGISModules(modules, loadScriptOptions) {
523
+ const namespace = Array.isArray(modules) ? null : modules;
524
+ await loadArcGISModule(namespace, loadScriptOptions);
525
+ if (Array.isArray(modules)) {
526
+ return (0, import_esri_loader.loadModules)(modules, loadScriptOptions).then((array) => {
527
+ return {
528
+ ...arcGIS,
529
+ modules: array
530
+ };
784
531
  });
785
532
  }
786
-
533
+ return arcGIS;
787
534
  }
788
-
789
- return DeckRenderer;
790
- }
791
-
792
- /***/ }),
793
-
794
- /***/ "./src/load-modules.js":
795
- /*!*****************************!*\
796
- !*** ./src/load-modules.js ***!
797
- \*****************************/
798
- /*! exports provided: loadArcGISModules */
799
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
800
-
801
- "use strict";
802
- __webpack_require__.r(__webpack_exports__);
803
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "loadArcGISModules", function() { return loadArcGISModules; });
804
- /* harmony import */ var _deck_props__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./deck-props */ "./src/deck-props.js");
805
- /* harmony import */ var _deck_layer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./deck-layer */ "./src/deck-layer.js");
806
- /* harmony import */ var _deck_layer_view_2d__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./deck-layer-view-2d */ "./src/deck-layer-view-2d.js");
807
- /* harmony import */ var _deck_renderer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./deck-renderer */ "./src/deck-renderer.js");
808
- /* harmony import */ var esri_loader__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! esri-loader */ "../../node_modules/esri-loader/dist/umd/esri-loader.js");
809
- /* harmony import */ var esri_loader__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(esri_loader__WEBPACK_IMPORTED_MODULE_4__);
810
-
811
-
812
-
813
-
814
-
815
- let arcGIS = null;
816
- async function loadArcGISModules(modules, loadScriptOptions) {
817
- const namespace = Array.isArray(modules) ? null : modules;
818
- await loadArcGISModule(namespace, loadScriptOptions);
819
-
820
- if (Array.isArray(modules)) {
821
- return Object(esri_loader__WEBPACK_IMPORTED_MODULE_4__["loadModules"])(modules, loadScriptOptions).then(array => {
822
- return { ...arcGIS,
823
- modules: array
824
- };
535
+ function loadArcGISModule(esri, loadScriptOptions) {
536
+ if (arcGIS) {
537
+ return arcGIS;
538
+ }
539
+ if (esri) {
540
+ const Layer2 = esri.layers.Layer;
541
+ const Accessor = esri.core.Accessor;
542
+ const BaseLayerViewGL2D = esri.views["2d"].layers.BaseLayerViewGL2D;
543
+ const externalRenderers = esri.views["3d"].externalRenderers;
544
+ return initialize(Layer2, Accessor, BaseLayerViewGL2D, externalRenderers);
545
+ }
546
+ return (0, import_esri_loader.loadModules)(["esri/layers/Layer", "esri/core/Accessor", "esri/views/2d/layers/BaseLayerViewGL2D", "esri/views/3d/externalRenderers"], loadScriptOptions).then(([Layer2, Accessor, BaseLayerViewGL2D, externalRenderers]) => {
547
+ return initialize(Layer2, Accessor, BaseLayerViewGL2D, externalRenderers);
825
548
  });
826
549
  }
827
-
828
- return arcGIS;
829
- }
830
-
831
- function loadArcGISModule(esri, loadScriptOptions) {
832
- if (arcGIS) {
833
- // Already loaded
550
+ function initialize(Layer2, Accessor, BaseLayerViewGL2D, externalRenderers) {
551
+ const DeckProps = createDeckProps(Accessor);
552
+ const DeckLayerView2D = createDeckLayerView2D(BaseLayerViewGL2D);
553
+ const DeckLayer = createDeckLayer(DeckProps, Layer2, DeckLayerView2D);
554
+ const DeckRenderer = createDeckRenderer(DeckProps, externalRenderers);
555
+ arcGIS = {
556
+ DeckLayer,
557
+ DeckRenderer
558
+ };
834
559
  return arcGIS;
835
560
  }
836
-
837
- if (esri) {
838
- // Using user-provided dependencies
839
- // Right now this object has to be manually assembled - let @arcgis/webpack-plugin handle this?
840
- const Layer = esri.layers.Layer;
841
- const Accessor = esri.core.Accessor;
842
- const BaseLayerViewGL2D = esri.views['2d'].layers.BaseLayerViewGL2D;
843
- const externalRenderers = esri.views['3d'].externalRenderers;
844
- return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
845
- }
846
-
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]) => {
848
- return initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers);
849
- });
850
- }
851
-
852
- function initialize(Layer, Accessor, BaseLayerViewGL2D, externalRenderers) {
853
- const DeckProps = Object(_deck_props__WEBPACK_IMPORTED_MODULE_0__["default"])(Accessor);
854
- const DeckLayerView2D = Object(_deck_layer_view_2d__WEBPACK_IMPORTED_MODULE_2__["default"])(BaseLayerViewGL2D);
855
- const DeckLayer = Object(_deck_layer__WEBPACK_IMPORTED_MODULE_1__["default"])(DeckProps, Layer, DeckLayerView2D);
856
- const DeckRenderer = Object(_deck_renderer__WEBPACK_IMPORTED_MODULE_3__["default"])(DeckProps, externalRenderers);
857
- arcGIS = {
858
- DeckLayer,
859
- DeckRenderer
860
- };
861
- return arcGIS;
862
- }
863
-
864
- /***/ }),
865
-
866
- /***/ "@deck.gl/core":
867
- /*!***********************!*\
868
- !*** external "deck" ***!
869
- \***********************/
870
- /*! no static exports found */
871
- /***/ (function(module, exports) {
872
-
873
- module.exports = __WEBPACK_EXTERNAL_MODULE__deck_gl_core__;
874
-
875
- /***/ }),
876
-
877
- /***/ "@luma.gl/core":
878
- /*!***********************!*\
879
- !*** external "luma" ***!
880
- \***********************/
881
- /*! no static exports found */
882
- /***/ (function(module, exports) {
883
-
884
- module.exports = __WEBPACK_EXTERNAL_MODULE__luma_gl_core__;
885
-
886
- /***/ })
887
-
888
- /******/ });
889
- });
561
+ return __toCommonJS(bundle_exports);
562
+ })();