azure-maps-control 2.2.3 → 2.2.5

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.
@@ -43619,7 +43619,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
43619
43619
  return Url;
43620
43620
  }());
43621
43621
 
43622
- var version = "2.2.3";
43622
+ var version = "2.2.5";
43623
43623
 
43624
43624
  /**
43625
43625
  * A helper class that provides methods for getting various forms of the map controls current version.
@@ -43660,27 +43660,6 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
43660
43660
  var tooltipContent = document.createElement("span");
43661
43661
  tooltipContent.innerText = name;
43662
43662
  tooltipContent.classList.add('tooltiptext');
43663
- // mimics default edge tooltip theming
43664
- if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
43665
- tooltipContent.classList.add('dark');
43666
- }
43667
- var themeQuery = window.matchMedia('(prefers-color-scheme: dark)');
43668
- var onThemeChange = function (e) {
43669
- var isDark = e.matches;
43670
- if (isDark && !tooltipContent.classList.contains('dark')) {
43671
- tooltipContent.classList.add('dark');
43672
- }
43673
- else if (!isDark && tooltipContent.classList.contains('dark')) {
43674
- tooltipContent.classList.remove('dark');
43675
- }
43676
- };
43677
- // compensate for browsers where MediaQueryList is not derived from EventTarget (pre iOS13 Safari)
43678
- if (typeof themeQuery.addEventListener === 'function') {
43679
- themeQuery.addEventListener('change', function (e) { return onThemeChange(e); });
43680
- }
43681
- else if (typeof themeQuery.addListener === 'function') {
43682
- themeQuery.addListener(function (e) { return onThemeChange(e); });
43683
- }
43684
43663
  if (navigator.userAgent.indexOf('Edg') != -1) {
43685
43664
  tooltipContent.classList.add('edge');
43686
43665
  }
@@ -47850,6 +47829,10 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
47850
47829
  }
47851
47830
  });
47852
47831
  container.addEventListener("focusout", function (event) {
47832
+ if (event.target === currStyleButton) {
47833
+ // on focusout from reveal button -> reset the tabIndex on the styleOpsGrid elements that could have been set to -1 on esc key press
47834
+ Array.from(styleOpsGrid.children).forEach(function (e) { return e.removeAttribute('tabIndex'); });
47835
+ }
47853
47836
  if (!(event.relatedTarget instanceof Node && container.contains(event.relatedTarget))) {
47854
47837
  _this.hasFocus = false;
47855
47838
  if (!_this.hasMouse) {
@@ -47864,6 +47847,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
47864
47847
  if (event.keyCode === 27) {
47865
47848
  event.stopPropagation();
47866
47849
  currStyleButton.focus();
47850
+ Array.from(styleOpsGrid.children).forEach(function (e) { return e.setAttribute('tabIndex', "-1"); });
47867
47851
  if (container.classList.contains(StyleControl.Css.inUse)) {
47868
47852
  container.classList.remove(StyleControl.Css.inUse);
47869
47853
  styleOpsGrid.classList.add("hidden-accessible-element");
@@ -53456,6 +53440,72 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
53456
53440
 
53457
53441
  var cloneDeepWith_1 = cloneDeepWith;
53458
53442
 
53443
+ /**
53444
+ * A hidden HTML element that is used to provide accessibility to shapes such as bubble.
53445
+ */
53446
+ var AccessibleIndicator = /** @class */ (function () {
53447
+ /**
53448
+ * Constructs an AccessibleIndicator object by initializing a hidden `div` element.
53449
+ * @internal
53450
+ */
53451
+ function AccessibleIndicator(options) {
53452
+ var _this = this;
53453
+ /**
53454
+ * Attaches the indicator to the HTML document in a hidden style.
53455
+ * @param map The map.
53456
+ */
53457
+ this.attach = function (map) {
53458
+ // If attaching to a different map, remove popup on current map
53459
+ if (_this.map !== map) {
53460
+ // If map was defined the indicator was attached to another map.
53461
+ if (_this.map) {
53462
+ _this.detachFromCurrentMap();
53463
+ }
53464
+ _this.map = map;
53465
+ _this.map.indicators._getCollectionDiv().appendChild(_this.element);
53466
+ _this.map.indicators.add(_this);
53467
+ }
53468
+ };
53469
+ /**
53470
+ * Removes the indicator from the map and the HTML document.
53471
+ */
53472
+ this.remove = function () {
53473
+ _this.detachFromCurrentMap();
53474
+ _this.element.remove();
53475
+ };
53476
+ /**
53477
+ * Get the DOM element of the indicator.
53478
+ * @returns The DOM element of the indicator.
53479
+ */
53480
+ this.getElement = function () {
53481
+ return _this.element;
53482
+ };
53483
+ this.detachFromCurrentMap = function () {
53484
+ if (_this.map) {
53485
+ _this.map.indicators.remove(_this);
53486
+ delete _this.map;
53487
+ }
53488
+ };
53489
+ this.element = document.createElement("div");
53490
+ // Set tabindex to 0 to make the element focusable.
53491
+ this.element.setAttribute("tabindex", "0");
53492
+ // Set the role to option, and it's container to listbox so the reader will read the listbox as a list.
53493
+ // For example, NVDA will read "data point, {posinset} of {setsize}" when the indicator is focused.
53494
+ this.element.setAttribute("role", "option");
53495
+ if (options === null || options === void 0 ? void 0 : options.setSize)
53496
+ this.element.setAttribute("aria-setsize", options.setSize.toString());
53497
+ if (options === null || options === void 0 ? void 0 : options.positionInSet)
53498
+ this.element.setAttribute("aria-posinset", options.positionInSet.toString());
53499
+ this.element.setAttribute("aria-label", "data point");
53500
+ this.element.classList.add(AccessibleIndicator.Css.hidden);
53501
+ }
53502
+ // CSS class names.
53503
+ AccessibleIndicator.Css = {
53504
+ hidden: "hidden-accessible-element"
53505
+ };
53506
+ return AccessibleIndicator;
53507
+ }());
53508
+
53459
53509
  var __extends$k = (window && window.__extends) || (function () {
53460
53510
  var extendStatics = function (d, b) {
53461
53511
  extendStatics = Object.setPrototypeOf ||
@@ -54314,7 +54364,9 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
54314
54364
  // and can be used to determine which events are ours vs Mapbox's.
54315
54365
  Layer.LayerEvents = {
54316
54366
  layeradded: undefined,
54317
- layerremoved: undefined
54367
+ layerremoved: undefined,
54368
+ focusin: undefined,
54369
+ focusout: undefined,
54318
54370
  };
54319
54371
  return Layer;
54320
54372
  }(EventEmitter));
@@ -54469,6 +54521,14 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
54469
54521
  * @default 8
54470
54522
  */
54471
54523
  _this.radius = 8;
54524
+ /**
54525
+ * @internal
54526
+ * Specifies whether to create focusable indicators for the bubbles.
54527
+ *
54528
+ * Note: We treat this as an internal option for now because we hadn't fully decided the default styling for the indicators.
54529
+ * Once we decide, we will make this a public option or remove it.
54530
+ */
54531
+ _this.createIndicators = false;
54472
54532
  return _this;
54473
54533
  }
54474
54534
  return BubbleLayerOptions;
@@ -54489,6 +54549,58 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
54489
54549
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
54490
54550
  };
54491
54551
  })();
54552
+ var __awaiter$1 = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
54553
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
54554
+ return new (P || (P = Promise))(function (resolve, reject) {
54555
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
54556
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
54557
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
54558
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
54559
+ });
54560
+ };
54561
+ var __generator$1 = (window && window.__generator) || function (thisArg, body) {
54562
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
54563
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
54564
+ function verb(n) { return function (v) { return step([n, v]); }; }
54565
+ function step(op) {
54566
+ if (f) throw new TypeError("Generator is already executing.");
54567
+ while (_) try {
54568
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
54569
+ if (y = 0, t) op = [op[0] & 2, t.value];
54570
+ switch (op[0]) {
54571
+ case 0: case 1: t = op; break;
54572
+ case 4: _.label++; return { value: op[1], done: false };
54573
+ case 5: _.label++; y = op[1]; op = [0]; continue;
54574
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
54575
+ default:
54576
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
54577
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
54578
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
54579
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
54580
+ if (t[2]) _.ops.pop();
54581
+ _.trys.pop(); continue;
54582
+ }
54583
+ op = body.call(thisArg, _);
54584
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
54585
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
54586
+ }
54587
+ };
54588
+ var __read$3 = (window && window.__read) || function (o, n) {
54589
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
54590
+ if (!m) return o;
54591
+ var i = m.call(o), r, ar = [], e;
54592
+ try {
54593
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
54594
+ }
54595
+ catch (error) { e = { error: error }; }
54596
+ finally {
54597
+ try {
54598
+ if (r && !r.done && (m = i["return"])) m.call(i);
54599
+ }
54600
+ finally { if (e) throw e.error; }
54601
+ }
54602
+ return ar;
54603
+ };
54492
54604
  /**
54493
54605
  * Renders Point objects as scalable circles (bubbles).
54494
54606
  */
@@ -54502,6 +54614,72 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
54502
54614
  */
54503
54615
  function BubbleLayer(source, id, options) {
54504
54616
  var _this = _super.call(this, id) || this;
54617
+ _this.accessibleIndicator = [];
54618
+ _this.setAccessibleIndicator = function () { return __awaiter$1(_this, void 0, void 0, function () {
54619
+ var features, createIndicator, insertHiddenBefore, attach;
54620
+ var _this = this;
54621
+ return __generator$1(this, function (_a) {
54622
+ this.accessibleIndicator.forEach(function (indicator) { return indicator.remove(); });
54623
+ this.accessibleIndicator = [];
54624
+ features = this.map.layers.getRenderedShapes(this.map.getCamera().bounds, this);
54625
+ createIndicator = function (features, idx) {
54626
+ var bubbleFeature = features[idx];
54627
+ var indicator = new AccessibleIndicator({ positionInSet: idx + 1, setSize: features.length });
54628
+ var element = indicator.getElement();
54629
+ var _a = __read$3(_this.map.positionsToPixels([bubbleFeature.data.geometry.coordinates]), 1), pixel = _a[0];
54630
+ element.addEventListener('focusin', function (event) {
54631
+ _this.accessibleIndicator.filter(function (p) { return p !== indicator; }).forEach(function (popup) { return popup.remove(); });
54632
+ // insert previous and next popups
54633
+ if (idx - 1 >= 0) {
54634
+ insertHiddenBefore(indicator, createIndicator(features, idx - 1));
54635
+ }
54636
+ if (idx + 1 < features.length) {
54637
+ attach(createIndicator(features, idx + 1));
54638
+ }
54639
+ _this.map._getMap().setPaintProperty(_this.id, 'circle-stroke-color', ['case', ['==', ['get', '_azureMapsShapeId'], bubbleFeature.data.id], '#000000', _this.options.strokeColor]);
54640
+ var focusEvent = {
54641
+ target: element,
54642
+ type: 'focusin',
54643
+ map: _this.map,
54644
+ shape: bubbleFeature,
54645
+ originalEvent: event,
54646
+ pixel: pixel
54647
+ };
54648
+ _this._invokeEvent('focusin', focusEvent);
54649
+ });
54650
+ element.addEventListener('focusout', function (event) {
54651
+ _this.map._getMap().setPaintProperty(_this.id, 'circle-stroke-color', ['case', ['==', ['get', '_azureMapsShapeId'], bubbleFeature.data.id], _this.options.strokeColor, _this.options.strokeColor]);
54652
+ var focusEvent = {
54653
+ target: element,
54654
+ type: 'focusout',
54655
+ map: _this.map,
54656
+ shape: bubbleFeature,
54657
+ originalEvent: event,
54658
+ pixel: pixel
54659
+ };
54660
+ _this._invokeEvent('focusout', focusEvent);
54661
+ });
54662
+ _this.accessibleIndicator.push(indicator);
54663
+ return indicator;
54664
+ };
54665
+ insertHiddenBefore = function (base, toInsert) {
54666
+ toInsert.attach(_this.map);
54667
+ var elementToSwapIn = toInsert.getElement();
54668
+ var baseElement = base.getElement();
54669
+ baseElement.parentElement.insertBefore(elementToSwapIn, baseElement);
54670
+ };
54671
+ attach = function (popup) {
54672
+ popup.attach(_this.map);
54673
+ };
54674
+ if (features.length > 0) {
54675
+ attach(createIndicator(features, 0));
54676
+ }
54677
+ if (features.length > 1) {
54678
+ attach(createIndicator(features, features.length - 1));
54679
+ }
54680
+ return [2 /*return*/];
54681
+ });
54682
+ }); };
54505
54683
  _this.options = new BubbleLayerOptions().merge(cloneDeepWith_1(options, BubbleLayerOptions._cloneCustomizer));
54506
54684
  _this.options.source = source || _this.options.source;
54507
54685
  return _this;
@@ -54549,6 +54727,20 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
54549
54727
  }
54550
54728
  this.options = newOptions;
54551
54729
  };
54730
+ BubbleLayer.prototype.onAdd = function (map) {
54731
+ _super.prototype.onAdd.call(this, map);
54732
+ if (this.options.createIndicators) {
54733
+ map.events.addOnce('idle', this.setAccessibleIndicator);
54734
+ map.events.add('moveend', this.setAccessibleIndicator);
54735
+ }
54736
+ };
54737
+ BubbleLayer.prototype.onRemove = function () {
54738
+ _super.prototype.onRemove.call(this);
54739
+ if (this.options.createIndicators) {
54740
+ this.map.events.remove('idle', this.setAccessibleIndicator);
54741
+ this.map.events.remove('moveend', this.setAccessibleIndicator);
54742
+ }
54743
+ };
54552
54744
  /**
54553
54745
  * @internal
54554
54746
  */
@@ -55667,7 +55859,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
55667
55859
  };
55668
55860
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
55669
55861
  };
55670
- var __read$3 = (window && window.__read) || function (o, n) {
55862
+ var __read$4 = (window && window.__read) || function (o, n) {
55671
55863
  var m = typeof Symbol === "function" && o[Symbol.iterator];
55672
55864
  if (!m) return o;
55673
55865
  var i = m.call(o), r, ar = [], e;
@@ -55758,7 +55950,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
55758
55950
  finally { if (e_1) throw e_1.error; }
55759
55951
  }
55760
55952
  // Then execute the standard merge behavior.
55761
- var merged = _super.prototype.merge.apply(this, __spreadArray([], __read$3(valueList)));
55953
+ var merged = _super.prototype.merge.apply(this, __spreadArray([], __read$4(valueList)));
55762
55954
  if (isNewColorSet) {
55763
55955
  merged.fillPattern = undefined;
55764
55956
  }
@@ -57089,7 +57281,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
57089
57281
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
57090
57282
  };
57091
57283
  })();
57092
- var __read$4 = (window && window.__read) || function (o, n) {
57284
+ var __read$5 = (window && window.__read) || function (o, n) {
57093
57285
  var m = typeof Symbol === "function" && o[Symbol.iterator];
57094
57286
  if (!m) return o;
57095
57287
  var i = m.call(o), r, ar = [], e;
@@ -57201,7 +57393,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
57201
57393
  */
57202
57394
  _this._onDown = function (event) {
57203
57395
  _this.map.popups._addDraggedPopup(_this);
57204
- var _a = __read$4(_this.map.positionsToPixels([_this.options.position]), 1), anchorPixel = _a[0];
57396
+ var _a = __read$5(_this.map.positionsToPixels([_this.options.position]), 1), anchorPixel = _a[0];
57205
57397
  if (event.type === "mousedown") {
57206
57398
  event = event;
57207
57399
  _this.dragOffset = [
@@ -57365,7 +57557,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
57365
57557
  pixel[0] + this.dragOffset[0],
57366
57558
  pixel[1] + this.dragOffset[1]
57367
57559
  ];
57368
- var _a = __read$4(this.map.pixelsToPositions([anchorPixel]), 1), anchorPos = _a[0];
57560
+ var _a = __read$5(this.map.pixelsToPositions([anchorPixel]), 1), anchorPos = _a[0];
57369
57561
  this.options.position = anchorPos;
57370
57562
  this.marker.setLngLat(this.options.position);
57371
57563
  this._invokeEvent("drag", { type: "drag", target: this });
@@ -57519,7 +57711,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
57519
57711
  posY = pt.y;
57520
57712
  }
57521
57713
  else {
57522
- var _a = __read$4(map.positionsToPixels([options.position]), 1), _b = __read$4(_a[0], 2), x = _b[0], y = _b[1];
57714
+ var _a = __read$5(map.positionsToPixels([options.position]), 1), _b = __read$5(_a[0], 2), x = _b[0], y = _b[1];
57523
57715
  posX = x;
57524
57716
  posY = y;
57525
57717
  }
@@ -58436,7 +58628,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
58436
58628
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
58437
58629
  };
58438
58630
  })();
58439
- var __read$5 = (window && window.__read) || function (o, n) {
58631
+ var __read$6 = (window && window.__read) || function (o, n) {
58440
58632
  var m = typeof Symbol === "function" && o[Symbol.iterator];
58441
58633
  if (!m) return o;
58442
58634
  var i = m.call(o), r, ar = [], e;
@@ -58589,7 +58781,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
58589
58781
  for (var _i = 0; _i < arguments.length; _i++) {
58590
58782
  valueList[_i] = arguments[_i];
58591
58783
  }
58592
- var merged = _super.prototype.merge.apply(this, __spreadArray$1([], __read$5(valueList)));
58784
+ var merged = _super.prototype.merge.apply(this, __spreadArray$1([], __read$6(valueList)));
58593
58785
  if (merged.authType === exports.AuthenticationType.subscriptionKey) {
58594
58786
  merged.authContext = merged.aadAppId = merged.getToken = undefined;
58595
58787
  }
@@ -59288,7 +59480,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
59288
59480
  return __assign$4.apply(this, arguments);
59289
59481
  };
59290
59482
 
59291
- var __awaiter$1 = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
59483
+ var __awaiter$2 = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
59292
59484
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
59293
59485
  return new (P || (P = Promise))(function (resolve, reject) {
59294
59486
  function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
@@ -59297,7 +59489,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
59297
59489
  step((generator = generator.apply(thisArg, _arguments || [])).next());
59298
59490
  });
59299
59491
  };
59300
- var __generator$1 = (window && window.__generator) || function (thisArg, body) {
59492
+ var __generator$2 = (window && window.__generator) || function (thisArg, body) {
59301
59493
  var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
59302
59494
  return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
59303
59495
  function verb(n) { return function (v) { return step([n, v]); }; }
@@ -59324,7 +59516,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
59324
59516
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
59325
59517
  }
59326
59518
  };
59327
- var __read$6 = (window && window.__read) || function (o, n) {
59519
+ var __read$7 = (window && window.__read) || function (o, n) {
59328
59520
  var m = typeof Symbol === "function" && o[Symbol.iterator];
59329
59521
  if (!m) return o;
59330
59522
  var i = m.call(o), r, ar = [], e;
@@ -59340,6 +59532,11 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
59340
59532
  }
59341
59533
  return ar;
59342
59534
  };
59535
+ var __spreadArray$2 = (window && window.__spreadArray) || function (to, from) {
59536
+ for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
59537
+ to[j] = from[i];
59538
+ return to;
59539
+ };
59343
59540
 
59344
59541
  /**
59345
59542
  * @private
@@ -59476,14 +59673,17 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
59476
59673
  var trafficOptions = _this.map.getTraffic();
59477
59674
  if (trafficOptions.flow !== "none") {
59478
59675
  var trafficFlowComponent = _this.map.layers.getLayerById("traffic_" + trafficOptions.flow);
59676
+ if (!trafficFlowComponent && ['absolute', 'relative-delay'].includes(trafficOptions.flow)) {
59677
+ // Fallback to relative if deprecated flow type is used
59678
+ trafficFlowComponent = _this.map.layers.getLayerById("traffic_relative");
59679
+ }
59479
59680
  if (trafficFlowComponent) {
59480
- _this.lastFlowMode = trafficOptions.flow;
59681
+ _this.lastFlowMode = trafficFlowComponent.getId().replace("traffic_", "");
59481
59682
  trafficFlowComponent._updateLayoutProperty("visibility", "visible", "none");
59482
59683
  }
59483
59684
  }
59484
59685
  };
59485
59686
  this.removeFromMap = function () {
59486
- var trafficOptions = _this.map.getTraffic();
59487
59687
  if (_this.lastFlowMode != "none") {
59488
59688
  var trafficFlowComponent = _this.map.layers.getLayerById("traffic_" + _this.lastFlowMode);
59489
59689
  if (trafficFlowComponent) {
@@ -60217,7 +60417,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
60217
60417
  };
60218
60418
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
60219
60419
  };
60220
- var __read$7 = (window && window.__read) || function (o, n) {
60420
+ var __read$8 = (window && window.__read) || function (o, n) {
60221
60421
  var m = typeof Symbol === "function" && o[Symbol.iterator];
60222
60422
  if (!m) return o;
60223
60423
  var i = m.call(o), r, ar = [], e;
@@ -60415,7 +60615,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
60415
60615
  var callbacks = new Dictionary(this.mapCallbackHandler.getEventCallbacks(eventType, layer));
60416
60616
  if (callbacks) {
60417
60617
  callbacks.forEach(function (_a, callback) {
60418
- var _b = __read$7(_a, 2), _ = _b[0], once = _b[1];
60618
+ var _b = __read$8(_a, 2), _ = _b[0], once = _b[1];
60419
60619
  // Invoking a listener this way circumvents the fire once logic in the modified callback.
60420
60620
  // So we check if the callback was added as a fire once and if so remove it here.
60421
60621
  if (once) {
@@ -60523,7 +60723,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
60523
60723
  eventDict.forEach(function (callbackDict, eventType) {
60524
60724
  callbackDict.forEach(function (_a) {
60525
60725
  var e_6, _b;
60526
- var _c = __read$7(_a, 1), modifiedCallback = _c[0];
60726
+ var _c = __read$8(_a, 1), modifiedCallback = _c[0];
60527
60727
  try {
60528
60728
  for (var _d = __values$a(layer._getLayerIds()), _e = _d.next(); !_e.done; _e = _d.next()) {
60529
60729
  var mbLayerId = _e.value;
@@ -60556,7 +60756,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
60556
60756
  eventDict.forEach(function (callbackDict, eventType) {
60557
60757
  callbackDict.forEach(function (_a) {
60558
60758
  var e_7, _b;
60559
- var _c = __read$7(_a, 1), modifiedCallback = _c[0];
60759
+ var _c = __read$8(_a, 1), modifiedCallback = _c[0];
60560
60760
  try {
60561
60761
  for (var _d = __values$a(layer._getLayerIds()), _e = _d.next(); !_e.done; _e = _d.next()) {
60562
60762
  var mbLayerId = _e.value;
@@ -60955,7 +61155,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
60955
61155
  };
60956
61156
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
60957
61157
  };
60958
- var __read$8 = (window && window.__read) || function (o, n) {
61158
+ var __read$9 = (window && window.__read) || function (o, n) {
60959
61159
  var m = typeof Symbol === "function" && o[Symbol.iterator];
60960
61160
  if (!m) return o;
60961
61161
  var i = m.call(o), r, ar = [], e;
@@ -60971,7 +61171,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
60971
61171
  }
60972
61172
  return ar;
60973
61173
  };
60974
- var __spreadArray$2 = (window && window.__spreadArray) || function (to, from) {
61174
+ var __spreadArray$3 = (window && window.__spreadArray) || function (to, from) {
60975
61175
  for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
60976
61176
  to[j] = from[i];
60977
61177
  return to;
@@ -61407,7 +61607,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
61407
61607
  // If a specified layer hasn't been added to the map throw an error.
61408
61608
  var index = this_1.layerIndex.findIndex(function (l) { return l.getId() === layerId; });
61409
61609
  if (index > -1) {
61410
- layerIds.push.apply(layerIds, __spreadArray$2([], __read$8(this_1.layerIndex[index]._getLayerIds()
61610
+ layerIds.push.apply(layerIds, __spreadArray$3([], __read$9(this_1.layerIndex[index]._getLayerIds()
61411
61611
  .filter(function (id) { return !!_this.map._getMap().getLayer(id); }))));
61412
61612
  }
61413
61613
  else {
@@ -62150,7 +62350,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
62150
62350
  };
62151
62351
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
62152
62352
  };
62153
- var __read$9 = (window && window.__read) || function (o, n) {
62353
+ var __read$a = (window && window.__read) || function (o, n) {
62154
62354
  var m = typeof Symbol === "function" && o[Symbol.iterator];
62155
62355
  if (!m) return o;
62156
62356
  var i = m.call(o), r, ar = [], e;
@@ -62166,7 +62366,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
62166
62366
  }
62167
62367
  return ar;
62168
62368
  };
62169
- var __spreadArray$3 = (window && window.__spreadArray) || function (to, from) {
62369
+ var __spreadArray$4 = (window && window.__spreadArray) || function (to, from) {
62170
62370
  for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
62171
62371
  to[j] = from[i];
62172
62372
  return to;
@@ -62241,7 +62441,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
62241
62441
  }
62242
62442
  finally { if (e_1) throw e_1.error; }
62243
62443
  }
62244
- return _super.prototype.merge.apply(this, __spreadArray$3([], __read$9(valuesList)));
62444
+ return _super.prototype.merge.apply(this, __spreadArray$4([], __read$a(valuesList)));
62245
62445
  };
62246
62446
  return CameraBoundsOptions;
62247
62447
  }(Options));
@@ -62714,7 +62914,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
62714
62914
  };
62715
62915
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
62716
62916
  };
62717
- var __read$a = (window && window.__read) || function (o, n) {
62917
+ var __read$b = (window && window.__read) || function (o, n) {
62718
62918
  var m = typeof Symbol === "function" && o[Symbol.iterator];
62719
62919
  if (!m) return o;
62720
62920
  var i = m.call(o), r, ar = [], e;
@@ -62730,7 +62930,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
62730
62930
  }
62731
62931
  return ar;
62732
62932
  };
62733
- var __spreadArray$4 = (window && window.__spreadArray) || function (to, from) {
62933
+ var __spreadArray$5 = (window && window.__spreadArray) || function (to, from) {
62734
62934
  for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
62735
62935
  to[j] = from[i];
62736
62936
  return to;
@@ -62889,7 +63089,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
62889
63089
  finally { if (e_1) throw e_1.error; }
62890
63090
  }
62891
63091
  // Then execute the standard merge behavior.
62892
- return _super.prototype.merge.apply(this, __spreadArray$4([], __read$a(valueList)));
63092
+ return _super.prototype.merge.apply(this, __spreadArray$5([], __read$b(valueList)));
62893
63093
  };
62894
63094
  return StyleOptions;
62895
63095
  }(Options));
@@ -62931,7 +63131,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
62931
63131
  };
62932
63132
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
62933
63133
  };
62934
- var __read$b = (window && window.__read) || function (o, n) {
63134
+ var __read$c = (window && window.__read) || function (o, n) {
62935
63135
  var m = typeof Symbol === "function" && o[Symbol.iterator];
62936
63136
  if (!m) return o;
62937
63137
  var i = m.call(o), r, ar = [], e;
@@ -62947,7 +63147,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
62947
63147
  }
62948
63148
  return ar;
62949
63149
  };
62950
- var __spreadArray$5 = (window && window.__spreadArray) || function (to, from) {
63150
+ var __spreadArray$6 = (window && window.__spreadArray) || function (to, from) {
62951
63151
  for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
62952
63152
  to[j] = from[i];
62953
63153
  return to;
@@ -63182,10 +63382,10 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
63182
63382
  // won't change default behavior in Options as usually that's what desired
63183
63383
  // instead capture it here and reassign.
63184
63384
  var currentTransforms = this._transformers;
63185
- var transformersToMerge = valueList ? valueList.filter(function (value) { return value !== undefined; }).reduce(function (flattened, value) { return __spreadArray$5(__spreadArray$5([], __read$b(flattened)), __read$b(value._transformers || [])); }, []) : [];
63385
+ var transformersToMerge = valueList ? valueList.filter(function (value) { return value !== undefined; }).reduce(function (flattened, value) { return __spreadArray$6(__spreadArray$6([], __read$c(flattened)), __read$c(value._transformers || [])); }, []) : [];
63186
63386
  // Then execute the standard merge behavior.
63187
63387
  // If subscription key auth method isn't being used then the subscription key property should be undefined.
63188
- var merged = _super.prototype.merge.apply(this, __spreadArray$5([], __read$b(valueList)));
63388
+ var merged = _super.prototype.merge.apply(this, __spreadArray$6([], __read$c(valueList)));
63189
63389
  if (merged.authOptions.authType !== exports.AuthenticationType.subscriptionKey) {
63190
63390
  merged["subscription-key"] = merged.subscriptionKey = undefined;
63191
63391
  }
@@ -63197,7 +63397,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
63197
63397
  if (merged.mapConfiguration && typeof merged.mapConfiguration !== 'string') {
63198
63398
  merged.mapConfiguration = __assign$7(__assign$7({}, merged.mapConfiguration), { defaultConfiguration: merged.mapConfiguration.defaultConfiguration || merged.mapConfiguration['defaultStyle'], configurations: merged.mapConfiguration.configurations || merged.mapConfiguration['styles'] });
63199
63399
  }
63200
- this._transformers = __spreadArray$5(__spreadArray$5([], __read$b(currentTransforms || [])), __read$b(transformersToMerge.filter(function (toMerge) { return !currentTransforms.includes(toMerge); })));
63400
+ this._transformers = __spreadArray$6(__spreadArray$6([], __read$c(currentTransforms || [])), __read$c(transformersToMerge.filter(function (toMerge) { return !currentTransforms.includes(toMerge); })));
63201
63401
  if (this.transformRequest && !this._transformers.includes(this.transformRequest)) {
63202
63402
  this._transformers.push(this.transformRequest);
63203
63403
  }
@@ -63393,7 +63593,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
63393
63593
  };
63394
63594
  return __assign$8.apply(this, arguments);
63395
63595
  };
63396
- var __awaiter$2 = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
63596
+ var __awaiter$3 = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
63397
63597
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
63398
63598
  return new (P || (P = Promise))(function (resolve, reject) {
63399
63599
  function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
@@ -63402,7 +63602,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
63402
63602
  step((generator = generator.apply(thisArg, _arguments || [])).next());
63403
63603
  });
63404
63604
  };
63405
- var __generator$2 = (window && window.__generator) || function (thisArg, body) {
63605
+ var __generator$3 = (window && window.__generator) || function (thisArg, body) {
63406
63606
  var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
63407
63607
  return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
63408
63608
  function verb(n) { return function (v) { return step([n, v]); }; }
@@ -63429,7 +63629,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
63429
63629
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
63430
63630
  }
63431
63631
  };
63432
- var __read$c = (window && window.__read) || function (o, n) {
63632
+ var __read$d = (window && window.__read) || function (o, n) {
63433
63633
  var m = typeof Symbol === "function" && o[Symbol.iterator];
63434
63634
  if (!m) return o;
63435
63635
  var i = m.call(o), r, ar = [], e;
@@ -63445,7 +63645,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
63445
63645
  }
63446
63646
  return ar;
63447
63647
  };
63448
- var __spreadArray$6 = (window && window.__spreadArray) || function (to, from) {
63648
+ var __spreadArray$7 = (window && window.__spreadArray) || function (to, from) {
63449
63649
  for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
63450
63650
  to[j] = from[i];
63451
63651
  return to;
@@ -63496,9 +63696,9 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
63496
63696
  _this._progressiveLoadingState.mapStyle = currentMapStyle;
63497
63697
  // Select deferrable layers
63498
63698
  var deferredLayers = Object.entries(layerGroupLayers).reduce(function (deferred, _a) {
63499
- var _b = __read$c(_a, 2), groupName = _b[0], layers = _b[1];
63699
+ var _b = __read$d(_a, 2), groupName = _b[0], layers = _b[1];
63500
63700
  var isInInitialLayerGroup = validInitLayerGroups.includes(groupName);
63501
- return __spreadArray$6(__spreadArray$6([], __read$c(deferred)), __read$c(layers.filter(function (layer) {
63701
+ return __spreadArray$7(__spreadArray$7([], __read$d(deferred)), __read$d(layers.filter(function (layer) {
63502
63702
  var _a;
63503
63703
  // Exclude custom layers
63504
63704
  if (layer.type === 'custom')
@@ -63579,9 +63779,9 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
63579
63779
  || definitions.configurations[0];
63580
63780
  }
63581
63781
  };
63582
- this._lookUpAsync = function (options) { return __awaiter$2(_this, void 0, void 0, function () {
63782
+ this._lookUpAsync = function (options) { return __awaiter$3(_this, void 0, void 0, function () {
63583
63783
  var definitions, result;
63584
- return __generator$2(this, function (_a) {
63784
+ return __generator$3(this, function (_a) {
63585
63785
  switch (_a.label) {
63586
63786
  case 0: return [4 /*yield*/, this.definitions()];
63587
63787
  case 1:
@@ -63690,7 +63890,12 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
63690
63890
  domain: _this.serviceOptions.staticAssetsDomain,
63691
63891
  path: constants.stylePath + "/" + constants.styleResourcePath + "/" + style.name,
63692
63892
  queryParams: {
63693
- styleVersion: _this.serviceOptions.styleDefinitionsVersion,
63893
+ // Use the style version from the API response if it's available,
63894
+ // otherwise fallback to the version specified in the serviceOptions.
63895
+ // This is needed for flight testing the 2023-01-01 style version.
63896
+ styleVersion: definitions.version !== undefined && definitions.version !== null
63897
+ ? definitions.version
63898
+ : _this.serviceOptions.styleDefinitionsVersion
63694
63899
  // thus far we don't need to differentiate based on parameter here, as stylePatch will be called on cached styles as well
63695
63900
  //language: styleOptions.language
63696
63901
  },
@@ -63762,8 +63967,8 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
63762
63967
  return style.theme.toLowerCase();
63763
63968
  };
63764
63969
  StyleManager.prototype.getThemeAsync = function (styleOptions) {
63765
- return __awaiter$2(this, void 0, void 0, function () {
63766
- return __generator$2(this, function (_a) {
63970
+ return __awaiter$3(this, void 0, void 0, function () {
63971
+ return __generator$3(this, function (_a) {
63767
63972
  switch (_a.label) {
63768
63973
  case 0: return [4 /*yield*/, this._lookUpAsync(styleOptions)];
63769
63974
  case 1: return [2 /*return*/, (_a.sent()).theme];
@@ -63853,9 +64058,11 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
63853
64058
  setLayerVisibility(nextLayer, styleOptions.showBuildingModels ? 'visible' : 'none');
63854
64059
  }
63855
64060
  // Set visibility of traffic layers depending on traffic settings.
63856
- if (trafficOptions.flow !== 'none' &&
63857
- layerGroup === "traffic_" + trafficOptions.flow &&
63858
- nextLayer.type == 'line') {
64061
+ if (trafficOptions.flow !== 'none' && nextLayer.type == 'line' &&
64062
+ (layerGroup === "traffic_" + trafficOptions.flow ||
64063
+ // Check if deprecated flow types are used and the layer is a bing-traffic layer.
64064
+ // Needed for backwards compatibility in Bing styles to support deprecated flow types.
64065
+ (['absolute', 'relative-delay'].includes(trafficOptions.flow) && nextLayer['source'] === "bing-traffic"))) {
63859
64066
  setLayerVisibility(nextLayer, 'visible');
63860
64067
  }
63861
64068
  // Set visibility of labels
@@ -63884,7 +64091,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
63884
64091
  // A FundamentalMapLayer (grouped layer) representation of the next style must be built.
63885
64092
  var previousLayers = this.map.layers.getLayers();
63886
64093
  var nextLayers = Object.entries(layerGroupLayers).map(function (_a) {
63887
- var _b = __read$c(_a, 2), layerGroupName = _b[0], layerGroupMapboxLayers = _b[1];
64094
+ var _b = __read$d(_a, 2), layerGroupName = _b[0], layerGroupMapboxLayers = _b[1];
63888
64095
  return _this._buildFundamentalLayerFrom(layerGroupMapboxLayers, layerGroupName);
63889
64096
  });
63890
64097
  // Update FundamentalMapLayers in LayerManager
@@ -63981,27 +64188,30 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
63981
64188
  * Fetches a json resource at the specified domain and path.
63982
64189
  */
63983
64190
  StyleManager.prototype._request = function (domain, path, resourceType, customQueryParams) {
63984
- var _a;
64191
+ var _a, _b;
63985
64192
  if (customQueryParams === void 0) { customQueryParams = {}; }
63986
- return __awaiter$2(this, void 0, void 0, function () {
64193
+ return __awaiter$3(this, void 0, void 0, function () {
63987
64194
  var requestParams, fetchOptions;
63988
- var _b;
63989
- return __generator$2(this, function (_c) {
63990
- switch (_c.label) {
64195
+ var _c;
64196
+ return __generator$3(this, function (_d) {
64197
+ switch (_d.label) {
63991
64198
  case 0:
63992
64199
  requestParams = {
63993
64200
  url: new Url({
63994
64201
  protocol: "https",
63995
64202
  domain: domain,
63996
64203
  path: path,
63997
- queryParams: __assign$8((_b = {}, _b[constants.apiVersionQueryParameter] = this.serviceOptions.styleAPIVersion, _b), customQueryParams)
64204
+ queryParams: __assign$8((_c = {}, _c[constants.apiVersionQueryParameter] = this.serviceOptions.styleAPIVersion,
64205
+ // Generate a hash code to avoid cache conflict
64206
+ // TODO: Remove this once style version 2023-01-01 is publicly available
64207
+ _c.hash = StyleManager._hashCode((_a = this.map.authentication) === null || _a === void 0 ? void 0 : _a.getToken()), _c), customQueryParams)
63998
64208
  }).toString()
63999
64209
  };
64000
64210
  if (typeof this.serviceOptions.transformRequest === "function" && resourceType) {
64001
64211
  // If a transformRequest(...) was specified use it.
64002
64212
  requestParams = this.serviceOptions.transformRequest(requestParams.url, resourceType);
64003
64213
  }
64004
- (_a = this.map.authentication) === null || _a === void 0 ? void 0 : _a.signRequest(requestParams);
64214
+ (_b = this.map.authentication) === null || _b === void 0 ? void 0 : _b.signRequest(requestParams);
64005
64215
  fetchOptions = {
64006
64216
  method: "GET",
64007
64217
  mode: "cors",
@@ -64018,11 +64228,26 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
64018
64228
  throw new Error("HTTP " + response.status + ": " + response.statusText + " ");
64019
64229
  }
64020
64230
  })];
64021
- case 1: return [2 /*return*/, _c.sent()];
64231
+ case 1: return [2 /*return*/, _d.sent()];
64022
64232
  }
64023
64233
  });
64024
64234
  });
64025
64235
  };
64236
+ /**
64237
+ * A basic helper function to generate a hash from an input string.
64238
+ */
64239
+ StyleManager._hashCode = function (str) {
64240
+ if (str === void 0) { str = ""; }
64241
+ var chr, hash = 0;
64242
+ if (!str)
64243
+ return hash;
64244
+ for (var i = 0; i < str.length; i++) {
64245
+ chr = str.charCodeAt(i);
64246
+ hash = (hash << 5) - hash + chr;
64247
+ hash |= 0; // Convert to 32bit integer
64248
+ }
64249
+ return hash;
64250
+ };
64026
64251
  return StyleManager;
64027
64252
  }());
64028
64253
 
@@ -64031,6 +64256,123 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
64031
64256
  */
64032
64257
  var isHMREnabled = function () { return 'ENVIRONMENT' in window && !!window['ENVIRONMENT']['hmr']; };
64033
64258
 
64259
+ var __values$j = (window && window.__values) || function(o) {
64260
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
64261
+ if (m) return m.call(o);
64262
+ if (o && typeof o.length === "number") return {
64263
+ next: function () {
64264
+ if (o && i >= o.length) o = void 0;
64265
+ return { value: o && o[i++], done: !o };
64266
+ }
64267
+ };
64268
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
64269
+ };
64270
+ /**
64271
+ * @internal
64272
+ * A manager for the map control's hidden indicators.
64273
+ * Exposed through the `indicators` property of the `atlas.Map` class.
64274
+ * Cannot be instantiated by the user.
64275
+ */
64276
+ var AccessibleIndicatorManager = /** @class */ (function () {
64277
+ /**
64278
+ * Constructs the indicator manager to be exposed only through the `indicators` property of the `Map` class.
64279
+ * @param map The map whose indicators are being managed by this.
64280
+ * @internal
64281
+ */
64282
+ function AccessibleIndicatorManager(map) {
64283
+ this.map = map;
64284
+ this.indicators = new Set();
64285
+ }
64286
+ /**
64287
+ * Adds an indicator to the map
64288
+ * @param indicator The indicator(s) to add.
64289
+ */
64290
+ AccessibleIndicatorManager.prototype.add = function (indicator) {
64291
+ var e_1, _a;
64292
+ indicator = Array.isArray(indicator) ? indicator : [indicator];
64293
+ try {
64294
+ for (var indicator_1 = __values$j(indicator), indicator_1_1 = indicator_1.next(); !indicator_1_1.done; indicator_1_1 = indicator_1.next()) {
64295
+ var i = indicator_1_1.value;
64296
+ if (!this.indicators.has(i)) {
64297
+ this.indicators.add(i);
64298
+ i.attach(this.map);
64299
+ }
64300
+ }
64301
+ }
64302
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
64303
+ finally {
64304
+ try {
64305
+ if (indicator_1_1 && !indicator_1_1.done && (_a = indicator_1.return)) _a.call(indicator_1);
64306
+ }
64307
+ finally { if (e_1) throw e_1.error; }
64308
+ }
64309
+ };
64310
+ /**
64311
+ * Removes all indicators from the map.
64312
+ */
64313
+ AccessibleIndicatorManager.prototype.clear = function () {
64314
+ var _this = this;
64315
+ this.indicators.forEach(function (indicator) {
64316
+ _this.indicators.delete(indicator);
64317
+ indicator.remove();
64318
+ });
64319
+ };
64320
+ /**
64321
+ * Removes an indicator from the map
64322
+ * @param indicator The indicator(s) to remove.
64323
+ */
64324
+ AccessibleIndicatorManager.prototype.remove = function (indicator) {
64325
+ var e_2, _a;
64326
+ indicator = Array.isArray(indicator) ? indicator : [indicator];
64327
+ try {
64328
+ for (var indicator_2 = __values$j(indicator), indicator_2_1 = indicator_2.next(); !indicator_2_1.done; indicator_2_1 = indicator_2.next()) {
64329
+ var i = indicator_2_1.value;
64330
+ if (this.indicators.has(i)) {
64331
+ this.indicators.delete(i);
64332
+ i.remove();
64333
+ }
64334
+ }
64335
+ }
64336
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
64337
+ finally {
64338
+ try {
64339
+ if (indicator_2_1 && !indicator_2_1.done && (_a = indicator_2.return)) _a.call(indicator_2);
64340
+ }
64341
+ finally { if (e_2) throw e_2.error; }
64342
+ }
64343
+ };
64344
+ /**
64345
+ * Returns the indicators currently attached to the map.
64346
+ */
64347
+ AccessibleIndicatorManager.prototype.getIndicators = function () {
64348
+ return Array.from(this.indicators);
64349
+ };
64350
+ /**
64351
+ * Returns the div element that should contain all the indicator containers.
64352
+ * Creates it if it doesn't already exist.
64353
+ * @internal
64354
+ */
64355
+ AccessibleIndicatorManager.prototype._getCollectionDiv = function () {
64356
+ var collection = this.map.getMapContainer()
64357
+ .querySelector("." + AccessibleIndicatorManager.Css.collection);
64358
+ if (!collection) {
64359
+ // If the collection div doesn't exist create it.
64360
+ collection = document.createElement("div");
64361
+ collection.setAttribute("aria-label", "map data");
64362
+ // Set the container role to listbox, and the descents' role to option, so the reader will read the listbox as a list.
64363
+ // For example, NVDA will read "data point, 1 of 1" when the indicator is focused.
64364
+ collection.setAttribute("role", "listbox");
64365
+ collection.classList.add(AccessibleIndicatorManager.Css.collection);
64366
+ this.map.getMapContainer().appendChild(collection);
64367
+ }
64368
+ return collection;
64369
+ };
64370
+ AccessibleIndicatorManager.Css = {
64371
+ collection: "accessible-indicator-collection-container"
64372
+ };
64373
+ return AccessibleIndicatorManager;
64374
+ }());
64375
+
64034
64376
  var __extends$18 = (window && window.__extends) || (function () {
64035
64377
  var extendStatics = function (d, b) {
64036
64378
  extendStatics = Object.setPrototypeOf ||
@@ -64057,7 +64399,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
64057
64399
  };
64058
64400
  return __assign$9.apply(this, arguments);
64059
64401
  };
64060
- var __awaiter$3 = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
64402
+ var __awaiter$4 = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
64061
64403
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
64062
64404
  return new (P || (P = Promise))(function (resolve, reject) {
64063
64405
  function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
@@ -64066,7 +64408,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
64066
64408
  step((generator = generator.apply(thisArg, _arguments || [])).next());
64067
64409
  });
64068
64410
  };
64069
- var __generator$3 = (window && window.__generator) || function (thisArg, body) {
64411
+ var __generator$4 = (window && window.__generator) || function (thisArg, body) {
64070
64412
  var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
64071
64413
  return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
64072
64414
  function verb(n) { return function (v) { return step([n, v]); }; }
@@ -64093,7 +64435,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
64093
64435
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
64094
64436
  }
64095
64437
  };
64096
- var __read$d = (window && window.__read) || function (o, n) {
64438
+ var __read$e = (window && window.__read) || function (o, n) {
64097
64439
  var m = typeof Symbol === "function" && o[Symbol.iterator];
64098
64440
  if (!m) return o;
64099
64441
  var i = m.call(o), r, ar = [], e;
@@ -64109,12 +64451,12 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
64109
64451
  }
64110
64452
  return ar;
64111
64453
  };
64112
- var __spreadArray$7 = (window && window.__spreadArray) || function (to, from) {
64454
+ var __spreadArray$8 = (window && window.__spreadArray) || function (to, from) {
64113
64455
  for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
64114
64456
  to[j] = from[i];
64115
64457
  return to;
64116
64458
  };
64117
- var __values$j = (window && window.__values) || function(o) {
64459
+ var __values$k = (window && window.__values) || function(o) {
64118
64460
  var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
64119
64461
  if (m) return m.call(o);
64120
64462
  if (o && typeof o.length === "number") return {
@@ -64220,6 +64562,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
64220
64562
  _this.markers = new HtmlMarkerManager(_this);
64221
64563
  _this.sources = new SourceManager(_this);
64222
64564
  _this.popups = new PopupManager(_this);
64565
+ _this.indicators = new AccessibleIndicatorManager(_this);
64223
64566
  // Add CSS classes and set attributes for DOM elements.
64224
64567
  _this.map.getContainer().classList.add(Map.Css.container);
64225
64568
  _this.map.getCanvasContainer().classList.add(Map.Css.canvasContainer);
@@ -64262,7 +64605,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
64262
64605
  _this.localizedStringsPromise = Localizer.getStrings(_this.styleOptions.language);
64263
64606
  var stylesInit = _this.styles.initStyleset();
64264
64607
  Promise.all([authManInit, stylesInit]).then(function (_a) {
64265
- var _b = __read$d(_a, 2), _ = _b[0], definitions = _b[1];
64608
+ var _b = __read$e(_a, 2), _ = _b[0], definitions = _b[1];
64266
64609
  // Check that the map hasn't been removed for any reason.
64267
64610
  // If so no need to finish styling the map.
64268
64611
  if (_this.removed) {
@@ -64292,7 +64635,9 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
64292
64635
  _this.events.invoke("error", errorData);
64293
64636
  });
64294
64637
  // --> Set initial camera state of map
64295
- _this.setCamera(__assign$9(__assign$9({}, options), { type: "jump", duration: 0 }));
64638
+ _this.setCamera(__assign$9(__assign$9({
64639
+ // Default minZoom to ensure the map doesn't zoom out to unsupported zoom levels.
64640
+ minZoom: 1 }, options), { type: "jump", duration: 0 }));
64296
64641
  _this.flowDelegate = new FlowServiceDelegate(_this);
64297
64642
  _this.accessibleMapDelegate = new AccessibleMapDelegate(_this);
64298
64643
  _this.userInteractionDelegate = new UserInteractionDelegate(_this, options);
@@ -64359,6 +64704,11 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
64359
64704
  else {
64360
64705
  this.accessibleMapDelegate.removeFromMap();
64361
64706
  }
64707
+ if (this.styles.serviceOptions.mapConfiguration !== this.serviceOptions.mapConfiguration) {
64708
+ this.styles.initPromise = null;
64709
+ this.styles.serviceOptions.mapConfiguration = this.serviceOptions.mapConfiguration;
64710
+ this.setStyle({});
64711
+ }
64362
64712
  };
64363
64713
  /**
64364
64714
  * Adds request transformer
@@ -64908,7 +65258,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
64908
65258
  urls = layer.getOptions().subdomains || [];
64909
65259
  }
64910
65260
  // Add the tile urls to the layer, but don't update the map yet.
64911
- urls.push.apply(urls, __spreadArray$7([], __read$d(tileSources)));
65261
+ urls.push.apply(urls, __spreadArray$8([], __read$e(tileSources)));
64912
65262
  layer._setOptionsNoUpdate({
64913
65263
  subdomains: urls
64914
65264
  });
@@ -64930,7 +65280,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
64930
65280
  Map.prototype.removeLayers = function (layerNames) {
64931
65281
  var e_1, _a;
64932
65282
  try {
64933
- for (var layerNames_1 = __values$j(layerNames), layerNames_1_1 = layerNames_1.next(); !layerNames_1_1.done; layerNames_1_1 = layerNames_1.next()) {
65283
+ for (var layerNames_1 = __values$k(layerNames), layerNames_1_1 = layerNames_1.next(); !layerNames_1_1.done; layerNames_1_1 = layerNames_1.next()) {
64934
65284
  var layerName = layerNames_1_1.value;
64935
65285
  // Previously calling removeLayers for layers that didn't exist in the map just did nothing.
64936
65286
  // Now, LayerManager will throw an error, so we need to check if the layer exists before calling remove.
@@ -65072,14 +65422,19 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
65072
65422
  this.layers.clear();
65073
65423
  this.sources.clear();
65074
65424
  this.markers.clear();
65425
+ this.indicators.clear();
65075
65426
  };
65076
65427
  /**
65077
65428
  * Clean up the map's resources. Map will not function correctly after calling this method.
65078
65429
  */
65079
65430
  Map.prototype.dispose = function () {
65431
+ var _a;
65080
65432
  this.clear();
65081
65433
  this.map.remove();
65434
+ (_a = this.authentication) === null || _a === void 0 ? void 0 : _a.dispose();
65082
65435
  this.removed = true;
65436
+ // Remove event listeners
65437
+ window.removeEventListener("resize", this._windowResizeCallback);
65083
65438
  while (this.getMapContainer().firstChild) {
65084
65439
  var currChild = this.getMapContainer().firstChild;
65085
65440
  this.getMapContainer().removeChild(currChild);
@@ -65120,7 +65475,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
65120
65475
  var e_2, _a;
65121
65476
  var positions = [];
65122
65477
  try {
65123
- for (var pixels_1 = __values$j(pixels), pixels_1_1 = pixels_1.next(); !pixels_1_1.done; pixels_1_1 = pixels_1.next()) {
65478
+ for (var pixels_1 = __values$k(pixels), pixels_1_1 = pixels_1.next(); !pixels_1_1.done; pixels_1_1 = pixels_1.next()) {
65124
65479
  var pixel = pixels_1_1.value;
65125
65480
  var lngLat = this.map.unproject(pixel);
65126
65481
  positions.push(new Position(lngLat.lng, lngLat.lat));
@@ -65143,7 +65498,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
65143
65498
  var e_3, _a;
65144
65499
  var pixels = [];
65145
65500
  try {
65146
- for (var positions_1 = __values$j(positions), positions_1_1 = positions_1.next(); !positions_1_1.done; positions_1_1 = positions_1.next()) {
65501
+ for (var positions_1 = __values$k(positions), positions_1_1 = positions_1.next(); !positions_1_1.done; positions_1_1 = positions_1.next()) {
65147
65502
  var position = positions_1_1.value;
65148
65503
  var point = this.map.project(position);
65149
65504
  pixels.push(new Pixel(point.x, point.y));
@@ -65191,8 +65546,8 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
65191
65546
  */
65192
65547
  Map.prototype._rebuildStyle = function (diff) {
65193
65548
  if (diff === void 0) { diff = true; }
65194
- return __awaiter$3(this, void 0, void 0, function () {
65195
- return __generator$3(this, function (_a) {
65549
+ return __awaiter$4(this, void 0, void 0, function () {
65550
+ return __generator$4(this, function (_a) {
65196
65551
  this.styles.setStyle(this.styleOptions, diff);
65197
65552
  this.imageSprite._restoreImages();
65198
65553
  return [2 /*return*/];
@@ -65408,7 +65763,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
65408
65763
  return Map;
65409
65764
  }(EventEmitter));
65410
65765
 
65411
- var __read$e = (window && window.__read) || function (o, n) {
65766
+ var __read$f = (window && window.__read) || function (o, n) {
65412
65767
  var m = typeof Symbol === "function" && o[Symbol.iterator];
65413
65768
  if (!m) return o;
65414
65769
  var i = m.call(o), r, ar = [], e;
@@ -65424,7 +65779,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
65424
65779
  }
65425
65780
  return ar;
65426
65781
  };
65427
- var __spreadArray$8 = (window && window.__spreadArray) || function (to, from) {
65782
+ var __spreadArray$9 = (window && window.__spreadArray) || function (to, from) {
65428
65783
  for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
65429
65784
  to[j] = from[i];
65430
65785
  return to;
@@ -65570,7 +65925,7 @@ EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous po
65570
65925
  lineLength = 50;
65571
65926
  }
65572
65927
  var lines = c.split(/<(tr|div|br|li|h[0-9]|p>)/);
65573
- longestStringLength = Math.max.apply(Math, __spreadArray$8([], __read$e((lines.map(function (el) { return el.replace(/<[a-zA-Z0-9\s=\/]+>/g, "").length; }))))) - 1;
65928
+ longestStringLength = Math.max.apply(Math, __spreadArray$9([], __read$f((lines.map(function (el) { return el.replace(/<[a-zA-Z0-9\s=\/]+>/g, "").length; }))))) - 1;
65574
65929
  var w = Math.ceil(longestStringLength * 3.5);
65575
65930
  if (w < width) {
65576
65931
  width = w;