@phila/layerboard 3.0.0-beta.35 → 3.0.0-beta.36

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.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { defineComponent as ge, ref as x, watch as Oe, computed as _, nextTick as Ne, onMounted as lt, onUnmounted as Vt, createElementBlock as M, openBlock as m, createVNode as H, unref as f, withCtx as He, createBlock as q, createCommentVNode as A, Fragment as ue, renderList as Le, useAttrs as Kt, toRef as Qt, normalizeClass as ne, createElementVNode as P, toDisplayString as G, renderSlot as me, withDirectives as Zt, mergeProps as vt, vModelDynamic as Xt, createTextVNode as xe, normalizeProps as Pt, guardReactiveProps as Ft, normalizeStyle as ye, withModifiers as Yt, readonly as j, provide as N, onBeforeUnmount as eo, useId as Tt, resolveComponent as to, vShow as oo } from "vue";
1
+ import { defineComponent as ge, ref as x, watch as Oe, computed as _, nextTick as Ne, onMounted as lt, onUnmounted as Vt, createElementBlock as M, openBlock as h, createVNode as H, unref as f, withCtx as He, createBlock as q, createCommentVNode as A, Fragment as ue, renderList as Le, useAttrs as Kt, toRef as Qt, normalizeClass as ne, createElementVNode as P, toDisplayString as G, renderSlot as he, withDirectives as Zt, mergeProps as vt, vModelDynamic as Xt, createTextVNode as xe, normalizeProps as Pt, guardReactiveProps as Ft, normalizeStyle as ye, withModifiers as Yt, readonly as j, provide as N, onBeforeUnmount as eo, useId as Tt, resolveComponent as to, vShow as oo } from "vue";
2
2
  import { Map as ao, DrawTool as io, RasterLayer as It, CircleLayer as Et, FillLayer as Ot, LineLayer as gt, MapMarker as lo, MapPopup as no } from "@phila/phila-ui-map-core";
3
3
  import { cn as bt, Icon as ke, BaseLink as ro, ActionContent as zt } from "@phila/phila-ui-core";
4
4
  const so = { class: "map-panel" }, co = /* @__PURE__ */ ge({
@@ -32,7 +32,7 @@ const so = { class: "map-panel" }, co = /* @__PURE__ */ ge({
32
32
  const c = t.getZoom(), b = t.getCenter().lat, k = 559082264028e-3, I = b * Math.PI / 180;
33
33
  return k * Math.cos(I) / Math.pow(2, c);
34
34
  }
35
- const C = x({}), y = x(null), h = x(/* @__PURE__ */ new Set());
35
+ const C = x({}), y = x(null), m = x(/* @__PURE__ */ new Set());
36
36
  async function i(t, c, s, b, k) {
37
37
  const I = encodeURIComponent(b || "1=1"), B = JSON.stringify({
38
38
  xmin: c.west,
@@ -109,8 +109,8 @@ const so = { class: "map-panel" }, co = /* @__PURE__ */ ge({
109
109
  () => l.visibleLayers,
110
110
  async () => {
111
111
  if (re.value.length > 0 && Ie(), y.value) {
112
- const t = new Set(l.visibleLayers), c = [...t].filter((b) => !h.value.has(b));
113
- h.value = new Set(t);
112
+ const t = new Set(l.visibleLayers), c = [...t].filter((b) => !m.value.has(b));
113
+ m.value = new Set(t);
114
114
  const s = d(c);
115
115
  if (s.length > 0) {
116
116
  const b = n.value?.getZoom();
@@ -360,10 +360,10 @@ const so = { class: "map-panel" }, co = /* @__PURE__ */ ge({
360
360
  se.sort((R, W) => {
361
361
  const ce = R.popupConfig?.popupSortField, yt = W.popupConfig?.popupSortField;
362
362
  if (!ce || ce !== yt) return 0;
363
- const mt = R.properties[ce], ht = W.properties[ce];
364
- if (mt == null || ht == null) return 0;
363
+ const ht = R.properties[ce], mt = W.properties[ce];
364
+ if (ht == null || mt == null) return 0;
365
365
  const Mt = R.popupConfig?.popupSortOrder !== "asc";
366
- return mt < ht ? Mt ? 1 : -1 : mt > ht ? Mt ? -1 : 1 : 0;
366
+ return ht < mt ? Mt ? 1 : -1 : ht > mt ? Mt ? -1 : 1 : 0;
367
367
  }), re.value = se, oe.value = 0, Te.value = [t.lngLat.lng, t.lngLat.lat];
368
368
  const te = se[0];
369
369
  if (te) {
@@ -599,7 +599,7 @@ const so = { class: "map-panel" }, co = /* @__PURE__ */ ge({
599
599
  const [c, s] = t.geometry.coordinates;
600
600
  $t.value = [c, s];
601
601
  }
602
- return (t, c) => (m(), M("div", so, [
602
+ return (t, c) => (h(), M("div", so, [
603
603
  H(f(ao), {
604
604
  ref_key: "mapRef",
605
605
  ref: r,
@@ -624,27 +624,29 @@ const so = { class: "map-panel" }, co = /* @__PURE__ */ ge({
624
624
  onSearchResult: Jt
625
625
  }, {
626
626
  default: He(() => [
627
- l.drawControlPosition !== null ? (m(), q(f(io), {
627
+ l.drawControlPosition !== null ? (h(), q(f(io), {
628
628
  key: 0,
629
629
  position: l.drawControlPosition
630
630
  }, null, 8, ["position"])) : A("", !0),
631
- (m(!0), M(ue, null, Le(ut.value, (s) => (m(), q(f(It), {
631
+ (h(!0), M(ue, null, Le(ut.value, (s) => (h(), q(f(It), {
632
632
  id: "tiled-" + s.id,
633
633
  key: "tiled-" + s.id,
634
634
  source: ct(s),
635
635
  paint: { "raster-opacity": de(s.id) },
636
636
  minzoom: s.minZoom,
637
- maxzoom: s.maxZoom
637
+ maxzoom: s.maxZoom,
638
+ "before-id": "highlight-circles"
638
639
  }, null, 8, ["id", "source", "paint", "minzoom", "maxzoom"]))), 128)),
639
- (m(!0), M(ue, null, Le(De.value, (s) => (m(), q(f(It), {
640
+ (h(!0), M(ue, null, Le(De.value, (s) => (h(), q(f(It), {
640
641
  id: "dynamic-" + s.id,
641
642
  key: "dynamic-" + s.id,
642
643
  source: je(s),
643
644
  paint: { "raster-opacity": de(s.id) },
644
645
  minzoom: s.minZoom,
645
- maxzoom: s.maxZoom
646
+ maxzoom: s.maxZoom,
647
+ "before-id": "highlight-circles"
646
648
  }, null, 8, ["id", "source", "paint", "minzoom", "maxzoom"]))), 128)),
647
- (m(!0), M(ue, null, Le(T.value, (s) => (m(), q(f(Et), {
649
+ (h(!0), M(ue, null, Le(T.value, (s) => (h(), q(f(Et), {
648
650
  id: s.id,
649
651
  key: s.id,
650
652
  source: Me(s),
@@ -654,7 +656,7 @@ const so = { class: "map-panel" }, co = /* @__PURE__ */ ge({
654
656
  "before-id": "highlight-circles",
655
657
  onClick: ae
656
658
  }, null, 8, ["id", "source", "paint", "minzoom", "maxzoom"]))), 128)),
657
- (m(!0), M(ue, null, Le(O.value, (s) => (m(), q(f(Ot), {
659
+ (h(!0), M(ue, null, Le(O.value, (s) => (h(), q(f(Ot), {
658
660
  id: s.id,
659
661
  key: s.id,
660
662
  source: Me(s),
@@ -664,7 +666,7 @@ const so = { class: "map-panel" }, co = /* @__PURE__ */ ge({
664
666
  "before-id": "highlight-circles",
665
667
  onClick: ae
666
668
  }, null, 8, ["id", "source", "paint", "minzoom", "maxzoom"]))), 128)),
667
- (m(!0), M(ue, null, Le(D.value, (s) => (m(), q(f(gt), {
669
+ (h(!0), M(ue, null, Le(D.value, (s) => (h(), q(f(gt), {
668
670
  id: s.id + "-outline",
669
671
  key: s.id + "-outline",
670
672
  source: Me(s),
@@ -674,7 +676,7 @@ const so = { class: "map-panel" }, co = /* @__PURE__ */ ge({
674
676
  "before-id": "highlight-lines",
675
677
  onClick: ae
676
678
  }, null, 8, ["id", "source", "paint", "minzoom", "maxzoom"]))), 128)),
677
- (m(!0), M(ue, null, Le(ee.value, (s) => (m(), q(f(gt), {
679
+ (h(!0), M(ue, null, Le(ee.value, (s) => (h(), q(f(gt), {
678
680
  id: s.id,
679
681
  key: s.id,
680
682
  source: Me(s),
@@ -706,7 +708,7 @@ const so = { class: "map-panel" }, co = /* @__PURE__ */ ge({
706
708
  "lng-lat": $t.value,
707
709
  color: "#2176d2"
708
710
  }, null, 8, ["lng-lat"]),
709
- ie.value && Te.value ? (m(), q(f(no), {
711
+ ie.value && Te.value ? (h(), q(f(no), {
710
712
  key: 1,
711
713
  "lng-lat": Te.value,
712
714
  html: Ae.value,
@@ -730,7 +732,7 @@ const so = { class: "map-panel" }, co = /* @__PURE__ */ ge({
730
732
  for (const [o, r] of a)
731
733
  l[o] = r;
732
734
  return l;
733
- }, uo = /* @__PURE__ */ $e(co, [["__scopeId", "data-v-c704fcd9"]]);
735
+ }, uo = /* @__PURE__ */ $e(co, [["__scopeId", "data-v-1f8b1f59"]]);
734
736
  function Nt(e) {
735
737
  let a = e.split("?")[0] || e;
736
738
  return a = a.replace(/\/query$/, ""), a = a.replace(/\/$/, ""), a = a.replace(/^https?:\/\//, ""), a.toLowerCase();
@@ -785,11 +787,11 @@ const fo = ["disabled"], po = /* @__PURE__ */ ge({
785
787
  size: a.size
786
788
  })
787
789
  );
788
- return (u, w) => l(a) ? (m(), q(f(ro), vt({ key: 0 }, { ...r.value, ...u.$attrs }, { role: "button" }), {
790
+ return (u, w) => l(a) ? (h(), q(f(ro), vt({ key: 0 }, { ...r.value, ...u.$attrs }, { role: "button" }), {
789
791
  default: He(() => [
790
792
  H(f(zt), Pt(Ft(n.value)), {
791
793
  default: He(() => [
792
- me(u.$slots, "default", {}, () => [
794
+ he(u.$slots, "default", {}, () => [
793
795
  xe(G(a.text), 1)
794
796
  ])
795
797
  ]),
@@ -797,7 +799,7 @@ const fo = ["disabled"], po = /* @__PURE__ */ ge({
797
799
  }, 16)
798
800
  ]),
799
801
  _: 3
800
- }, 16)) : (m(), M("button", vt({
802
+ }, 16)) : (h(), M("button", vt({
801
803
  key: 1,
802
804
  type: "button",
803
805
  disabled: a.disabled,
@@ -805,7 +807,7 @@ const fo = ["disabled"], po = /* @__PURE__ */ ge({
805
807
  }, u.$attrs), [
806
808
  H(f(zt), Pt(Ft(n.value)), {
807
809
  default: He(() => [
808
- me(u.$slots, "default", {}, () => [
810
+ he(u.$slots, "default", {}, () => [
809
811
  xe(G(a.text), 1)
810
812
  ])
811
813
  ]),
@@ -818,11 +820,11 @@ var yo = {
818
820
  prefix: "fas",
819
821
  iconName: "circle-exclamation",
820
822
  icon: [512, 512, ["exclamation-circle"], "f06a", "M256 512a256 256 0 1 1 0-512 256 256 0 1 1 0 512zm0-192a32 32 0 1 0 0 64 32 32 0 1 0 0-64zm0-192c-18.2 0-32.7 15.5-31.4 33.7l7.4 104c.9 12.6 11.4 22.3 23.9 22.3 12.6 0 23-9.7 23.9-22.3l7.4-104c1.3-18.2-13.1-33.7-31.4-33.7z"]
821
- }, mo = yo, ho = {
823
+ }, ho = yo, mo = {
822
824
  prefix: "fas",
823
825
  iconName: "xmark",
824
826
  icon: [384, 512, [128473, 10005, 10006, 10060, 215, "close", "multiply", "remove", "times"], "f00d", "M55.1 73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L147.2 256 9.9 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192.5 301.3 329.9 438.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.8 256 375.1 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192.5 210.7 55.1 73.4z"]
825
- }, go = ho;
827
+ }, go = mo;
826
828
  const vo = ["for"], bo = { class: "state-layer" }, wo = { class: "content" }, Lo = { class: "input-text-container" }, So = ["id", "placeholder", "aria-label"], Co = {
827
829
  key: 1,
828
830
  class: "has-text-body-small phila-supporting-text"
@@ -858,16 +860,16 @@ const vo = ["for"], bo = { class: "state-layer" }, wo = { class: "content" }, Lo
858
860
  }), y = _(() => {
859
861
  const d = [];
860
862
  return p.value !== "" && d.push("phila-text-field--filled"), o.className && d.push(o.className), bt(...d);
861
- }), h = _(() => {
863
+ }), m = _(() => {
862
864
  if (!(o.label || l["aria-label"]))
863
865
  return o.placeholder || void 0;
864
866
  }), i = x(null), g = (d) => {
865
867
  d.target.closest("button") || i.value?.focus();
866
868
  };
867
- return (d, L) => (m(), M("div", {
869
+ return (d, L) => (h(), M("div", {
868
870
  class: ne(["phila-input", C.value])
869
871
  }, [
870
- o.label ? (m(), M("label", {
872
+ o.label ? (h(), M("label", {
871
873
  key: 0,
872
874
  for: n.value,
873
875
  class: "has-text-label-small phila-label"
@@ -877,7 +879,7 @@ const vo = ["for"], bo = { class: "state-layer" }, wo = { class: "content" }, Lo
877
879
  onClick: g
878
880
  }, [
879
881
  P("div", bo, [
880
- o.leadingIcon ? (m(), q(f(ke), {
882
+ o.leadingIcon ? (h(), q(f(ke), {
881
883
  key: 0,
882
884
  "icon-class": o.leadingIcon,
883
885
  inline: "",
@@ -892,13 +894,13 @@ const vo = ["for"], bo = { class: "state-layer" }, wo = { class: "content" }, Lo
892
894
  "onUpdate:modelValue": L[0] || (L[0] = (S) => p.value = S),
893
895
  class: "phila-text-field-input has-text-body-default",
894
896
  placeholder: o.placeholder,
895
- "aria-label": h.value
897
+ "aria-label": m.value
896
898
  }, f(l)), null, 16, So), [
897
899
  [Xt, p.value]
898
900
  ])
899
901
  ])
900
902
  ]),
901
- p.value != "" ? (m(), q(f(po), {
903
+ p.value != "" ? (h(), q(f(po), {
902
904
  key: 1,
903
905
  variant: "standard",
904
906
  size: "small",
@@ -906,20 +908,20 @@ const vo = ["for"], bo = { class: "state-layer" }, wo = { class: "content" }, Lo
906
908
  "icon-definition": f(go),
907
909
  onClick: L[1] || (L[1] = (S) => p.value = "")
908
910
  }, null, 8, ["icon-definition"])) : A("", !0),
909
- o.trailingIcon ? (m(), q(f(ke), {
911
+ o.trailingIcon ? (h(), q(f(ke), {
910
912
  key: 2,
911
913
  size: "small",
912
914
  "icon-class": o.trailingIcon,
913
915
  inline: "",
914
916
  decorative: ""
915
917
  }, null, 8, ["icon-class"])) : A("", !0),
916
- me(d.$slots, "trailing-action")
918
+ he(d.$slots, "trailing-action")
917
919
  ])
918
920
  ], 2),
919
- o.supportingText ? (m(), M("div", Co, G(o.supportingText), 1)) : A("", !0),
920
- r.value ? (m(), M("div", ko, [
921
+ o.supportingText ? (h(), M("div", Co, G(o.supportingText), 1)) : A("", !0),
922
+ r.value ? (h(), M("div", ko, [
921
923
  H(f(ke), {
922
- "icon-definition": f(mo),
924
+ "icon-definition": f(ho),
923
925
  size: "small",
924
926
  inline: "",
925
927
  decorative: ""
@@ -969,15 +971,15 @@ const Io = {
969
971
  unavailable: { type: Boolean }
970
972
  },
971
973
  setup(e) {
972
- return (a, l) => (m(), M(ue, null, [
973
- e.loading && !e.unavailable ? (m(), M("span", Io, " Loading... ")) : A("", !0),
974
- e.error ? (m(), M("span", {
974
+ return (a, l) => (h(), M(ue, null, [
975
+ e.loading && !e.unavailable ? (h(), M("span", Io, " Loading... ")) : A("", !0),
976
+ e.error ? (h(), M("span", {
975
977
  key: 1,
976
978
  class: "error-indicator",
977
979
  "aria-label": e.error,
978
980
  role: "status"
979
981
  }, " Error ", 8, Eo)) : A("", !0),
980
- e.unavailable ? (m(), M("span", Oo, " (zoom in) ")) : A("", !0)
982
+ e.unavailable ? (h(), M("span", Oo, " (zoom in) ")) : A("", !0)
981
983
  ], 64));
982
984
  }
983
985
  }), nt = /* @__PURE__ */ $e(zo, [["__scopeId", "data-v-19b1b402"]]), Do = { class: "opacity-control" }, _o = ["for"], Ro = ["id", "value", "aria-label"], Ao = /* @__PURE__ */ ge({
@@ -994,7 +996,7 @@ const Io = {
994
996
  const n = r.target;
995
997
  l("update:opacity", parseFloat(n.value));
996
998
  }
997
- return (r, n) => (m(), M("div", Do, [
999
+ return (r, n) => (h(), M("div", Do, [
998
1000
  P("label", {
999
1001
  class: "opacity-label",
1000
1002
  for: "opacity-" + e.layerId
@@ -1019,20 +1021,20 @@ const Io = {
1019
1021
  label: {}
1020
1022
  },
1021
1023
  setup(e) {
1022
- return (a, l) => (m(), M("ul", {
1024
+ return (a, l) => (h(), M("ul", {
1023
1025
  class: "layer-legend",
1024
1026
  "aria-label": e.label
1025
1027
  }, [
1026
- (m(!0), M(ue, null, Le(e.items, (o, r) => (m(), M("li", {
1028
+ (h(!0), M(ue, null, Le(e.items, (o, r) => (h(), M("li", {
1027
1029
  key: r,
1028
1030
  class: "legend-item"
1029
1031
  }, [
1030
- o.type === "circle" ? (m(), M("span", {
1032
+ o.type === "circle" ? (h(), M("span", {
1031
1033
  key: 0,
1032
1034
  class: "legend-symbol legend-circle",
1033
1035
  style: ye({ backgroundColor: o.color }),
1034
1036
  "aria-hidden": "true"
1035
- }, null, 4)) : o.type === "line" ? (m(), M("span", {
1037
+ }, null, 4)) : o.type === "line" ? (h(), M("span", {
1036
1038
  key: 1,
1037
1039
  class: "legend-symbol legend-line",
1038
1040
  style: ye({
@@ -1040,7 +1042,7 @@ const Io = {
1040
1042
  height: `${o.width || 2}px`
1041
1043
  }),
1042
1044
  "aria-hidden": "true"
1043
- }, null, 4)) : o.type === "fill" ? (m(), M("span", {
1045
+ }, null, 4)) : o.type === "fill" ? (h(), M("span", {
1044
1046
  key: 2,
1045
1047
  class: "legend-symbol legend-fill",
1046
1048
  style: ye({ backgroundColor: o.color }),
@@ -1111,7 +1113,7 @@ const No = { class: "layer-panel" }, Uo = {
1111
1113
  const L = Nt(d);
1112
1114
  return l.layerMetadata[L] || null;
1113
1115
  }
1114
- const u = _(() => l.layerList.some((d) => n(d.config.url))), { isVisible: w, getLayerOpacity: p, isLayerLoading: C, getLayerError: y, isLayerAvailableAtZoom: h } = Ct(() => ({
1116
+ const u = _(() => l.layerList.some((d) => n(d.config.url))), { isVisible: w, getLayerOpacity: p, isLayerLoading: C, getLayerError: y, isLayerAvailableAtZoom: m } = Ct(() => ({
1115
1117
  visibleLayerIds: l.visibleLayers,
1116
1118
  layerOpacities: l.layerOpacities,
1117
1119
  loadingLayerIds: l.loadingLayers,
@@ -1124,8 +1126,8 @@ const No = { class: "layer-panel" }, Uo = {
1124
1126
  function g(d) {
1125
1127
  o("toggleLayer", d);
1126
1128
  }
1127
- return (d, L) => (m(), M("div", No, [
1128
- e.showSearch ? (m(), M("div", Uo, [
1129
+ return (d, L) => (h(), M("div", No, [
1130
+ e.showSearch ? (h(), M("div", Uo, [
1129
1131
  H(f(xo), {
1130
1132
  modelValue: i.value,
1131
1133
  "onUpdate:modelValue": L[0] || (L[0] = (S) => i.value = S),
@@ -1143,20 +1145,20 @@ const No = { class: "layer-panel" }, Uo = {
1143
1145
  _: 1
1144
1146
  }, 8, ["modelValue", "placeholder"])
1145
1147
  ])) : A("", !0),
1146
- e.mode === "topics" ? (m(), M("div", Wo, [
1147
- me(d.$slots, "topics", {}, () => [
1148
+ e.mode === "topics" ? (h(), M("div", Wo, [
1149
+ he(d.$slots, "topics", {}, () => [
1148
1150
  L[2] || (L[2] = P("div", { class: "no-topics" }, ' No topic components provided. Use the "topics" slot to add TopicAccordion components. ', -1))
1149
1151
  ], !0)
1150
- ])) : (m(), M("div", {
1152
+ ])) : (h(), M("div", {
1151
1153
  key: 2,
1152
1154
  class: ne(["layer-list", { "has-metadata": u.value }])
1153
1155
  }, [
1154
- (m(!0), M(ue, null, Le(r.value, (S) => (m(), M("div", {
1156
+ (h(!0), M(ue, null, Le(r.value, (S) => (h(), M("div", {
1155
1157
  key: S.config.id,
1156
1158
  class: "layer-item"
1157
1159
  }, [
1158
1160
  P("div", jo, [
1159
- n(S.config.url) ? (m(), M("a", {
1161
+ n(S.config.url) ? (h(), M("a", {
1160
1162
  key: 0,
1161
1163
  href: n(S.config.url) || "",
1162
1164
  target: "_blank",
@@ -1172,17 +1174,17 @@ const No = { class: "layer-panel" }, Uo = {
1172
1174
  inline: "",
1173
1175
  decorative: ""
1174
1176
  }, null, 8, ["icon-definition"])
1175
- ], 8, qo)) : u.value ? (m(), M("span", Go)) : A("", !0),
1177
+ ], 8, qo)) : u.value ? (h(), M("span", Go)) : A("", !0),
1176
1178
  P("label", {
1177
1179
  class: ne(["layer-checkbox", {
1178
- "layer-unavailable": !f(h)(S.config),
1180
+ "layer-unavailable": !f(m)(S.config),
1179
1181
  "layer-error": f(y)(S.config.id)
1180
1182
  }])
1181
1183
  }, [
1182
1184
  P("input", {
1183
1185
  type: "checkbox",
1184
1186
  checked: f(w)(S.config.id),
1185
- disabled: !f(h)(S.config),
1187
+ disabled: !f(m)(S.config),
1186
1188
  onChange: (E) => g(S.config.id)
1187
1189
  }, null, 40, Ho),
1188
1190
  P("span", Jo, [
@@ -1190,25 +1192,25 @@ const No = { class: "layer-panel" }, Uo = {
1190
1192
  H(nt, {
1191
1193
  loading: f(C)(S.config.id),
1192
1194
  error: f(y)(S.config.id),
1193
- unavailable: !f(h)(S.config)
1195
+ unavailable: !f(m)(S.config)
1194
1196
  }, null, 8, ["loading", "error", "unavailable"])
1195
1197
  ])
1196
1198
  ], 2)
1197
1199
  ]),
1198
- e.showOpacity && f(w)(S.config.id) && f(h)(S.config) ? (m(), q(Lt, {
1200
+ e.showOpacity && f(w)(S.config.id) && f(m)(S.config) ? (h(), q(Lt, {
1199
1201
  key: 0,
1200
1202
  "layer-id": S.config.id,
1201
1203
  "layer-name": S.config.title,
1202
1204
  opacity: f(p)(S.config.id),
1203
1205
  "onUpdate:opacity": (E) => o("setOpacity", S.config.id, E)
1204
1206
  }, null, 8, ["layer-id", "layer-name", "opacity", "onUpdate:opacity"])) : A("", !0),
1205
- e.showLegend && f(w)(S.config.id) && f(h)(S.config) && S.config.legend?.length ? (m(), q(St, {
1207
+ e.showLegend && f(w)(S.config.id) && f(m)(S.config) && S.config.legend?.length ? (h(), q(St, {
1206
1208
  key: 1,
1207
1209
  items: S.config.legend,
1208
1210
  label: "Legend for " + S.config.title
1209
1211
  }, null, 8, ["items", "label"])) : A("", !0)
1210
1212
  ]))), 128)),
1211
- r.value.length === 0 ? (m(), M("div", Ko, 'No layers match "' + G(e.searchQuery) + '"', 1)) : A("", !0)
1213
+ r.value.length === 0 ? (h(), M("div", Ko, 'No layers match "' + G(e.searchQuery) + '"', 1)) : A("", !0)
1212
1214
  ], 2))
1213
1215
  ]));
1214
1216
  }
@@ -1231,14 +1233,14 @@ function ea(e, a, l, o, r) {
1231
1233
  a[i] === u ? w.push(e[i]) : (n.push({ style: u, breaks: w, startIndex: p }), u = a[i], w = [e[i]], p = i);
1232
1234
  n.push({ style: u, breaks: w, startIndex: p });
1233
1235
  const C = [], y = /* @__PURE__ */ new Set();
1234
- let h = o.minValue ?? 0;
1236
+ let m = o.minValue ?? 0;
1235
1237
  for (let i = 0; i < n.length; i++) {
1236
1238
  const g = n[i], d = g.breaks, L = Ke(g.style), S = i === 0 ? null : n[i - 1].breaks[n[i - 1].breaks.length - 1].classMaxValue, E = d[d.length - 1].classMaxValue;
1237
1239
  let F;
1238
1240
  const V = !!o.defaultSymbol;
1239
1241
  S === null ? F = `${!V && o.minValue != null ? `${l} >= ${o.minValue} AND ` : ""}${l} <= ${E}` : i === n.length - 1 && V ? F = `${l} > ${S}` : F = `${l} > ${S} AND ${l} <= ${E}`;
1240
1242
  const T = {
1241
- "line-opacity": he(r)
1243
+ "line-opacity": me(r)
1242
1244
  };
1243
1245
  if (L && (T["line-dasharray"] = L), d.length === 1)
1244
1246
  T["line-color"] = z(d[0].symbol?.color), T["line-width"] = X(d[0].symbol?.width || 2);
@@ -1255,8 +1257,8 @@ function ea(e, a, l, o, r) {
1255
1257
  type: "line",
1256
1258
  color: z(U.symbol?.color),
1257
1259
  width: X(U.symbol?.width || 2),
1258
- label: U.label || `${h} - ${U.classMaxValue}`
1259
- }), h = U.classMaxValue + 1;
1260
+ label: U.label || `${m} - ${U.classMaxValue}`
1261
+ }), m = U.classMaxValue + 1;
1260
1262
  const D = g.style.replace("esriSLS", "").toLowerCase();
1261
1263
  let ee;
1262
1264
  i === 0 ? ee = "" : y.has(D) ? ee = `-${D}-${i}` : ee = `-${D}`, y.add(D), C.push({ suffix: ee, where: F, paint: T, legend: O });
@@ -1272,10 +1274,10 @@ function ta(e, a, l, o, r) {
1272
1274
  const u = [], w = /* @__PURE__ */ new Set();
1273
1275
  let p = !0;
1274
1276
  for (const [C, y] of n) {
1275
- const h = Ke(C), g = y.map((F) => `${a} = '${String(F.value).replace(/'/g, "''")}'`).join(" OR "), d = {
1276
- "line-opacity": he(o)
1277
+ const m = Ke(C), g = y.map((F) => `${a} = '${String(F.value).replace(/'/g, "''")}'`).join(" OR "), d = {
1278
+ "line-opacity": me(o)
1277
1279
  };
1278
- if (h && (d["line-dasharray"] = h), y.length === 1)
1280
+ if (m && (d["line-dasharray"] = m), y.length === 1)
1279
1281
  d["line-color"] = z(y[0].symbol?.color), d["line-width"] = X(y[0].symbol?.width || 2);
1280
1282
  else {
1281
1283
  const F = ["match", ["to-string", ["get", a]]];
@@ -1304,7 +1306,7 @@ function z(e) {
1304
1306
  const a = e[0], l = e[1], o = e[2], n = (e[3] ?? 255) / 255;
1305
1307
  return n === 1 ? `#${a.toString(16).padStart(2, "0")}${l.toString(16).padStart(2, "0")}${o.toString(16).padStart(2, "0")}` : `rgba(${a}, ${l}, ${o}, ${n.toFixed(2)})`;
1306
1308
  }
1307
- function he(e) {
1309
+ function me(e) {
1308
1310
  return e !== void 0 ? e : 1;
1309
1311
  }
1310
1312
  function X(e) {
@@ -1353,15 +1355,15 @@ function Ut(e, a, l) {
1353
1355
  const o = e.symbol, r = st(o);
1354
1356
  let n = {}, u = [], w = null;
1355
1357
  if (r === "fill" && o) {
1356
- const p = o.color === null ? 0 : o.color?.[3] ?? 255, C = p === 0 ? "rgba(0, 0, 0, 0)" : z(o.color), y = p === 0 ? 0 : p < 255 ? 1 : he(a);
1358
+ const p = o.color === null ? 0 : o.color?.[3] ?? 255, C = p === 0 ? "rgba(0, 0, 0, 0)" : z(o.color), y = p === 0 ? 0 : p < 255 ? 1 : me(a);
1357
1359
  if (n = {
1358
1360
  "fill-color": C,
1359
1361
  "fill-opacity": y
1360
1362
  }, Pe(o.outline)) {
1361
- const h = X(o.outline.width || 1);
1363
+ const m = X(o.outline.width || 1);
1362
1364
  w = {
1363
1365
  "line-color": z(o.outline.color),
1364
- "line-width": h
1366
+ "line-width": m
1365
1367
  };
1366
1368
  }
1367
1369
  u = [
@@ -1375,7 +1377,7 @@ function Ut(e, a, l) {
1375
1377
  n = {
1376
1378
  "line-color": z(o.color),
1377
1379
  "line-width": X(o.width || 1),
1378
- "line-opacity": he(a)
1380
+ "line-opacity": me(a)
1379
1381
  };
1380
1382
  const p = Ke(o.style);
1381
1383
  p && (n["line-dasharray"] = p), u = [
@@ -1391,7 +1393,7 @@ function Ut(e, a, l) {
1391
1393
  n = {
1392
1394
  "circle-color": z(o.color),
1393
1395
  "circle-radius": p,
1394
- "circle-opacity": he(a)
1396
+ "circle-opacity": me(a)
1395
1397
  }, Pe(o.outline) && (n["circle-stroke-color"] = z(o.outline.color), n["circle-stroke-width"] = X(o.outline.width || 1)), u = [
1396
1398
  {
1397
1399
  type: "circle",
@@ -1411,9 +1413,9 @@ function ia(e, a, l) {
1411
1413
  const C = [];
1412
1414
  let y = null;
1413
1415
  if (w === "fill") {
1414
- const h = ["match", ["to-string", ["get", o]]];
1416
+ const m = ["match", ["to-string", ["get", o]]];
1415
1417
  for (const i of r) {
1416
- h.push(it(i.value)), h.push(z(i.symbol?.color));
1418
+ m.push(it(i.value)), m.push(z(i.symbol?.color));
1417
1419
  const g = String(i.value), L = l?.get(g) || i.label || g;
1418
1420
  C.push({
1419
1421
  type: "fill",
@@ -1421,9 +1423,9 @@ function ia(e, a, l) {
1421
1423
  label: L
1422
1424
  });
1423
1425
  }
1424
- if (h.push(n ? z(n.color) : "rgba(0, 0, 0, 0)"), p = {
1425
- "fill-color": h,
1426
- "fill-opacity": he(a)
1426
+ if (m.push(n ? z(n.color) : "rgba(0, 0, 0, 0)"), p = {
1427
+ "fill-color": m,
1428
+ "fill-opacity": me(a)
1427
1429
  }, Pe(u?.outline)) {
1428
1430
  const i = X(Math.max(u.outline.width || 1, 1));
1429
1431
  y = {
@@ -1432,9 +1434,9 @@ function ia(e, a, l) {
1432
1434
  };
1433
1435
  }
1434
1436
  } else if (w === "line") {
1435
- const h = ["match", ["to-string", ["get", o]]];
1437
+ const m = ["match", ["to-string", ["get", o]]];
1436
1438
  for (const d of r) {
1437
- h.push(it(d.value)), h.push(z(d.symbol?.color));
1439
+ m.push(it(d.value)), m.push(z(d.symbol?.color));
1438
1440
  const L = String(d.value), E = l?.get(L) || d.label || L;
1439
1441
  C.push({
1440
1442
  type: "line",
@@ -1443,10 +1445,10 @@ function ia(e, a, l) {
1443
1445
  label: E
1444
1446
  });
1445
1447
  }
1446
- h.push(n ? z(n.color) : "rgba(0, 0, 0, 0)"), p = {
1447
- "line-color": h,
1448
+ m.push(n ? z(n.color) : "rgba(0, 0, 0, 0)"), p = {
1449
+ "line-color": m,
1448
1450
  "line-width": X(u?.width || 2),
1449
- "line-opacity": he(a)
1451
+ "line-opacity": me(a)
1450
1452
  };
1451
1453
  const i = r.map((d) => d.symbol?.style || "esriSLSSolid"), g = [...new Set(i)];
1452
1454
  if (g.length > 1) {
@@ -1458,9 +1460,9 @@ function ia(e, a, l) {
1458
1460
  d && (p["line-dasharray"] = d);
1459
1461
  }
1460
1462
  } else if (w === "circle") {
1461
- const h = ["match", ["to-string", ["get", o]]];
1463
+ const m = ["match", ["to-string", ["get", o]]];
1462
1464
  for (const g of r) {
1463
- h.push(it(g.value)), h.push(z(g.symbol?.color));
1465
+ m.push(it(g.value)), m.push(z(g.symbol?.color));
1464
1466
  const d = String(g.value), S = l?.get(d) || g.label || d;
1465
1467
  C.push({
1466
1468
  type: "circle",
@@ -1468,12 +1470,12 @@ function ia(e, a, l) {
1468
1470
  label: S
1469
1471
  });
1470
1472
  }
1471
- h.push(n ? z(n.color) : "rgba(0, 0, 0, 0)");
1473
+ m.push(n ? z(n.color) : "rgba(0, 0, 0, 0)");
1472
1474
  const i = Math.round((u?.size || 6) * 0.71 * 100) / 100;
1473
1475
  p = {
1474
- "circle-color": h,
1476
+ "circle-color": m,
1475
1477
  "circle-radius": i,
1476
- "circle-opacity": he(a)
1478
+ "circle-opacity": me(a)
1477
1479
  }, Pe(u?.outline) && (p["circle-stroke-color"] = z(u.outline.color), p["circle-stroke-width"] = X(u.outline.width || 1));
1478
1480
  }
1479
1481
  return { paint: p, legend: C, geomType: w, outlinePaint: y };
@@ -1491,9 +1493,9 @@ function la(e, a) {
1491
1493
  if (u === "fill") {
1492
1494
  const y = ["step", ["get", l]];
1493
1495
  y.push(z(o[0]?.symbol?.color));
1494
- for (let h = 0; h < o.length; h++) {
1495
- const i = o[h];
1496
- h > 0 && (y.push(o[h - 1].classMaxValue), y.push(z(i.symbol?.color))), p.push({
1496
+ for (let m = 0; m < o.length; m++) {
1497
+ const i = o[m];
1498
+ m > 0 && (y.push(o[m - 1].classMaxValue), y.push(z(i.symbol?.color))), p.push({
1497
1499
  type: "fill",
1498
1500
  color: z(i.symbol?.color),
1499
1501
  label: i.label || `${i.classMaxValue}`
@@ -1501,17 +1503,17 @@ function la(e, a) {
1501
1503
  }
1502
1504
  if (w = {
1503
1505
  "fill-color": y,
1504
- "fill-opacity": he(a)
1506
+ "fill-opacity": me(a)
1505
1507
  }, Pe(n?.outline)) {
1506
- const h = X(n.outline.width || 1);
1508
+ const m = X(n.outline.width || 1);
1507
1509
  C = {
1508
1510
  "line-color": z(n.outline.color),
1509
- "line-width": h
1511
+ "line-width": m
1510
1512
  };
1511
1513
  }
1512
1514
  } else if (u === "line") {
1513
- const y = o.map((E) => E.symbol?.style || "esriSLSSolid"), h = [...new Set(y)];
1514
- if (h.length > 1) {
1515
+ const y = o.map((E) => E.symbol?.style || "esriSLSSolid"), m = [...new Set(y)];
1516
+ if (m.length > 1) {
1515
1517
  const E = ea(o, y, l, e, a);
1516
1518
  return { paint: {}, legend: [], geomType: u, outlinePaint: C, splitLayers: E };
1517
1519
  }
@@ -1531,9 +1533,9 @@ function la(e, a) {
1531
1533
  w = {
1532
1534
  "line-color": g,
1533
1535
  "line-width": L,
1534
- "line-opacity": he(a)
1536
+ "line-opacity": me(a)
1535
1537
  };
1536
- const S = Ke(h[0]);
1538
+ const S = Ke(m[0]);
1537
1539
  S && (w["line-dasharray"] = S);
1538
1540
  }
1539
1541
  return { paint: w, legend: p, geomType: u, outlinePaint: C };
@@ -1563,7 +1565,7 @@ function na(e, a, l, o) {
1563
1565
  y
1564
1566
  // Otherwise use the interpolated color
1565
1567
  ],
1566
- "fill-opacity": he(o)
1568
+ "fill-opacity": me(o)
1567
1569
  }, Pe(n?.outline)) {
1568
1570
  const i = X(n.outline.width || 1);
1569
1571
  C = {
@@ -1675,7 +1677,7 @@ async function Wt(e) {
1675
1677
  O.description && (u = fa(O.description), u.size > 0);
1676
1678
  }
1677
1679
  }
1678
- const { paint: y, legend: h, geomType: i, outlinePaint: g, splitLayers: d } = ra(
1680
+ const { paint: y, legend: m, geomType: i, outlinePaint: g, splitLayers: d } = ra(
1679
1681
  n,
1680
1682
  r.opacity,
1681
1683
  u,
@@ -1707,7 +1709,7 @@ async function Wt(e) {
1707
1709
  url: r.url,
1708
1710
  opacity: T,
1709
1711
  paint: y,
1710
- legend: h,
1712
+ legend: m,
1711
1713
  popup: L,
1712
1714
  where: S,
1713
1715
  minZoom: E.minZoom,
@@ -1731,7 +1733,7 @@ function ya(e) {
1731
1733
  e ? (rt.delete(e), Je.delete(e)) : (rt.clear(), Je.clear());
1732
1734
  }
1733
1735
  let at, Bt = 0;
1734
- async function ma() {
1736
+ async function ha() {
1735
1737
  const e = typeof import.meta < "u" && At?.VITE_AGO_USERNAME, a = typeof import.meta < "u" && At?.VITE_AGO_PASSWORD;
1736
1738
  if (!(!e || !a)) {
1737
1739
  if (at && Date.now() < Bt - 3e5)
@@ -1757,7 +1759,7 @@ async function ma() {
1757
1759
  }
1758
1760
  }
1759
1761
  }
1760
- async function ha(e, a) {
1762
+ async function ma(e, a) {
1761
1763
  const l = xt(e, a), o = await fetch(l, { cache: "no-store" });
1762
1764
  if (!o.ok)
1763
1765
  throw new Error(`Failed to fetch WebMap: ${o.status} ${o.statusText}`);
@@ -1768,7 +1770,7 @@ async function ha(e, a) {
1768
1770
  }
1769
1771
  async function ga(e) {
1770
1772
  try {
1771
- const a = await ma(), l = await ha(e, a);
1773
+ const a = await ha(), l = await ma(e, a);
1772
1774
  return await Wt(l);
1773
1775
  } catch (a) {
1774
1776
  throw new Error(
@@ -1886,7 +1888,7 @@ function va(e) {
1886
1888
  l.set(i.id, g);
1887
1889
  }
1888
1890
  }
1889
- function h() {
1891
+ function m() {
1890
1892
  for (const [, i] of l)
1891
1893
  window.clearInterval(i);
1892
1894
  l.clear();
@@ -1894,7 +1896,7 @@ function va(e) {
1894
1896
  return lt(() => {
1895
1897
  r(), y();
1896
1898
  }), Vt(() => {
1897
- h();
1899
+ m();
1898
1900
  }), {
1899
1901
  /** Reactive state for all data sources */
1900
1902
  state: j(a),
@@ -1911,7 +1913,7 @@ function va(e) {
1911
1913
  /** Get error for a specific source */
1912
1914
  getError: C,
1913
1915
  /** Stop all polling (useful for cleanup) */
1914
- stopPolling: h
1916
+ stopPolling: m
1915
1917
  };
1916
1918
  }
1917
1919
  const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
@@ -1959,7 +1961,7 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
1959
1961
  },
1960
1962
  emits: ["configs-loaded", "load-error", "zoom"],
1961
1963
  setup(e, { expose: a, emit: l }) {
1962
- const o = e, r = l, n = x([]), u = x(!0), w = x(null), p = x(12), C = x(""), y = x(/* @__PURE__ */ new Set()), h = x({}), i = x(/* @__PURE__ */ new Set()), g = x({}), d = x({}), L = x(/* @__PURE__ */ new Set()), S = x({});
1964
+ const o = e, r = l, n = x([]), u = x(!0), w = x(null), p = x(12), C = x(""), y = x(/* @__PURE__ */ new Set()), m = x({}), i = x(/* @__PURE__ */ new Set()), g = x({}), d = x({}), L = x(/* @__PURE__ */ new Set()), S = x({});
1963
1965
  function E() {
1964
1966
  const v = {};
1965
1967
  for (const $ of o.tiledLayers)
@@ -1982,7 +1984,7 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
1982
1984
  function de(v) {
1983
1985
  return O?.refetch(v) ?? Promise.resolve();
1984
1986
  }
1985
- N("layerboard-layers", j(n)), N("layerboard-visible", y), N("layerboard-opacities", h), N("layerboard-loading", j(i)), N("layerboard-errors", j(g)), N("layerboard-zoom", j(p)), N("layerboard-toggle-layer", De), N("layerboard-set-layer-visible", je), N("layerboard-set-layers-visible", Me), N("layerboard-set-opacity", Fe), N("layerboard-tiled-layers", j(_(() => o.tiledLayers))), N("layerboard-visible-tiled", L), N("layerboard-tiled-opacities", S), N("layerboard-toggle-tiled", F), N("layerboard-set-tiled-opacity", T), N("layerboard-set-tiled-visible", V), N("layerboard-data-sources-state", D), N("layerboard-data-sources-loading", ee), N("layerboard-get-data-source", U), N("layerboard-refetch-data-source", de);
1987
+ N("layerboard-layers", j(n)), N("layerboard-visible", y), N("layerboard-opacities", m), N("layerboard-loading", j(i)), N("layerboard-errors", j(g)), N("layerboard-zoom", j(p)), N("layerboard-toggle-layer", De), N("layerboard-set-layer-visible", je), N("layerboard-set-layers-visible", Me), N("layerboard-set-opacity", Fe), N("layerboard-tiled-layers", j(_(() => o.tiledLayers))), N("layerboard-visible-tiled", L), N("layerboard-tiled-opacities", S), N("layerboard-toggle-tiled", F), N("layerboard-set-tiled-opacity", T), N("layerboard-set-tiled-visible", V), N("layerboard-data-sources-state", D), N("layerboard-data-sources-loading", ee), N("layerboard-get-data-source", U), N("layerboard-refetch-data-source", de);
1986
1988
  const ve = _(() => ({
1987
1989
  backgroundColor: o.themeColor
1988
1990
  })), ct = _(() => ({
@@ -2018,7 +2020,7 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2018
2020
  const J = {};
2019
2021
  $.forEach((Z) => {
2020
2022
  J[Z.id] = Z.opacity ?? 1;
2021
- }), h.value = J, r("configs-loaded", $);
2023
+ }), m.value = J, r("configs-loaded", $);
2022
2024
  } catch (v) {
2023
2025
  const $ = v instanceof Error ? v.message : "Failed to load layer configurations";
2024
2026
  w.value = $, r("load-error", $);
@@ -2058,7 +2060,7 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2058
2060
  y.value = new Set(y.value);
2059
2061
  }
2060
2062
  function Fe(v, $) {
2061
- h.value = { ...h.value, [v]: $ };
2063
+ m.value = { ...m.value, [v]: $ };
2062
2064
  }
2063
2065
  function qe(v, $) {
2064
2066
  $ ? i.value.add(v) : i.value.delete(v), i.value = new Set(i.value);
@@ -2147,7 +2149,7 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2147
2149
  /** Set of visible layer IDs */
2148
2150
  visibleLayers: y,
2149
2151
  /** Layer opacity values */
2150
- layerOpacities: h,
2152
+ layerOpacities: m,
2151
2153
  /** Set of currently loading layer IDs */
2152
2154
  loadingLayers: i,
2153
2155
  /** Map of layer errors by ID */
@@ -2201,7 +2203,7 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2201
2203
  We(), Xe(), E(), document.addEventListener("keydown", ot);
2202
2204
  }), eo(() => {
2203
2205
  document.removeEventListener("keydown", ot);
2204
- }), (v, $) => (m(), M("div", ba, [
2206
+ }), (v, $) => (h(), M("div", ba, [
2205
2207
  $[5] || ($[5] = P("a", {
2206
2208
  href: "#main-content",
2207
2209
  class: "skip-to-main-content-link"
@@ -2238,11 +2240,11 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2238
2240
  decorative: ""
2239
2241
  }, null, 8, ["icon-definition"])
2240
2242
  ], 8, wa),
2241
- me(v.$slots, "header", {}, () => [
2243
+ he(v.$slots, "header", {}, () => [
2242
2244
  P("h1", null, G(e.title), 1),
2243
- e.subtitle ? (m(), M("span", La, G(e.subtitle), 1)) : A("", !0)
2245
+ e.subtitle ? (h(), M("span", La, G(e.subtitle), 1)) : A("", !0)
2244
2246
  ], !0),
2245
- ae.value ? (m(), M("div", {
2247
+ ae.value ? (h(), M("div", {
2246
2248
  key: 0,
2247
2249
  ref_key: "mobileMenuRef",
2248
2250
  ref: be,
@@ -2254,7 +2256,7 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2254
2256
  onKeydown: Ve
2255
2257
  }, [
2256
2258
  P("div", Sa, [
2257
- me(v.$slots, "footer", {
2259
+ he(v.$slots, "footer", {
2258
2260
  openModal: Ae,
2259
2261
  closeModal: le,
2260
2262
  isModalOpen: ie.value
@@ -2276,20 +2278,20 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2276
2278
  }, null, 8, ["icon-definition"])
2277
2279
  ], 512)
2278
2280
  ], 36)) : A("", !0),
2279
- ae.value ? (m(), M("div", {
2281
+ ae.value ? (h(), M("div", {
2280
2282
  key: 1,
2281
2283
  class: "layerboard-mobile-menu-backdrop",
2282
2284
  onClick: Ee
2283
2285
  })) : A("", !0)
2284
2286
  ], 4),
2285
2287
  P("div", Ca, [
2286
- u.value ? (m(), M("div", ka, [
2288
+ u.value ? (h(), M("div", ka, [
2287
2289
  P("div", {
2288
2290
  class: "layerboard-spinner",
2289
2291
  style: ye({ borderTopColor: e.themeColor })
2290
2292
  }, null, 4),
2291
2293
  P("p", null, "Loading " + G(e.title) + "...", 1)
2292
- ])) : w.value ? (m(), M("div", xa, [
2294
+ ])) : w.value ? (h(), M("div", xa, [
2293
2295
  $[3] || ($[3] = P("h2", null, "Error Loading Layers", -1)),
2294
2296
  P("p", null, G(w.value), 1),
2295
2297
  P("button", {
@@ -2297,7 +2299,7 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2297
2299
  style: ye({ backgroundColor: e.themeColor }),
2298
2300
  onClick: We
2299
2301
  }, " Retry ", 4)
2300
- ])) : (m(), M(ue, { key: 2 }, [
2302
+ ])) : (h(), M(ue, { key: 2 }, [
2301
2303
  P("aside", {
2302
2304
  id: "main-content",
2303
2305
  ref_key: "sidebarRef",
@@ -2307,10 +2309,10 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2307
2309
  "aria-label": "Map layers",
2308
2310
  tabindex: "-1"
2309
2311
  }, [
2310
- me(v.$slots, "sidebar", {
2312
+ he(v.$slots, "sidebar", {
2311
2313
  layers: n.value,
2312
2314
  visibleLayers: y.value,
2313
- layerOpacities: h.value,
2315
+ layerOpacities: m.value,
2314
2316
  loadingLayers: i.value,
2315
2317
  layerErrors: g.value,
2316
2318
  currentZoom: p.value,
@@ -2329,11 +2331,11 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2329
2331
  getDataSource: U,
2330
2332
  refetchDataSource: de
2331
2333
  }, () => [
2332
- e.showDefaultSidebar ? (m(), q(Xo, {
2334
+ e.showDefaultSidebar ? (h(), q(Xo, {
2333
2335
  key: 0,
2334
2336
  "layer-list": n.value,
2335
2337
  "visible-layers": y.value,
2336
- "layer-opacities": h.value,
2338
+ "layer-opacities": m.value,
2337
2339
  "loading-layers": i.value,
2338
2340
  "layer-errors": g.value,
2339
2341
  "current-zoom": p.value,
@@ -2352,7 +2354,7 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2352
2354
  }, [
2353
2355
  H(uo, {
2354
2356
  "visible-layers": y.value,
2355
- "layer-opacities": h.value,
2357
+ "layer-opacities": m.value,
2356
2358
  "layer-list": n.value,
2357
2359
  "tiled-layers": e.tiledLayers,
2358
2360
  "visible-tiled-layers": L.value,
@@ -2395,13 +2397,13 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2395
2397
  style: ye(Ue.value),
2396
2398
  onClick: ft
2397
2399
  }, [
2398
- Se.value === "map" ? (m(), M("span", Ma, G(e.sidebarLabel), 1)) : (m(), M("span", Pa, G(e.mapLabel), 1))
2400
+ Se.value === "map" ? (h(), M("span", Ma, G(e.sidebarLabel), 1)) : (h(), M("span", Pa, G(e.mapLabel), 1))
2399
2401
  ], 4),
2400
2402
  P("footer", {
2401
2403
  class: "layerboard-footer",
2402
2404
  style: ye(ct.value)
2403
2405
  }, [
2404
- me(v.$slots, "footer", {
2406
+ he(v.$slots, "footer", {
2405
2407
  openModal: Ae,
2406
2408
  closeModal: le,
2407
2409
  isModalOpen: ie.value
@@ -2409,7 +2411,7 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2409
2411
  $[4] || ($[4] = xe(" City of Philadelphia ", -1))
2410
2412
  ], !0)
2411
2413
  ], 4),
2412
- ie.value ? (m(), M("div", {
2414
+ ie.value ? (h(), M("div", {
2413
2415
  key: 0,
2414
2416
  class: "layerboard-modal-backdrop",
2415
2417
  onClick: Be,
@@ -2436,7 +2438,7 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2436
2438
  decorative: ""
2437
2439
  }, null, 8, ["icon-definition"])
2438
2440
  ], 512),
2439
- me(v.$slots, "modal", { closeModal: le }, void 0, !0)
2441
+ he(v.$slots, "modal", { closeModal: le }, void 0, !0)
2440
2442
  ], 512)
2441
2443
  ], 32)) : A("", !0),
2442
2444
  P("span", Fa, G(Se.value === "sidebar" ? "Showing layers panel" : "Showing map"), 1)
@@ -2468,7 +2470,7 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2468
2470
  }
2469
2471
  return (p, C) => {
2470
2472
  const y = to("font-awesome-icon");
2471
- return m(), M("div", {
2473
+ return h(), M("div", {
2472
2474
  class: ne(["topic-accordion", { "is-expanded": r.value }])
2473
2475
  }, [
2474
2476
  P("button", {
@@ -2479,9 +2481,9 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2479
2481
  "aria-controls": n,
2480
2482
  onClick: w
2481
2483
  }, [
2482
- e.icon || p.$slots.icon ? (m(), M("span", Ea, [
2483
- me(p.$slots, "icon", {}, () => [
2484
- e.icon ? (m(), q(y, {
2484
+ e.icon || p.$slots.icon ? (h(), M("span", Ea, [
2485
+ he(p.$slots, "icon", {}, () => [
2486
+ e.icon ? (h(), q(y, {
2485
2487
  key: 0,
2486
2488
  icon: ["fas", e.icon],
2487
2489
  "aria-hidden": "true"
@@ -2514,7 +2516,7 @@ const ba = { class: "layerboard-layout" }, wa = ["aria-expanded"], La = {
2514
2516
  "aria-labelledby": u,
2515
2517
  class: "topic-content"
2516
2518
  }, [
2517
- me(p.$slots, "default", {}, () => [
2519
+ he(p.$slots, "default", {}, () => [
2518
2520
  C[1] || (C[1] = P("p", { class: "topic-empty" }, "No content provided for this topic.", -1))
2519
2521
  ], !0)
2520
2522
  ], 512), [
@@ -2560,16 +2562,16 @@ const _a = ["aria-label"], Ra = ["checked", "disabled", "onChange"], Aa = { clas
2560
2562
  function C(y) {
2561
2563
  o("toggleLayer", y);
2562
2564
  }
2563
- return (y, h) => (m(), M("fieldset", {
2565
+ return (y, m) => (h(), M("fieldset", {
2564
2566
  class: "layer-checkbox-set",
2565
2567
  role: "group",
2566
2568
  "aria-label": e.groupLabel
2567
2569
  }, [
2568
- (m(!0), M(ue, null, Le(e.layers, (i) => (m(), M("div", {
2570
+ (h(!0), M(ue, null, Le(e.layers, (i) => (h(), M("div", {
2569
2571
  key: i.id,
2570
2572
  class: "layer-item"
2571
2573
  }, [
2572
- f(Da)(i) ? (m(), M("label", {
2574
+ f(Da)(i) ? (h(), M("label", {
2573
2575
  key: 0,
2574
2576
  class: ne(["layer-checkbox", {
2575
2577
  "layer-unavailable": !f(p)(i),
@@ -2590,7 +2592,7 @@ const _a = ["aria-label"], Ra = ["checked", "disabled", "onChange"], Aa = { clas
2590
2592
  unavailable: !f(p)(i)
2591
2593
  }, null, 8, ["loading", "error", "unavailable"])
2592
2594
  ])
2593
- ], 2)) : (m(), M("div", {
2595
+ ], 2)) : (h(), M("div", {
2594
2596
  key: 1,
2595
2597
  class: ne(["layer-label-only", {
2596
2598
  "layer-unavailable": !f(p)(i),
@@ -2606,20 +2608,20 @@ const _a = ["aria-label"], Ra = ["checked", "disabled", "onChange"], Aa = { clas
2606
2608
  }, null, 8, ["loading", "error", "unavailable"])
2607
2609
  ])
2608
2610
  ], 2)),
2609
- f(jt)(i, e.showOpacity) && f(r)(i.id) && f(p)(i) ? (m(), q(Lt, {
2611
+ f(jt)(i, e.showOpacity) && f(r)(i.id) && f(p)(i) ? (h(), q(Lt, {
2610
2612
  key: 2,
2611
2613
  "layer-id": i.id,
2612
2614
  "layer-name": f(ze)(i),
2613
2615
  opacity: f(n)(i.id),
2614
2616
  "onUpdate:opacity": (g) => o("setOpacity", i.id, g)
2615
2617
  }, null, 8, ["layer-id", "layer-name", "opacity", "onUpdate:opacity"])) : A("", !0),
2616
- f(qt)(i, e.showLegend) && f(r)(i.id) && f(p)(i) && i.legend?.length ? (m(), q(St, {
2618
+ f(qt)(i, e.showLegend) && f(r)(i.id) && f(p)(i) && i.legend?.length ? (h(), q(St, {
2617
2619
  key: 3,
2618
2620
  items: i.legend,
2619
2621
  label: "Legend for " + f(ze)(i)
2620
2622
  }, null, 8, ["items", "label"])) : A("", !0)
2621
2623
  ]))), 128)),
2622
- e.layers.length === 0 ? (m(), M("div", Va, "No layers available")) : A("", !0)
2624
+ e.layers.length === 0 ? (h(), M("div", Va, "No layers available")) : A("", !0)
2623
2625
  ], 8, _a));
2624
2626
  }
2625
2627
  }), ti = /* @__PURE__ */ $e(Za, [["__scopeId", "data-v-bfcd7855"]]), Na = ["aria-label"], Ua = ["name", "checked", "disabled", "onChange"], Wa = { class: "layer-title" }, ja = {
@@ -2645,15 +2647,15 @@ const _a = ["aria-label"], Ra = ["checked", "disabled", "onChange"], Aa = { clas
2645
2647
  () => l
2646
2648
  );
2647
2649
  function C(y) {
2648
- const h = l.layers.filter((i) => l.visibleLayerIds.has(i.id) && i.id !== y).map((i) => i.id);
2649
- o("selectLayer", y, h);
2650
+ const m = l.layers.filter((i) => l.visibleLayerIds.has(i.id) && i.id !== y).map((i) => i.id);
2651
+ o("selectLayer", y, m);
2650
2652
  }
2651
- return (y, h) => (m(), M("div", {
2653
+ return (y, m) => (h(), M("div", {
2652
2654
  class: "layer-radio-set",
2653
2655
  role: "radiogroup",
2654
2656
  "aria-label": e.groupLabel
2655
2657
  }, [
2656
- (m(!0), M(ue, null, Le(e.layers, (i) => (m(), M("div", {
2658
+ (h(!0), M(ue, null, Le(e.layers, (i) => (h(), M("div", {
2657
2659
  key: i.id,
2658
2660
  class: "layer-item"
2659
2661
  }, [
@@ -2679,20 +2681,20 @@ const _a = ["aria-label"], Ra = ["checked", "disabled", "onChange"], Aa = { clas
2679
2681
  }, null, 8, ["loading", "error", "unavailable"])
2680
2682
  ])
2681
2683
  ], 2),
2682
- f(jt)(i, e.showOpacity) && f(r)(i.id) && f(p)(i) ? (m(), q(Lt, {
2684
+ f(jt)(i, e.showOpacity) && f(r)(i.id) && f(p)(i) ? (h(), q(Lt, {
2683
2685
  key: 0,
2684
2686
  "layer-id": i.id,
2685
2687
  "layer-name": f(ze)(i),
2686
2688
  opacity: f(n)(i.id),
2687
2689
  "onUpdate:opacity": (g) => o("setOpacity", i.id, g)
2688
2690
  }, null, 8, ["layer-id", "layer-name", "opacity", "onUpdate:opacity"])) : A("", !0),
2689
- f(qt)(i, e.showLegend) && f(r)(i.id) && f(p)(i) && i.legend?.length ? (m(), q(St, {
2691
+ f(qt)(i, e.showLegend) && f(r)(i.id) && f(p)(i) && i.legend?.length ? (h(), q(St, {
2690
2692
  key: 1,
2691
2693
  items: i.legend,
2692
2694
  label: "Legend for " + f(ze)(i)
2693
2695
  }, null, 8, ["items", "label"])) : A("", !0)
2694
2696
  ]))), 128)),
2695
- e.layers.length === 0 ? (m(), M("div", ja, "No layers available")) : A("", !0)
2697
+ e.layers.length === 0 ? (h(), M("div", ja, "No layers available")) : A("", !0)
2696
2698
  ], 8, Na));
2697
2699
  }
2698
2700
  }), oi = /* @__PURE__ */ $e(qa, [["__scopeId", "data-v-c368d815"]]);
@@ -2702,7 +2704,7 @@ function ai(e) {
2702
2704
  return a.value;
2703
2705
  const T = u.value.toLowerCase();
2704
2706
  return a.value.filter((O) => O.title.toLowerCase().includes(T));
2705
- }), h = _(() => a.value.map((T) => ({
2707
+ }), m = _(() => a.value.map((T) => ({
2706
2708
  config: T,
2707
2709
  component: T.type
2708
2710
  // "circle", "fill", or "line"
@@ -2772,7 +2774,7 @@ function ai(e) {
2772
2774
  error: j(C),
2773
2775
  // Computed
2774
2776
  filteredLayerConfigs: y,
2775
- layerList: h,
2777
+ layerList: m,
2776
2778
  // Config
2777
2779
  config: e,
2778
2780
  // Methods
@@ -2806,7 +2808,7 @@ function Ga(e) {
2806
2808
  async function n(p = {}) {
2807
2809
  l.value = !0, o.value = null;
2808
2810
  const C = e.pageSize || 2e3;
2809
- let y = 0, h = [], i = !0;
2811
+ let y = 0, m = [], i = !0;
2810
2812
  try {
2811
2813
  for (; i; ) {
2812
2814
  const d = e.url.replace(/\/$/, ""), L = encodeURIComponent(p.where || e.where || "1=1");
@@ -2825,13 +2827,13 @@ function Ga(e) {
2825
2827
  if (!E.ok)
2826
2828
  throw new Error(`HTTP ${E.status}: ${E.statusText}`);
2827
2829
  const F = await E.json();
2828
- F.features && F.features.length > 0 ? (h = h.concat(F.features), y += F.features.length, i = F.features.length === C) : i = !1;
2830
+ F.features && F.features.length > 0 ? (m = m.concat(F.features), y += F.features.length, i = F.features.length === C) : i = !1;
2829
2831
  }
2830
2832
  const g = {
2831
2833
  type: "FeatureCollection",
2832
- features: h
2834
+ features: m
2833
2835
  };
2834
- return a.value = g, r.value = h.length, g;
2836
+ return a.value = g, r.value = m.length, g;
2835
2837
  } catch (g) {
2836
2838
  const d = g instanceof Error ? g : new Error("Failed to fetch features");
2837
2839
  throw o.value = d, d;