@deck.gl/core 9.2.8 → 9.2.9

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
@@ -271,10 +271,10 @@ var __exports__ = (() => {
271
271
  }
272
272
  });
273
273
 
274
- // ../../node_modules/@probe.gl/env/dist/lib/globals.js
274
+ // ../../node_modules/@probe.gl/log/node_modules/@probe.gl/env/dist/lib/globals.js
275
275
  var window_, document_, process_, console_, navigator_;
276
276
  var init_globals = __esm({
277
- "../../node_modules/@probe.gl/env/dist/lib/globals.js"() {
277
+ "../../node_modules/@probe.gl/log/node_modules/@probe.gl/env/dist/lib/globals.js"() {
278
278
  window_ = globalThis;
279
279
  document_ = globalThis.document || {};
280
280
  process_ = globalThis.process || {};
@@ -283,7 +283,7 @@ var __exports__ = (() => {
283
283
  }
284
284
  });
285
285
 
286
- // ../../node_modules/@probe.gl/env/dist/lib/is-electron.js
286
+ // ../../node_modules/@probe.gl/log/node_modules/@probe.gl/env/dist/lib/is-electron.js
287
287
  function isElectron(mockUserAgent) {
288
288
  if (typeof window !== "undefined" && window.process?.type === "renderer") {
289
289
  return true;
@@ -296,11 +296,11 @@ var __exports__ = (() => {
296
296
  return Boolean(userAgent2 && userAgent2.indexOf("Electron") >= 0);
297
297
  }
298
298
  var init_is_electron = __esm({
299
- "../../node_modules/@probe.gl/env/dist/lib/is-electron.js"() {
299
+ "../../node_modules/@probe.gl/log/node_modules/@probe.gl/env/dist/lib/is-electron.js"() {
300
300
  }
301
301
  });
302
302
 
303
- // ../../node_modules/@probe.gl/env/dist/lib/is-browser.js
303
+ // ../../node_modules/@probe.gl/log/node_modules/@probe.gl/env/dist/lib/is-browser.js
304
304
  function isBrowser() {
305
305
  const isNode = (
306
306
  // @ts-expect-error
@@ -309,50 +309,165 @@ var __exports__ = (() => {
309
309
  return !isNode || isElectron();
310
310
  }
311
311
  var init_is_browser = __esm({
312
- "../../node_modules/@probe.gl/env/dist/lib/is-browser.js"() {
312
+ "../../node_modules/@probe.gl/log/node_modules/@probe.gl/env/dist/lib/is-browser.js"() {
313
313
  init_is_electron();
314
314
  }
315
315
  });
316
316
 
317
- // ../../node_modules/@probe.gl/env/dist/lib/get-browser.js
318
- function getBrowser(mockUserAgent) {
319
- if (!mockUserAgent && !isBrowser()) {
320
- return "Node";
317
+ // ../../node_modules/@probe.gl/log/node_modules/@probe.gl/env/dist/index.js
318
+ var VERSION;
319
+ var init_dist2 = __esm({
320
+ "../../node_modules/@probe.gl/log/node_modules/@probe.gl/env/dist/index.js"() {
321
+ init_globals();
322
+ init_is_browser();
323
+ VERSION = true ? "4.1.1" : "untranspiled source";
321
324
  }
322
- if (isElectron(mockUserAgent)) {
323
- return "Electron";
325
+ });
326
+
327
+ // ../../node_modules/@probe.gl/log/dist/utils/assert.js
328
+ function assert(condition, message2) {
329
+ if (!condition) {
330
+ throw new Error(message2 || "Assertion failed");
324
331
  }
325
- const userAgent2 = mockUserAgent || navigator_.userAgent || "";
326
- if (userAgent2.indexOf("Edge") > -1) {
327
- return "Edge";
332
+ }
333
+ var init_assert = __esm({
334
+ "../../node_modules/@probe.gl/log/dist/utils/assert.js"() {
328
335
  }
329
- if (globalThis.chrome) {
330
- return "Chrome";
336
+ });
337
+
338
+ // ../../node_modules/@probe.gl/log/dist/loggers/log-utils.js
339
+ function normalizeLogLevel(logLevel) {
340
+ if (!logLevel) {
341
+ return 0;
331
342
  }
332
- if (globalThis.safari) {
333
- return "Safari";
343
+ let resolvedLevel;
344
+ switch (typeof logLevel) {
345
+ case "number":
346
+ resolvedLevel = logLevel;
347
+ break;
348
+ case "object":
349
+ resolvedLevel = logLevel.logLevel || logLevel.priority || 0;
350
+ break;
351
+ default:
352
+ return 0;
334
353
  }
335
- if (globalThis.mozInnerScreenX) {
336
- return "Firefox";
354
+ assert(Number.isFinite(resolvedLevel) && resolvedLevel >= 0);
355
+ return resolvedLevel;
356
+ }
357
+ function normalizeArguments(opts) {
358
+ const { logLevel, message: message2 } = opts;
359
+ opts.logLevel = normalizeLogLevel(logLevel);
360
+ const args = opts.args ? Array.from(opts.args) : [];
361
+ while (args.length && args.shift() !== message2) {
337
362
  }
338
- return "Unknown";
363
+ switch (typeof logLevel) {
364
+ case "string":
365
+ case "function":
366
+ if (message2 !== void 0) {
367
+ args.unshift(message2);
368
+ }
369
+ opts.message = logLevel;
370
+ break;
371
+ case "object":
372
+ Object.assign(opts, logLevel);
373
+ break;
374
+ default:
375
+ }
376
+ if (typeof opts.message === "function") {
377
+ opts.message = opts.message();
378
+ }
379
+ const messageType = typeof opts.message;
380
+ assert(messageType === "string" || messageType === "object");
381
+ return Object.assign(opts, { args }, opts.opts);
339
382
  }
340
- var init_get_browser = __esm({
341
- "../../node_modules/@probe.gl/env/dist/lib/get-browser.js"() {
342
- init_is_browser();
343
- init_is_electron();
344
- init_globals();
383
+ var init_log_utils = __esm({
384
+ "../../node_modules/@probe.gl/log/dist/loggers/log-utils.js"() {
385
+ init_assert();
345
386
  }
346
387
  });
347
388
 
348
- // ../../node_modules/@probe.gl/env/dist/index.js
349
- var VERSION;
350
- var init_dist2 = __esm({
351
- "../../node_modules/@probe.gl/env/dist/index.js"() {
352
- init_globals();
353
- init_is_browser();
354
- init_get_browser();
355
- VERSION = true ? "4.1.0" : "untranspiled source";
389
+ // ../../node_modules/@probe.gl/log/dist/loggers/base-log.js
390
+ var noop, BaseLog;
391
+ var init_base_log = __esm({
392
+ "../../node_modules/@probe.gl/log/dist/loggers/base-log.js"() {
393
+ init_log_utils();
394
+ noop = () => {
395
+ };
396
+ BaseLog = class {
397
+ constructor({ level = 0 } = {}) {
398
+ this.userData = {};
399
+ this._onceCache = /* @__PURE__ */ new Set();
400
+ this._level = level;
401
+ }
402
+ set level(newLevel) {
403
+ this.setLevel(newLevel);
404
+ }
405
+ get level() {
406
+ return this.getLevel();
407
+ }
408
+ setLevel(level) {
409
+ this._level = level;
410
+ return this;
411
+ }
412
+ getLevel() {
413
+ return this._level;
414
+ }
415
+ // Unconditional logging
416
+ warn(message2, ...args) {
417
+ return this._log("warn", 0, message2, args, { once: true });
418
+ }
419
+ error(message2, ...args) {
420
+ return this._log("error", 0, message2, args);
421
+ }
422
+ // Conditional logging
423
+ log(logLevel, message2, ...args) {
424
+ return this._log("log", logLevel, message2, args);
425
+ }
426
+ info(logLevel, message2, ...args) {
427
+ return this._log("info", logLevel, message2, args);
428
+ }
429
+ once(logLevel, message2, ...args) {
430
+ return this._log("once", logLevel, message2, args, { once: true });
431
+ }
432
+ _log(type, logLevel, message2, args, options = {}) {
433
+ const normalized = normalizeArguments({
434
+ logLevel,
435
+ message: message2,
436
+ args: this._buildArgs(logLevel, message2, args),
437
+ opts: options
438
+ });
439
+ return this._createLogFunction(type, normalized, options);
440
+ }
441
+ _buildArgs(logLevel, message2, args) {
442
+ return [logLevel, message2, ...args];
443
+ }
444
+ _createLogFunction(type, normalized, options) {
445
+ if (!this._shouldLog(normalized.logLevel)) {
446
+ return noop;
447
+ }
448
+ const tag = this._getOnceTag(options.tag ?? normalized.tag ?? normalized.message);
449
+ if ((options.once || normalized.once) && tag !== void 0) {
450
+ if (this._onceCache.has(tag)) {
451
+ return noop;
452
+ }
453
+ this._onceCache.add(tag);
454
+ }
455
+ return this._emit(type, normalized);
456
+ }
457
+ _shouldLog(logLevel) {
458
+ return this.getLevel() >= normalizeLogLevel(logLevel);
459
+ }
460
+ _getOnceTag(tag) {
461
+ if (tag === void 0) {
462
+ return void 0;
463
+ }
464
+ try {
465
+ return typeof tag === "string" ? tag : String(tag);
466
+ } catch {
467
+ return void 0;
468
+ }
469
+ }
470
+ };
356
471
  }
357
472
  });
358
473
 
@@ -491,17 +606,6 @@ var __exports__ = (() => {
491
606
  }
492
607
  });
493
608
 
494
- // ../../node_modules/@probe.gl/log/dist/utils/assert.js
495
- function assert(condition, message2) {
496
- if (!condition) {
497
- throw new Error(message2 || "Assertion failed");
498
- }
499
- }
500
- var init_assert = __esm({
501
- "../../node_modules/@probe.gl/log/dist/utils/assert.js"() {
502
- }
503
- });
504
-
505
609
  // ../../node_modules/@probe.gl/log/dist/utils/hi-res-timestamp.js
506
610
  function getHiResTimestamp2() {
507
611
  let timestamp;
@@ -521,53 +625,7 @@ var __exports__ = (() => {
521
625
  }
522
626
  });
523
627
 
524
- // ../../node_modules/@probe.gl/log/dist/log.js
525
- function noop() {
526
- }
527
- function normalizeLogLevel(logLevel) {
528
- if (!logLevel) {
529
- return 0;
530
- }
531
- let resolvedLevel;
532
- switch (typeof logLevel) {
533
- case "number":
534
- resolvedLevel = logLevel;
535
- break;
536
- case "object":
537
- resolvedLevel = logLevel.logLevel || logLevel.priority || 0;
538
- break;
539
- default:
540
- return 0;
541
- }
542
- assert(Number.isFinite(resolvedLevel) && resolvedLevel >= 0);
543
- return resolvedLevel;
544
- }
545
- function normalizeArguments(opts) {
546
- const { logLevel, message: message2 } = opts;
547
- opts.logLevel = normalizeLogLevel(logLevel);
548
- const args = opts.args ? Array.from(opts.args) : [];
549
- while (args.length && args.shift() !== message2) {
550
- }
551
- switch (typeof logLevel) {
552
- case "string":
553
- case "function":
554
- if (message2 !== void 0) {
555
- args.unshift(message2);
556
- }
557
- opts.message = logLevel;
558
- break;
559
- case "object":
560
- Object.assign(opts, logLevel);
561
- break;
562
- default:
563
- }
564
- if (typeof opts.message === "function") {
565
- opts.message = opts.message();
566
- }
567
- const messageType = typeof opts.message;
568
- assert(messageType === "string" || messageType === "object");
569
- return Object.assign(opts, { args }, opts.opts);
570
- }
628
+ // ../../node_modules/@probe.gl/log/dist/loggers/probe-log.js
571
629
  function decorateMessage(id, message2, opts) {
572
630
  if (typeof message2 === "string") {
573
631
  const time = opts.time ? leftPad(formatTime(opts.total)) : "";
@@ -584,10 +642,11 @@ var __exports__ = (() => {
584
642
  }
585
643
  return "empty";
586
644
  }
587
- var originalConsole, DEFAULT_LOG_CONFIGURATION, cache, ONCE, Log;
588
- var init_log = __esm({
589
- "../../node_modules/@probe.gl/log/dist/log.js"() {
645
+ var originalConsole, DEFAULT_LOG_CONFIGURATION, ProbeLog;
646
+ var init_probe_log = __esm({
647
+ "../../node_modules/@probe.gl/log/dist/loggers/probe-log.js"() {
590
648
  init_dist2();
649
+ init_base_log();
591
650
  init_local_storage();
592
651
  init_formatters();
593
652
  init_color();
@@ -605,10 +664,9 @@ var __exports__ = (() => {
605
664
  enabled: true,
606
665
  level: 0
607
666
  };
608
- cache = {};
609
- ONCE = { once: true };
610
- Log = class {
667
+ ProbeLog = class extends BaseLog {
611
668
  constructor({ id } = { id: "" }) {
669
+ super({ level: 0 });
612
670
  this.VERSION = VERSION;
613
671
  this._startTs = getHiResTimestamp2();
614
672
  this._deltaTs = getHiResTimestamp2();
@@ -616,22 +674,16 @@ var __exports__ = (() => {
616
674
  this.LOG_THROTTLE_TIMEOUT = 0;
617
675
  this.id = id;
618
676
  this.userData = {};
619
- this._storage = new LocalStorage(`__probe-${this.id}__`, DEFAULT_LOG_CONFIGURATION);
677
+ this._storage = new LocalStorage(`__probe-${this.id}__`, { [this.id]: DEFAULT_LOG_CONFIGURATION });
620
678
  this.timeStamp(`${this.id} started`);
621
679
  autobind(this);
622
680
  Object.seal(this);
623
681
  }
624
- set level(newLevel) {
625
- this.setLevel(newLevel);
626
- }
627
- get level() {
628
- return this.getLevel();
629
- }
630
682
  isEnabled() {
631
- return this._storage.config.enabled;
683
+ return this._getConfiguration().enabled;
632
684
  }
633
685
  getLevel() {
634
- return this._storage.config.level;
686
+ return this._getConfiguration().level;
635
687
  }
636
688
  /** @return milliseconds, with fractions */
637
689
  getTotal() {
@@ -655,20 +707,20 @@ var __exports__ = (() => {
655
707
  }
656
708
  // Configure
657
709
  enable(enabled = true) {
658
- this._storage.setConfiguration({ enabled });
710
+ this._updateConfiguration({ enabled });
659
711
  return this;
660
712
  }
661
713
  setLevel(level) {
662
- this._storage.setConfiguration({ level });
714
+ this._updateConfiguration({ level });
663
715
  return this;
664
716
  }
665
717
  /** return the current status of the setting */
666
718
  get(setting) {
667
- return this._storage.config[setting];
719
+ return this._getConfiguration()[setting];
668
720
  }
669
721
  // update the status of the setting
670
722
  set(setting, value) {
671
- this._storage.setConfiguration({ [setting]: value });
723
+ this._updateConfiguration({ [setting]: value });
672
724
  }
673
725
  /** Logs the current settings as a table */
674
726
  settings() {
@@ -684,11 +736,16 @@ var __exports__ = (() => {
684
736
  throw new Error(message2 || "Assertion failed");
685
737
  }
686
738
  }
687
- warn(message2) {
688
- return this._getLogFunction(0, message2, originalConsole.warn, arguments, ONCE);
739
+ warn(message2, ...args) {
740
+ return this._log("warn", 0, message2, args, {
741
+ method: originalConsole.warn,
742
+ once: true
743
+ });
689
744
  }
690
- error(message2) {
691
- return this._getLogFunction(0, message2, originalConsole.error, arguments);
745
+ error(message2, ...args) {
746
+ return this._log("error", 0, message2, args, {
747
+ method: originalConsole.error
748
+ });
692
749
  }
693
750
  /** Print a deprecation warning */
694
751
  deprecated(oldUsage, newUsage) {
@@ -698,50 +755,63 @@ var __exports__ = (() => {
698
755
  removed(oldUsage, newUsage) {
699
756
  return this.error(`\`${oldUsage}\` has been removed. Use \`${newUsage}\` instead`);
700
757
  }
701
- probe(logLevel, message2) {
702
- return this._getLogFunction(logLevel, message2, originalConsole.log, arguments, {
758
+ probe(logLevel, message2, ...args) {
759
+ return this._log("log", logLevel, message2, args, {
760
+ method: originalConsole.log,
703
761
  time: true,
704
762
  once: true
705
763
  });
706
764
  }
707
- log(logLevel, message2) {
708
- return this._getLogFunction(logLevel, message2, originalConsole.debug, arguments);
765
+ log(logLevel, message2, ...args) {
766
+ return this._log("log", logLevel, message2, args, {
767
+ method: originalConsole.debug
768
+ });
709
769
  }
710
- info(logLevel, message2) {
711
- return this._getLogFunction(logLevel, message2, console.info, arguments);
770
+ info(logLevel, message2, ...args) {
771
+ return this._log("info", logLevel, message2, args, { method: console.info });
712
772
  }
713
- once(logLevel, message2) {
714
- return this._getLogFunction(logLevel, message2, originalConsole.debug || originalConsole.info, arguments, ONCE);
773
+ once(logLevel, message2, ...args) {
774
+ return this._log("once", logLevel, message2, args, {
775
+ method: originalConsole.debug || originalConsole.info,
776
+ once: true
777
+ });
715
778
  }
716
779
  /** Logs an object as a table */
717
780
  table(logLevel, table, columns) {
718
781
  if (table) {
719
- return this._getLogFunction(logLevel, table, console.table || noop, columns && [columns], {
782
+ return this._log("table", logLevel, table, columns && [columns] || [], {
783
+ method: console.table || noop,
720
784
  tag: getTableHeader(table)
721
785
  });
722
786
  }
723
787
  return noop;
724
788
  }
725
789
  time(logLevel, message2) {
726
- return this._getLogFunction(logLevel, message2, console.time ? console.time : console.info);
790
+ return this._log("time", logLevel, message2, [], {
791
+ method: console.time ? console.time : console.info
792
+ });
727
793
  }
728
794
  timeEnd(logLevel, message2) {
729
- return this._getLogFunction(logLevel, message2, console.timeEnd ? console.timeEnd : console.info);
795
+ return this._log("time", logLevel, message2, [], {
796
+ method: console.timeEnd ? console.timeEnd : console.info
797
+ });
730
798
  }
731
799
  timeStamp(logLevel, message2) {
732
- return this._getLogFunction(logLevel, message2, console.timeStamp || noop);
800
+ return this._log("time", logLevel, message2, [], {
801
+ method: console.timeStamp || noop
802
+ });
733
803
  }
734
804
  group(logLevel, message2, opts = { collapsed: false }) {
735
- const options = normalizeArguments({ logLevel, message: message2, opts });
736
- const { collapsed } = opts;
737
- options.method = (collapsed ? console.groupCollapsed : console.group) || console.info;
738
- return this._getLogFunction(options);
805
+ const method = (opts.collapsed ? console.groupCollapsed : console.group) || console.info;
806
+ return this._log("group", logLevel, message2, [], { method });
739
807
  }
740
808
  groupCollapsed(logLevel, message2, opts = {}) {
741
809
  return this.group(logLevel, message2, Object.assign({}, opts, { collapsed: true }));
742
810
  }
743
811
  groupEnd(logLevel) {
744
- return this._getLogFunction(logLevel, "", console.groupEnd || noop);
812
+ return this._log("groupEnd", logLevel, "", [], {
813
+ method: console.groupEnd || noop
814
+ });
745
815
  }
746
816
  // EXPERIMENTAL
747
817
  withGroup(logLevel, message2, func) {
@@ -757,34 +827,34 @@ var __exports__ = (() => {
757
827
  console.trace();
758
828
  }
759
829
  }
760
- // PRIVATE METHODS
761
- /** Deduces log level from a variety of arguments */
762
830
  _shouldLog(logLevel) {
763
- return this.isEnabled() && this.getLevel() >= normalizeLogLevel(logLevel);
764
- }
765
- _getLogFunction(logLevel, message2, method, args, opts) {
766
- if (this._shouldLog(logLevel)) {
767
- opts = normalizeArguments({ logLevel, message: message2, args, opts });
768
- method = method || opts.method;
769
- assert(method);
770
- opts.total = this.getTotal();
771
- opts.delta = this.getDelta();
772
- this._deltaTs = getHiResTimestamp2();
773
- const tag = opts.tag || opts.message;
774
- if (opts.once && tag) {
775
- if (!cache[tag]) {
776
- cache[tag] = getHiResTimestamp2();
777
- } else {
778
- return noop;
779
- }
780
- }
781
- message2 = decorateMessage(this.id, opts.message, opts);
782
- return method.bind(console, message2, ...opts.args);
831
+ return this.isEnabled() && super._shouldLog(logLevel);
832
+ }
833
+ _emit(_type, normalized) {
834
+ const method = normalized.method;
835
+ assert(method);
836
+ normalized.total = this.getTotal();
837
+ normalized.delta = this.getDelta();
838
+ this._deltaTs = getHiResTimestamp2();
839
+ const message2 = decorateMessage(this.id, normalized.message, normalized);
840
+ return method.bind(console, message2, ...normalized.args);
841
+ }
842
+ _getConfiguration() {
843
+ if (!this._storage.config[this.id]) {
844
+ this._updateConfiguration(DEFAULT_LOG_CONFIGURATION);
783
845
  }
784
- return noop;
846
+ return this._storage.config[this.id];
847
+ }
848
+ _updateConfiguration(configuration) {
849
+ const currentConfiguration = this._storage.config[this.id] || {
850
+ ...DEFAULT_LOG_CONFIGURATION
851
+ };
852
+ this._storage.setConfiguration({
853
+ [this.id]: { ...currentConfiguration, ...configuration }
854
+ });
785
855
  }
786
856
  };
787
- Log.VERSION = VERSION;
857
+ ProbeLog.VERSION = VERSION;
788
858
  }
789
859
  });
790
860
 
@@ -799,19 +869,19 @@ var __exports__ = (() => {
799
869
  var dist_default;
800
870
  var init_dist3 = __esm({
801
871
  "../../node_modules/@probe.gl/log/dist/index.js"() {
802
- init_log();
803
- init_log();
872
+ init_probe_log();
873
+ init_probe_log();
804
874
  init_init();
805
- dist_default = new Log({ id: "@probe.gl/log" });
875
+ dist_default = new ProbeLog({ id: "@probe.gl/log" });
806
876
  }
807
877
  });
808
878
 
809
879
  // ../../node_modules/@luma.gl/core/dist/utils/log.js
810
880
  var log;
811
- var init_log2 = __esm({
881
+ var init_log = __esm({
812
882
  "../../node_modules/@luma.gl/core/dist/utils/log.js"() {
813
883
  init_dist3();
814
- log = new Log({ id: "luma.gl" });
884
+ log = new ProbeLog({ id: "luma.gl" });
815
885
  }
816
886
  });
817
887
 
@@ -1573,7 +1643,7 @@ var __exports__ = (() => {
1573
1643
  var init_device = __esm({
1574
1644
  "../../node_modules/@luma.gl/core/dist/adapter/device.js"() {
1575
1645
  init_stats_manager();
1576
- init_log2();
1646
+ init_log();
1577
1647
  init_uid();
1578
1648
  init_buffer();
1579
1649
  init_decode_vertex_format();
@@ -1874,7 +1944,7 @@ or create a device with the 'debug: true' prop.`;
1874
1944
  "../../node_modules/@luma.gl/core/dist/adapter/luma.js"() {
1875
1945
  init_device();
1876
1946
  init_stats_manager();
1877
- init_log2();
1947
+ init_log();
1878
1948
  STARTUP_MESSAGE = "set luma.log.level=1 (or higher) to trace rendering";
1879
1949
  ERROR_MESSAGE = "No matching device found. Ensure `@luma.gl/webgl` and/or `@luma.gl/webgpu` modules are imported.";
1880
1950
  _Luma = class {
@@ -2025,6 +2095,87 @@ or create a device with the 'debug: true' prop.`;
2025
2095
  }
2026
2096
  });
2027
2097
 
2098
+ // ../../node_modules/@probe.gl/env/dist/lib/globals.js
2099
+ var document_2, process_2, console_2, navigator_2;
2100
+ var init_globals2 = __esm({
2101
+ "../../node_modules/@probe.gl/env/dist/lib/globals.js"() {
2102
+ document_2 = globalThis.document || {};
2103
+ process_2 = globalThis.process || {};
2104
+ console_2 = globalThis.console;
2105
+ navigator_2 = globalThis.navigator || {};
2106
+ }
2107
+ });
2108
+
2109
+ // ../../node_modules/@probe.gl/env/dist/lib/is-electron.js
2110
+ function isElectron2(mockUserAgent) {
2111
+ if (typeof window !== "undefined" && window.process?.type === "renderer") {
2112
+ return true;
2113
+ }
2114
+ if (typeof process !== "undefined" && Boolean(process.versions?.["electron"])) {
2115
+ return true;
2116
+ }
2117
+ const realUserAgent = typeof navigator !== "undefined" && navigator.userAgent;
2118
+ const userAgent2 = mockUserAgent || realUserAgent;
2119
+ return Boolean(userAgent2 && userAgent2.indexOf("Electron") >= 0);
2120
+ }
2121
+ var init_is_electron2 = __esm({
2122
+ "../../node_modules/@probe.gl/env/dist/lib/is-electron.js"() {
2123
+ }
2124
+ });
2125
+
2126
+ // ../../node_modules/@probe.gl/env/dist/lib/is-browser.js
2127
+ function isBrowser2() {
2128
+ const isNode = (
2129
+ // @ts-expect-error
2130
+ typeof process === "object" && String(process) === "[object process]" && !process?.browser
2131
+ );
2132
+ return !isNode || isElectron2();
2133
+ }
2134
+ var init_is_browser2 = __esm({
2135
+ "../../node_modules/@probe.gl/env/dist/lib/is-browser.js"() {
2136
+ init_is_electron2();
2137
+ }
2138
+ });
2139
+
2140
+ // ../../node_modules/@probe.gl/env/dist/lib/get-browser.js
2141
+ function getBrowser(mockUserAgent) {
2142
+ if (!mockUserAgent && !isBrowser2()) {
2143
+ return "Node";
2144
+ }
2145
+ if (isElectron2(mockUserAgent)) {
2146
+ return "Electron";
2147
+ }
2148
+ const userAgent2 = mockUserAgent || navigator_2.userAgent || "";
2149
+ if (userAgent2.indexOf("Edge") > -1) {
2150
+ return "Edge";
2151
+ }
2152
+ if (globalThis.chrome) {
2153
+ return "Chrome";
2154
+ }
2155
+ if (globalThis.safari) {
2156
+ return "Safari";
2157
+ }
2158
+ if (globalThis.mozInnerScreenX) {
2159
+ return "Firefox";
2160
+ }
2161
+ return "Unknown";
2162
+ }
2163
+ var init_get_browser = __esm({
2164
+ "../../node_modules/@probe.gl/env/dist/lib/get-browser.js"() {
2165
+ init_is_browser2();
2166
+ init_is_electron2();
2167
+ init_globals2();
2168
+ }
2169
+ });
2170
+
2171
+ // ../../node_modules/@probe.gl/env/dist/index.js
2172
+ var init_dist4 = __esm({
2173
+ "../../node_modules/@probe.gl/env/dist/index.js"() {
2174
+ init_is_browser2();
2175
+ init_get_browser();
2176
+ }
2177
+ });
2178
+
2028
2179
  // ../../node_modules/@luma.gl/core/dist/adapter/adapter.js
2029
2180
  function getPageLoadPromise() {
2030
2181
  if (!pageLoadPromise) {
@@ -2039,7 +2190,7 @@ or create a device with the 'debug: true' prop.`;
2039
2190
  var Adapter, isPage, isPageLoaded, pageLoadPromise;
2040
2191
  var init_adapter = __esm({
2041
2192
  "../../node_modules/@luma.gl/core/dist/adapter/adapter.js"() {
2042
- init_dist2();
2193
+ init_dist4();
2043
2194
  Adapter = class {
2044
2195
  /**
2045
2196
  * Page load promise
@@ -2052,7 +2203,7 @@ or create a device with the 'debug: true' prop.`;
2052
2203
  return getPageLoadPromise();
2053
2204
  }
2054
2205
  };
2055
- isPage = isBrowser() && typeof document !== "undefined";
2206
+ isPage = isBrowser2() && typeof document !== "undefined";
2056
2207
  isPageLoaded = () => isPage && document.readyState === "complete";
2057
2208
  pageLoadPromise = null;
2058
2209
  }
@@ -2142,7 +2293,7 @@ or create a device with the 'debug: true' prop.`;
2142
2293
  var _CanvasContext, CanvasContext;
2143
2294
  var init_canvas_context = __esm({
2144
2295
  "../../node_modules/@luma.gl/core/dist/adapter/canvas-context.js"() {
2145
- init_dist2();
2296
+ init_dist4();
2146
2297
  init_uid();
2147
2298
  init_promise_utils();
2148
2299
  _CanvasContext = class {
@@ -2191,7 +2342,7 @@ or create a device with the 'debug: true' prop.`;
2191
2342
  this.props = { ..._CanvasContext.defaultProps, ...props };
2192
2343
  props = this.props;
2193
2344
  this.initialized = this._initializedResolvers.promise;
2194
- if (!isBrowser()) {
2345
+ if (!isBrowser2()) {
2195
2346
  this.canvas = { width: props.width || 1, height: props.height || 1 };
2196
2347
  } else if (!props.canvas) {
2197
2348
  this.canvas = createCanvasElement(props);
@@ -2477,7 +2628,7 @@ or create a device with the 'debug: true' prop.`;
2477
2628
  "../../node_modules/@luma.gl/core/dist/adapter/resources/texture.js"() {
2478
2629
  init_resource();
2479
2630
  init_sampler();
2480
- init_log2();
2631
+ init_log();
2481
2632
  BASE_DIMENSIONS = {
2482
2633
  "1d": "1d",
2483
2634
  "2d": "2d",
@@ -2896,7 +3047,7 @@ ${htmlLog}
2896
3047
  "../../node_modules/@luma.gl/core/dist/adapter/resources/framebuffer.js"() {
2897
3048
  init_resource();
2898
3049
  init_texture();
2899
- init_log2();
3050
+ init_log();
2900
3051
  _Framebuffer = class extends Resource {
2901
3052
  get [Symbol.toStringTag]() {
2902
3053
  return "Framebuffer";
@@ -3463,7 +3614,7 @@ ${htmlLog}
3463
3614
  }
3464
3615
  var init_get_attribute_from_layouts = __esm({
3465
3616
  "../../node_modules/@luma.gl/core/dist/adapter-utils/get-attribute-from-layouts.js"() {
3466
- init_log2();
3617
+ init_log();
3467
3618
  init_decode_shader_types();
3468
3619
  init_decode_vertex_format();
3469
3620
  }
@@ -3592,7 +3743,7 @@ ${htmlLog}
3592
3743
  init_decode_shader_types();
3593
3744
  init_array_utils_flat();
3594
3745
  init_is_array();
3595
- init_log2();
3746
+ init_log();
3596
3747
  minBufferSize = 1024;
3597
3748
  UniformBufferLayout = class {
3598
3749
  layout = {};
@@ -3753,7 +3904,7 @@ ${htmlLog}
3753
3904
  var init_uniform_store = __esm({
3754
3905
  "../../node_modules/@luma.gl/core/dist/portable/uniform-store.js"() {
3755
3906
  init_buffer();
3756
- init_log2();
3907
+ init_log();
3757
3908
  init_uniform_block();
3758
3909
  init_uniform_buffer_layout();
3759
3910
  UniformStore = class {
@@ -3863,7 +4014,7 @@ ${htmlLog}
3863
4014
  });
3864
4015
 
3865
4016
  // ../../node_modules/@luma.gl/core/dist/index.js
3866
- var init_dist4 = __esm({
4017
+ var init_dist5 = __esm({
3867
4018
  "../../node_modules/@luma.gl/core/dist/index.js"() {
3868
4019
  init_luma();
3869
4020
  init_adapter();
@@ -3888,7 +4039,7 @@ ${htmlLog}
3888
4039
  init_decode_shader_types();
3889
4040
  init_decode_vertex_format();
3890
4041
  init_texture_format_decoder();
3891
- init_log2();
4042
+ init_log();
3892
4043
  init_array_utils_flat();
3893
4044
  init_get_attribute_from_layouts();
3894
4045
  }
@@ -4550,7 +4701,7 @@ ${htmlLog}
4550
4701
  });
4551
4702
 
4552
4703
  // ../../node_modules/@luma.gl/constants/dist/index.js
4553
- var init_dist5 = __esm({
4704
+ var init_dist6 = __esm({
4554
4705
  "../../node_modules/@luma.gl/constants/dist/index.js"() {
4555
4706
  init_webgl_constants();
4556
4707
  }
@@ -4740,7 +4891,7 @@ ${htmlLog}
4740
4891
  var LOG_LEVEL, spector, initialized, DEFAULT_SPECTOR_PROPS;
4741
4892
  var init_spector = __esm({
4742
4893
  "../../node_modules/@luma.gl/webgl/dist/context/debug/spector.js"() {
4743
- init_dist4();
4894
+ init_dist5();
4744
4895
  init_load_script();
4745
4896
  LOG_LEVEL = 1;
4746
4897
  spector = null;
@@ -4762,7 +4913,7 @@ ${htmlLog}
4762
4913
  return gl.luma;
4763
4914
  }
4764
4915
  async function loadWebGLDeveloperTools() {
4765
- if (isBrowser() && !globalThis.WebGLDebugUtils) {
4916
+ if (isBrowser2() && !globalThis.WebGLDebugUtils) {
4766
4917
  globalThis.global = globalThis.global || globalThis;
4767
4918
  globalThis.global.module = {};
4768
4919
  await loadScript(WEBGL_DEBUG_CDN_URL);
@@ -4833,9 +4984,9 @@ ${htmlLog}
4833
4984
  var WEBGL_DEBUG_CDN_URL;
4834
4985
  var init_webgl_developer_tools = __esm({
4835
4986
  "../../node_modules/@luma.gl/webgl/dist/context/debug/webgl-developer-tools.js"() {
4836
- init_dist4();
4837
4987
  init_dist5();
4838
- init_dist2();
4988
+ init_dist6();
4989
+ init_dist4();
4839
4990
  init_load_script();
4840
4991
  WEBGL_DEBUG_CDN_URL = "https://unpkg.com/webgl-debug@2.0.1/index.js";
4841
4992
  }
@@ -4845,8 +4996,8 @@ ${htmlLog}
4845
4996
  function isArray2(array) {
4846
4997
  return Array.isArray(array) || ArrayBuffer.isView(array) && !(array instanceof DataView);
4847
4998
  }
4848
- function getValue(glEnum, values, cache2) {
4849
- return values[glEnum] !== void 0 ? values[glEnum] : cache2[glEnum];
4999
+ function getValue(glEnum, values, cache) {
5000
+ return values[glEnum] !== void 0 ? values[glEnum] : cache[glEnum];
4850
5001
  }
4851
5002
  var GL_PARAMETER_DEFAULTS, enable, hint, pixelStorei, bindFramebuffer, bindBuffer, GL_PARAMETER_SETTERS, GL_COMPOSITE_PARAMETER_SETTERS, GL_HOOKED_SETTERS, isEnabled, GL_PARAMETER_GETTERS, NON_CACHE_PARAMETERS;
4852
5003
  var init_webgl_parameter_tables = __esm({
@@ -5102,14 +5253,14 @@ ${htmlLog}
5102
5253
  viewport: (gl, value) => gl.viewport(...value)
5103
5254
  };
5104
5255
  GL_COMPOSITE_PARAMETER_SETTERS = {
5105
- blendEquation: (gl, values, cache2) => gl.blendEquationSeparate(getValue(32777, values, cache2), getValue(34877, values, cache2)),
5106
- blendFunc: (gl, values, cache2) => gl.blendFuncSeparate(getValue(32969, values, cache2), getValue(32968, values, cache2), getValue(32971, values, cache2), getValue(32970, values, cache2)),
5107
- polygonOffset: (gl, values, cache2) => gl.polygonOffset(getValue(32824, values, cache2), getValue(10752, values, cache2)),
5108
- sampleCoverage: (gl, values, cache2) => gl.sampleCoverage(getValue(32938, values, cache2), getValue(32939, values, cache2)),
5109
- stencilFuncFront: (gl, values, cache2) => gl.stencilFuncSeparate(1028, getValue(2962, values, cache2), getValue(2967, values, cache2), getValue(2963, values, cache2)),
5110
- stencilFuncBack: (gl, values, cache2) => gl.stencilFuncSeparate(1029, getValue(34816, values, cache2), getValue(36003, values, cache2), getValue(36004, values, cache2)),
5111
- stencilOpFront: (gl, values, cache2) => gl.stencilOpSeparate(1028, getValue(2964, values, cache2), getValue(2965, values, cache2), getValue(2966, values, cache2)),
5112
- stencilOpBack: (gl, values, cache2) => gl.stencilOpSeparate(1029, getValue(34817, values, cache2), getValue(34818, values, cache2), getValue(34819, values, cache2))
5256
+ blendEquation: (gl, values, cache) => gl.blendEquationSeparate(getValue(32777, values, cache), getValue(34877, values, cache)),
5257
+ blendFunc: (gl, values, cache) => gl.blendFuncSeparate(getValue(32969, values, cache), getValue(32968, values, cache), getValue(32971, values, cache), getValue(32970, values, cache)),
5258
+ polygonOffset: (gl, values, cache) => gl.polygonOffset(getValue(32824, values, cache), getValue(10752, values, cache)),
5259
+ sampleCoverage: (gl, values, cache) => gl.sampleCoverage(getValue(32938, values, cache), getValue(32939, values, cache)),
5260
+ stencilFuncFront: (gl, values, cache) => gl.stencilFuncSeparate(1028, getValue(2962, values, cache), getValue(2967, values, cache), getValue(2963, values, cache)),
5261
+ stencilFuncBack: (gl, values, cache) => gl.stencilFuncSeparate(1029, getValue(34816, values, cache), getValue(36003, values, cache), getValue(36004, values, cache)),
5262
+ stencilOpFront: (gl, values, cache) => gl.stencilOpSeparate(1028, getValue(2964, values, cache), getValue(2965, values, cache), getValue(2966, values, cache)),
5263
+ stencilOpBack: (gl, values, cache) => gl.stencilOpSeparate(1029, getValue(34817, values, cache), getValue(34818, values, cache), getValue(34819, values, cache))
5113
5264
  };
5114
5265
  GL_HOOKED_SETTERS = {
5115
5266
  // GENERIC SETTERS
@@ -5332,11 +5483,11 @@ ${htmlLog}
5332
5483
  }
5333
5484
  }
5334
5485
  }
5335
- const cache2 = gl.state && gl.state.cache;
5336
- if (cache2) {
5486
+ const cache = gl.state && gl.state.cache;
5487
+ if (cache) {
5337
5488
  for (const key in compositeSetters) {
5338
5489
  const compositeSetter = GL_COMPOSITE_PARAMETER_SETTERS[key];
5339
- compositeSetter(gl, parameters, cache2);
5490
+ compositeSetter(gl, parameters, cache);
5340
5491
  }
5341
5492
  }
5342
5493
  }
@@ -5781,7 +5932,7 @@ ${htmlLog}
5781
5932
  var X_S3TC, X_S3TC_SRGB, X_RGTC, X_BPTC, X_ETC2, X_ASTC, X_ETC1, X_PVRTC, X_ATC, EXT_texture_norm16, EXT_render_snorm, EXT_color_buffer_float, TEXTURE_FEATURES, WEBGL_TEXTURE_FORMATS;
5782
5933
  var init_webgl_texture_table = __esm({
5783
5934
  "../../node_modules/@luma.gl/webgl/dist/adapter/converters/webgl-texture-table.js"() {
5784
- init_dist4();
5935
+ init_dist5();
5785
5936
  init_webgl_extensions();
5786
5937
  init_webgl_vertex_formats();
5787
5938
  X_S3TC = "WEBGL_compressed_texture_s3tc";
@@ -5972,7 +6123,7 @@ ${htmlLog}
5972
6123
  var WEBGL_FEATURES, WebGLDeviceFeatures;
5973
6124
  var init_webgl_device_features = __esm({
5974
6125
  "../../node_modules/@luma.gl/webgl/dist/adapter/device-helpers/webgl-device-features.js"() {
5975
- init_dist4();
6126
+ init_dist5();
5976
6127
  init_webgl_extensions();
5977
6128
  init_webgl_texture_table();
5978
6129
  WEBGL_FEATURES = {
@@ -6052,7 +6203,7 @@ ${htmlLog}
6052
6203
  var WebGLDeviceLimits;
6053
6204
  var init_webgl_device_limits = __esm({
6054
6205
  "../../node_modules/@luma.gl/webgl/dist/adapter/device-helpers/webgl-device-limits.js"() {
6055
- init_dist4();
6206
+ init_dist5();
6056
6207
  WebGLDeviceLimits = class extends DeviceLimits {
6057
6208
  get maxTextureDimension1D() {
6058
6209
  return 0;
@@ -6188,7 +6339,7 @@ ${htmlLog}
6188
6339
  var WEBGLFramebuffer;
6189
6340
  var init_webgl_framebuffer = __esm({
6190
6341
  "../../node_modules/@luma.gl/webgl/dist/adapter/resources/webgl-framebuffer.js"() {
6191
- init_dist4();
6342
+ init_dist5();
6192
6343
  init_webgl_texture_table();
6193
6344
  WEBGLFramebuffer = class extends Framebuffer {
6194
6345
  device;
@@ -6285,7 +6436,7 @@ ${htmlLog}
6285
6436
  var WebGLCanvasContext;
6286
6437
  var init_webgl_canvas_context = __esm({
6287
6438
  "../../node_modules/@luma.gl/webgl/dist/adapter/webgl-canvas-context.js"() {
6288
- init_dist4();
6439
+ init_dist5();
6289
6440
  init_webgl_framebuffer();
6290
6441
  WebGLCanvasContext = class extends CanvasContext {
6291
6442
  device;
@@ -6352,7 +6503,7 @@ ${htmlLog}
6352
6503
  var WEBGLBuffer;
6353
6504
  var init_webgl_buffer = __esm({
6354
6505
  "../../node_modules/@luma.gl/webgl/dist/adapter/resources/webgl-buffer.js"() {
6355
- init_dist4();
6506
+ init_dist5();
6356
6507
  WEBGLBuffer = class extends Buffer2 {
6357
6508
  device;
6358
6509
  gl;
@@ -6514,7 +6665,7 @@ ${htmlLog}
6514
6665
  var WEBGLShader;
6515
6666
  var init_webgl_shader = __esm({
6516
6667
  "../../node_modules/@luma.gl/webgl/dist/adapter/resources/webgl-shader.js"() {
6517
- init_dist4();
6668
+ init_dist5();
6518
6669
  init_parse_shader_compiler_log();
6519
6670
  WEBGLShader = class extends Shader {
6520
6671
  device;
@@ -6847,7 +6998,7 @@ ${source3}`;
6847
6998
  }
6848
6999
  var init_device_parameters = __esm({
6849
7000
  "../../node_modules/@luma.gl/webgl/dist/adapter/converters/device-parameters.js"() {
6850
- init_dist4();
7001
+ init_dist5();
6851
7002
  init_unified_parameter_api();
6852
7003
  }
6853
7004
  });
@@ -6939,7 +7090,7 @@ ${source3}`;
6939
7090
  var WEBGLSampler;
6940
7091
  var init_webgl_sampler = __esm({
6941
7092
  "../../node_modules/@luma.gl/webgl/dist/adapter/resources/webgl-sampler.js"() {
6942
- init_dist4();
7093
+ init_dist5();
6943
7094
  init_sampler_parameters();
6944
7095
  WEBGLSampler = class extends Sampler {
6945
7096
  device;
@@ -7019,7 +7170,7 @@ ${source3}`;
7019
7170
  var WEBGLTextureView;
7020
7171
  var init_webgl_texture_view = __esm({
7021
7172
  "../../node_modules/@luma.gl/webgl/dist/adapter/resources/webgl-texture-view.js"() {
7022
- init_dist4();
7173
+ init_dist5();
7023
7174
  WEBGLTextureView = class extends TextureView {
7024
7175
  device;
7025
7176
  gl;
@@ -7061,7 +7212,7 @@ ${source3}`;
7061
7212
  var WEBGLTexture;
7062
7213
  var init_webgl_texture = __esm({
7063
7214
  "../../node_modules/@luma.gl/webgl/dist/adapter/resources/webgl-texture.js"() {
7064
- init_dist4();
7215
+ init_dist5();
7065
7216
  init_webgl_texture_table();
7066
7217
  init_sampler_parameters();
7067
7218
  init_with_parameters();
@@ -7569,7 +7720,7 @@ ${source3}`;
7569
7720
  }
7570
7721
  var init_get_shader_layout_from_glsl = __esm({
7571
7722
  "../../node_modules/@luma.gl/webgl/dist/adapter/helpers/get-shader-layout-from-glsl.js"() {
7572
- init_dist4();
7723
+ init_dist5();
7573
7724
  init_webgl_shadertypes();
7574
7725
  }
7575
7726
  });
@@ -7721,7 +7872,7 @@ ${source3}`;
7721
7872
  var LOG_PROGRAM_PERF_PRIORITY, WEBGLRenderPipeline;
7722
7873
  var init_webgl_render_pipeline = __esm({
7723
7874
  "../../node_modules/@luma.gl/webgl/dist/adapter/resources/webgl-render-pipeline.js"() {
7724
- init_dist4();
7875
+ init_dist5();
7725
7876
  init_get_shader_layout_from_glsl();
7726
7877
  init_device_parameters();
7727
7878
  init_set_uniform();
@@ -8221,7 +8372,7 @@ ${source3}`;
8221
8372
  var WEBGLCommandBuffer;
8222
8373
  var init_webgl_command_buffer = __esm({
8223
8374
  "../../node_modules/@luma.gl/webgl/dist/adapter/resources/webgl-command-buffer.js"() {
8224
- init_dist4();
8375
+ init_dist5();
8225
8376
  init_webgl_texture();
8226
8377
  init_webgl_texture_table();
8227
8378
  WEBGLCommandBuffer = class extends CommandBuffer {
@@ -8260,7 +8411,7 @@ ${source3}`;
8260
8411
  var COLOR_CHANNELS, WEBGLRenderPass;
8261
8412
  var init_webgl_render_pass = __esm({
8262
8413
  "../../node_modules/@luma.gl/webgl/dist/adapter/resources/webgl-render-pass.js"() {
8263
- init_dist4();
8414
+ init_dist5();
8264
8415
  init_with_parameters();
8265
8416
  init_unified_parameter_api();
8266
8417
  COLOR_CHANNELS = [1, 2, 4, 8];
@@ -8417,7 +8568,7 @@ ${source3}`;
8417
8568
  var WEBGLCommandEncoder;
8418
8569
  var init_webgl_command_encoder = __esm({
8419
8570
  "../../node_modules/@luma.gl/webgl/dist/adapter/resources/webgl-command-encoder.js"() {
8420
- init_dist4();
8571
+ init_dist5();
8421
8572
  init_webgl_command_buffer();
8422
8573
  init_webgl_render_pass();
8423
8574
  WEBGLCommandEncoder = class extends CommandEncoder {
@@ -8513,8 +8664,8 @@ ${source3}`;
8513
8664
  var WEBGLVertexArray;
8514
8665
  var init_webgl_vertex_array = __esm({
8515
8666
  "../../node_modules/@luma.gl/webgl/dist/adapter/resources/webgl-vertex-array.js"() {
8667
+ init_dist5();
8516
8668
  init_dist4();
8517
- init_dist2();
8518
8669
  init_webgl_vertex_formats();
8519
8670
  init_fill_array();
8520
8671
  WEBGLVertexArray = class extends VertexArray {
@@ -8704,8 +8855,8 @@ ${source3}`;
8704
8855
  var WEBGLTransformFeedback;
8705
8856
  var init_webgl_transform_feedback = __esm({
8706
8857
  "../../node_modules/@luma.gl/webgl/dist/adapter/resources/webgl-transform-feedback.js"() {
8707
- init_dist4();
8708
- init_dist6();
8858
+ init_dist5();
8859
+ init_dist7();
8709
8860
  init_webgl_topology_utils();
8710
8861
  WEBGLTransformFeedback = class extends TransformFeedback {
8711
8862
  device;
@@ -8856,7 +9007,7 @@ ${source3}`;
8856
9007
  var WEBGLQuerySet;
8857
9008
  var init_webgl_query_set = __esm({
8858
9009
  "../../node_modules/@luma.gl/webgl/dist/adapter/resources/webgl-query-set.js"() {
8859
- init_dist4();
9010
+ init_dist5();
8860
9011
  WEBGLQuerySet = class extends QuerySet {
8861
9012
  device;
8862
9013
  handle;
@@ -9163,7 +9314,7 @@ ${source3}`;
9163
9314
  }
9164
9315
  var init_webgl_texture_utils = __esm({
9165
9316
  "../../node_modules/@luma.gl/webgl/dist/adapter/helpers/webgl-texture-utils.js"() {
9166
- init_dist4();
9317
+ init_dist5();
9167
9318
  init_webgl_shadertypes();
9168
9319
  init_format_utils();
9169
9320
  init_shader_formats();
@@ -9212,7 +9363,7 @@ ${source3}`;
9212
9363
  var WebGLDevice;
9213
9364
  var init_webgl_device = __esm({
9214
9365
  "../../node_modules/@luma.gl/webgl/dist/adapter/webgl-device.js"() {
9215
- init_dist4();
9366
+ init_dist5();
9216
9367
  init_webgl_state_tracker();
9217
9368
  init_create_browser_context();
9218
9369
  init_webgl_device_info();
@@ -9562,7 +9713,7 @@ ${source3}`;
9562
9713
  var LOG_LEVEL2, WebGLAdapter, webgl2Adapter;
9563
9714
  var init_webgl_adapter = __esm({
9564
9715
  "../../node_modules/@luma.gl/webgl/dist/adapter/webgl-adapter.js"() {
9565
- init_dist4();
9716
+ init_dist5();
9566
9717
  init_polyfill_webgl1_extensions();
9567
9718
  init_spector();
9568
9719
  init_webgl_developer_tools();
@@ -9648,7 +9799,7 @@ ${source3}`;
9648
9799
  });
9649
9800
 
9650
9801
  // ../../node_modules/@luma.gl/webgl/dist/index.js
9651
- var init_dist6 = __esm({
9802
+ var init_dist7 = __esm({
9652
9803
  "../../node_modules/@luma.gl/webgl/dist/index.js"() {
9653
9804
  init_webgl_adapter();
9654
9805
  init_webgl_device();
@@ -9754,8 +9905,8 @@ ${source3}`;
9754
9905
  setDefaultDeviceProps: () => setDefaultDeviceProps,
9755
9906
  stats: () => stats
9756
9907
  });
9757
- init_dist4();
9758
- init_dist4();
9908
+ init_dist5();
9909
+ init_dist5();
9759
9910
 
9760
9911
  // ../../node_modules/@luma.gl/engine/dist/animation/timeline.js
9761
9912
  var channelHandles = 1;
@@ -9863,7 +10014,7 @@ ${source3}`;
9863
10014
  };
9864
10015
 
9865
10016
  // ../../node_modules/@luma.gl/engine/dist/animation-loop/animation-loop.js
9866
- init_dist4();
10017
+ init_dist5();
9867
10018
 
9868
10019
  // ../../node_modules/@luma.gl/engine/dist/animation-loop/request-animation-frame.js
9869
10020
  function requestAnimationFramePolyfill(callback) {
@@ -10237,7 +10388,7 @@ ${source3}`;
10237
10388
  });
10238
10389
 
10239
10390
  // ../../node_modules/@luma.gl/engine/dist/model/model.js
10240
- init_dist4();
10391
+ init_dist5();
10241
10392
 
10242
10393
  // ../../node_modules/@luma.gl/shadertools/dist/lib/utils/assert.js
10243
10394
  function assert2(condition, message2) {
@@ -11123,7 +11274,7 @@ void main() {
11123
11274
  }
11124
11275
 
11125
11276
  // ../../node_modules/@luma.gl/shadertools/dist/lib/wgsl/get-shader-layout-wgsl.js
11126
- init_dist4();
11277
+ init_dist5();
11127
11278
 
11128
11279
  // ../../node_modules/wgsl_reflect/wgsl_reflect.module.js
11129
11280
  var e = class {
@@ -21555,7 +21706,7 @@ vec4 picking_filterColor(vec4 color) {
21555
21706
  }
21556
21707
 
21557
21708
  // ../../node_modules/@luma.gl/shadertools/dist/modules/lighting/lights/lighting.js
21558
- init_dist4();
21709
+ init_dist5();
21559
21710
 
21560
21711
  // ../../node_modules/@luma.gl/shadertools/dist/modules/lighting/lights/lighting-glsl.js
21561
21712
  var lightingUniformsGLSL = (
@@ -22047,7 +22198,7 @@ fn lighting_getSpecularLightColor(cameraPosition: vec3<f32>, position_worldspace
22047
22198
  };
22048
22199
 
22049
22200
  // ../../node_modules/@luma.gl/engine/dist/geometry/gpu-geometry.js
22050
- init_dist4();
22201
+ init_dist5();
22051
22202
 
22052
22203
  // ../../node_modules/@luma.gl/engine/dist/utils/uid.js
22053
22204
  var uidCounters2 = {};
@@ -22154,7 +22305,7 @@ fn lighting_getSpecularLightColor(cameraPosition: vec3<f32>, position_worldspace
22154
22305
  }
22155
22306
 
22156
22307
  // ../../node_modules/@luma.gl/engine/dist/factories/pipeline-factory.js
22157
- init_dist4();
22308
+ init_dist5();
22158
22309
  var _PipelineFactory = class {
22159
22310
  /** Get the singleton default pipeline factory for the specified device */
22160
22311
  static getDefaultPipelineFactory(device) {
@@ -22187,23 +22338,23 @@ fn lighting_getSpecularLightColor(cameraPosition: vec3<f32>, position_worldspace
22187
22338
  return this.device.createRenderPipeline(props);
22188
22339
  }
22189
22340
  const allProps = { ...RenderPipeline.defaultProps, ...props };
22190
- const cache2 = this._renderPipelineCache;
22341
+ const cache = this._renderPipelineCache;
22191
22342
  const hash = this._hashRenderPipeline(allProps);
22192
- let pipeline = cache2[hash]?.pipeline;
22343
+ let pipeline = cache[hash]?.pipeline;
22193
22344
  if (!pipeline) {
22194
22345
  pipeline = this.device.createRenderPipeline({
22195
22346
  ...allProps,
22196
22347
  id: allProps.id ? `${allProps.id}-cached` : uid2("unnamed-cached")
22197
22348
  });
22198
22349
  pipeline.hash = hash;
22199
- cache2[hash] = { pipeline, useCount: 1 };
22350
+ cache[hash] = { pipeline, useCount: 1 };
22200
22351
  if (this.debug) {
22201
- log.log(3, `${this}: ${pipeline} created, count=${cache2[hash].useCount}`)();
22352
+ log.log(3, `${this}: ${pipeline} created, count=${cache[hash].useCount}`)();
22202
22353
  }
22203
22354
  } else {
22204
- cache2[hash].useCount++;
22355
+ cache[hash].useCount++;
22205
22356
  if (this.debug) {
22206
- log.log(3, `${this}: ${cache2[hash].pipeline} reused, count=${cache2[hash].useCount}, (id=${props.id})`)();
22357
+ log.log(3, `${this}: ${cache[hash].pipeline} reused, count=${cache[hash].useCount}, (id=${props.id})`)();
22207
22358
  }
22208
22359
  }
22209
22360
  return pipeline;
@@ -22214,23 +22365,23 @@ fn lighting_getSpecularLightColor(cameraPosition: vec3<f32>, position_worldspace
22214
22365
  return this.device.createComputePipeline(props);
22215
22366
  }
22216
22367
  const allProps = { ...ComputePipeline.defaultProps, ...props };
22217
- const cache2 = this._computePipelineCache;
22368
+ const cache = this._computePipelineCache;
22218
22369
  const hash = this._hashComputePipeline(allProps);
22219
- let pipeline = cache2[hash]?.pipeline;
22370
+ let pipeline = cache[hash]?.pipeline;
22220
22371
  if (!pipeline) {
22221
22372
  pipeline = this.device.createComputePipeline({
22222
22373
  ...allProps,
22223
22374
  id: allProps.id ? `${allProps.id}-cached` : void 0
22224
22375
  });
22225
22376
  pipeline.hash = hash;
22226
- cache2[hash] = { pipeline, useCount: 1 };
22377
+ cache[hash] = { pipeline, useCount: 1 };
22227
22378
  if (this.debug) {
22228
- log.log(3, `${this}: ${pipeline} created, count=${cache2[hash].useCount}`)();
22379
+ log.log(3, `${this}: ${pipeline} created, count=${cache[hash].useCount}`)();
22229
22380
  }
22230
22381
  } else {
22231
- cache2[hash].useCount++;
22382
+ cache[hash].useCount++;
22232
22383
  if (this.debug) {
22233
- log.log(3, `${this}: ${cache2[hash].pipeline} reused, count=${cache2[hash].useCount}, (id=${props.id})`)();
22384
+ log.log(3, `${this}: ${cache[hash].pipeline} reused, count=${cache[hash].useCount}, (id=${props.id})`)();
22234
22385
  }
22235
22386
  }
22236
22387
  return pipeline;
@@ -22240,50 +22391,50 @@ fn lighting_getSpecularLightColor(cameraPosition: vec3<f32>, position_worldspace
22240
22391
  pipeline.destroy();
22241
22392
  return;
22242
22393
  }
22243
- const cache2 = this._getCache(pipeline);
22394
+ const cache = this._getCache(pipeline);
22244
22395
  const hash = pipeline.hash;
22245
- cache2[hash].useCount--;
22246
- if (cache2[hash].useCount === 0) {
22396
+ cache[hash].useCount--;
22397
+ if (cache[hash].useCount === 0) {
22247
22398
  this._destroyPipeline(pipeline);
22248
22399
  if (this.debug) {
22249
22400
  log.log(3, `${this}: ${pipeline} released and destroyed`)();
22250
22401
  }
22251
- } else if (cache2[hash].useCount < 0) {
22402
+ } else if (cache[hash].useCount < 0) {
22252
22403
  log.error(`${this}: ${pipeline} released, useCount < 0, resetting`)();
22253
- cache2[hash].useCount = 0;
22404
+ cache[hash].useCount = 0;
22254
22405
  } else if (this.debug) {
22255
- log.log(3, `${this}: ${pipeline} released, count=${cache2[hash].useCount}`)();
22406
+ log.log(3, `${this}: ${pipeline} released, count=${cache[hash].useCount}`)();
22256
22407
  }
22257
22408
  }
22258
22409
  // PRIVATE
22259
22410
  /** Destroy a cached pipeline, removing it from the cache (depending on destroy policy) */
22260
22411
  _destroyPipeline(pipeline) {
22261
- const cache2 = this._getCache(pipeline);
22412
+ const cache = this._getCache(pipeline);
22262
22413
  switch (this.destroyPolicy) {
22263
22414
  case "never":
22264
22415
  return false;
22265
22416
  case "unused":
22266
- delete cache2[pipeline.hash];
22417
+ delete cache[pipeline.hash];
22267
22418
  pipeline.destroy();
22268
22419
  return true;
22269
22420
  }
22270
22421
  }
22271
22422
  /** Get the appropriate cache for the type of pipeline */
22272
22423
  _getCache(pipeline) {
22273
- let cache2;
22424
+ let cache;
22274
22425
  if (pipeline instanceof ComputePipeline) {
22275
- cache2 = this._computePipelineCache;
22426
+ cache = this._computePipelineCache;
22276
22427
  }
22277
22428
  if (pipeline instanceof RenderPipeline) {
22278
- cache2 = this._renderPipelineCache;
22429
+ cache = this._renderPipelineCache;
22279
22430
  }
22280
- if (!cache2) {
22431
+ if (!cache) {
22281
22432
  throw new Error(`${this}`);
22282
22433
  }
22283
- if (!cache2[pipeline.hash]) {
22434
+ if (!cache[pipeline.hash]) {
22284
22435
  throw new Error(`${this}: ${pipeline} matched incorrect entry`);
22285
22436
  }
22286
- return cache2;
22437
+ return cache;
22287
22438
  }
22288
22439
  /** Calculate a hash based on all the inputs for a compute pipeline */
22289
22440
  _hashComputePipeline(props) {
@@ -22318,7 +22469,7 @@ fn lighting_getSpecularLightColor(cameraPosition: vec3<f32>, position_worldspace
22318
22469
  __publicField(PipelineFactory, "defaultProps", { ...RenderPipeline.defaultProps });
22319
22470
 
22320
22471
  // ../../node_modules/@luma.gl/engine/dist/factories/shader-factory.js
22321
- init_dist4();
22472
+ init_dist5();
22322
22473
  var _ShaderFactory = class {
22323
22474
  /** Returns the default ShaderFactory for the given {@link Device}, creating one if necessary. */
22324
22475
  static getDefaultShaderFactory(device) {
@@ -22499,7 +22650,7 @@ fn lighting_getSpecularLightColor(cameraPosition: vec3<f32>, position_worldspace
22499
22650
  }
22500
22651
 
22501
22652
  // ../../node_modules/@luma.gl/engine/dist/utils/buffer-layout-helper.js
22502
- init_dist4();
22653
+ init_dist5();
22503
22654
  var BufferLayoutHelper = class {
22504
22655
  bufferLayouts;
22505
22656
  constructor(bufferLayouts) {
@@ -22548,7 +22699,7 @@ fn lighting_getSpecularLightColor(cameraPosition: vec3<f32>, position_worldspace
22548
22699
  }
22549
22700
 
22550
22701
  // ../../node_modules/@luma.gl/engine/dist/shader-inputs.js
22551
- init_dist4();
22702
+ init_dist5();
22552
22703
 
22553
22704
  // ../../node_modules/@math.gl/types/dist/is-array.js
22554
22705
  function isTypedArray2(value) {
@@ -22685,7 +22836,7 @@ fn lighting_getSpecularLightColor(cameraPosition: vec3<f32>, position_worldspace
22685
22836
  };
22686
22837
 
22687
22838
  // ../../node_modules/@luma.gl/engine/dist/async-texture/async-texture.js
22688
- init_dist4();
22839
+ init_dist5();
22689
22840
 
22690
22841
  // ../../node_modules/@luma.gl/engine/dist/application-utils/load-file.js
22691
22842
  var pathPrefix = "";
@@ -23620,7 +23771,7 @@ fn lighting_getSpecularLightColor(cameraPosition: vec3<f32>, position_worldspace
23620
23771
  }
23621
23772
 
23622
23773
  // ../../node_modules/@luma.gl/engine/dist/compute/buffer-transform.js
23623
- init_dist4();
23774
+ init_dist5();
23624
23775
  var _BufferTransform = class {
23625
23776
  device;
23626
23777
  model;
@@ -24099,7 +24250,7 @@ ${props.source}` };
24099
24250
  };
24100
24251
 
24101
24252
  // ../../node_modules/@luma.gl/engine/dist/scenegraph/group-node.js
24102
- init_dist4();
24253
+ init_dist5();
24103
24254
  var GroupNode = class extends ScenegraphNode {
24104
24255
  children;
24105
24256
  constructor(props = {}) {
@@ -24933,8 +25084,8 @@ ${props.source}` };
24933
25084
  var self_ = globals.self || globals.window || globals.global || {};
24934
25085
  var window_2 = globals.window || globals.self || globals.global || {};
24935
25086
  var global_2 = globals.global || globals.self || globals.window || {};
24936
- var document_2 = globals.document || {};
24937
- var isBrowser2 = (
25087
+ var document_3 = globals.document || {};
25088
+ var isBrowser3 = (
24938
25089
  // @ts-ignore process does not exist on browser
24939
25090
  Boolean(typeof process !== "object" || String(process) !== "[object process]" || process.browser)
24940
25091
  );
@@ -24946,7 +25097,7 @@ ${props.source}` };
24946
25097
  var VERSION2 = true ? "4.3.3" : "latest";
24947
25098
  var version = VERSION2[0] >= "0" && VERSION2[0] <= "9" ? `v${VERSION2}` : "";
24948
25099
  function createLog() {
24949
- const log3 = new Log({ id: "loaders.gl" });
25100
+ const log3 = new ProbeLog({ id: "loaders.gl" });
24950
25101
  globalThis.loaders = globalThis.loaders || {};
24951
25102
  globalThis.loaders.log = log3;
24952
25103
  globalThis.loaders.version = version;
@@ -25008,8 +25159,8 @@ ${props.source}` };
25008
25159
  var self_2 = globals2.self || globals2.window || globals2.global || {};
25009
25160
  var window_3 = globals2.window || globals2.self || globals2.global || {};
25010
25161
  var global_3 = globals2.global || globals2.self || globals2.window || {};
25011
- var document_3 = globals2.document || {};
25012
- var isBrowser3 = (
25162
+ var document_4 = globals2.document || {};
25163
+ var isBrowser4 = (
25013
25164
  // @ts-ignore process.browser
25014
25165
  typeof process !== "object" || String(process) !== "[object process]" || process.browser
25015
25166
  );
@@ -25159,7 +25310,7 @@ ${props.source}` };
25159
25310
  _loadableURL = "";
25160
25311
  /** Checks if workers are supported on this platform */
25161
25312
  static isSupported() {
25162
- return typeof Worker !== "undefined" && isBrowser3 || typeof NodeWorker !== "undefined" && !isBrowser3;
25313
+ return typeof Worker !== "undefined" && isBrowser4 || typeof NodeWorker !== "undefined" && !isBrowser4;
25163
25314
  }
25164
25315
  constructor(props) {
25165
25316
  const { name: name2, source: source3, url } = props;
@@ -25169,7 +25320,7 @@ ${props.source}` };
25169
25320
  this.url = url;
25170
25321
  this.onMessage = NOOP;
25171
25322
  this.onError = (error) => console.log(error);
25172
- this.worker = isBrowser3 ? this._createBrowserWorker() : this._createNodeWorker();
25323
+ this.worker = isBrowser4 ? this._createBrowserWorker() : this._createNodeWorker();
25173
25324
  }
25174
25325
  /**
25175
25326
  * Terminate this worker thread
@@ -25365,7 +25516,7 @@ ${props.source}` };
25365
25516
  const shouldDestroyWorker = (
25366
25517
  // Workers on Node.js prevent the process from exiting.
25367
25518
  // Until we figure out how to close them before exit, we always destroy them
25368
- !isBrowser3 || // If the pool is destroyed, there is no reason to keep the worker around
25519
+ !isBrowser4 || // If the pool is destroyed, there is no reason to keep the worker around
25369
25520
  this.isDestroyed || // If the app has disabled worker reuse, any completed workers should be destroyed
25370
25521
  !this.reuseWorkers || // If concurrency has been lowered, this worker might be surplus to requirements
25371
25522
  this.count > this._getMaxConcurrency()
@@ -25485,13 +25636,13 @@ ${props.source}` };
25485
25636
  // ../../node_modules/@loaders.gl/worker-utils/dist/lib/worker-api/get-worker-url.js
25486
25637
  function getWorkerURL(worker, options = {}) {
25487
25638
  const workerOptions = options[worker.id] || {};
25488
- const workerFile = isBrowser3 ? `${worker.id}-worker.js` : `${worker.id}-worker-node.js`;
25639
+ const workerFile = isBrowser4 ? `${worker.id}-worker.js` : `${worker.id}-worker-node.js`;
25489
25640
  let url = workerOptions.workerUrl;
25490
25641
  if (!url && worker.id === "compression") {
25491
25642
  url = options.workerUrl;
25492
25643
  }
25493
25644
  if (options._workerType === "test") {
25494
- if (isBrowser3) {
25645
+ if (isBrowser4) {
25495
25646
  url = `modules/${worker.module}/dist/${workerFile}`;
25496
25647
  } else {
25497
25648
  url = `modules/${worker.module}/src/workers/${worker.id}-worker-node.ts`;
@@ -25524,7 +25675,7 @@ ${props.source}` };
25524
25675
  if (!WorkerFarm.isSupported()) {
25525
25676
  return false;
25526
25677
  }
25527
- if (!isBrowser3 && !options?._nodeWorkers) {
25678
+ if (!isBrowser4 && !options?._nodeWorkers) {
25528
25679
  return false;
25529
25680
  }
25530
25681
  return loader.worker && options?.worker;
@@ -26031,7 +26182,7 @@ ${props.source}` };
26031
26182
 
26032
26183
  // node_modules/@loaders.gl/core/dist/lib/loader-utils/loggers.js
26033
26184
  init_dist3();
26034
- var probeLog = new Log({ id: "loaders.gl" });
26185
+ var probeLog = new ProbeLog({ id: "loaders.gl" });
26035
26186
  var NullLog = class {
26036
26187
  log() {
26037
26188
  return () => {
@@ -26085,7 +26236,7 @@ ${props.source}` };
26085
26236
  // How many worker instances should be created for each loader.
26086
26237
  maxMobileConcurrency: 1,
26087
26238
  // How many worker instances should be created for each loader on mobile devices.
26088
- reuseWorkers: isBrowser2,
26239
+ reuseWorkers: isBrowser3,
26089
26240
  // By default reuse workers in browser (Node.js refuses to terminate if browsers are running)
26090
26241
  _nodeWorkers: false,
26091
26242
  // By default do not support node workers
@@ -26496,7 +26647,7 @@ ${props.source}` };
26496
26647
 
26497
26648
  // node_modules/@loaders.gl/core/dist/iterators/make-iterator/make-stream-iterator.js
26498
26649
  function makeStreamIterator(stream, options) {
26499
- return isBrowser2 ? makeBrowserStreamIterator(stream, options) : makeNodeStreamIterator(stream, options);
26650
+ return isBrowser3 ? makeBrowserStreamIterator(stream, options) : makeNodeStreamIterator(stream, options);
26500
26651
  }
26501
26652
  async function* makeBrowserStreamIterator(stream, options) {
26502
26653
  const reader = stream.getReader();
@@ -26732,7 +26883,7 @@ ${props.source}` };
26732
26883
  var IMAGE_SUPPORTED = typeof Image !== "undefined";
26733
26884
  var IMAGE_BITMAP_SUPPORTED = typeof ImageBitmap !== "undefined";
26734
26885
  var NODE_IMAGE_SUPPORTED = Boolean(parseImageNode);
26735
- var DATA_SUPPORTED = isBrowser2 ? true : NODE_IMAGE_SUPPORTED;
26886
+ var DATA_SUPPORTED = isBrowser3 ? true : NODE_IMAGE_SUPPORTED;
26736
26887
  function isImageTypeSupported(type) {
26737
26888
  switch (type) {
26738
26889
  case "auto":
@@ -27134,7 +27285,7 @@ ${props.source}` };
27134
27285
 
27135
27286
  // src/utils/log.ts
27136
27287
  init_dist3();
27137
- var defaultLogger = new Log({ id: "deck" });
27288
+ var defaultLogger = new ProbeLog({ id: "deck" });
27138
27289
  var log_default = defaultLogger;
27139
27290
 
27140
27291
  // src/debug/loggers.ts
@@ -32682,8 +32833,198 @@ void main() {
32682
32833
  return target2;
32683
32834
  }
32684
32835
 
32685
- // src/lib/layer-manager.ts
32686
- init_dist();
32836
+ // node_modules/@probe.gl/stats/dist/utils/hi-res-timestamp.js
32837
+ function getHiResTimestamp3() {
32838
+ let timestamp;
32839
+ if (typeof window !== "undefined" && window.performance) {
32840
+ timestamp = window.performance.now();
32841
+ } else if (typeof process !== "undefined" && process.hrtime) {
32842
+ const timeParts = process.hrtime();
32843
+ timestamp = timeParts[0] * 1e3 + timeParts[1] / 1e6;
32844
+ } else {
32845
+ timestamp = Date.now();
32846
+ }
32847
+ return timestamp;
32848
+ }
32849
+
32850
+ // node_modules/@probe.gl/stats/dist/lib/stat.js
32851
+ var Stat2 = class {
32852
+ constructor(name2, type) {
32853
+ this.sampleSize = 1;
32854
+ this.time = 0;
32855
+ this.count = 0;
32856
+ this.samples = 0;
32857
+ this.lastTiming = 0;
32858
+ this.lastSampleTime = 0;
32859
+ this.lastSampleCount = 0;
32860
+ this._count = 0;
32861
+ this._time = 0;
32862
+ this._samples = 0;
32863
+ this._startTime = 0;
32864
+ this._timerPending = false;
32865
+ this.name = name2;
32866
+ this.type = type;
32867
+ this.reset();
32868
+ }
32869
+ reset() {
32870
+ this.time = 0;
32871
+ this.count = 0;
32872
+ this.samples = 0;
32873
+ this.lastTiming = 0;
32874
+ this.lastSampleTime = 0;
32875
+ this.lastSampleCount = 0;
32876
+ this._count = 0;
32877
+ this._time = 0;
32878
+ this._samples = 0;
32879
+ this._startTime = 0;
32880
+ this._timerPending = false;
32881
+ return this;
32882
+ }
32883
+ setSampleSize(samples) {
32884
+ this.sampleSize = samples;
32885
+ return this;
32886
+ }
32887
+ /** Call to increment count (+1) */
32888
+ incrementCount() {
32889
+ this.addCount(1);
32890
+ return this;
32891
+ }
32892
+ /** Call to decrement count (-1) */
32893
+ decrementCount() {
32894
+ this.subtractCount(1);
32895
+ return this;
32896
+ }
32897
+ /** Increase count */
32898
+ addCount(value) {
32899
+ this._count += value;
32900
+ this._samples++;
32901
+ this._checkSampling();
32902
+ return this;
32903
+ }
32904
+ /** Decrease count */
32905
+ subtractCount(value) {
32906
+ this._count -= value;
32907
+ this._samples++;
32908
+ this._checkSampling();
32909
+ return this;
32910
+ }
32911
+ /** Add an arbitrary timing and bump the count */
32912
+ addTime(time) {
32913
+ this._time += time;
32914
+ this.lastTiming = time;
32915
+ this._samples++;
32916
+ this._checkSampling();
32917
+ return this;
32918
+ }
32919
+ /** Start a timer */
32920
+ timeStart() {
32921
+ this._startTime = getHiResTimestamp3();
32922
+ this._timerPending = true;
32923
+ return this;
32924
+ }
32925
+ /** End a timer. Adds to time and bumps the timing count. */
32926
+ timeEnd() {
32927
+ if (!this._timerPending) {
32928
+ return this;
32929
+ }
32930
+ this.addTime(getHiResTimestamp3() - this._startTime);
32931
+ this._timerPending = false;
32932
+ this._checkSampling();
32933
+ return this;
32934
+ }
32935
+ getSampleAverageCount() {
32936
+ return this.sampleSize > 0 ? this.lastSampleCount / this.sampleSize : 0;
32937
+ }
32938
+ /** Calculate average time / count for the previous window */
32939
+ getSampleAverageTime() {
32940
+ return this.sampleSize > 0 ? this.lastSampleTime / this.sampleSize : 0;
32941
+ }
32942
+ /** Calculate counts per second for the previous window */
32943
+ getSampleHz() {
32944
+ return this.lastSampleTime > 0 ? this.sampleSize / (this.lastSampleTime / 1e3) : 0;
32945
+ }
32946
+ getAverageCount() {
32947
+ return this.samples > 0 ? this.count / this.samples : 0;
32948
+ }
32949
+ /** Calculate average time / count */
32950
+ getAverageTime() {
32951
+ return this.samples > 0 ? this.time / this.samples : 0;
32952
+ }
32953
+ /** Calculate counts per second */
32954
+ getHz() {
32955
+ return this.time > 0 ? this.samples / (this.time / 1e3) : 0;
32956
+ }
32957
+ _checkSampling() {
32958
+ if (this._samples === this.sampleSize) {
32959
+ this.lastSampleTime = this._time;
32960
+ this.lastSampleCount = this._count;
32961
+ this.count += this._count;
32962
+ this.time += this._time;
32963
+ this.samples += this._samples;
32964
+ this._time = 0;
32965
+ this._count = 0;
32966
+ this._samples = 0;
32967
+ }
32968
+ }
32969
+ };
32970
+
32971
+ // node_modules/@probe.gl/stats/dist/lib/stats.js
32972
+ var Stats2 = class {
32973
+ constructor(options) {
32974
+ this.stats = {};
32975
+ this.id = options.id;
32976
+ this.stats = {};
32977
+ this._initializeStats(options.stats);
32978
+ Object.seal(this);
32979
+ }
32980
+ /** Acquire a stat. Create if it doesn't exist. */
32981
+ get(name2, type = "count") {
32982
+ return this._getOrCreate({ name: name2, type });
32983
+ }
32984
+ get size() {
32985
+ return Object.keys(this.stats).length;
32986
+ }
32987
+ /** Reset all stats */
32988
+ reset() {
32989
+ for (const stat of Object.values(this.stats)) {
32990
+ stat.reset();
32991
+ }
32992
+ return this;
32993
+ }
32994
+ forEach(fn) {
32995
+ for (const stat of Object.values(this.stats)) {
32996
+ fn(stat);
32997
+ }
32998
+ }
32999
+ getTable() {
33000
+ const table = {};
33001
+ this.forEach((stat) => {
33002
+ table[stat.name] = {
33003
+ time: stat.time || 0,
33004
+ count: stat.count || 0,
33005
+ average: stat.getAverageTime() || 0,
33006
+ hz: stat.getHz() || 0
33007
+ };
33008
+ });
33009
+ return table;
33010
+ }
33011
+ _initializeStats(stats2 = []) {
33012
+ stats2.forEach((stat) => this._getOrCreate(stat));
33013
+ }
33014
+ _getOrCreate(stat) {
33015
+ const { name: name2, type } = stat;
33016
+ let result = this.stats[name2];
33017
+ if (!result) {
33018
+ if (stat instanceof Stat2) {
33019
+ result = stat;
33020
+ } else {
33021
+ result = new Stat2(name2, type);
33022
+ }
33023
+ this.stats[name2] = result;
33024
+ }
33025
+ return result;
33026
+ }
33027
+ };
32687
33028
 
32688
33029
  // src/lib/resource/resource.ts
32689
33030
  var Resource2 = class {
@@ -32906,7 +33247,7 @@ void main() {
32906
33247
  shaderAssembler: getShaderAssembler(device?.info?.shadingLanguage || "glsl"),
32907
33248
  defaultShaderModules: [layerUniforms],
32908
33249
  renderPass: void 0,
32909
- stats: stats2 || new Stats({ id: "deck.gl" }),
33250
+ stats: stats2 || new Stats2({ id: "deck.gl" }),
32910
33251
  // Make sure context.viewport is not empty on the first layer initialization
32911
33252
  viewport: viewport || new Viewport({ id: "DEFAULT-INITIAL-VIEWPORT" }),
32912
33253
  // Current viewport, exposed to layers for project* function
@@ -36676,10 +37017,9 @@ void main() {
36676
37017
  };
36677
37018
 
36678
37019
  // src/lib/deck.ts
36679
- init_dist4();
36680
- init_dist6();
36681
37020
  init_dist5();
36682
- init_dist();
37021
+ init_dist7();
37022
+ init_dist6();
36683
37023
  function noop3() {
36684
37024
  }
36685
37025
  var getCursor = ({ isDragging }) => isDragging ? "grabbing" : "grab";
@@ -36753,7 +37093,7 @@ void main() {
36753
37093
  isHovering: false,
36754
37094
  isDragging: false
36755
37095
  };
36756
- this.stats = new Stats({ id: "deck.gl" });
37096
+ this.stats = new Stats2({ id: "deck.gl" });
36757
37097
  this.metrics = {
36758
37098
  fps: 0,
36759
37099
  setPropsTime: 0,
@@ -37455,10 +37795,10 @@ void main() {
37455
37795
  Deck.VERSION = VERSION5;
37456
37796
 
37457
37797
  // src/lib/attribute/data-column.ts
37458
- init_dist4();
37798
+ init_dist5();
37459
37799
 
37460
37800
  // src/lib/attribute/gl-utils.ts
37461
- init_dist4();
37801
+ init_dist5();
37462
37802
  function typedArrayFromDataType(type) {
37463
37803
  switch (type) {
37464
37804
  case "float64":
@@ -38381,7 +38721,7 @@ void main() {
38381
38721
  };
38382
38722
 
38383
38723
  // src/transitions/gpu-interpolation-transition.ts
38384
- init_dist5();
38724
+ init_dist6();
38385
38725
 
38386
38726
  // src/utils/array-utils.ts
38387
38727
  function padArrayChunk(options) {
@@ -38455,7 +38795,7 @@ void main() {
38455
38795
  }
38456
38796
 
38457
38797
  // src/transitions/gpu-transition-utils.ts
38458
- init_dist5();
38798
+ init_dist6();
38459
38799
  function cloneAttribute(attribute) {
38460
38800
  const { device, settings, value } = attribute;
38461
38801
  const newAttribute = new Attribute(device, settings);
@@ -39341,8 +39681,8 @@ void main(void) {
39341
39681
  };
39342
39682
 
39343
39683
  // src/lib/layer.ts
39344
- init_dist4();
39345
- init_dist6();
39684
+ init_dist5();
39685
+ init_dist7();
39346
39686
 
39347
39687
  // src/transitions/cpu-interpolation-transition.ts
39348
39688
  var CPUInterpolationTransition = class extends Transition {
@@ -39715,7 +40055,7 @@ void main(void) {
39715
40055
  }
39716
40056
 
39717
40057
  // src/utils/texture.ts
39718
- init_dist4();
40058
+ init_dist5();
39719
40059
  var DEFAULT_TEXTURE_PARAMETERS = {
39720
40060
  minFilter: "linear",
39721
40061
  mipmapFilter: "linear",
@@ -42574,7 +42914,7 @@ void main(void) {
42574
42914
  };
42575
42915
 
42576
42916
  // src/utils/tesselator.ts
42577
- init_dist4();
42917
+ init_dist5();
42578
42918
  var Tesselator = class {
42579
42919
  constructor(opts) {
42580
42920
  this.indexStarts = [0];