aviation-chart 0.1.19 → 0.1.20

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/index.js CHANGED
@@ -6,8 +6,8 @@ function Mt(o, a) {
6
6
  else if (!Rt)
7
7
  Rt = a;
8
8
  else {
9
- var u = "var sharedChunk = {}; (" + vt + ")(sharedChunk); (" + Rt + ")(sharedChunk);", x = {};
10
- vt(x), Ot = a(x), typeof window < "u" && (Ot.workerUrl = window.URL.createObjectURL(
9
+ var u = "var sharedChunk = {}; (" + vt + ")(sharedChunk); (" + Rt + ")(sharedChunk);", w = {};
10
+ vt(w), Ot = a(w), typeof window < "u" && (Ot.workerUrl = window.URL.createObjectURL(
11
11
  new Blob([u], { type: "text/javascript" })
12
12
  ));
13
13
  }
@@ -132,79 +132,79 @@ Mt(["exports"], function(o) {
132
132
  ],
133
133
  []
134
134
  ];
135
- function x(t, e, i, n) {
135
+ function w(t, e, i, n) {
136
136
  return e = e * 2 + n[0], i = i * 2 + n[1], e + i * (t + 1) * 2;
137
137
  }
138
- function p(t, e, i) {
138
+ function x(t, e, i) {
139
139
  return (e - t) / (i - t);
140
140
  }
141
- function y(t, e, i = 4096, n = 1) {
141
+ function g(t, e, i = 4096, n = 1) {
142
142
  if (!t)
143
143
  return {};
144
144
  const r = i / (e.width - 1);
145
- let l, s, c, m, h, d;
146
- const f = {}, w = /* @__PURE__ */ new Map(), E = /* @__PURE__ */ new Map();
147
- function C(P, I, k) {
148
- P[0] === 0 ? k(r * (d - 1), r * (h - p(c, I, l))) : P[0] === 2 ? k(r * d, r * (h - p(m, I, s))) : P[1] === 0 ? k(r * (d - p(s, I, l)), r * (h - 1)) : k(r * (d - p(m, I, c)), r * h);
145
+ let l, s, c, m, f, h;
146
+ const d = {}, _ = /* @__PURE__ */ new Map(), F = /* @__PURE__ */ new Map();
147
+ function P(O, I, R) {
148
+ O[0] === 0 ? R(r * (h - 1), r * (f - x(c, I, l))) : O[0] === 2 ? R(r * h, r * (f - x(m, I, s))) : O[1] === 0 ? R(r * (h - x(s, I, l)), r * (f - 1)) : R(r * (h - x(m, I, c)), r * f);
149
149
  }
150
- for (h = 1 - n; h < e.height + n; h++) {
151
- s = e.get(0, h - 1), m = e.get(0, h);
152
- let P = Math.min(s, m), I = Math.max(s, m);
153
- for (d = 1 - n; d < e.width + n; d++) {
154
- l = s, c = m, s = e.get(d, h - 1), m = e.get(d, h);
155
- const k = P, V = I;
156
- if (P = Math.min(s, m), I = Math.max(s, m), isNaN(l) || isNaN(s) || isNaN(m) || isNaN(c))
150
+ for (f = 1 - n; f < e.height + n; f++) {
151
+ s = e.get(0, f - 1), m = e.get(0, f);
152
+ let O = Math.min(s, m), I = Math.max(s, m);
153
+ for (h = 1 - n; h < e.width + n; h++) {
154
+ l = s, c = m, s = e.get(h, f - 1), m = e.get(h, f);
155
+ const R = O, V = I;
156
+ if (O = Math.min(s, m), I = Math.max(s, m), isNaN(l) || isNaN(s) || isNaN(m) || isNaN(c))
157
157
  continue;
158
- const ft = Math.min(k, P), pt = Math.max(V, I), X = Math.ceil(ft / t) * t, ot = Math.floor(pt / t) * t;
159
- for (let R = X; R <= ot; R += t) {
160
- const At = l > R, q = s > R, nt = c > R, _t = m > R;
158
+ const dt = Math.min(R, O), pt = Math.max(V, I), X = Math.ceil(dt / t) * t, ot = Math.floor(pt / t) * t;
159
+ for (let C = X; C <= ot; C += t) {
160
+ const At = l > C, q = s > C, nt = c > C, _t = m > C;
161
161
  for (const bt of u[(At ? 8 : 0) | (q ? 4 : 0) | (_t ? 2 : 0) | (nt ? 1 : 0)]) {
162
- let Y = w.get(R);
163
- Y || w.set(R, Y = /* @__PURE__ */ new Map());
164
- let lt = E.get(R);
165
- lt || E.set(R, lt = /* @__PURE__ */ new Map());
166
- const kt = bt[0], zt = bt[1], yt = x(e.width, d, h, kt), st = x(e.width, d, h, zt);
162
+ let Y = _.get(C);
163
+ Y || _.set(C, Y = /* @__PURE__ */ new Map());
164
+ let lt = F.get(C);
165
+ lt || F.set(C, lt = /* @__PURE__ */ new Map());
166
+ const kt = bt[0], zt = bt[1], yt = w(e.width, h, f, kt), st = w(e.width, h, f, zt);
167
167
  let L, Tt;
168
168
  if (L = lt.get(yt))
169
169
  if (lt.delete(yt), Tt = Y.get(st))
170
170
  if (Y.delete(st), L === Tt) {
171
- if (C(zt, R, L.append), !L.isEmpty()) {
172
- let rt = f[R];
173
- rt || (f[R] = rt = []), rt.push(L.lineString());
171
+ if (P(zt, C, L.append), !L.isEmpty()) {
172
+ let rt = d[C];
173
+ rt || (d[C] = rt = []), rt.push(L.lineString());
174
174
  }
175
175
  } else
176
176
  L.appendFragment(Tt), lt.set(L.end = Tt.end, L);
177
177
  else
178
- C(zt, R, L.append), lt.set(L.end = st, L);
178
+ P(zt, C, L.append), lt.set(L.end = st, L);
179
179
  else if (L = Y.get(st))
180
- Y.delete(st), C(kt, R, L.prepend), Y.set(L.start = yt, L);
180
+ Y.delete(st), P(kt, C, L.prepend), Y.set(L.start = yt, L);
181
181
  else {
182
182
  const rt = new a(yt, st);
183
- C(kt, R, rt.append), C(zt, R, rt.append), Y.set(yt, rt), lt.set(st, rt);
183
+ P(kt, C, rt.append), P(zt, C, rt.append), Y.set(yt, rt), lt.set(st, rt);
184
184
  }
185
185
  }
186
186
  }
187
187
  }
188
188
  }
189
- for (const [P, I] of w.entries()) {
190
- let k = null;
189
+ for (const [O, I] of _.entries()) {
190
+ let R = null;
191
191
  for (const V of I.values())
192
- V.isEmpty() || (k == null && (k = f[P] || (f[P] = [])), k.push(V.lineString()));
192
+ V.isEmpty() || (R == null && (R = d[O] || (d[O] = [])), R.push(V.lineString()));
193
193
  }
194
- return f;
194
+ return d;
195
195
  }
196
- function _(t) {
196
+ function b(t) {
197
197
  const e = Object.entries(t);
198
198
  return e.sort(([i], [n]) => i < n ? -1 : i > n ? 1 : 0), e;
199
199
  }
200
- function F(t) {
201
- return _(t).map(([e, i]) => [e, ...typeof i == "number" ? [i] : i].join("*")).join("~");
200
+ function S(t) {
201
+ return b(t).map(([e, i]) => [e, ...typeof i == "number" ? [i] : i].join("*")).join("~");
202
202
  }
203
- function O(t) {
203
+ function M(t) {
204
204
  return Object.fromEntries(t.split("~").map((e) => e.split("*").map(Number)).map(([e, ...i]) => [e, i]));
205
205
  }
206
- function A({ thresholds: t, ...e }) {
207
- return _({ thresholds: F(t), ...e }).map(([i, n]) => `${encodeURIComponent(i)}=${encodeURIComponent(n)}`).join("&");
206
+ function k({ thresholds: t, ...e }) {
207
+ return b({ thresholds: S(t), ...e }).map(([i, n]) => `${encodeURIComponent(i)}=${encodeURIComponent(n)}`).join("&");
208
208
  }
209
209
  function z(t) {
210
210
  return Object.fromEntries(t.replace(/^.*\?/, "").split("&").map((e) => {
@@ -212,7 +212,7 @@ Mt(["exports"], function(o) {
212
212
  let r = i[1];
213
213
  switch (n) {
214
214
  case "thresholds":
215
- r = O(r);
215
+ r = M(r);
216
216
  break;
217
217
  case "extent":
218
218
  case "multiplier":
@@ -223,10 +223,10 @@ Mt(["exports"], function(o) {
223
223
  return [n, r];
224
224
  }));
225
225
  }
226
- function g(t) {
227
- return _(t).map(([e, i]) => `${encodeURIComponent(e)}=${encodeURIComponent(i)}`).join(",");
226
+ function p(t) {
227
+ return b(t).map(([e, i]) => `${encodeURIComponent(e)}=${encodeURIComponent(i)}`).join(",");
228
228
  }
229
- function b(t, e) {
229
+ function y(t, e) {
230
230
  const { thresholds: i, ...n } = t;
231
231
  let r = [], l = -1 / 0;
232
232
  return Object.entries(i).forEach(([s, c]) => {
@@ -237,19 +237,19 @@ Mt(["exports"], function(o) {
237
237
  ...n
238
238
  };
239
239
  }
240
- function v(t) {
240
+ function T(t) {
241
241
  const e = new ArrayBuffer(t.byteLength);
242
242
  return new Uint8Array(e).set(new Uint8Array(t)), e;
243
243
  }
244
- function S(t, e) {
244
+ function D(t, e) {
245
245
  return t.then(({ data: i, ...n }) => {
246
246
  let r = i;
247
247
  return e && (r = new Float32Array(i.length), r.set(i)), { ...n, data: r, transferrables: [r.buffer] };
248
248
  });
249
249
  }
250
- function M(t) {
250
+ function A(t) {
251
251
  return t.then(({ arrayBuffer: e }) => {
252
- const i = v(e);
252
+ const i = T(e);
253
253
  return {
254
254
  arrayBuffer: i,
255
255
  transferrables: [i]
@@ -303,27 +303,27 @@ Mt(["exports"], function(o) {
303
303
  var e;
304
304
  return !!(!((e = t == null ? void 0 : t.signal) === null || e === void 0) && e.aborted);
305
305
  }
306
- let D = 0;
306
+ let E = 0;
307
307
  class Z {
308
308
  constructor(e = 100) {
309
309
  this.size = () => this.items.size, this.get = (i, n, r) => {
310
310
  let l = this.items.get(i);
311
311
  if (l)
312
- l.lastUsed = ++D, l.waiting++;
312
+ l.lastUsed = ++E, l.waiting++;
313
313
  else {
314
- const h = new AbortController(), d = n(i, h);
314
+ const f = new AbortController(), h = n(i, f);
315
315
  l = {
316
- abortController: h,
317
- item: d,
318
- lastUsed: ++D,
316
+ abortController: f,
317
+ item: h,
318
+ lastUsed: ++E,
319
319
  waiting: 1
320
320
  }, this.items.set(i, l), this.prune();
321
321
  }
322
- const s = this.items, c = l.item.then((h) => h, (h) => (s.delete(i), Promise.reject(h)));
322
+ const s = this.items, c = l.item.then((f) => f, (f) => (s.delete(i), Promise.reject(f)));
323
323
  let m = !1;
324
324
  return U(r, () => {
325
- var h;
326
- l && l.abortController && !m && (m = !0, --l.waiting <= 0 && ((h = l.abortController) === null || h === void 0 || h.abort(), s.delete(i)));
325
+ var f;
326
+ l && l.abortController && !m && (m = !0, --l.waiting <= 0 && ((f = l.abortController) === null || f === void 0 || f.abort(), s.delete(i)));
327
327
  }), c;
328
328
  }, this.clear = () => this.items.clear(), this.maxSize = e, this.items = /* @__PURE__ */ new Map();
329
329
  }
@@ -355,13 +355,13 @@ Mt(["exports"], function(o) {
355
355
  try {
356
356
  if (!(((n = c == null ? void 0 : c.format) === null || n === void 0 ? void 0 : n.startsWith("BGR")) || ((r = c == null ? void 0 : c.format) === null || r === void 0 ? void 0 : r.startsWith("RGB"))))
357
357
  throw new Error(`Unrecognized format: ${c == null ? void 0 : c.format}`);
358
- const h = (l = c == null ? void 0 : c.format) === null || l === void 0 ? void 0 : l.startsWith("BGR"), d = c.allocationSize(), f = new Uint8ClampedArray(d);
359
- if (await c.copyTo(f), h)
360
- for (let w = 0; w < f.length; w += 4) {
361
- const E = f[w];
362
- f[w] = f[w + 2], f[w + 2] = E;
358
+ const f = (l = c == null ? void 0 : c.format) === null || l === void 0 ? void 0 : l.startsWith("BGR"), h = c.allocationSize(), d = new Uint8ClampedArray(h);
359
+ if (await c.copyTo(d), f)
360
+ for (let _ = 0; _ < d.length; _ += 4) {
361
+ const F = d[_];
362
+ d[_] = d[_ + 2], d[_ + 2] = F;
363
363
  }
364
- return Dt(s.width, s.height, e, f);
364
+ return Dt(s.width, s.height, e, d);
365
365
  } catch {
366
366
  return B(i) ? null : W(s, e);
367
367
  } finally {
@@ -414,30 +414,30 @@ Mt(["exports"], function(o) {
414
414
  this.split = (r, l, s) => {
415
415
  if (r === 0)
416
416
  return this;
417
- const c = 1 << r, m = l * this.width / c, h = s * this.height / c;
418
- return new $(this.width / c, this.height / c, (d, f) => this.get(d + m, f + h));
417
+ const c = 1 << r, m = l * this.width / c, f = s * this.height / c;
418
+ return new $(this.width / c, this.height / c, (h, d) => this.get(h + m, d + f));
419
419
  }, this.subsamplePixelCenters = (r) => {
420
- const l = (m, h, d) => isNaN(m) ? h : isNaN(h) ? m : m + (h - m) * d;
420
+ const l = (m, f, h) => isNaN(m) ? f : isNaN(f) ? m : m + (f - m) * h;
421
421
  if (r <= 1)
422
422
  return this;
423
- const s = 0.5 - 1 / (2 * r), c = (m, h) => {
424
- const d = m / r - s, f = h / r - s, w = Math.floor(d), E = Math.floor(f), C = this.get(w, E), P = this.get(w + 1, E), I = this.get(w, E + 1), k = this.get(w + 1, E + 1), V = d - w, ft = f - E, pt = l(C, P, V), X = l(I, k, V);
425
- return l(pt, X, ft);
423
+ const s = 0.5 - 1 / (2 * r), c = (m, f) => {
424
+ const h = m / r - s, d = f / r - s, _ = Math.floor(h), F = Math.floor(d), P = this.get(_, F), O = this.get(_ + 1, F), I = this.get(_, F + 1), R = this.get(_ + 1, F + 1), V = h - _, dt = d - F, pt = l(P, O, V), X = l(I, R, V);
425
+ return l(pt, X, dt);
426
426
  };
427
427
  return new $(this.width * r, this.height * r, c);
428
428
  }, this.averagePixelCentersToGrid = (r = 1) => new $(this.width + 1, this.height + 1, (l, s) => {
429
- let c = 0, m = 0, h = 0;
430
- for (let d = l - r; d < l + r; d++)
431
- for (let f = s - r; f < s + r; f++)
432
- isNaN(h = this.get(d, f)) || (m++, c += h);
429
+ let c = 0, m = 0, f = 0;
430
+ for (let h = l - r; h < l + r; h++)
431
+ for (let d = s - r; d < s + r; d++)
432
+ isNaN(f = this.get(h, d)) || (m++, c += f);
433
433
  return m === 0 ? NaN : c / m;
434
434
  }), this.scaleElevation = (r) => r === 1 ? this : new $(this.width, this.height, (l, s) => this.get(l, s) * r), this.materialize = (r = 2) => {
435
435
  const l = this.width + 2 * r, s = new Float32Array(l * (this.height + 2 * r));
436
436
  let c = 0;
437
437
  for (let m = -r; m < this.height + r; m++)
438
- for (let h = -r; h < this.width + r; h++)
439
- s[c++] = this.get(h, m);
440
- return new $(this.width, this.height, (m, h) => s[(h + r) * l + m + r]);
438
+ for (let f = -r; f < this.width + r; f++)
439
+ s[c++] = this.get(f, m);
440
+ return new $(this.width, this.height, (m, f) => s[(f + r) * l + m + r]);
441
441
  }, this.get = n, this.width = e, this.height = i;
442
442
  }
443
443
  /** Construct a height tile from raw DEM pixel values */
@@ -474,34 +474,34 @@ Mt(["exports"], function(o) {
474
474
  var Et = {};
475
475
  /*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
476
476
  Et.read = function(t, e, i, n, r) {
477
- var l, s, c = r * 8 - n - 1, m = (1 << c) - 1, h = m >> 1, d = -7, f = i ? r - 1 : 0, w = i ? -1 : 1, E = t[e + f];
478
- for (f += w, l = E & (1 << -d) - 1, E >>= -d, d += c; d > 0; l = l * 256 + t[e + f], f += w, d -= 8)
477
+ var l, s, c = r * 8 - n - 1, m = (1 << c) - 1, f = m >> 1, h = -7, d = i ? r - 1 : 0, _ = i ? -1 : 1, F = t[e + d];
478
+ for (d += _, l = F & (1 << -h) - 1, F >>= -h, h += c; h > 0; l = l * 256 + t[e + d], d += _, h -= 8)
479
479
  ;
480
- for (s = l & (1 << -d) - 1, l >>= -d, d += n; d > 0; s = s * 256 + t[e + f], f += w, d -= 8)
480
+ for (s = l & (1 << -h) - 1, l >>= -h, h += n; h > 0; s = s * 256 + t[e + d], d += _, h -= 8)
481
481
  ;
482
482
  if (l === 0)
483
- l = 1 - h;
483
+ l = 1 - f;
484
484
  else {
485
485
  if (l === m)
486
- return s ? NaN : (E ? -1 : 1) * (1 / 0);
487
- s = s + Math.pow(2, n), l = l - h;
486
+ return s ? NaN : (F ? -1 : 1) * (1 / 0);
487
+ s = s + Math.pow(2, n), l = l - f;
488
488
  }
489
- return (E ? -1 : 1) * s * Math.pow(2, l - n);
489
+ return (F ? -1 : 1) * s * Math.pow(2, l - n);
490
490
  }, Et.write = function(t, e, i, n, r, l) {
491
- var s, c, m, h = l * 8 - r - 1, d = (1 << h) - 1, f = d >> 1, w = r === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0, E = n ? 0 : l - 1, C = n ? 1 : -1, P = e < 0 || e === 0 && 1 / e < 0 ? 1 : 0;
492
- for (e = Math.abs(e), isNaN(e) || e === 1 / 0 ? (c = isNaN(e) ? 1 : 0, s = d) : (s = Math.floor(Math.log(e) / Math.LN2), e * (m = Math.pow(2, -s)) < 1 && (s--, m *= 2), s + f >= 1 ? e += w / m : e += w * Math.pow(2, 1 - f), e * m >= 2 && (s++, m /= 2), s + f >= d ? (c = 0, s = d) : s + f >= 1 ? (c = (e * m - 1) * Math.pow(2, r), s = s + f) : (c = e * Math.pow(2, f - 1) * Math.pow(2, r), s = 0)); r >= 8; t[i + E] = c & 255, E += C, c /= 256, r -= 8)
491
+ var s, c, m, f = l * 8 - r - 1, h = (1 << f) - 1, d = h >> 1, _ = r === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0, F = n ? 0 : l - 1, P = n ? 1 : -1, O = e < 0 || e === 0 && 1 / e < 0 ? 1 : 0;
492
+ for (e = Math.abs(e), isNaN(e) || e === 1 / 0 ? (c = isNaN(e) ? 1 : 0, s = h) : (s = Math.floor(Math.log(e) / Math.LN2), e * (m = Math.pow(2, -s)) < 1 && (s--, m *= 2), s + d >= 1 ? e += _ / m : e += _ * Math.pow(2, 1 - d), e * m >= 2 && (s++, m /= 2), s + d >= h ? (c = 0, s = h) : s + d >= 1 ? (c = (e * m - 1) * Math.pow(2, r), s = s + d) : (c = e * Math.pow(2, d - 1) * Math.pow(2, r), s = 0)); r >= 8; t[i + F] = c & 255, F += P, c /= 256, r -= 8)
493
493
  ;
494
- for (s = s << r | c, h += r; h > 0; t[i + E] = s & 255, E += C, s /= 256, h -= 8)
494
+ for (s = s << r | c, f += r; f > 0; t[i + F] = s & 255, F += P, s /= 256, f -= 8)
495
495
  ;
496
- t[i + E - C] |= P * 128;
496
+ t[i + F - P] |= O * 128;
497
497
  };
498
- var ne = T, gt = Et;
499
- function T(t) {
498
+ var ne = v, gt = Et;
499
+ function v(t) {
500
500
  this.buf = ArrayBuffer.isView && ArrayBuffer.isView(t) ? t : new Uint8Array(t || 0), this.pos = 0, this.type = 0, this.length = this.buf.length;
501
501
  }
502
- T.Varint = 0, T.Fixed64 = 1, T.Bytes = 2, T.Fixed32 = 5;
502
+ v.Varint = 0, v.Fixed64 = 1, v.Bytes = 2, v.Fixed32 = 5;
503
503
  var Ft = 65536 * 65536, Gt = 1 / Ft, le = 12, Bt = typeof TextDecoder > "u" ? null : new TextDecoder("utf8");
504
- T.prototype = {
504
+ v.prototype = {
505
505
  destroy: function() {
506
506
  this.buf = null;
507
507
  },
@@ -565,66 +565,66 @@ Mt(["exports"], function(o) {
565
565
  },
566
566
  // verbose for performance reasons; doesn't affect gzipped size
567
567
  readPackedVarint: function(t, e) {
568
- if (this.type !== T.Bytes) return t.push(this.readVarint(e));
568
+ if (this.type !== v.Bytes) return t.push(this.readVarint(e));
569
569
  var i = J(this);
570
570
  for (t = t || []; this.pos < i; ) t.push(this.readVarint(e));
571
571
  return t;
572
572
  },
573
573
  readPackedSVarint: function(t) {
574
- if (this.type !== T.Bytes) return t.push(this.readSVarint());
574
+ if (this.type !== v.Bytes) return t.push(this.readSVarint());
575
575
  var e = J(this);
576
576
  for (t = t || []; this.pos < e; ) t.push(this.readSVarint());
577
577
  return t;
578
578
  },
579
579
  readPackedBoolean: function(t) {
580
- if (this.type !== T.Bytes) return t.push(this.readBoolean());
580
+ if (this.type !== v.Bytes) return t.push(this.readBoolean());
581
581
  var e = J(this);
582
582
  for (t = t || []; this.pos < e; ) t.push(this.readBoolean());
583
583
  return t;
584
584
  },
585
585
  readPackedFloat: function(t) {
586
- if (this.type !== T.Bytes) return t.push(this.readFloat());
586
+ if (this.type !== v.Bytes) return t.push(this.readFloat());
587
587
  var e = J(this);
588
588
  for (t = t || []; this.pos < e; ) t.push(this.readFloat());
589
589
  return t;
590
590
  },
591
591
  readPackedDouble: function(t) {
592
- if (this.type !== T.Bytes) return t.push(this.readDouble());
592
+ if (this.type !== v.Bytes) return t.push(this.readDouble());
593
593
  var e = J(this);
594
594
  for (t = t || []; this.pos < e; ) t.push(this.readDouble());
595
595
  return t;
596
596
  },
597
597
  readPackedFixed32: function(t) {
598
- if (this.type !== T.Bytes) return t.push(this.readFixed32());
598
+ if (this.type !== v.Bytes) return t.push(this.readFixed32());
599
599
  var e = J(this);
600
600
  for (t = t || []; this.pos < e; ) t.push(this.readFixed32());
601
601
  return t;
602
602
  },
603
603
  readPackedSFixed32: function(t) {
604
- if (this.type !== T.Bytes) return t.push(this.readSFixed32());
604
+ if (this.type !== v.Bytes) return t.push(this.readSFixed32());
605
605
  var e = J(this);
606
606
  for (t = t || []; this.pos < e; ) t.push(this.readSFixed32());
607
607
  return t;
608
608
  },
609
609
  readPackedFixed64: function(t) {
610
- if (this.type !== T.Bytes) return t.push(this.readFixed64());
610
+ if (this.type !== v.Bytes) return t.push(this.readFixed64());
611
611
  var e = J(this);
612
612
  for (t = t || []; this.pos < e; ) t.push(this.readFixed64());
613
613
  return t;
614
614
  },
615
615
  readPackedSFixed64: function(t) {
616
- if (this.type !== T.Bytes) return t.push(this.readSFixed64());
616
+ if (this.type !== v.Bytes) return t.push(this.readSFixed64());
617
617
  var e = J(this);
618
618
  for (t = t || []; this.pos < e; ) t.push(this.readSFixed64());
619
619
  return t;
620
620
  },
621
621
  skip: function(t) {
622
622
  var e = t & 7;
623
- if (e === T.Varint) for (; this.buf[this.pos++] > 127; )
623
+ if (e === v.Varint) for (; this.buf[this.pos++] > 127; )
624
624
  ;
625
- else if (e === T.Bytes) this.pos = this.readVarint() + this.pos;
626
- else if (e === T.Fixed32) this.pos += 4;
627
- else if (e === T.Fixed64) this.pos += 8;
625
+ else if (e === v.Bytes) this.pos = this.readVarint() + this.pos;
626
+ else if (e === v.Fixed32) this.pos += 4;
627
+ else if (e === v.Fixed64) this.pos += 8;
628
628
  else throw new Error("Unimplemented type: " + e);
629
629
  },
630
630
  // === WRITING =================================================================
@@ -642,16 +642,16 @@ Mt(["exports"], function(o) {
642
642
  return this.length = this.pos, this.pos = 0, this.buf.subarray(0, this.length);
643
643
  },
644
644
  writeFixed32: function(t) {
645
- this.realloc(4), ht(this.buf, t, this.pos), this.pos += 4;
645
+ this.realloc(4), ft(this.buf, t, this.pos), this.pos += 4;
646
646
  },
647
647
  writeSFixed32: function(t) {
648
- this.realloc(4), ht(this.buf, t, this.pos), this.pos += 4;
648
+ this.realloc(4), ft(this.buf, t, this.pos), this.pos += 4;
649
649
  },
650
650
  writeFixed64: function(t) {
651
- this.realloc(8), ht(this.buf, t & -1, this.pos), ht(this.buf, Math.floor(t * Gt), this.pos + 4), this.pos += 8;
651
+ this.realloc(8), ft(this.buf, t & -1, this.pos), ft(this.buf, Math.floor(t * Gt), this.pos + 4), this.pos += 8;
652
652
  },
653
653
  writeSFixed64: function(t) {
654
- this.realloc(8), ht(this.buf, t & -1, this.pos), ht(this.buf, Math.floor(t * Gt), this.pos + 4), this.pos += 8;
654
+ this.realloc(8), ft(this.buf, t & -1, this.pos), ft(this.buf, Math.floor(t * Gt), this.pos + 4), this.pos += 8;
655
655
  },
656
656
  writeVarint: function(t) {
657
657
  if (t = +t || 0, t > 268435455 || t < 0) {
@@ -692,13 +692,13 @@ Mt(["exports"], function(o) {
692
692
  n >= 128 && Xt(i, n, this), this.pos = i - 1, this.writeVarint(n), this.pos += n;
693
693
  },
694
694
  writeMessage: function(t, e, i) {
695
- this.writeTag(t, T.Bytes), this.writeRawMessage(e, i);
695
+ this.writeTag(t, v.Bytes), this.writeRawMessage(e, i);
696
696
  },
697
697
  writePackedVarint: function(t, e) {
698
- e.length && this.writeMessage(t, de, e);
698
+ e.length && this.writeMessage(t, he, e);
699
699
  },
700
700
  writePackedSVarint: function(t, e) {
701
- e.length && this.writeMessage(t, fe, e);
701
+ e.length && this.writeMessage(t, de, e);
702
702
  },
703
703
  writePackedBoolean: function(t, e) {
704
704
  e.length && this.writeMessage(t, ye, e);
@@ -722,34 +722,34 @@ Mt(["exports"], function(o) {
722
722
  e.length && this.writeMessage(t, _e, e);
723
723
  },
724
724
  writeBytesField: function(t, e) {
725
- this.writeTag(t, T.Bytes), this.writeBytes(e);
725
+ this.writeTag(t, v.Bytes), this.writeBytes(e);
726
726
  },
727
727
  writeFixed32Field: function(t, e) {
728
- this.writeTag(t, T.Fixed32), this.writeFixed32(e);
728
+ this.writeTag(t, v.Fixed32), this.writeFixed32(e);
729
729
  },
730
730
  writeSFixed32Field: function(t, e) {
731
- this.writeTag(t, T.Fixed32), this.writeSFixed32(e);
731
+ this.writeTag(t, v.Fixed32), this.writeSFixed32(e);
732
732
  },
733
733
  writeFixed64Field: function(t, e) {
734
- this.writeTag(t, T.Fixed64), this.writeFixed64(e);
734
+ this.writeTag(t, v.Fixed64), this.writeFixed64(e);
735
735
  },
736
736
  writeSFixed64Field: function(t, e) {
737
- this.writeTag(t, T.Fixed64), this.writeSFixed64(e);
737
+ this.writeTag(t, v.Fixed64), this.writeSFixed64(e);
738
738
  },
739
739
  writeVarintField: function(t, e) {
740
- this.writeTag(t, T.Varint), this.writeVarint(e);
740
+ this.writeTag(t, v.Varint), this.writeVarint(e);
741
741
  },
742
742
  writeSVarintField: function(t, e) {
743
- this.writeTag(t, T.Varint), this.writeSVarint(e);
743
+ this.writeTag(t, v.Varint), this.writeSVarint(e);
744
744
  },
745
745
  writeStringField: function(t, e) {
746
- this.writeTag(t, T.Bytes), this.writeString(e);
746
+ this.writeTag(t, v.Bytes), this.writeString(e);
747
747
  },
748
748
  writeFloatField: function(t, e) {
749
- this.writeTag(t, T.Fixed32), this.writeFloat(e);
749
+ this.writeTag(t, v.Fixed32), this.writeFloat(e);
750
750
  },
751
751
  writeDoubleField: function(t, e) {
752
- this.writeTag(t, T.Fixed64), this.writeDouble(e);
752
+ this.writeTag(t, v.Fixed64), this.writeDouble(e);
753
753
  },
754
754
  writeBooleanField: function(t, e) {
755
755
  this.writeVarintField(t, !!e);
@@ -761,7 +761,7 @@ Mt(["exports"], function(o) {
761
761
  throw new Error("Expected varint not more than 10 bytes");
762
762
  }
763
763
  function J(t) {
764
- return t.type === T.Bytes ? t.readVarint() + t.pos : t.pos + 1;
764
+ return t.type === v.Bytes ? t.readVarint() + t.pos : t.pos + 1;
765
765
  }
766
766
  function mt(t, e, i) {
767
767
  return i ? e * 4294967296 + (t >>> 0) : (e >>> 0) * 4294967296 + (t >>> 0);
@@ -770,12 +770,12 @@ Mt(["exports"], function(o) {
770
770
  var i, n;
771
771
  if (t >= 0 ? (i = t % 4294967296 | 0, n = t / 4294967296 | 0) : (i = ~(-t % 4294967296), n = ~(-t / 4294967296), i ^ 4294967295 ? i = i + 1 | 0 : (i = 0, n = n + 1 | 0)), t >= 18446744073709552e3 || t < -18446744073709552e3)
772
772
  throw new Error("Given varint doesn't fit into 10 bytes");
773
- e.realloc(10), me(i, n, e), he(n, e);
773
+ e.realloc(10), me(i, n, e), fe(n, e);
774
774
  }
775
775
  function me(t, e, i) {
776
776
  i.buf[i.pos++] = t & 127 | 128, t >>>= 7, i.buf[i.pos++] = t & 127 | 128, t >>>= 7, i.buf[i.pos++] = t & 127 | 128, t >>>= 7, i.buf[i.pos++] = t & 127 | 128, t >>>= 7, i.buf[i.pos] = t & 127;
777
777
  }
778
- function he(t, e) {
778
+ function fe(t, e) {
779
779
  var i = (t & 7) << 4;
780
780
  e.buf[e.pos++] |= i | ((t >>>= 3) ? 128 : 0), t && (e.buf[e.pos++] = t & 127 | ((t >>>= 7) ? 128 : 0), t && (e.buf[e.pos++] = t & 127 | ((t >>>= 7) ? 128 : 0), t && (e.buf[e.pos++] = t & 127 | ((t >>>= 7) ? 128 : 0), t && (e.buf[e.pos++] = t & 127 | ((t >>>= 7) ? 128 : 0), t && (e.buf[e.pos++] = t & 127)))));
781
781
  }
@@ -784,10 +784,10 @@ Mt(["exports"], function(o) {
784
784
  i.realloc(n);
785
785
  for (var r = i.pos - 1; r >= t; r--) i.buf[r + n] = i.buf[r];
786
786
  }
787
- function de(t, e) {
787
+ function he(t, e) {
788
788
  for (var i = 0; i < t.length; i++) e.writeVarint(t[i]);
789
789
  }
790
- function fe(t, e) {
790
+ function de(t, e) {
791
791
  for (var i = 0; i < t.length; i++) e.writeSVarint(t[i]);
792
792
  }
793
793
  function ue(t, e) {
@@ -814,7 +814,7 @@ Mt(["exports"], function(o) {
814
814
  function wt(t, e) {
815
815
  return (t[e] | t[e + 1] << 8 | t[e + 2] << 16) + t[e + 3] * 16777216;
816
816
  }
817
- function ht(t, e, i) {
817
+ function ft(t, e, i) {
818
818
  t[i] = e, t[i + 1] = e >>> 8, t[i + 2] = e >>> 16, t[i + 3] = e >>> 24;
819
819
  }
820
820
  function Nt(t, e) {
@@ -824,8 +824,8 @@ Mt(["exports"], function(o) {
824
824
  for (var n = "", r = e; r < i; ) {
825
825
  var l = t[r], s = null, c = l > 239 ? 4 : l > 223 ? 3 : l > 191 ? 2 : 1;
826
826
  if (r + c > i) break;
827
- var m, h, d;
828
- c === 1 ? l < 128 && (s = l) : c === 2 ? (m = t[r + 1], (m & 192) === 128 && (s = (l & 31) << 6 | m & 63, s <= 127 && (s = null))) : c === 3 ? (m = t[r + 1], h = t[r + 2], (m & 192) === 128 && (h & 192) === 128 && (s = (l & 15) << 12 | (m & 63) << 6 | h & 63, (s <= 2047 || s >= 55296 && s <= 57343) && (s = null))) : c === 4 && (m = t[r + 1], h = t[r + 2], d = t[r + 3], (m & 192) === 128 && (h & 192) === 128 && (d & 192) === 128 && (s = (l & 15) << 18 | (m & 63) << 12 | (h & 63) << 6 | d & 63, (s <= 65535 || s >= 1114112) && (s = null))), s === null ? (s = 65533, c = 1) : s > 65535 && (s -= 65536, n += String.fromCharCode(s >>> 10 & 1023 | 55296), s = 56320 | s & 1023), n += String.fromCharCode(s), r += c;
827
+ var m, f, h;
828
+ c === 1 ? l < 128 && (s = l) : c === 2 ? (m = t[r + 1], (m & 192) === 128 && (s = (l & 31) << 6 | m & 63, s <= 127 && (s = null))) : c === 3 ? (m = t[r + 1], f = t[r + 2], (m & 192) === 128 && (f & 192) === 128 && (s = (l & 15) << 12 | (m & 63) << 6 | f & 63, (s <= 2047 || s >= 55296 && s <= 57343) && (s = null))) : c === 4 && (m = t[r + 1], f = t[r + 2], h = t[r + 3], (m & 192) === 128 && (f & 192) === 128 && (h & 192) === 128 && (s = (l & 15) << 18 | (m & 63) << 12 | (f & 63) << 6 | h & 63, (s <= 65535 || s >= 1114112) && (s = null))), s === null ? (s = 65533, c = 1) : s > 65535 && (s -= 65536, n += String.fromCharCode(s >>> 10 & 1023 | 55296), s = 56320 | s & 1023), n += String.fromCharCode(s), r += c;
829
829
  }
830
830
  return n;
831
831
  }
@@ -850,10 +850,10 @@ Mt(["exports"], function(o) {
850
850
  }
851
851
  return i;
852
852
  }
853
- var ve = /* @__PURE__ */ ae(ne), dt;
853
+ var ve = /* @__PURE__ */ ae(ne), ht;
854
854
  (function(t) {
855
855
  t[t.UNKNOWN = 0] = "UNKNOWN", t[t.POINT = 1] = "POINT", t[t.LINESTRING = 2] = "LINESTRING", t[t.POLYGON = 3] = "POLYGON";
856
- })(dt || (dt = {}));
856
+ })(ht || (ht = {}));
857
857
  function De(t) {
858
858
  const e = new ve();
859
859
  for (const i in t.layers) {
@@ -891,15 +891,15 @@ Mt(["exports"], function(o) {
891
891
  throw new Error();
892
892
  const n = t.keys, r = t.values, l = t.keycache, s = t.valuecache;
893
893
  for (const c in i.properties) {
894
- let m = i.properties[c], h = l[c];
894
+ let m = i.properties[c], f = l[c];
895
895
  if (m === null)
896
896
  continue;
897
- typeof h > "u" && (n.push(c), h = n.length - 1, l[c] = h), e.writeVarint(h);
898
- const d = typeof m;
899
- d !== "string" && d !== "boolean" && d !== "number" && (m = JSON.stringify(m));
900
- const f = `${d}:${m}`;
901
- let w = s[f];
902
- typeof w > "u" && (r.push(m), w = r.length - 1, s[f] = w), e.writeVarint(w);
897
+ typeof f > "u" && (n.push(c), f = n.length - 1, l[c] = f), e.writeVarint(f);
898
+ const h = typeof m;
899
+ h !== "string" && h !== "boolean" && h !== "number" && (m = JSON.stringify(m));
900
+ const d = `${h}:${m}`;
901
+ let _ = s[d];
902
+ typeof _ > "u" && (r.push(m), _ = r.length - 1, s[d] = _), e.writeVarint(_);
903
903
  }
904
904
  }
905
905
  function St(t, e) {
@@ -915,14 +915,14 @@ Mt(["exports"], function(o) {
915
915
  let r = 0, l = 0;
916
916
  for (const s of i) {
917
917
  let c = 1;
918
- n === dt.POINT && (c = s.length / 2), e.writeVarint(St(1, c));
919
- const m = s.length / 2, h = n === dt.POLYGON ? m - 1 : m;
920
- for (let d = 0; d < h; d++) {
921
- d === 1 && n !== 1 && e.writeVarint(St(2, h - 1));
922
- const f = s[d * 2] - r, w = s[d * 2 + 1] - l;
923
- e.writeVarint(Vt(f)), e.writeVarint(Vt(w)), r += f, l += w;
918
+ n === ht.POINT && (c = s.length / 2), e.writeVarint(St(1, c));
919
+ const m = s.length / 2, f = n === ht.POLYGON ? m - 1 : m;
920
+ for (let h = 0; h < f; h++) {
921
+ h === 1 && n !== 1 && e.writeVarint(St(2, f - 1));
922
+ const d = s[h * 2] - r, _ = s[h * 2 + 1] - l;
923
+ e.writeVarint(Vt(d)), e.writeVarint(Vt(_)), r += d, l += _;
924
924
  }
925
- n === dt.POLYGON && e.writeVarint(St(7, 1));
925
+ n === ht.POLYGON && e.writeVarint(St(7, 1));
926
926
  }
927
927
  }
928
928
  function ke(t, e) {
@@ -932,75 +932,75 @@ Mt(["exports"], function(o) {
932
932
  }
933
933
  class Re {
934
934
  constructor(e, i, n, r, l) {
935
- this.loaded = Promise.resolve(), this.decodeImage = It, this.fetchAndParseTile = (s, c, m, h, d) => {
936
- const f = this, w = this.demUrlPattern.replace("{z}", s.toString()).replace("{x}", c.toString()).replace("{y}", m.toString());
937
- return d == null || d.useTile(w), this.parsedCache.get(w, async (E, C) => {
938
- const P = await f.fetchTile(s, c, m, C, d);
939
- if (B(C))
935
+ this.loaded = Promise.resolve(), this.decodeImage = It, this.fetchAndParseTile = (s, c, m, f, h) => {
936
+ const d = this, _ = this.demUrlPattern.replace("{z}", s.toString()).replace("{x}", c.toString()).replace("{y}", m.toString());
937
+ return h == null || h.useTile(_), this.parsedCache.get(_, async (F, P) => {
938
+ const O = await d.fetchTile(s, c, m, P, h);
939
+ if (B(P))
940
940
  throw new Error("canceled");
941
- const I = f.decodeImage(P.data, f.encoding, C), k = d == null ? void 0 : d.marker("decode"), V = await I;
942
- return k == null || k(), V;
943
- }, h);
941
+ const I = d.decodeImage(O.data, d.encoding, P), R = h == null ? void 0 : h.marker("decode"), V = await I;
942
+ return R == null || R(), V;
943
+ }, f);
944
944
  }, this.tileCache = new Z(i), this.parsedCache = new Z(i), this.contourCache = new Z(i), this.timeoutMs = l, this.demUrlPattern = e, this.encoding = n, this.maxzoom = r;
945
945
  }
946
946
  fetchTile(e, i, n, r, l) {
947
947
  const s = this.demUrlPattern.replace("{z}", e.toString()).replace("{x}", i.toString()).replace("{y}", n.toString());
948
948
  return l == null || l.useTile(s), this.tileCache.get(s, (c, m) => {
949
- const h = {
949
+ const f = {
950
950
  signal: m.signal
951
951
  };
952
952
  l == null || l.fetchTile(s);
953
- const d = l == null ? void 0 : l.marker("fetch");
954
- return G(this.timeoutMs, fetch(s, h).then(async (f) => {
955
- if (d == null || d(), !f.ok)
956
- throw new Error(`Bad response: ${f.status} for ${s}`);
953
+ const h = l == null ? void 0 : l.marker("fetch");
954
+ return G(this.timeoutMs, fetch(s, f).then(async (d) => {
955
+ if (h == null || h(), !d.ok)
956
+ throw new Error(`Bad response: ${d.status} for ${s}`);
957
957
  return {
958
- data: await f.blob(),
959
- expires: f.headers.get("expires") || void 0,
960
- cacheControl: f.headers.get("cache-control") || void 0
958
+ data: await d.blob(),
959
+ expires: d.headers.get("expires") || void 0,
960
+ cacheControl: d.headers.get("cache-control") || void 0
961
961
  };
962
962
  }), m);
963
963
  }, r);
964
964
  }
965
965
  async fetchDem(e, i, n, r, l, s) {
966
- const c = Math.min(e - (r.overzoom || 0), this.maxzoom), m = e - c, h = 1 << m, d = Math.floor(i / h), f = Math.floor(n / h), w = await this.fetchAndParseTile(c, d, f, l, s);
967
- return $.fromRawDem(w).split(m, i % h, n % h);
966
+ const c = Math.min(e - (r.overzoom || 0), this.maxzoom), m = e - c, f = 1 << m, h = Math.floor(i / f), d = Math.floor(n / f), _ = await this.fetchAndParseTile(c, h, d, l, s);
967
+ return $.fromRawDem(_).split(m, i % f, n % f);
968
968
  }
969
969
  fetchContourTile(e, i, n, r, l, s) {
970
- const { levels: c, multiplier: m = 1, buffer: h = 1, extent: d = 4096, contourLayer: f = "contours", elevationKey: w = "ele", levelKey: E = "level", subsampleBelow: C = 100 } = r;
970
+ const { levels: c, multiplier: m = 1, buffer: f = 1, extent: h = 4096, contourLayer: d = "contours", elevationKey: _ = "ele", levelKey: F = "level", subsampleBelow: P = 100 } = r;
971
971
  if (!c || c.length === 0)
972
972
  return Promise.resolve({ arrayBuffer: new ArrayBuffer(0) });
973
- const P = [e, i, n, g(r)].join("/");
974
- return this.contourCache.get(P, async (I, k) => {
975
- const V = 1 << e, ft = [];
973
+ const O = [e, i, n, p(r)].join("/");
974
+ return this.contourCache.get(O, async (I, R) => {
975
+ const V = 1 << e, dt = [];
976
976
  for (let q = n - 1; q <= n + 1; q++)
977
977
  for (let nt = i - 1; nt <= i + 1; nt++)
978
- ft.push(q < 0 || q >= V ? void 0 : this.fetchDem(e, (nt + V) % V, q, r, k, s));
979
- const pt = await Promise.all(ft);
978
+ dt.push(q < 0 || q >= V ? void 0 : this.fetchDem(e, (nt + V) % V, q, r, R, s));
979
+ const pt = await Promise.all(dt);
980
980
  let X = $.combineNeighbors(pt);
981
- if (!X || B(k))
981
+ if (!X || B(R))
982
982
  return { arrayBuffer: new Uint8Array().buffer };
983
983
  const ot = s == null ? void 0 : s.marker("isoline");
984
- if (X.width >= C)
984
+ if (X.width >= P)
985
985
  X = X.materialize(2);
986
986
  else
987
- for (; X.width < C; )
987
+ for (; X.width < P; )
988
988
  X = X.subsamplePixelCenters(2).materialize(2);
989
989
  X = X.averagePixelCentersToGrid().scaleElevation(m).materialize(1);
990
- const R = y(c[0], X, d, h);
990
+ const C = g(c[0], X, h, f);
991
991
  ot == null || ot();
992
992
  const At = De({
993
- extent: d,
993
+ extent: h,
994
994
  layers: {
995
- [f]: {
996
- features: Object.entries(R).map(([q, nt]) => {
995
+ [d]: {
996
+ features: Object.entries(C).map(([q, nt]) => {
997
997
  const _t = Number(q);
998
998
  return {
999
- type: dt.LINESTRING,
999
+ type: ht.LINESTRING,
1000
1000
  geometry: nt,
1001
1001
  properties: {
1002
- [w]: _t,
1003
- [E]: Math.max(...c.map((bt, Y) => _t % bt === 0 ? Y : 0))
1002
+ [_]: _t,
1003
+ [F]: Math.max(...c.map((bt, Y) => _t % bt === 0 ? Y : 0))
1004
1004
  }
1005
1005
  };
1006
1006
  })
@@ -1030,8 +1030,8 @@ Mt(["exports"], function(o) {
1030
1030
  this.marks = {}, this.urls = [], this.fetched = [], this.resources = [], this.tilesFetched = 0, this.timeOrigin = Ce, this.finish = (i) => {
1031
1031
  this.markFinish();
1032
1032
  const n = (m) => {
1033
- const h = this.marks[m] || [], d = Math.max(...h.map((w) => Math.max(...w))), f = Math.min(...h.map((w) => Math.min(...w)));
1034
- return Number.isFinite(d) ? d - f : void 0;
1033
+ const f = this.marks[m] || [], h = Math.max(...f.map((_) => Math.max(..._))), d = Math.min(...f.map((_) => Math.min(..._)));
1034
+ return Number.isFinite(h) ? h - d : void 0;
1035
1035
  }, r = n("main") || 0, l = n("fetch"), s = n("decode"), c = n("isoline");
1036
1036
  return {
1037
1037
  url: i,
@@ -1063,7 +1063,7 @@ Mt(["exports"], function(o) {
1063
1063
  const r = i.origin - this.timeOrigin;
1064
1064
  for (const l in i.marks) {
1065
1065
  const s = l;
1066
- (this.marks[s] || (this.marks[s] = [])).push(...((n = i.marks[s]) === null || n === void 0 ? void 0 : n.map((m) => m.map((h) => h + r))) || []);
1066
+ (this.marks[s] || (this.marks[s] = [])).push(...((n = i.marks[s]) === null || n === void 0 ? void 0 : n.map((m) => m.map((f) => f + r))) || []);
1067
1067
  }
1068
1068
  this.resources.push(...i.resources.map((l) => Ie(l, r)));
1069
1069
  }, this.markFinish = this.marker(e);
@@ -1088,27 +1088,27 @@ Mt(["exports"], function(o) {
1088
1088
  const s = this.callbacks[l.id];
1089
1089
  delete this.callbacks[l.id], s && s(l.error ? new Error(l.error) : void 0, l.response, l.timings);
1090
1090
  } else if (l.type === "request") {
1091
- const s = new Wt("worker"), c = i[l.name], m = new AbortController(), h = c.apply(c, [
1091
+ const s = new Wt("worker"), c = i[l.name], m = new AbortController(), f = c.apply(c, [
1092
1092
  ...l.args,
1093
1093
  m,
1094
1094
  s
1095
- ]), d = `${l.name}_${l.id}`;
1096
- if (l.id && h) {
1095
+ ]), h = `${l.name}_${l.id}`;
1096
+ if (l.id && f) {
1097
1097
  this.cancels[l.id] = m;
1098
1098
  try {
1099
- const f = await h, w = f == null ? void 0 : f.transferrables;
1099
+ const d = await f, _ = d == null ? void 0 : d.transferrables;
1100
1100
  this.postMessage({
1101
1101
  id: l.id,
1102
1102
  type: "response",
1103
- response: f,
1104
- timings: s.finish(d)
1105
- }, w);
1106
- } catch (f) {
1103
+ response: d,
1104
+ timings: s.finish(h)
1105
+ }, _);
1106
+ } catch (d) {
1107
1107
  this.postMessage({
1108
1108
  id: l.id,
1109
1109
  type: "response",
1110
- error: (f == null ? void 0 : f.toString()) || "error",
1111
- timings: s.finish(d)
1110
+ error: (d == null ? void 0 : d.toString()) || "error",
1111
+ timings: s.finish(h)
1112
1112
  });
1113
1113
  }
1114
1114
  delete this.cancels[l.id];
@@ -1121,9 +1121,9 @@ Mt(["exports"], function(o) {
1121
1121
  }
1122
1122
  /** Invokes a method by name with a set of arguments in the remote context. */
1123
1123
  send(e, i, n, r, ...l) {
1124
- const s = ++Le, c = new Promise((m, h) => {
1125
- this.postMessage({ id: s, type: "request", name: e, args: l }, i), this.callbacks[s] = (d, f, w) => {
1126
- r == null || r.addAll(w), d ? h(d) : m(f);
1124
+ const s = ++Le, c = new Promise((m, f) => {
1125
+ this.postMessage({ id: s, type: "request", name: e, args: l }, i), this.callbacks[s] = (h, d, _) => {
1126
+ r == null || r.addAll(_), h ? f(h) : m(d);
1127
1127
  };
1128
1128
  });
1129
1129
  return U(n, () => {
@@ -1131,129 +1131,129 @@ Mt(["exports"], function(o) {
1131
1131
  }), G(this.timeoutMs, c, n);
1132
1132
  }
1133
1133
  }
1134
- o.A = Ge, o.H = $, o.L = Re, o.T = Wt, o.a = z, o.b = y, o.c = Dt, o.d = It, o.e = A, o.f = M, o.g = b, o.p = S;
1134
+ o.A = Ge, o.H = $, o.L = Re, o.T = Wt, o.a = z, o.b = g, o.c = Dt, o.d = It, o.e = k, o.f = A, o.g = y, o.p = D;
1135
1135
  });
1136
1136
  Mt(["./shared"], function(o) {
1137
- const a = (p) => Promise.reject(new Error(`No manager registered for ${p}`));
1137
+ const a = (x) => Promise.reject(new Error(`No manager registered for ${x}`));
1138
1138
  class u {
1139
1139
  constructor() {
1140
- this.managers = {}, this.init = (y, _) => (this.managers[y.managerId] = new o.L(y.demUrlPattern, y.cacheSize, y.encoding, y.maxzoom, y.timeoutMs), Promise.resolve()), this.fetchTile = (y, _, F, O, A, z) => {
1141
- var g;
1142
- return ((g = this.managers[y]) === null || g === void 0 ? void 0 : g.fetchTile(_, F, O, A, z)) || a(y);
1143
- }, this.fetchAndParseTile = (y, _, F, O, A, z) => {
1144
- var g;
1145
- return o.p(((g = this.managers[y]) === null || g === void 0 ? void 0 : g.fetchAndParseTile(_, F, O, A, z)) || a(y), !0);
1146
- }, this.fetchContourTile = (y, _, F, O, A, z, g) => {
1147
- var b;
1148
- return o.f(((b = this.managers[y]) === null || b === void 0 ? void 0 : b.fetchContourTile(_, F, O, A, z, g)) || a(y));
1140
+ this.managers = {}, this.init = (g, b) => (this.managers[g.managerId] = new o.L(g.demUrlPattern, g.cacheSize, g.encoding, g.maxzoom, g.timeoutMs), Promise.resolve()), this.fetchTile = (g, b, S, M, k, z) => {
1141
+ var p;
1142
+ return ((p = this.managers[g]) === null || p === void 0 ? void 0 : p.fetchTile(b, S, M, k, z)) || a(g);
1143
+ }, this.fetchAndParseTile = (g, b, S, M, k, z) => {
1144
+ var p;
1145
+ return o.p(((p = this.managers[g]) === null || p === void 0 ? void 0 : p.fetchAndParseTile(b, S, M, k, z)) || a(g), !0);
1146
+ }, this.fetchContourTile = (g, b, S, M, k, z, p) => {
1147
+ var y;
1148
+ return o.f(((y = this.managers[g]) === null || y === void 0 ? void 0 : y.fetchContourTile(b, S, M, k, z, p)) || a(g));
1149
1149
  };
1150
1150
  }
1151
1151
  }
1152
- const x = typeof self < "u" ? self : typeof window < "u" ? window : global;
1153
- x.actor = new o.A(x, new u());
1152
+ const w = typeof self < "u" ? self : typeof window < "u" ? window : global;
1153
+ w.actor = new o.A(w, new u());
1154
1154
  });
1155
1155
  Mt(["./shared"], function(o) {
1156
1156
  const a = { workerUrl: "" };
1157
- let u, x = 0;
1158
- class p {
1157
+ let u, w = 0;
1158
+ class x {
1159
1159
  constructor() {
1160
- this.decodeImage = (b, v, S) => o.p(o.d(b, v, S), !1);
1160
+ this.decodeImage = (y, T, D) => o.p(o.d(y, T, D), !1);
1161
1161
  }
1162
1162
  }
1163
- function y() {
1163
+ function g() {
1164
1164
  if (!u) {
1165
- const g = new Worker(a.workerUrl), b = new p();
1166
- u = new o.A(g, b);
1165
+ const p = new Worker(a.workerUrl), y = new x();
1166
+ u = new o.A(p, y);
1167
1167
  }
1168
1168
  return u;
1169
1169
  }
1170
- class _ {
1171
- constructor(b, v, S, M, j, ct) {
1172
- this.fetchTile = (H, G, U, B, D) => this.actor.send("fetchTile", [], B, D, this.managerId, H, G, U), this.fetchAndParseTile = (H, G, U, B, D) => this.actor.send("fetchAndParseTile", [], B, D, this.managerId, H, G, U), this.fetchContourTile = (H, G, U, B, D, Z) => this.actor.send("fetchContourTile", [], D, Z, this.managerId, H, G, U, B);
1173
- const tt = this.managerId = ++x;
1174
- this.actor = ct || y(), this.loaded = this.actor.send("init", [], new AbortController(), void 0, {
1175
- cacheSize: v,
1176
- demUrlPattern: b,
1177
- encoding: S,
1178
- maxzoom: M,
1170
+ class b {
1171
+ constructor(y, T, D, A, j, ct) {
1172
+ this.fetchTile = (H, G, U, B, E) => this.actor.send("fetchTile", [], B, E, this.managerId, H, G, U), this.fetchAndParseTile = (H, G, U, B, E) => this.actor.send("fetchAndParseTile", [], B, E, this.managerId, H, G, U), this.fetchContourTile = (H, G, U, B, E, Z) => this.actor.send("fetchContourTile", [], E, Z, this.managerId, H, G, U, B);
1173
+ const tt = this.managerId = ++w;
1174
+ this.actor = ct || g(), this.loaded = this.actor.send("init", [], new AbortController(), void 0, {
1175
+ cacheSize: T,
1176
+ demUrlPattern: y,
1177
+ encoding: D,
1178
+ maxzoom: A,
1179
1179
  managerId: tt,
1180
1180
  timeoutMs: j
1181
1181
  });
1182
1182
  }
1183
1183
  }
1184
1184
  Blob.prototype.arrayBuffer || (Blob.prototype.arrayBuffer = function() {
1185
- return new Promise((b, v) => {
1186
- const S = new FileReader();
1187
- S.onload = (M) => {
1185
+ return new Promise((y, T) => {
1186
+ const D = new FileReader();
1187
+ D.onload = (A) => {
1188
1188
  var j;
1189
- return b((j = M.target) === null || j === void 0 ? void 0 : j.result);
1190
- }, S.onerror = v, S.readAsArrayBuffer(this);
1189
+ return y((j = A.target) === null || j === void 0 ? void 0 : j.result);
1190
+ }, D.onerror = T, D.readAsArrayBuffer(this);
1191
1191
  });
1192
1192
  });
1193
- const F = (g) => (b, v) => {
1194
- if (v instanceof AbortController)
1195
- return g(b, v);
1193
+ const S = (p) => (y, T) => {
1194
+ if (T instanceof AbortController)
1195
+ return p(y, T);
1196
1196
  {
1197
- const S = new AbortController();
1198
- return g(b, S).then((M) => v(void 0, M.data, M.cacheControl, M.expires), (M) => v(M)), { cancel: () => S.abort() };
1197
+ const D = new AbortController();
1198
+ return p(y, D).then((A) => T(void 0, A.data, A.cacheControl, A.expires), (A) => T(A)), { cancel: () => D.abort() };
1199
1199
  }
1200
- }, O = /* @__PURE__ */ new Set();
1201
- class A {
1202
- constructor({ url: b, cacheSize: v = 100, id: S = "dem", encoding: M = "terrarium", maxzoom: j = 12, worker: ct = !0, timeoutMs: tt = 1e4, actor: H }) {
1203
- this.timingCallbacks = [], this.onTiming = (D) => {
1204
- this.timingCallbacks.push(D);
1205
- }, this.setupMaplibre = (D) => {
1206
- D.addProtocol(this.sharedDemProtocolId, this.sharedDemProtocol), D.addProtocol(this.contourProtocolId, this.contourProtocol);
1207
- }, this.sharedDemProtocolV4 = async (D, Z) => {
1208
- const [K, et, N] = this.parseUrl(D.url), it = new o.T("main");
1200
+ }, M = /* @__PURE__ */ new Set();
1201
+ class k {
1202
+ constructor({ url: y, cacheSize: T = 100, id: D = "dem", encoding: A = "terrarium", maxzoom: j = 12, worker: ct = !0, timeoutMs: tt = 1e4, actor: H }) {
1203
+ this.timingCallbacks = [], this.onTiming = (E) => {
1204
+ this.timingCallbacks.push(E);
1205
+ }, this.setupMaplibre = (E) => {
1206
+ E.addProtocol(this.sharedDemProtocolId, this.sharedDemProtocol), E.addProtocol(this.contourProtocolId, this.contourProtocol);
1207
+ }, this.sharedDemProtocolV4 = async (E, Z) => {
1208
+ const [K, et, N] = this.parseUrl(E.url), it = new o.T("main");
1209
1209
  let at;
1210
1210
  try {
1211
1211
  const W = await this.manager.fetchTile(K, et, N, Z, it);
1212
- return at = it.finish(D.url), {
1212
+ return at = it.finish(E.url), {
1213
1213
  data: await W.data.arrayBuffer(),
1214
1214
  cacheControl: W.cacheControl,
1215
1215
  expires: W.expires
1216
1216
  };
1217
1217
  } catch (W) {
1218
- throw at = it.error(D.url), W;
1218
+ throw at = it.error(E.url), W;
1219
1219
  } finally {
1220
1220
  this.timingCallbacks.forEach((W) => W(at));
1221
1221
  }
1222
- }, this.contourProtocolV4 = async (D, Z) => {
1222
+ }, this.contourProtocolV4 = async (E, Z) => {
1223
1223
  const K = new o.T("main");
1224
1224
  let et;
1225
1225
  try {
1226
- const [N, it, at] = this.parseUrl(D.url), W = o.a(D.url), xt = await this.manager.fetchContourTile(N, it, at, o.g(W, N), Z, K);
1227
- return et = K.finish(D.url), { data: xt.arrayBuffer };
1226
+ const [N, it, at] = this.parseUrl(E.url), W = o.a(E.url), xt = await this.manager.fetchContourTile(N, it, at, o.g(W, N), Z, K);
1227
+ return et = K.finish(E.url), { data: xt.arrayBuffer };
1228
1228
  } catch (N) {
1229
- throw et = K.error(D.url), N;
1229
+ throw et = K.error(E.url), N;
1230
1230
  } finally {
1231
1231
  this.timingCallbacks.forEach((N) => N(et));
1232
1232
  }
1233
- }, this.contourProtocol = F(this.contourProtocolV4), this.sharedDemProtocol = F(this.sharedDemProtocolV4), this.contourProtocolUrl = (D) => `${this.contourProtocolUrlBase}?${o.e(D)}`;
1234
- let G = S, U = 1;
1235
- for (; O.has(G); )
1236
- G = S + U++;
1237
- O.add(G), this.sharedDemProtocolId = `${G}-shared`, this.contourProtocolId = `${G}-contour`, this.sharedDemProtocolUrl = `${this.sharedDemProtocolId}://{z}/{x}/{y}`, this.contourProtocolUrlBase = `${this.contourProtocolId}://{z}/{x}/{y}`;
1238
- const B = ct ? _ : o.L;
1239
- this.manager = new B(b, v, M, j, tt, H);
1233
+ }, this.contourProtocol = S(this.contourProtocolV4), this.sharedDemProtocol = S(this.sharedDemProtocolV4), this.contourProtocolUrl = (E) => `${this.contourProtocolUrlBase}?${o.e(E)}`;
1234
+ let G = D, U = 1;
1235
+ for (; M.has(G); )
1236
+ G = D + U++;
1237
+ M.add(G), this.sharedDemProtocolId = `${G}-shared`, this.contourProtocolId = `${G}-contour`, this.sharedDemProtocolUrl = `${this.sharedDemProtocolId}://{z}/{x}/{y}`, this.contourProtocolUrlBase = `${this.contourProtocolId}://{z}/{x}/{y}`;
1238
+ const B = ct ? b : o.L;
1239
+ this.manager = new B(y, T, A, j, tt, H);
1240
1240
  }
1241
- getDemTile(b, v, S, M) {
1242
- return this.manager.fetchAndParseTile(b, v, S, M || new AbortController());
1241
+ getDemTile(y, T, D, A) {
1242
+ return this.manager.fetchAndParseTile(y, T, D, A || new AbortController());
1243
1243
  }
1244
- parseUrl(b) {
1245
- const [, v, S, M] = /\/\/(\d+)\/(\d+)\/(\d+)/.exec(b) || [];
1246
- return [Number(v), Number(S), Number(M)];
1244
+ parseUrl(y) {
1245
+ const [, T, D, A] = /\/\/(\d+)\/(\d+)\/(\d+)/.exec(y) || [];
1246
+ return [Number(T), Number(D), Number(A)];
1247
1247
  }
1248
1248
  }
1249
1249
  return {
1250
1250
  generateIsolines: o.b,
1251
- DemSource: A,
1251
+ DemSource: k,
1252
1252
  HeightTile: o.H,
1253
1253
  LocalDemManager: o.L,
1254
1254
  decodeParsedImage: o.c,
1255
- set workerUrl(g) {
1256
- a.workerUrl = g;
1255
+ set workerUrl(p) {
1256
+ a.workerUrl = p;
1257
1257
  },
1258
1258
  get workerUrl() {
1259
1259
  return a.workerUrl;
@@ -1266,16 +1266,16 @@ function Xe(o) {
1266
1266
  }
1267
1267
  function Ne(o) {
1268
1268
  if (o == null) return Xe;
1269
- var a, u, x = o.scale[0], p = o.scale[1], y = o.translate[0], _ = o.translate[1];
1270
- return function(F, O) {
1271
- O || (a = u = 0);
1272
- var A = 2, z = F.length, g = new Array(z);
1273
- for (g[0] = (a += F[0]) * x + y, g[1] = (u += F[1]) * p + _; A < z; ) g[A] = F[A], ++A;
1274
- return g;
1269
+ var a, u, w = o.scale[0], x = o.scale[1], g = o.translate[0], b = o.translate[1];
1270
+ return function(S, M) {
1271
+ M || (a = u = 0);
1272
+ var k = 2, z = S.length, p = new Array(z);
1273
+ for (p[0] = (a += S[0]) * w + g, p[1] = (u += S[1]) * x + b; k < z; ) p[k] = S[k], ++k;
1274
+ return p;
1275
1275
  };
1276
1276
  }
1277
1277
  function Ve(o, a) {
1278
- for (var u, x = o.length, p = x - a; p < --x; ) u = o[p], o[p++] = o[x], o[x] = u;
1278
+ for (var u, w = o.length, x = w - a; x < --w; ) u = o[x], o[x++] = o[w], o[w] = u;
1279
1279
  }
1280
1280
  function $t(o, a) {
1281
1281
  return typeof a == "string" && (a = o.objects[a]), a.type === "GeometryCollection" ? { type: "FeatureCollection", features: a.geometries.map(function(u) {
@@ -1283,60 +1283,60 @@ function $t(o, a) {
1283
1283
  }) } : Kt(o, a);
1284
1284
  }
1285
1285
  function Kt(o, a) {
1286
- var u = a.id, x = a.bbox, p = a.properties == null ? {} : a.properties, y = Ue(o, a);
1287
- return u == null && x == null ? { type: "Feature", properties: p, geometry: y } : x == null ? { type: "Feature", id: u, properties: p, geometry: y } : { type: "Feature", id: u, bbox: x, properties: p, geometry: y };
1286
+ var u = a.id, w = a.bbox, x = a.properties == null ? {} : a.properties, g = Ue(o, a);
1287
+ return u == null && w == null ? { type: "Feature", properties: x, geometry: g } : w == null ? { type: "Feature", id: u, properties: x, geometry: g } : { type: "Feature", id: u, bbox: w, properties: x, geometry: g };
1288
1288
  }
1289
1289
  function Ue(o, a) {
1290
- var u = Ne(o.transform), x = o.arcs;
1291
- function p(z, g) {
1292
- g.length && g.pop();
1293
- for (var b = x[z < 0 ? ~z : z], v = 0, S = b.length; v < S; ++v)
1294
- g.push(u(b[v], v));
1295
- z < 0 && Ve(g, S);
1296
- }
1297
- function y(z) {
1290
+ var u = Ne(o.transform), w = o.arcs;
1291
+ function x(z, p) {
1292
+ p.length && p.pop();
1293
+ for (var y = w[z < 0 ? ~z : z], T = 0, D = y.length; T < D; ++T)
1294
+ p.push(u(y[T], T));
1295
+ z < 0 && Ve(p, D);
1296
+ }
1297
+ function g(z) {
1298
1298
  return u(z);
1299
1299
  }
1300
- function _(z) {
1301
- for (var g = [], b = 0, v = z.length; b < v; ++b) p(z[b], g);
1302
- return g.length < 2 && g.push(g[0]), g;
1300
+ function b(z) {
1301
+ for (var p = [], y = 0, T = z.length; y < T; ++y) x(z[y], p);
1302
+ return p.length < 2 && p.push(p[0]), p;
1303
1303
  }
1304
- function F(z) {
1305
- for (var g = _(z); g.length < 4; ) g.push(g[0]);
1306
- return g;
1304
+ function S(z) {
1305
+ for (var p = b(z); p.length < 4; ) p.push(p[0]);
1306
+ return p;
1307
1307
  }
1308
- function O(z) {
1309
- return z.map(F);
1308
+ function M(z) {
1309
+ return z.map(S);
1310
1310
  }
1311
- function A(z) {
1312
- var g = z.type, b;
1313
- switch (g) {
1311
+ function k(z) {
1312
+ var p = z.type, y;
1313
+ switch (p) {
1314
1314
  case "GeometryCollection":
1315
- return { type: g, geometries: z.geometries.map(A) };
1315
+ return { type: p, geometries: z.geometries.map(k) };
1316
1316
  case "Point":
1317
- b = y(z.coordinates);
1317
+ y = g(z.coordinates);
1318
1318
  break;
1319
1319
  case "MultiPoint":
1320
- b = z.coordinates.map(y);
1320
+ y = z.coordinates.map(g);
1321
1321
  break;
1322
1322
  case "LineString":
1323
- b = _(z.arcs);
1323
+ y = b(z.arcs);
1324
1324
  break;
1325
1325
  case "MultiLineString":
1326
- b = z.arcs.map(_);
1326
+ y = z.arcs.map(b);
1327
1327
  break;
1328
1328
  case "Polygon":
1329
- b = O(z.arcs);
1329
+ y = M(z.arcs);
1330
1330
  break;
1331
1331
  case "MultiPolygon":
1332
- b = z.arcs.map(O);
1332
+ y = z.arcs.map(M);
1333
1333
  break;
1334
1334
  default:
1335
1335
  return null;
1336
1336
  }
1337
- return { type: g, coordinates: b };
1337
+ return { type: p, coordinates: y };
1338
1338
  }
1339
- return A(a);
1339
+ return k(a);
1340
1340
  }
1341
1341
  const We = {
1342
1342
  airspaceStroke: "#AAB7B8",
@@ -3240,11 +3240,11 @@ const oi = {
3240
3240
  async function Qt(o) {
3241
3241
  const a = await fetch(o);
3242
3242
  if (!a.ok) throw new Error(`fetch ${o} → ${a.status}`);
3243
- const u = a.headers.get("Content-Encoding"), x = a.headers.get("Content-Type") || "";
3244
- if (u === "gzip" || x.includes("json"))
3243
+ const u = a.headers.get("Content-Encoding"), w = a.headers.get("Content-Type") || "";
3244
+ if (u === "gzip" || w.includes("json"))
3245
3245
  return a.json();
3246
- const p = a.body.pipeThrough(new DecompressionStream("gzip"));
3247
- return new Response(p).json();
3246
+ const x = a.body.pipeThrough(new DecompressionStream("gzip"));
3247
+ return new Response(x).json();
3248
3248
  }
3249
3249
  class ri {
3250
3250
  /**
@@ -3262,16 +3262,16 @@ class ri {
3262
3262
  constructor(a = {}) {
3263
3263
  const {
3264
3264
  container: u,
3265
- theme: x = "light",
3266
- apiUrl: p = ti,
3267
- spriteUrl: y,
3268
- period: _ = null,
3269
- layers: F = {},
3270
- center: O = [104, 36],
3271
- zoom: A = 4,
3265
+ theme: w = "light",
3266
+ apiUrl: x = ti,
3267
+ spriteUrl: g,
3268
+ period: b = null,
3269
+ layers: S = {},
3270
+ center: M = [104, 36],
3271
+ zoom: k = 4,
3272
3272
  terrainUrl: z = null
3273
3273
  } = a;
3274
- this._apiUrl = p.replace(/\/$/, ""), this._spriteUrl = (y ?? p).replace(/\/$/, ""), this._terrainUrl = z ?? `${this._apiUrl}/api/terrain/{z}/{x}/{y}.png`, this._theme = x, this._period = _, this._center = O, this._zoom = A, this._ready = !1, this._layerVisible = {
3274
+ return this._apiUrl = x.replace(/\/$/, ""), this._spriteUrl = (g ?? x).replace(/\/$/, ""), this._terrainUrl = z ?? `${this._apiUrl}/api/terrain/{z}/{x}/{y}.png`, this._theme = w, this._period = b, this._center = M, this._zoom = k, this._ready = !1, this._layerVisible = {
3275
3275
  // aviation groups — all visible by default
3276
3276
  adiz: !0,
3277
3277
  fir: !0,
@@ -3289,8 +3289,25 @@ class ri {
3289
3289
  terrain: !1,
3290
3290
  contour: !1,
3291
3291
  // user overrides
3292
- ...F
3293
- }, this._initMap(u);
3292
+ ...S
3293
+ }, this._initMap(u), new Proxy(this, {
3294
+ get(p, y) {
3295
+ if (typeof y == "symbol" || Reflect.has(p, y)) {
3296
+ const A = p[y];
3297
+ return typeof A == "function" ? A.bind(p) : A;
3298
+ }
3299
+ const T = p._map;
3300
+ if (!T) return;
3301
+ const D = T[y];
3302
+ return typeof D == "function" ? D.bind(T) : D;
3303
+ },
3304
+ set(p, y, T) {
3305
+ return typeof y == "symbol" || Reflect.has(p, y) || !p._map ? p[y] = T : y in p._map ? p._map[y] = T : p[y] = T, !0;
3306
+ },
3307
+ has(p, y) {
3308
+ return Reflect.has(p, y) || (p._map ? y in p._map : !1);
3309
+ }
3310
+ });
3294
3311
  }
3295
3312
  // ── Map initialization ────────────────────────────────────────────────────
3296
3313
  _initMap(a) {
@@ -3329,8 +3346,8 @@ class ri {
3329
3346
  async _initSources() {
3330
3347
  if (!this._period)
3331
3348
  try {
3332
- const x = await (await fetch(`${this._apiUrl}/api/periods`)).json();
3333
- this._period = x[x.length - 1];
3349
+ const w = await (await fetch(`${this._apiUrl}/api/periods`)).json();
3350
+ this._period = w[w.length - 1];
3334
3351
  } catch (u) {
3335
3352
  console.warn("[AviationChart] fetchPeriods failed:", u), this._period = "latest";
3336
3353
  }
@@ -3375,15 +3392,15 @@ class ri {
3375
3392
  }), await this._loadBaseData();
3376
3393
  }
3377
3394
  async _loadBaseData() {
3378
- var a, u, x, p;
3395
+ var a, u, w, x;
3379
3396
  try {
3380
- const [y, _] = await Promise.all([
3397
+ const [g, b] = await Promise.all([
3381
3398
  Qt(`${this._apiUrl}/topjson/land.topojson.gz`),
3382
3399
  Qt(`${this._apiUrl}/topjson/boundary.topojson.gz`)
3383
3400
  ]);
3384
- (a = y == null ? void 0 : y.objects) != null && a.land ? (u = this._map.getSource("land")) == null || u.setData($t(y, y.objects.land)) : console.warn("[AviationChart] land topojson missing objects.land"), (x = _ == null ? void 0 : _.objects) != null && x.boundary ? (p = this._map.getSource("boundary")) == null || p.setData($t(_, _.objects.boundary)) : console.warn("[AviationChart] boundary topojson missing objects.boundary");
3385
- } catch (y) {
3386
- console.error("[AviationChart] loadBaseData failed:", y);
3401
+ (a = g == null ? void 0 : g.objects) != null && a.land ? (u = this._map.getSource("land")) == null || u.setData($t(g, g.objects.land)) : console.warn("[AviationChart] land topojson missing objects.land"), (w = b == null ? void 0 : b.objects) != null && w.boundary ? (x = this._map.getSource("boundary")) == null || x.setData($t(b, b.objects.boundary)) : console.warn("[AviationChart] boundary topojson missing objects.boundary");
3402
+ } catch (g) {
3403
+ console.error("[AviationChart] loadBaseData failed:", g);
3387
3404
  }
3388
3405
  }
3389
3406
  _initLayers() {
@@ -3438,26 +3455,26 @@ class ri {
3438
3455
  "text-halo-width": 1
3439
3456
  }
3440
3457
  }), this._layerVisible.terrain && this._map.setTerrain({ source: "terrain", exaggeration: 4 });
3441
- for (const x of Yt(this._theme))
3442
- this._map.getLayer(x.id) || this._map.addLayer(x);
3443
- for (const x of Ht("amm", this._theme))
3444
- this._map.getLayer(x.id) || this._map.addLayer(x, "fir-line");
3458
+ for (const w of Yt(this._theme))
3459
+ this._map.getLayer(w.id) || this._map.addLayer(w);
3460
+ for (const w of Ht("amm", this._theme))
3461
+ this._map.getLayer(w.id) || this._map.addLayer(w, "fir-line");
3445
3462
  }
3446
3463
  _applyVisibility() {
3447
- for (const [p, y] of Object.entries(Ct)) {
3448
- const _ = this._layerVisible[p] !== !1 ? "visible" : "none";
3449
- for (const F of y)
3450
- this._map.getLayer(F) && this._map.setLayoutProperty(F, "visibility", _);
3464
+ for (const [x, g] of Object.entries(Ct)) {
3465
+ const b = this._layerVisible[x] !== !1 ? "visible" : "none";
3466
+ for (const S of g)
3467
+ this._map.getLayer(S) && this._map.setLayoutProperty(S, "visibility", b);
3451
3468
  }
3452
3469
  const a = this._layerVisible.amm !== !1 ? "visible" : "none";
3453
- for (const p of Pt)
3454
- this._map.getLayer(p) && this._map.setLayoutProperty(p, "visibility", a);
3470
+ for (const x of Pt)
3471
+ this._map.getLayer(x) && this._map.setLayoutProperty(x, "visibility", a);
3455
3472
  const u = this._layerVisible.terrain ? "visible" : "none";
3456
- for (const p of Zt)
3457
- this._map.getLayer(p) && this._map.setLayoutProperty(p, "visibility", u);
3458
- const x = this._layerVisible.contour ? "visible" : "none";
3459
- for (const p of Jt)
3460
- this._map.getLayer(p) && this._map.setLayoutProperty(p, "visibility", x);
3473
+ for (const x of Zt)
3474
+ this._map.getLayer(x) && this._map.setLayoutProperty(x, "visibility", u);
3475
+ const w = this._layerVisible.contour ? "visible" : "none";
3476
+ for (const x of Jt)
3477
+ this._map.getLayer(x) && this._map.setLayoutProperty(x, "visibility", w);
3461
3478
  }
3462
3479
  // ── Public API ────────────────────────────────────────────────────────────
3463
3480
  /** Raw MapLibre Map instance */
@@ -3481,18 +3498,18 @@ class ri {
3481
3498
  this._theme = a;
3482
3499
  const u = ut[a] ?? ut.light;
3483
3500
  this._map.setPaintProperty("background", "background-color", u.background);
3484
- const x = [
3501
+ const w = [
3485
3502
  "landLaye",
3486
3503
  "boundary",
3487
3504
  ...Object.values(Ct).flat(),
3488
3505
  ...Pt
3489
3506
  ];
3490
- for (const p of x)
3491
- this._map.getLayer(p) && this._map.removeLayer(p);
3492
- for (const p of Yt(this._theme))
3493
- this._map.addLayer(p);
3494
- for (const p of Ht("amm", this._theme))
3495
- this._map.getLayer(p.id) || this._map.addLayer(p, "fir-line");
3507
+ for (const x of w)
3508
+ this._map.getLayer(x) && this._map.removeLayer(x);
3509
+ for (const x of Yt(this._theme))
3510
+ this._map.addLayer(x);
3511
+ for (const x of Ht("amm", this._theme))
3512
+ this._map.getLayer(x.id) || this._map.addLayer(x, "fir-line");
3496
3513
  this._applyVisibility();
3497
3514
  }
3498
3515
  /**
@@ -3508,41 +3525,41 @@ class ri {
3508
3525
  */
3509
3526
  setLayerVisible(a, u) {
3510
3527
  if (this._layerVisible[a] = u, a === "terrain") {
3511
- const y = u ? "visible" : "none";
3512
- for (const _ of Zt)
3513
- this._map.getLayer(_) && this._map.setLayoutProperty(_, "visibility", y);
3528
+ const g = u ? "visible" : "none";
3529
+ for (const b of Zt)
3530
+ this._map.getLayer(b) && this._map.setLayoutProperty(b, "visibility", g);
3514
3531
  this._map.setTerrain(u ? { source: "terrain", exaggeration: 4 } : null);
3515
3532
  return;
3516
3533
  }
3517
3534
  if (a === "contour") {
3518
- const y = u ? "visible" : "none";
3519
- for (const _ of Jt)
3520
- this._map.getLayer(_) && this._map.setLayoutProperty(_, "visibility", y);
3535
+ const g = u ? "visible" : "none";
3536
+ for (const b of Jt)
3537
+ this._map.getLayer(b) && this._map.setLayoutProperty(b, "visibility", g);
3521
3538
  return;
3522
3539
  }
3523
3540
  if (a === "amm") {
3524
- const y = u ? "visible" : "none";
3525
- for (const _ of Pt)
3526
- this._map.getLayer(_) && this._map.setLayoutProperty(_, "visibility", y);
3541
+ const g = u ? "visible" : "none";
3542
+ for (const b of Pt)
3543
+ this._map.getLayer(b) && this._map.setLayoutProperty(b, "visibility", g);
3527
3544
  return;
3528
3545
  }
3529
- const x = Ct[a];
3530
- if (!x) {
3546
+ const w = Ct[a];
3547
+ if (!w) {
3531
3548
  console.warn(`[AviationChart] Unknown layer key: "${a}"`);
3532
3549
  return;
3533
3550
  }
3534
- const p = u ? "visible" : "none";
3535
- for (const y of x)
3536
- this._map.getLayer(y) && this._map.setLayoutProperty(y, "visibility", p);
3551
+ const x = u ? "visible" : "none";
3552
+ for (const g of w)
3553
+ this._map.getLayer(g) && this._map.setLayoutProperty(g, "visibility", x);
3537
3554
  }
3538
3555
  /**
3539
3556
  * Switch the navdata period. Fetches tiles for the new period immediately.
3540
3557
  * @param {string} period
3541
3558
  */
3542
3559
  setPeriod(a) {
3543
- var x;
3560
+ var w;
3544
3561
  this._period = a;
3545
- const u = (x = this._map) == null ? void 0 : x.getSource("navdata");
3562
+ const u = (w = this._map) == null ? void 0 : w.getSource("navdata");
3546
3563
  u && u.setTiles([`${this._apiUrl}/api/tiles/${a}/{z}/{x}/{y}.pbf`]);
3547
3564
  }
3548
3565
  /** Proxy to map.on — returns `this` for chaining */