@ulu/frontend-vue 0.1.3-beta.17 → 0.1.3-beta.19

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.
@@ -1,4 +1,4 @@
1
- import { reactive as lt, inject as Oe, ref as O, computed as _, watch as te, toRef as xs, createElementBlock as f, openBlock as u, normalizeStyle as Y, unref as S, normalizeClass as m, createCommentVNode as p, createBlock as w, resolveDynamicComponent as j, normalizeProps as de, mergeProps as le, Fragment as U, createTextVNode as T, toDisplayString as k, Teleport as yt, createVNode as x, resolveDirective as Nn, withDirectives as ze, createElementVNode as h, renderSlot as g, withKeys as Wn, nextTick as Ke, markRaw as Ue, watchEffect as pt, defineAsyncComponent as Bs, toRefs as Es, toValue as ct, resolveComponent as ee, withModifiers as Rs, useSlots as Dn, renderList as R, TransitionGroup as qn, withCtx as $, onMounted as Ee, onBeforeUnmount as bt, createSlots as Te, isRef as Is, hasInjectionContext as js, getCurrentInstance as Fs, onDeactivated as Ms, onActivated as Ps, onUnmounted as _t, guardReactiveProps as ve, h as zs, watchPostEffect as Ls, vModelText as Vs, vShow as zt, provide as Bt } from "vue";
1
+ import { reactive as lt, inject as Oe, ref as O, computed as _, watch as te, toRef as xs, createElementBlock as f, openBlock as u, normalizeStyle as Y, unref as S, normalizeClass as m, createCommentVNode as b, createBlock as w, resolveDynamicComponent as j, normalizeProps as de, mergeProps as le, Fragment as U, createTextVNode as T, toDisplayString as k, Teleport as yt, createVNode as x, resolveDirective as Nn, withDirectives as ze, createElementVNode as h, renderSlot as g, withKeys as Wn, nextTick as Ke, markRaw as Ue, watchEffect as pt, defineAsyncComponent as Bs, toRefs as Es, toValue as ct, resolveComponent as ee, withModifiers as Rs, useSlots as Dn, renderList as R, TransitionGroup as qn, withCtx as $, onMounted as Ee, onBeforeUnmount as bt, createSlots as Te, isRef as Is, hasInjectionContext as js, getCurrentInstance as Fs, onDeactivated as Ms, onActivated as Ps, onUnmounted as _t, guardReactiveProps as ve, h as zs, watchPostEffect as Ls, vModelText as Vs, vShow as zt, provide as Bt } from "vue";
2
2
  import { useFloating as Hs, autoUpdate as Ns, inline as Ws, offset as Ds, flip as qs, shift as Xs, arrow as Gs } from "@floating-ui/vue";
3
3
  import { normalizeClasses as fn } from "@ulu/utils/templating.js";
4
4
  import { preventScroll as Ys, wasClickOutside as Ks, isBrowser as Js, getScrollParent as Qs } from "@ulu/utils/browser/dom.js";
@@ -114,22 +114,22 @@ function Yn(e, n, t) {
114
114
  });
115
115
  te(
116
116
  [t, s],
117
- ([b, A]) => {
117
+ ([p, A]) => {
118
118
  const C = [];
119
- b && (b.inline && C.push(Ws()), b.offset && C.push(Ds(b.offset)), C.push(qs()), C.push(Xs()), b.arrow && A && C.push(Gs({ element: A })), l.value = C);
119
+ p && (p.inline && C.push(Ws()), p.offset && C.push(Ds(p.offset)), C.push(qs()), C.push(Xs()), p.arrow && A && C.push(Gs({ element: A })), l.value = C);
120
120
  },
121
121
  { immediate: !0, deep: !0 }
122
122
  );
123
123
  const v = _(() => {
124
- const b = c.value?.arrow;
125
- return b ? {
124
+ const p = c.value?.arrow;
125
+ return p ? {
126
126
  position: "absolute",
127
- left: b?.x != null ? `${b.x}px` : "",
128
- top: b?.y != null ? `${b.y}px` : ""
127
+ left: p?.x != null ? `${p.x}px` : "",
128
+ top: p?.y != null ? `${p.y}px` : ""
129
129
  } : null;
130
130
  });
131
- te(t, (b) => {
132
- b && b.onReady && b.onReady({ update: i, isPositioned: d });
131
+ te(t, (p) => {
132
+ p && p.onReady && p.onReady({ update: i, isPositioned: d });
133
133
  });
134
134
  const y = _(() => t.value?.strategy === "fixed");
135
135
  return {
@@ -191,7 +191,7 @@ const hl = ["id", "data-placement"], ml = ["innerHTML"], gl = {
191
191
  ref_key: "contentArrow",
192
192
  ref: r,
193
193
  style: Y(S(a))
194
- }, null, 4)) : p("", !0)
194
+ }, null, 4)) : b("", !0)
195
195
  ], 14, hl));
196
196
  }
197
197
  }, yl = {
@@ -206,7 +206,7 @@ const hl = ["id", "data-placement"], ml = ["innerHTML"], gl = {
206
206
  trigger: S(n).state.trigger,
207
207
  config: S(n).state.config
208
208
  }, null, 8, ["trigger", "config"])
209
- ], 8, ["to"])) : p("", !0);
209
+ ], 8, ["to"])) : b("", !0);
210
210
  }
211
211
  }, Pe = {
212
212
  /**
@@ -376,7 +376,7 @@ const _l = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
376
376
  setup(e, { emit: n }) {
377
377
  const t = n, s = e, l = se(), o = se(), a = Ce(St), r = a ? a.popover : Pe.popover, c = _(() => ({ ...r, ...s.config })), i = O(s.startOpen || !1), d = O(null), v = O(null), {
378
378
  floatingStyles: y,
379
- placement: b,
379
+ placement: p,
380
380
  update: A,
381
381
  arrowStyles: C,
382
382
  contentArrow: B,
@@ -446,7 +446,7 @@ const _l = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
446
446
  "aria-labelledby": S(o),
447
447
  id: S(l),
448
448
  style: Y(S(y)),
449
- "data-placement": S(b),
449
+ "data-placement": S(p),
450
450
  onKeydown: Se[0] || (Se[0] = Wn((xt) => I(!1), ["esc"])),
451
451
  tabindex: "-1"
452
452
  }, [
@@ -459,7 +459,7 @@ const _l = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
459
459
  ]),
460
460
  re.$slots.footer ? (u(), f("span", $l, [
461
461
  g(re.$slots, "footer", { close: oe })
462
- ])) : p("", !0),
462
+ ])) : b("", !0),
463
463
  c.value.arrow ? (u(), f("span", {
464
464
  key: 1,
465
465
  class: "popover__arrow",
@@ -467,7 +467,7 @@ const _l = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
467
467
  ref: B,
468
468
  style: Y(S(C)),
469
469
  "data-ulu-popover-arrow": ""
470
- }, null, 4)) : p("", !0)
470
+ }, null, 4)) : b("", !0)
471
471
  ], 46, Sl)
472
472
  ], 64);
473
473
  };
@@ -559,33 +559,33 @@ function Yf(e, n = {}) {
559
559
  mounted(d, v) {
560
560
  const y = Lt(v.value, i);
561
561
  if (!y) return;
562
- let b = null;
562
+ let p = null;
563
563
  const A = () => {
564
- b || (b = setTimeout(() => {
564
+ p || (p = setTimeout(() => {
565
565
  l(d, y);
566
566
  }, y.delay));
567
567
  }, C = () => {
568
- clearTimeout(b), b = null, o();
568
+ clearTimeout(p), p = null, o();
569
569
  }, { showEvents: B, hideEvents: H } = y;
570
570
  B.forEach((K) => d.addEventListener(K, A)), H.forEach((K) => d.addEventListener(K, C)), a.set(d, { show: A, hide: C, showEvents: B, hideEvents: H });
571
571
  },
572
572
  updated(d, v) {
573
573
  const y = a.get(d);
574
574
  y && (y.showEvents.forEach((I) => d.removeEventListener(I, y.show)), y.hideEvents.forEach((I) => d.removeEventListener(I, y.hide)));
575
- const b = Lt(v.value, i);
576
- if (!b) {
575
+ const p = Lt(v.value, i);
576
+ if (!p) {
577
577
  s.trigger === d && o();
578
578
  return;
579
579
  }
580
580
  let A = null;
581
581
  const C = () => {
582
582
  A || (A = setTimeout(() => {
583
- l(d, b);
584
- }, b.delay));
583
+ l(d, p);
584
+ }, p.delay));
585
585
  }, B = () => {
586
586
  clearTimeout(A), A = null, o();
587
- }, { showEvents: H, hideEvents: K } = b;
588
- H.forEach((I) => d.addEventListener(I, C)), K.forEach((I) => d.addEventListener(I, B)), a.set(d, { show: C, hide: B, showEvents: H, hideEvents: K }), s.visible && s.trigger === d && l(d, b);
587
+ }, { showEvents: H, hideEvents: K } = p;
588
+ H.forEach((I) => d.addEventListener(I, C)), K.forEach((I) => d.addEventListener(I, B)), a.set(d, { show: C, hide: B, showEvents: H, hideEvents: K }), s.visible && s.trigger === d && l(d, p);
589
589
  },
590
590
  beforeUnmount(d) {
591
591
  s.visible && s.trigger === d && o();
@@ -645,7 +645,7 @@ function Tl(e, n, t, s, l, o) {
645
645
  "onUpdate:modelValue": n[0] || (n[0] = (a) => l.open = a),
646
646
  onVnodeMounted: o.modalMounted,
647
647
  onVnodeUnmounted: o.modalUnmounted
648
- }), null, 16, ["modelValue", "onVnodeMounted", "onVnodeUnmounted"])) : p("", !0);
648
+ }), null, 16, ["modelValue", "onVnodeMounted", "onVnodeUnmounted"])) : b("", !0);
649
649
  }
650
650
  const Al = /* @__PURE__ */ L(Cl, [["render", Tl]]);
651
651
  function Ol() {
@@ -691,7 +691,7 @@ const q = {
691
691
  return console.warn(B), null;
692
692
  }
693
693
  return C;
694
- }), v = _(() => !c.value || !d.value ? null : i.value(d.value)), y = _(() => s(d.value)), b = _(() => l(d.value)), A = _(() => ({
694
+ }), v = _(() => !c.value || !d.value ? null : i.value(d.value)), y = _(() => s(d.value)), p = _(() => l(d.value)), A = _(() => ({
695
695
  "flow-inline": a.spaced
696
696
  }));
697
697
  return pt(async () => {
@@ -710,9 +710,9 @@ const q = {
710
710
  t.value = null;
711
711
  }), (C, B) => c.value ? (u(), w(j(c.value), le({ key: 0 }, v.value, { class: A.value }), null, 16, ["class"])) : !r.value && t.value && d.value ? (u(), w(j(t.value), le({ key: 1 }, y.value, { class: A.value }), null, 16, ["class"])) : r.value && d.value ? (u(), f("span", {
712
712
  key: 2,
713
- class: m([b.value, A.value]),
713
+ class: m([p.value, A.value]),
714
714
  "aria-hidden": "true"
715
- }, null, 2)) : p("", !0);
715
+ }, null, 2)) : b("", !0);
716
716
  }
717
717
  };
718
718
  function fe({ props: e, baseClass: n, internal: t = {} }) {
@@ -990,7 +990,7 @@ function Il(e, n, t, s, l, o) {
990
990
  key: 0,
991
991
  class: "modal__title-icon",
992
992
  icon: t.titleIcon
993
- }, null, 8, ["icon"])) : p("", !0),
993
+ }, null, 8, ["icon"])) : b("", !0),
994
994
  h("span", El, k(t.title), 1)
995
995
  ])
996
996
  ], 10, Bl),
@@ -1007,7 +1007,7 @@ function Il(e, n, t, s, l, o) {
1007
1007
  }, null, 8, ["icon"])
1008
1008
  ])
1009
1009
  ])
1010
- ], 2)) : p("", !0),
1010
+ ], 2)) : b("", !0),
1011
1011
  h("div", {
1012
1012
  class: m(["modal__body", t.classes.body])
1013
1013
  }, [
@@ -1018,7 +1018,7 @@ function Il(e, n, t, s, l, o) {
1018
1018
  class: m(["site-modal__footer", t.classes.footer])
1019
1019
  }, [
1020
1020
  g(e.$slots, "footer", { close: o.close })
1021
- ], 2)) : p("", !0),
1021
+ ], 2)) : b("", !0),
1022
1022
  s.resizerEnabled ? (u(), f("button", Rl, [
1023
1023
  g(e.$slots, "resizerIcon", {}, () => [
1024
1024
  x(a, {
@@ -1026,7 +1026,7 @@ function Il(e, n, t, s, l, o) {
1026
1026
  icon: t.resizerIcon || s.resizerIconType
1027
1027
  }, null, 8, ["icon"])
1028
1028
  ])
1029
- ], 512)) : p("", !0)
1029
+ ], 512)) : b("", !0)
1030
1030
  ], 46, xl)
1031
1031
  ], 8, ["to", "disabled"]);
1032
1032
  }
@@ -1143,9 +1143,9 @@ function Ll(e, n, t, s, l, o) {
1143
1143
  t.toast.icon ? (u(), w(a, {
1144
1144
  key: 0,
1145
1145
  icon: t.toast.icon
1146
- }, null, 8, ["icon"])) : p("", !0)
1146
+ }, null, 8, ["icon"])) : b("", !0)
1147
1147
  ])
1148
- ], 2)) : p("", !0),
1148
+ ], 2)) : b("", !0),
1149
1149
  h("div", {
1150
1150
  class: m(["toast__content", t.classes.content])
1151
1151
  }, [
@@ -1160,12 +1160,12 @@ function Ll(e, n, t, s, l, o) {
1160
1160
  t.toast.date ? (u(), f("span", {
1161
1161
  key: 0,
1162
1162
  class: m(["toast__date", t.classes.date])
1163
- }, k(t.toast.date), 3)) : p("", !0)
1164
- ], 2)) : p("", !0),
1163
+ }, k(t.toast.date), 3)) : b("", !0)
1164
+ ], 2)) : b("", !0),
1165
1165
  t.toast.description ? (u(), f("div", {
1166
1166
  key: 1,
1167
1167
  class: m(["toast__body", t.classes.body])
1168
- }, k(t.toast.description), 3)) : p("", !0)
1168
+ }, k(t.toast.description), 3)) : b("", !0)
1169
1169
  ])
1170
1170
  ], 2),
1171
1171
  t.toast.actions?.length ? (u(), f("div", {
@@ -1177,7 +1177,7 @@ function Ll(e, n, t, s, l, o) {
1177
1177
  class: m(["toast__action", t.classes.action]),
1178
1178
  onClick: (i) => o.handleAction(i, r)
1179
1179
  }, k(r.label), 11, zl))), 128))
1180
- ], 2)) : p("", !0),
1180
+ ], 2)) : b("", !0),
1181
1181
  h("button", {
1182
1182
  class: m(["toast__close", t.classes.closeButton]),
1183
1183
  onClick: n[0] || (n[0] = (...r) => t.toast.close && t.toast.close(...r))
@@ -1530,12 +1530,12 @@ function eo(e) {
1530
1530
  let o = n.left - t.left, a = n.top - t.top;
1531
1531
  const r = n.left + n.width - (t.left + t.width);
1532
1532
  n.top + n.height - (t.top + t.height) == 0 && (a = 0), r == 0 && (o = 0);
1533
- const [i, d, v, y] = ss(e, n, t), b = {
1533
+ const [i, d, v, y] = ss(e, n, t), p = {
1534
1534
  transform: `translate(${o}px, ${a}px)`
1535
1535
  }, A = {
1536
1536
  transform: "translate(0, 0)"
1537
1537
  };
1538
- i !== d && (b.width = `${i}px`, A.width = `${d}px`), v !== y && (b.height = `${v}px`, A.height = `${y}px`), s = e.animate([b, A], {
1538
+ i !== d && (p.width = `${i}px`, A.width = `${d}px`), v !== y && (p.height = `${v}px`, A.height = `${y}px`), s = e.animate([p, A], {
1539
1539
  duration: l.duration,
1540
1540
  easing: l.easing
1541
1541
  });
@@ -1595,7 +1595,7 @@ function to(e) {
1595
1595
  return pn(e);
1596
1596
  const [a, r, c, i] = so(e), d = $t(e), v = ne.get(e);
1597
1597
  (l !== Jt || o !== Qt) && no(e, l, o, d);
1598
- let y, b = {
1598
+ let y, p = {
1599
1599
  position: "absolute",
1600
1600
  top: `${a}px`,
1601
1601
  left: `${r}px`,
@@ -1607,7 +1607,7 @@ function to(e) {
1607
1607
  zIndex: "100"
1608
1608
  };
1609
1609
  if (!tt(d))
1610
- Object.assign(e.style, b), y = e.animate([
1610
+ Object.assign(e.style, p), y = e.animate([
1611
1611
  {
1612
1612
  transform: "scale(1)",
1613
1613
  opacity: 1
@@ -1622,9 +1622,9 @@ function to(e) {
1622
1622
  });
1623
1623
  else {
1624
1624
  const [A, C] = tn(d(e, "remove", v));
1625
- C?.styleReset !== !1 && (b = C?.styleReset || b, Object.assign(e.style, b)), y = new Animation(A), y.play();
1625
+ C?.styleReset !== !1 && (p = C?.styleReset || p, Object.assign(e.style, p)), y = new Animation(A), y.play();
1626
1626
  }
1627
- ie.set(e, y), y.addEventListener("finish", () => pn(e, b), {
1627
+ ie.set(e, y), y.addEventListener("finish", () => pn(e, p), {
1628
1628
  once: !0
1629
1629
  });
1630
1630
  }
@@ -1638,10 +1638,10 @@ function no(e, n, t, s) {
1638
1638
  function y() {
1639
1639
  requestAnimationFrame(() => {
1640
1640
  if (!tt(s)) {
1641
- const b = i - c.clientHeight, A = d - c.clientWidth;
1641
+ const p = i - c.clientHeight, A = d - c.clientWidth;
1642
1642
  v + s.duration > performance.now() ? (window.scrollTo({
1643
1643
  left: window.scrollX - A,
1644
- top: window.scrollY - b
1644
+ top: window.scrollY - p
1645
1645
  }), i = c.clientHeight, d = c.clientWidth, y()) : document.documentElement.style.scrollBehavior = a;
1646
1646
  }
1647
1647
  });
@@ -1794,13 +1794,13 @@ const ao = ["id", "aria-controls", "aria-expanded"], ro = ["id", "aria-hidden",
1794
1794
  function y() {
1795
1795
  i.value = !i.value;
1796
1796
  }
1797
- function b() {
1797
+ function p() {
1798
1798
  t.closeOnEscape && i.value && (i.value = !1);
1799
1799
  }
1800
1800
  return (A, C) => (u(), f("div", {
1801
1801
  ref_key: "container",
1802
1802
  ref: o,
1803
- onKeydown: Wn(b, ["esc"]),
1803
+ onKeydown: Wn(p, ["esc"]),
1804
1804
  class: m([e.classes.container, i.value ? e.classes.containerOpen : e.classes.containerClosed])
1805
1805
  }, [
1806
1806
  h("button", {
@@ -1826,7 +1826,7 @@ const ao = ["id", "aria-controls", "aria-expanded"], ro = ["id", "aria-hidden",
1826
1826
  isOpen: i.value,
1827
1827
  toggle: y
1828
1828
  })
1829
- ], 10, ro)) : p("", !0)
1829
+ ], 10, ro)) : b("", !0)
1830
1830
  ], 34));
1831
1831
  }
1832
1832
  }, Wt = {
@@ -2065,7 +2065,7 @@ const ao = ["id", "aria-controls", "aria-expanded"], ro = ["id", "aria-hidden",
2065
2065
  key: 0,
2066
2066
  icon: e.icon,
2067
2067
  spaced: ""
2068
- }, null, 8, ["icon"])) : p("", !0),
2068
+ }, null, 8, ["icon"])) : b("", !0),
2069
2069
  g(s.$slots, "default", {}, () => [
2070
2070
  h("span", null, k(e.text), 1)
2071
2071
  ])
@@ -2159,14 +2159,14 @@ function uo(e, n, t, s, l, o) {
2159
2159
  key: 0,
2160
2160
  icon: d.icon,
2161
2161
  class: m([t.classes.linkIcon, d?.classes?.linkIcon])
2162
- }, null, 8, ["icon", "class"])) : p("", !0),
2162
+ }, null, 8, ["icon", "class"])) : b("", !0),
2163
2163
  h("span", {
2164
2164
  class: m([t.classes.linkText, d?.classes?.linkText])
2165
2165
  }, k(d.title), 3),
2166
2166
  d.tag ? (u(), w(r, le({
2167
2167
  key: 1,
2168
2168
  ref_for: !0
2169
- }, d.tag), null, 16)) : p("", !0)
2169
+ }, d.tag), null, 16)) : b("", !0)
2170
2170
  ])
2171
2171
  ]),
2172
2172
  _: 2
@@ -2178,9 +2178,9 @@ function uo(e, n, t, s, l, o) {
2178
2178
  iconOnly: t.iconOnly,
2179
2179
  classes: t.classes,
2180
2180
  items: d.children
2181
- }, null, 8, ["iconOnly", "classes", "items"])) : p("", !0)
2181
+ }, null, 8, ["iconOnly", "classes", "items"])) : b("", !0)
2182
2182
  ], 2))), 128))
2183
- ], 2)) : p("", !0);
2183
+ ], 2)) : b("", !0);
2184
2184
  }
2185
2185
  const as = /* @__PURE__ */ L(co, [["render", uo]]), fo = {
2186
2186
  __name: "UluMenuStack",
@@ -2326,8 +2326,8 @@ function th(e, n) {
2326
2326
  return null;
2327
2327
  const i = {
2328
2328
  pages: {}
2329
- }, d = l.value, v = o.value, y = 5, b = (B) => ({ query: { ...t.query, page: B } });
2330
- d > 1 && (i.first = { href: b(1) }, i.previous = { href: b(d - 1) }), d < v && (i.next = { href: b(d + 1) }, i.last = { href: b(v) });
2329
+ }, d = l.value, v = o.value, y = 5, p = (B) => ({ query: { ...t.query, page: B } });
2330
+ d > 1 && (i.first = { href: p(1) }, i.previous = { href: p(d - 1) }), d < v && (i.next = { href: p(d + 1) }, i.last = { href: p(v) });
2331
2331
  let A, C;
2332
2332
  if (v <= y)
2333
2333
  A = 1, C = v;
@@ -2336,7 +2336,7 @@ function th(e, n) {
2336
2336
  d <= B ? (A = 1, C = y) : d + H >= v ? (A = v - y + 1, C = v) : (A = d - B, C = d + H);
2337
2337
  }
2338
2338
  for (let B = A; B <= C; B++)
2339
- i.pages[B] = { href: b(B) };
2339
+ i.pages[B] = { href: p(B) };
2340
2340
  return i;
2341
2341
  }), c = _(() => {
2342
2342
  const i = { previous: !1, next: !1 };
@@ -2431,7 +2431,7 @@ function So(e, n, t) {
2431
2431
  sort: rn
2432
2432
  }, t), o = e.find((i) => i.path !== "/" && n.includes(i.path)), a = (i, d, v) => {
2433
2433
  if (i.children) {
2434
- const y = i.children.find((b) => b.path.includes(n));
2434
+ const y = i.children.find((p) => p.path.includes(n));
2435
2435
  if (y)
2436
2436
  return a(y, i, v + y.path);
2437
2437
  }
@@ -2585,7 +2585,7 @@ const Ao = { class: "layout-flex-baseline" }, Oo = { class: "type-word-break" },
2585
2585
  ])
2586
2586
  ]),
2587
2587
  _: 3
2588
- })) : p("", !0)
2588
+ })) : b("", !0)
2589
2589
  ]));
2590
2590
  }
2591
2591
  }, lh = {
@@ -2785,17 +2785,17 @@ function Bo(e, n, t, s, l, o) {
2785
2785
  key: 0,
2786
2786
  icon: t.icon,
2787
2787
  class: "button__icon"
2788
- }, null, 8, ["icon"])) : p("", !0),
2788
+ }, null, 8, ["icon"])) : b("", !0),
2789
2789
  (e.$slots.default || t.text) && !t.iconOnly ? (u(), f("span", xo, [
2790
2790
  g(e.$slots, "default", {}, () => [
2791
2791
  T(k(t.text), 1)
2792
2792
  ])
2793
- ])) : p("", !0),
2793
+ ])) : b("", !0),
2794
2794
  t.icon && !t.iconBefore && !t.iconOnly ? (u(), w(a, {
2795
2795
  key: 2,
2796
2796
  icon: t.icon,
2797
2797
  class: "button__icon"
2798
- }, null, 8, ["icon"])) : p("", !0),
2798
+ }, null, 8, ["icon"])) : b("", !0),
2799
2799
  g(e.$slots, "after")
2800
2800
  ]),
2801
2801
  _: 3
@@ -2875,7 +2875,7 @@ function Mo(e, n, t, s, l, o) {
2875
2875
  ]),
2876
2876
  e.$slots.action ? (u(), f("div", Fo, [
2877
2877
  g(e.$slots, "action")
2878
- ])) : p("", !0)
2878
+ ])) : b("", !0)
2879
2879
  ])
2880
2880
  ], 2);
2881
2881
  }
@@ -2941,7 +2941,7 @@ const ch = /* @__PURE__ */ L(Ro, [["render", Mo]]), Po = ["aria-hidden"], zo = {
2941
2941
  key: 0,
2942
2942
  "aria-hidden": e.alt ? "true" : null
2943
2943
  }, k(e.text), 9, Po)) : g(l.$slots, "default", { key: 1 }),
2944
- e.alt ? (u(), f("span", zo, k(e.alt), 1)) : p("", !0)
2944
+ e.alt ? (u(), f("span", zo, k(e.alt), 1)) : b("", !0)
2945
2945
  ], 2)
2946
2946
  ]),
2947
2947
  _: 3
@@ -3058,18 +3058,18 @@ function Wo(e, n, t, s, l, o) {
3058
3058
  ])
3059
3059
  ]),
3060
3060
  _: 3
3061
- })) : p("", !0),
3061
+ })) : b("", !0),
3062
3062
  e.$slots.default || t.body ? (u(), f("span", No, [
3063
3063
  g(e.$slots, "default", {}, () => [
3064
3064
  T(k(t.body), 1)
3065
3065
  ])
3066
- ])) : p("", !0),
3066
+ ])) : b("", !0),
3067
3067
  t.icon ? (u(), w(a, {
3068
3068
  key: 2,
3069
3069
  icon: t.icon,
3070
3070
  class: "button-verbose__icon",
3071
3071
  "aria-hidden": "true"
3072
- }, null, 8, ["icon"])) : p("", !0)
3072
+ }, null, 8, ["icon"])) : b("", !0)
3073
3073
  ]),
3074
3074
  _: 3
3075
3075
  }, 16, ["class"]);
@@ -3212,18 +3212,18 @@ const fh = /* @__PURE__ */ L(Do, [["render", qo]]), Xo = { class: "card__body" }
3212
3212
  setup(e, { emit: n }) {
3213
3213
  const t = e, s = n, l = Dn();
3214
3214
  t.proxyClick && (t.to || t.href) && console.warn("UluCard: 'proxyClick' is ignored when 'to' or 'href' are present."), (t.titleTo || t.titleHref) && (t.to || t.href) && console.warn("UluCard: 'titleTo'/'titleHref' should not be used with 'to'/'href'.");
3215
- const o = O(null), a = O(null), { resolvedModifiers: r } = fe({ props: t, baseClass: "card" }), c = O(null), i = O(!1), d = _(() => t.proxyClick && !t.to && !t.href), v = _(() => d.value && (t.titleTo || t.titleHref)), y = _(() => d.value && !v.value), b = _(() => d.value || null), A = _(() => ({
3215
+ const o = O(null), a = O(null), { resolvedModifiers: r } = fe({ props: t, baseClass: "card" }), c = O(null), i = O(!1), d = _(() => t.proxyClick && !t.to && !t.href), v = _(() => d.value && (t.titleTo || t.titleHref)), y = _(() => d.value && !v.value), p = _(() => d.value || null), A = _(() => ({
3216
3216
  selectorPrevent: "input, select, textarea, button, a, [tabindex='-1']",
3217
3217
  mousedownDurationPrevent: 250,
3218
3218
  ...t.proxyClickOptions
3219
3219
  })), C = _(() => d.value ? "pointer" : null), B = _(() => t.to ? Qe : t.href ? "a" : t.cardElement);
3220
3220
  function H({ target: I, timeStamp: M }) {
3221
- if (!b.value) return;
3221
+ if (!p.value) return;
3222
3222
  const { selectorPrevent: X } = A.value;
3223
3223
  i.value = !1, I.closest(X) || (i.value = !0, c.value = M);
3224
3224
  }
3225
3225
  function K({ timeStamp: I }) {
3226
- if (!b.value || !i.value) return;
3226
+ if (!p.value || !i.value) return;
3227
3227
  const { mousedownDurationPrevent: M } = A.value;
3228
3228
  if (I - c.value < M) {
3229
3229
  if (v.value)
@@ -3252,7 +3252,7 @@ const fh = /* @__PURE__ */ L(Do, [["render", qo]]), Xo = { class: "card__body" }
3252
3252
  target: e.target,
3253
3253
  to: e.to,
3254
3254
  href: e.href,
3255
- "data-ulu-proxy-click-init": b.value
3255
+ "data-ulu-proxy-click-init": p.value
3256
3256
  }, {
3257
3257
  default: $(() => [
3258
3258
  h("div", Xo, [
@@ -3291,12 +3291,12 @@ const fh = /* @__PURE__ */ L(Do, [["render", qo]]), Xo = { class: "card__body" }
3291
3291
  ])
3292
3292
  ]),
3293
3293
  _: 3
3294
- }, 8, ["class"])) : p("", !0),
3294
+ }, 8, ["class"])) : b("", !0),
3295
3295
  g(I.$slots, "body")
3296
3296
  ]),
3297
3297
  S(l).aside ? (u(), f("div", Ko, [
3298
3298
  g(I.$slots, "aside")
3299
- ])) : p("", !0)
3299
+ ])) : b("", !0)
3300
3300
  ]),
3301
3301
  S(l).image || e.imageSrc ? (u(), f("div", {
3302
3302
  key: 0,
@@ -3311,10 +3311,10 @@ const fh = /* @__PURE__ */ L(Do, [["render", qo]]), Xo = { class: "card__body" }
3311
3311
  alt: e.imageAlt
3312
3312
  }, null, 8, Jo)
3313
3313
  ])
3314
- ], 2)) : p("", !0),
3314
+ ], 2)) : b("", !0),
3315
3315
  S(l).footer ? (u(), f("div", Qo, [
3316
3316
  g(I.$slots, "footer")
3317
- ])) : p("", !0)
3317
+ ])) : b("", !0)
3318
3318
  ]),
3319
3319
  _: 3
3320
3320
  }, 40, ["class", "style", "target", "to", "href", "data-ulu-proxy-click-init"]));
@@ -3641,8 +3641,8 @@ const yh = /* @__PURE__ */ L(ta, [["render", sa]]), ph = {
3641
3641
  if (t.type === "radio")
3642
3642
  s("update:modelValue", d.uid);
3643
3643
  else if (Array.isArray(t.modelValue)) {
3644
- const y = [...t.modelValue], b = y.indexOf(d.uid);
3645
- b > -1 ? y.splice(b, 1) : y.push(d.uid), s("update:modelValue", y);
3644
+ const y = [...t.modelValue], p = y.indexOf(d.uid);
3645
+ p > -1 ? y.splice(p, 1) : y.push(d.uid), s("update:modelValue", y);
3646
3646
  } else
3647
3647
  d.checked = v.target.checked;
3648
3648
  };
@@ -3658,7 +3658,7 @@ const yh = /* @__PURE__ */ L(ta, [["render", sa]]), ph = {
3658
3658
  key: 0,
3659
3659
  id: o.value,
3660
3660
  class: "hidden-visually"
3661
- }, k(e.legend), 9, aa)) : p("", !0),
3661
+ }, k(e.legend), 9, aa)) : b("", !0),
3662
3662
  h("ul", ra, [
3663
3663
  (u(!0), f(U, null, R(e.options, (y) => (u(), f("li", {
3664
3664
  class: "menu-stack__item",
@@ -3671,7 +3671,7 @@ const yh = /* @__PURE__ */ L(ta, [["render", sa]]), ph = {
3671
3671
  name: l.value,
3672
3672
  value: y.uid,
3673
3673
  checked: c(y),
3674
- onChange: (b) => i(y, b)
3674
+ onChange: (p) => i(y, p)
3675
3675
  }, null, 40, ca),
3676
3676
  h("label", {
3677
3677
  for: r(y)
@@ -3727,7 +3727,7 @@ const yh = /* @__PURE__ */ L(ta, [["render", sa]]), ph = {
3727
3727
  }, null, 8, ["icon"]),
3728
3728
  h("span", fa, [
3729
3729
  T(k(e.file.name) + " ", 1),
3730
- e.noFileSize ? p("", !0) : (u(), w(os, {
3730
+ e.noFileSize ? b("", !0) : (u(), w(os, {
3731
3731
  key: 0,
3732
3732
  text: s.value,
3733
3733
  small: "",
@@ -3785,7 +3785,7 @@ const yh = /* @__PURE__ */ L(ta, [["render", sa]]), ph = {
3785
3785
  }, [
3786
3786
  g(o.$slots, "label", {}, () => [
3787
3787
  T(k(e.label), 1),
3788
- e.required ? (u(), w(Ne, { key: 0 })) : p("", !0)
3788
+ e.required ? (u(), w(Ne, { key: 0 })) : b("", !0)
3789
3789
  ])
3790
3790
  ], 10, ma),
3791
3791
  h("input", le({
@@ -3818,7 +3818,7 @@ const yh = /* @__PURE__ */ L(ta, [["render", sa]]), ph = {
3818
3818
  e.error || e.warning ? (u(), w(q, {
3819
3819
  key: 0,
3820
3820
  icon: `type:${e.error ? "error" : "warning"}`
3821
- }, null, 8, ["icon"])) : p("", !0),
3821
+ }, null, 8, ["icon"])) : b("", !0),
3822
3822
  g(n.$slots, "default")
3823
3823
  ], 2));
3824
3824
  }
@@ -3856,7 +3856,7 @@ const yh = /* @__PURE__ */ L(ta, [["render", sa]]), ph = {
3856
3856
  }, [
3857
3857
  g(t.$slots, "label", {}, () => [
3858
3858
  T(k(e.label), 1),
3859
- e.required ? (u(), w(Ne, { key: 0 })) : p("", !0)
3859
+ e.required ? (u(), w(Ne, { key: 0 })) : b("", !0)
3860
3860
  ])
3861
3861
  ], 10, va),
3862
3862
  h("select", {
@@ -3906,7 +3906,7 @@ const yh = /* @__PURE__ */ L(ta, [["render", sa]]), ph = {
3906
3906
  }, [
3907
3907
  g(t.$slots, "label", {}, () => [
3908
3908
  T(k(e.label), 1),
3909
- e.required ? (u(), w(Ne, { key: 0 })) : p("", !0)
3909
+ e.required ? (u(), w(Ne, { key: 0 })) : b("", !0)
3910
3910
  ])
3911
3911
  ], 10, ba),
3912
3912
  h("input", {
@@ -4027,7 +4027,7 @@ const yh = /* @__PURE__ */ L(ta, [["render", sa]]), ph = {
4027
4027
  h("label", { for: S(n) }, [
4028
4028
  g(t.$slots, "default", {}, () => [
4029
4029
  T(k(e.label), 1),
4030
- e.required ? (u(), w(Ne, { key: 0 })) : p("", !0)
4030
+ e.required ? (u(), w(Ne, { key: 0 })) : b("", !0)
4031
4031
  ])
4032
4032
  ], 8, Aa)
4033
4033
  ], 64));
@@ -4042,7 +4042,7 @@ const yh = /* @__PURE__ */ L(ta, [["render", sa]]), ph = {
4042
4042
  },
4043
4043
  setup(e) {
4044
4044
  return (n, t) => (u(), f("fieldset", Oa, [
4045
- e.legend ? (u(), f("legend", Ua, k(e.legend), 1)) : p("", !0),
4045
+ e.legend ? (u(), f("legend", Ua, k(e.legend), 1)) : b("", !0),
4046
4046
  g(n.$slots, "default")
4047
4047
  ]));
4048
4048
  }
@@ -4140,7 +4140,7 @@ const yh = /* @__PURE__ */ L(ta, [["render", sa]]), ph = {
4140
4140
  h("label", { for: S(n) }, [
4141
4141
  g(t.$slots, "default", {}, () => [
4142
4142
  T(k(e.label), 1),
4143
- e.required ? (u(), w(Ne, { key: 0 })) : p("", !0)
4143
+ e.required ? (u(), w(Ne, { key: 0 })) : b("", !0)
4144
4144
  ])
4145
4145
  ], 8, Ea)
4146
4146
  ], 64));
@@ -4175,7 +4175,7 @@ const yh = /* @__PURE__ */ L(ta, [["render", sa]]), ph = {
4175
4175
  }, [
4176
4176
  g(t.$slots, "label", {}, () => [
4177
4177
  T(k(e.label), 1),
4178
- e.required ? (u(), w(Ne, { key: 0 })) : p("", !0)
4178
+ e.required ? (u(), w(Ne, { key: 0 })) : b("", !0)
4179
4179
  ])
4180
4180
  ], 10, Ra),
4181
4181
  h("textarea", {
@@ -4213,9 +4213,11 @@ const yh = /* @__PURE__ */ L(ta, [["render", sa]]), ph = {
4213
4213
  const n = e, t = O(null), s = O(null);
4214
4214
  let l = null, o = null;
4215
4215
  return Ee(async () => {
4216
- l = () => al(t.value), l(), s.value = !0, o = Kt(l, 200, !1), window.addEventListener("resize", o);
4216
+ l = () => {
4217
+ t.value && al(t.value);
4218
+ }, l(), s.value = !0, o = Kt(l, 200, !1), window.addEventListener("resize", o);
4217
4219
  }), bt(() => {
4218
- o && (window.removeEventListener("resize", o), o = null, l = null);
4220
+ o && (o.cancel(), window.removeEventListener("resize", o), o = null, l = null);
4219
4221
  }), te(() => n.hidden, (a, r) => {
4220
4222
  r && !a && l && l();
4221
4223
  }), (a, r) => (u(), w(j(e.element), {
@@ -4295,7 +4297,7 @@ function Ma(e, n, t, s, l, o) {
4295
4297
  key: 0,
4296
4298
  class: m(t.classes.icon),
4297
4299
  icon: t.icon
4298
- }, null, 8, ["class", "icon"])) : p("", !0),
4300
+ }, null, 8, ["class", "icon"])) : b("", !0),
4299
4301
  g(e.$slots, "default", {}, () => [
4300
4302
  T(k(t.title), 1)
4301
4303
  ])
@@ -4305,7 +4307,7 @@ function Ma(e, n, t, s, l, o) {
4305
4307
  ], 2),
4306
4308
  e.$slots.end ? (u(), f("div", Fa, [
4307
4309
  g(e.$slots, "end")
4308
- ])) : p("", !0)
4310
+ ])) : b("", !0)
4309
4311
  ], 2);
4310
4312
  }
4311
4313
  const Fh = /* @__PURE__ */ L(ja, [["render", Ma]]), Mh = {
@@ -4330,7 +4332,7 @@ const Fh = /* @__PURE__ */ L(ja, [["render", Ma]]), Mh = {
4330
4332
  const y = n[v];
4331
4333
  if (y) {
4332
4334
  s.value[v] = !1;
4333
- const b = {
4335
+ const p = {
4334
4336
  on: () => {
4335
4337
  s.value[v] = !0;
4336
4338
  },
@@ -4338,22 +4340,28 @@ const Fh = /* @__PURE__ */ L(ja, [["render", Ma]]), Mh = {
4338
4340
  s.value[v] = !1;
4339
4341
  }
4340
4342
  };
4341
- i.at(y)[v](b), l.value.push({ name: y, direction: v, handler: b });
4343
+ i.at(y)[v](p), l.value.push({ name: y, direction: v, handler: p });
4342
4344
  }
4343
4345
  };
4344
4346
  d("max"), d("min"), d("only"), o.value = !0;
4345
4347
  }, c = () => {
4346
- t && l.value.forEach(({ name: i, direction: d, handler: v }) => {
4347
- t.at(i).remove(v, d);
4348
+ t.value && l.value.forEach(({ name: i, direction: d, handler: v }) => {
4349
+ const y = t.value.at(i);
4350
+ if (y)
4351
+ try {
4352
+ y.directions[d] && y.directions[d].remove(v);
4353
+ } catch (p) {
4354
+ console.error(p);
4355
+ }
4348
4356
  }), l.value = [], s.value = {}, o.value = !1;
4349
4357
  };
4350
4358
  return te(t, (i) => {
4351
4359
  i && !o.value && r(i);
4352
4360
  }, { immediate: !0 }), te([() => n.max, () => n.min, () => n.only], () => {
4353
- t && o.value && (c(), r(t));
4361
+ t.value && o.value && (c(), r(t.value));
4354
4362
  }), bt(() => {
4355
4363
  c();
4356
- }), (i, d) => a.value ? g(i.$slots, "default", { key: 0 }) : p("", !0);
4364
+ }), (i, d) => a.value ? g(i.$slots, "default", { key: 0 }) : b("", !0);
4357
4365
  }
4358
4366
  }, Pa = {
4359
4367
  name: "UluBreadcrumb",
@@ -4429,10 +4437,10 @@ function za(e, n, t, s, l, o) {
4429
4437
  class: m(t.classes.separator),
4430
4438
  icon: t.separatorIcon || "type:pathSeparator"
4431
4439
  }, null, 8, ["class", "icon"])
4432
- ]) : p("", !0)
4440
+ ]) : b("", !0)
4433
4441
  ], 2))), 128))
4434
4442
  ], 2)
4435
- ], 2)) : p("", !0);
4443
+ ], 2)) : b("", !0);
4436
4444
  }
4437
4445
  const Ph = /* @__PURE__ */ L(Pa, [["render", za]]), La = {
4438
4446
  name: "UluNavStrip",
@@ -4567,7 +4575,7 @@ const zh = /* @__PURE__ */ L(La, [["render", Va]]), Ha = ["aria-labelledby"], Na
4567
4575
  ]),
4568
4576
  _: 1
4569
4577
  }, 16, ["to"])
4570
- ])) : p("", !0),
4578
+ ])) : b("", !0),
4571
4579
  e.items.previous ? (u(), f("li", Da, [
4572
4580
  x(a, le({
4573
4581
  to: e.items.previous.href,
@@ -4583,8 +4591,8 @@ const zh = /* @__PURE__ */ L(La, [["render", Va]]), Ha = ["aria-labelledby"], Na
4583
4591
  ]),
4584
4592
  _: 1
4585
4593
  }, 16, ["to"])
4586
- ])) : p("", !0),
4587
- e.ellipses.previous ? (u(), f("li", qa, "…")) : p("", !0),
4594
+ ])) : b("", !0),
4595
+ e.ellipses.previous ? (u(), f("li", qa, "…")) : b("", !0),
4588
4596
  (u(!0), f(U, null, R(e.items.pages, (r, c) => (u(), f("li", {
4589
4597
  key: c,
4590
4598
  class: m(["pager__item", { "is-active": e.current == c }])
@@ -4600,7 +4608,7 @@ const zh = /* @__PURE__ */ L(La, [["render", Va]]), Ha = ["aria-labelledby"], Na
4600
4608
  _: 2
4601
4609
  }, 1040, ["to", "title"])
4602
4610
  ], 2))), 128)),
4603
- e.ellipses.next ? (u(), f("li", Ga, "…")) : p("", !0),
4611
+ e.ellipses.next ? (u(), f("li", Ga, "…")) : b("", !0),
4604
4612
  e.items.next ? (u(), f("li", Ya, [
4605
4613
  x(a, le({
4606
4614
  to: e.items.next.href,
@@ -4616,7 +4624,7 @@ const zh = /* @__PURE__ */ L(La, [["render", Va]]), Ha = ["aria-labelledby"], Na
4616
4624
  ]),
4617
4625
  _: 1
4618
4626
  }, 16, ["to"])
4619
- ])) : p("", !0),
4627
+ ])) : b("", !0),
4620
4628
  e.items.last ? (u(), f("li", Ka, [
4621
4629
  x(a, le({
4622
4630
  to: e.items.last.href,
@@ -4631,9 +4639,9 @@ const zh = /* @__PURE__ */ L(La, [["render", Va]]), Ha = ["aria-labelledby"], Na
4631
4639
  ]),
4632
4640
  _: 1
4633
4641
  }, 16, ["to"])
4634
- ])) : p("", !0)
4642
+ ])) : b("", !0)
4635
4643
  ])
4636
- ], 8, Ha)) : p("", !0);
4644
+ ], 8, Ha)) : b("", !0);
4637
4645
  };
4638
4646
  }
4639
4647
  }, Ja = {}, Qa = {
@@ -4665,7 +4673,7 @@ function tr(e, n, t, s, l, o) {
4665
4673
  T(k(t.text), 1)
4666
4674
  ]),
4667
4675
  _: 1
4668
- })) : p("", !0);
4676
+ })) : b("", !0);
4669
4677
  }
4670
4678
  const Hh = /* @__PURE__ */ L(er, [["render", tr]]), nr = {
4671
4679
  __name: "UluConditionalWrapper",
@@ -4825,7 +4833,7 @@ function mr(e, n, t, s, l, o) {
4825
4833
  tabindex: "-1",
4826
4834
  class: "hidden-visually",
4827
4835
  ref: "el"
4828
- }, k(o.title), 513)) : p("", !0);
4836
+ }, k(o.title), 513)) : b("", !0);
4829
4837
  }
4830
4838
  const Xh = /* @__PURE__ */ L(hr, [["render", mr]]), Gh = {
4831
4839
  __name: "UluSanityRichText",
@@ -4863,7 +4871,7 @@ const Xh = /* @__PURE__ */ L(hr, [["render", mr]]), Gh = {
4863
4871
  }, null, 8, ["value"])
4864
4872
  ]),
4865
4873
  _: 1
4866
- }, 8, ["unwrapped"])) : p("", !0);
4874
+ }, 8, ["unwrapped"])) : b("", !0);
4867
4875
  }
4868
4876
  }, gr = {
4869
4877
  name: "AnimateNumber",
@@ -5020,17 +5028,17 @@ const Yh = /* @__PURE__ */ L(gr, [["render", vr]]), yr = {
5020
5028
  ])
5021
5029
  ]),
5022
5030
  _: 3
5023
- }, 8, ["class"])) : p("", !0),
5031
+ }, 8, ["class"])) : b("", !0),
5024
5032
  e.amountInHeader ? (u(), f("div", pr, [
5025
5033
  r[0] || (r[0] = h("strong", { class: "hidden-visually" }, "Amount:", -1)),
5026
5034
  g(a.$slots, "valueAmount", { value: e.amount }, () => [
5027
5035
  T(k(e.formatValue(e.amount, "amount")), 1)
5028
5036
  ])
5029
- ])) : p("", !0),
5037
+ ])) : b("", !0),
5030
5038
  a.$slots.icon ? (u(), f("div", br, [
5031
5039
  g(a.$slots, "icon")
5032
- ])) : p("", !0)
5033
- ])) : p("", !0),
5040
+ ])) : b("", !0)
5041
+ ])) : b("", !0),
5034
5042
  h("div", _r, [
5035
5043
  h("div", {
5036
5044
  class: "progress-bar__bar",
@@ -5040,7 +5048,7 @@ const Yh = /* @__PURE__ */ L(gr, [["render", vr]]), yr = {
5040
5048
  key: 0,
5041
5049
  class: "progress-bar__bar--deficit",
5042
5050
  style: Y({ width: l.value })
5043
- }, null, 4)) : p("", !0)
5051
+ }, null, 4)) : b("", !0)
5044
5052
  ]),
5045
5053
  !e.noValues && !e.amountInHeader && !e.loader && !e.indeterminate ? (u(), f("div", wr, [
5046
5054
  h("div", Sr, [
@@ -5054,14 +5062,14 @@ const Yh = /* @__PURE__ */ L(gr, [["render", vr]]), yr = {
5054
5062
  g(a.$slots, "valueDeficit", { value: e.deficit }, () => [
5055
5063
  T("-" + k(e.formatValue(e.deficit, "deficit")), 1)
5056
5064
  ])
5057
- ])) : p("", !0),
5065
+ ])) : b("", !0),
5058
5066
  h("div", $r, [
5059
5067
  r[3] || (r[3] = h("strong", { class: "hidden-visually" }, "Total:", -1)),
5060
5068
  g(a.$slots, "valueTotal", { value: e.total }, () => [
5061
5069
  T(k(e.formatValue(e.total, "total")), 1)
5062
5070
  ])
5063
5071
  ])
5064
- ])) : p("", !0)
5072
+ ])) : b("", !0)
5065
5073
  ], 2));
5066
5074
  }
5067
5075
  }, Cr = { class: "hidden-visually" }, Tr = { class: "progress-circle__chart" }, Ar = {
@@ -5199,13 +5207,13 @@ const Yh = /* @__PURE__ */ L(gr, [["render", vr]]), yr = {
5199
5207
  g(c.$slots, "value", { value: e.percentage }, () => [
5200
5208
  T(k(e.formatValue(e.percentage)), 1)
5201
5209
  ])
5202
- ])) : p("", !0)
5210
+ ])) : b("", !0)
5203
5211
  ]),
5204
5212
  a.value && !e.noValue ? (u(), f("strong", Ur, [
5205
5213
  g(c.$slots, "value", { value: e.percentage }, () => [
5206
5214
  T(k(e.formatValue(e.percentage)), 1)
5207
5215
  ])
5208
- ])) : p("", !0)
5216
+ ])) : b("", !0)
5209
5217
  ], 2));
5210
5218
  }
5211
5219
  };
@@ -5272,7 +5280,7 @@ function Qh(e, n = {}) {
5272
5280
  } = n, y = (E) => E.sort((F, J) => {
5273
5281
  const P = i(F), z = i(J);
5274
5282
  return P && z ? String(P).localeCompare(String(z)) : P ? -1 : z ? 1 : 0;
5275
- }), b = {
5283
+ }), p = {
5276
5284
  az: { text: "A-Z", sort: y },
5277
5285
  za: { text: "Z-A", sort: (E) => y(E).reverse() }
5278
5286
  };
@@ -5288,7 +5296,7 @@ function Qh(e, n = {}) {
5288
5296
  }));
5289
5297
  }
5290
5298
  const C = O([]), B = O(l), H = O(o), K = _(() => !s || !e.value?.length ? null : Br(e.value, s)), I = _(() => ({
5291
- ...a ? {} : b,
5299
+ ...a ? {} : p,
5292
5300
  ...r
5293
5301
  })), M = _(() => {
5294
5302
  const E = /* @__PURE__ */ new Map(), F = Q.value;
@@ -5538,7 +5546,7 @@ const Er = ["onClick"], Zh = {
5538
5546
  onClick: a,
5539
5547
  class: m(e.classes.clearButton)
5540
5548
  }, "Clear All", 2)
5541
- ], 2)) : p("", !0);
5549
+ ], 2)) : b("", !0);
5542
5550
  }
5543
5551
  }, Rr = { key: 0 }, vt = {
5544
5552
  __name: "UluFacetsList",
@@ -5590,7 +5598,7 @@ const Er = ["onClick"], Zh = {
5590
5598
  }, {
5591
5599
  default: $(({ option: c }) => [
5592
5600
  T(k(c.label) + " ", 1),
5593
- c.count !== void 0 ? (u(), f("span", Rr, "(" + k(c.count) + ")", 1)) : p("", !0)
5601
+ c.count !== void 0 ? (u(), f("span", Rr, "(" + k(c.count) + ")", 1)) : b("", !0)
5594
5602
  ]),
5595
5603
  _: 1
5596
5604
  }, 8, ["legend", "type", "options", "compact", "model-value"]));
@@ -5676,7 +5684,7 @@ const Er = ["onClick"], Zh = {
5676
5684
  }, null, 8, ["children", "groupUid", "groupName", "type", "compact", "model-value"])
5677
5685
  ]),
5678
5686
  _: 2
5679
- }, 1032, ["class"])) : p("", !0)
5687
+ }, 1032, ["class"])) : b("", !0)
5680
5688
  ]),
5681
5689
  _: 2
5682
5690
  }, 1032, ["classes", "startOpen"]))), 128))
@@ -5762,7 +5770,7 @@ const Er = ["onClick"], Zh = {
5762
5770
  }, null, 8, ["children", "groupUid", "groupName", "type", "compact", "model-value"])
5763
5771
  ]),
5764
5772
  _: 2
5765
- }, 1032, ["class", "modifiers"])) : p("", !0)
5773
+ }, 1032, ["class", "modifiers"])) : b("", !0)
5766
5774
  ]),
5767
5775
  _: 2
5768
5776
  }, 1032, ["modifiers", "startOpen"]))), 128))
@@ -6111,13 +6119,13 @@ const Er = ["onClick"], Zh = {
6111
6119
  }, null, 512)
6112
6120
  ]),
6113
6121
  _: 1
6114
- }, 8, ["modelValue"])) : p("", !0),
6122
+ }, 8, ["modelValue"])) : b("", !0),
6115
6123
  o.value ? (u(), w(yt, {
6116
6124
  key: 1,
6117
6125
  to: o.value
6118
6126
  }, [
6119
6127
  g(a.$slots, "sidebar")
6120
- ], 8, ["to"])) : p("", !0)
6128
+ ], 8, ["to"])) : b("", !0)
6121
6129
  ], 2));
6122
6130
  }
6123
6131
  }, Jr = ["for"], Qr = ["value", "id"], Zr = ["value"], im = {
@@ -6209,11 +6217,11 @@ function ei({ sections: e, props: n, emit: t, componentElRef: s }) {
6209
6217
  }
6210
6218
  n.debug && console.groupEnd();
6211
6219
  };
6212
- let b = null;
6213
- n.observerOptions && n.observerOptions.root ? b = n.observerOptions.root : s.value && (b = Qs(s.value), b === document.scrollingElement && (b = null));
6220
+ let p = null;
6221
+ n.observerOptions && n.observerOptions.root ? p = n.observerOptions.root : s.value && (p = Qs(s.value), p === document.scrollingElement && (p = null));
6214
6222
  const A = {
6215
6223
  ...n.observerOptions,
6216
- root: b
6224
+ root: p
6217
6225
  };
6218
6226
  l = new IntersectionObserver(y, A);
6219
6227
  }
@@ -6351,7 +6359,7 @@ const cm = {
6351
6359
  ])
6352
6360
  ]),
6353
6361
  _: 3
6354
- })) : p("", !0);
6362
+ })) : b("", !0);
6355
6363
  }
6356
6364
  }, ni = { class: "scroll-anchors-nav-animated__rail" }, si = ["href"], dm = {
6357
6365
  __name: "UluScrollAnchorsNavAnimated",
@@ -6409,9 +6417,9 @@ const cm = {
6409
6417
  return !1;
6410
6418
  const i = s.value[c];
6411
6419
  if (!i) return !1;
6412
- const { offsetTop: d, offsetHeight: v } = i, y = n.indicatorHeight != null, b = n.indicatorWidth ?? n.railWidth, A = y ? n.indicatorHeight : v;
6420
+ const { offsetTop: d, offsetHeight: v } = i, y = n.indicatorHeight != null, p = n.indicatorWidth ?? n.railWidth, A = y ? n.indicatorHeight : v;
6413
6421
  let C = d;
6414
- return n.indicatorAlignment === "center" && (C = d + v / 2 - A / 2), C += n.indicatorAlignmentOffset, { y: C, height: A, width: b };
6422
+ return n.indicatorAlignment === "center" && (C = d + v / 2 - A / 2), C += n.indicatorAlignmentOffset, { y: C, height: A, width: p };
6415
6423
  });
6416
6424
  te(a, (c) => {
6417
6425
  c && !l.value && Gn(() => {
@@ -6462,7 +6470,7 @@ const cm = {
6462
6470
  }, null, 6)
6463
6471
  ]),
6464
6472
  _: 3
6465
- }, 8, ["style"])) : p("", !0);
6473
+ }, 8, ["style"])) : b("", !0);
6466
6474
  }
6467
6475
  }, fm = {
6468
6476
  __name: "UluScrollAnchorsSection",
@@ -6934,7 +6942,7 @@ function _i(e, n, t, s, l, o) {
6934
6942
  ])
6935
6943
  ])
6936
6944
  ], 512),
6937
- t.noNav ? p("", !0) : (u(), f("ul", yi, [
6945
+ t.noNav ? b("", !0) : (u(), f("ul", yi, [
6938
6946
  (u(!0), f(U, null, R(l.slides, (r, c) => (u(), f("li", {
6939
6947
  class: m(["slideshow__nav-item", { "is-active": r.active }]),
6940
6948
  ref_for: !0,
@@ -7013,7 +7021,7 @@ function Ti(e, n, t, s, l, o) {
7013
7021
  T(" Select ", -1)
7014
7022
  ])]),
7015
7023
  _: 1
7016
- })) : p("", !0)
7024
+ })) : b("", !0)
7017
7025
  ])
7018
7026
  ]),
7019
7027
  nav: $(({ index: c }) => [
@@ -7198,7 +7206,7 @@ function Di(e, n, t, s, l, o) {
7198
7206
  class: m(t.resolveClasses(t.classes.table, { isActual: t.isActual })),
7199
7207
  "aria-hidden": t.isActual ? "false" : "true"
7200
7208
  }, [
7201
- t.caption ? (u(), f("caption", Fi, k(t.caption), 1)) : p("", !0),
7209
+ t.caption ? (u(), f("caption", Fi, k(t.caption), 1)) : b("", !0),
7202
7210
  h("thead", null, [
7203
7211
  (u(!0), f(U, null, R(t.headerRows, (r, c) => (u(), f("tr", {
7204
7212
  key: `hr-${c}`,
@@ -7297,7 +7305,7 @@ function Di(e, n, t, s, l, o) {
7297
7305
  ])
7298
7306
  }))
7299
7307
  ]), 1032, ["rows", "rowColumns", "optionalAttr", "resolveClasses", "getCellHeaders", "isActual", "columnWidth", "classes", "value"])
7300
- ])) : p("", !0),
7308
+ ])) : b("", !0),
7301
7309
  t.footerRows ? (u(), f("tfoot", Wi, [
7302
7310
  x(a, {
7303
7311
  rows: t.footerRows,
@@ -7318,7 +7326,7 @@ function Di(e, n, t, s, l, o) {
7318
7326
  ])
7319
7327
  }))
7320
7328
  ]), 1032, ["rows", "rowColumns", "optionalAttr", "resolveClasses", "getCellHeaders", "isActual", "columnWidth", "classes", "value"])
7321
- ])) : p("", !0)
7329
+ ])) : b("", !0)
7322
7330
  ], 10, ji);
7323
7331
  }
7324
7332
  const qi = /* @__PURE__ */ L(Ii, [["render", Di]]);
@@ -7816,14 +7824,14 @@ function dt(e, n, t, s, l, o) {
7816
7824
  var d = o.get(e);
7817
7825
  if (d)
7818
7826
  return d;
7819
- o.set(e, a), qd(e) ? e.forEach(function(b) {
7820
- a.add(dt(b, n, t, b, e, o));
7821
- }) : Nd(e) && e.forEach(function(b, A) {
7822
- a.set(A, dt(b, n, t, A, e, o));
7827
+ o.set(e, a), qd(e) ? e.forEach(function(p) {
7828
+ a.add(dt(p, n, t, p, e, o));
7829
+ }) : Nd(e) && e.forEach(function(p, A) {
7830
+ a.set(A, dt(p, n, t, A, e, o));
7823
7831
  });
7824
7832
  var v = ld, y = r ? void 0 : v(e);
7825
- return Gc(y || e, function(b, A) {
7826
- y && (A = b, b = e[A]), Qc(a, A, dt(b, n, t, A, e, o));
7833
+ return Gc(y || e, function(p, A) {
7834
+ y && (A = p, p = e[A]), Qc(a, A, dt(p, n, t, A, e, o));
7827
7835
  }), a;
7828
7836
  }
7829
7837
  var yf = 1, pf = 4;
@@ -8302,7 +8310,7 @@ function Uf(e, n, t, s, l, o) {
8302
8310
  g(e.$slots, c, de(ve(i)))
8303
8311
  ])
8304
8312
  }))
8305
- ]), 1032, ["classes", "caption", "resolveClasses", "getColumnTitle", "idPrefix", "headerRows", "style", "onColumnSorted"])) : p("", !0)
8313
+ ]), 1032, ["classes", "caption", "resolveClasses", "getColumnTitle", "idPrefix", "headerRows", "style", "onColumnSorted"])) : b("", !0)
8306
8314
  ]),
8307
8315
  h("div", $f, [
8308
8316
  ze(h("div", {
@@ -8402,7 +8410,7 @@ function Uf(e, n, t, s, l, o) {
8402
8410
  g(e.$slots, c, de(ve(i)))
8403
8411
  ])
8404
8412
  }))
8405
- ]), 1032, ["classes", "resolveClasses", "caption", "headerRows", "columnWidth", "rows", "footerRows", "rowColumns", "idPrefix", "getRowValue", "getColumnTitle", "style", "onColumnSorted"])) : p("", !0)
8413
+ ]), 1032, ["classes", "resolveClasses", "caption", "headerRows", "columnWidth", "rows", "footerRows", "rowColumns", "idPrefix", "getRowValue", "getColumnTitle", "style", "onColumnSorted"])) : b("", !0)
8406
8414
  ], 2);
8407
8415
  }
8408
8416
  const bm = /* @__PURE__ */ L(_f, [["render", Uf]]), _m = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
@@ -1 +1 @@
1
- {"version":3,"file":"UluDataGrid.vue.d.ts","sourceRoot":"","sources":["../../../../lib/components/layout/UluDataGrid.vue"],"names":[],"mappings":"wBAqLqB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;;qBAEpD,CAAC,EAAE,CAAC;;;AARzB;YAGmB,OAAO,CAAC,OAAO,KAAK,CAAC;;;2OAErC;;;;AAnGD;;;EAaG"}
1
+ {"version":3,"file":"UluDataGrid.vue.d.ts","sourceRoot":"","sources":["../../../../lib/components/layout/UluDataGrid.vue"],"names":[],"mappings":"wBA+LqB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;;qBAEpD,CAAC,EAAE,CAAC;;;AARzB;YAGmB,OAAO,CAAC,OAAO,KAAK,CAAC;;;2OAErC;;;;AAxGD;;;EAaG"}
@@ -1 +1 @@
1
- {"version":3,"file":"UluWhenBreakpoint.vue.d.ts","sourceRoot":"","sources":["../../../../lib/components/layout/UluWhenBreakpoint.vue"],"names":[],"mappings":"wBAwNqB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;;qBAEpD,CAAC,EAAE,CAAC;;;AARzB;YAGmB,OAAO,CAAC,OAAO,KAAK,CAAC;;;;2OAErC;;;;AAzHD;;;;EAaG"}
1
+ {"version":3,"file":"UluWhenBreakpoint.vue.d.ts","sourceRoot":"","sources":["../../../../lib/components/layout/UluWhenBreakpoint.vue"],"names":[],"mappings":"wBA4OqB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;;qBAEpD,CAAC,EAAE,CAAC;;;AARzB;YAGmB,OAAO,CAAC,OAAO,KAAK,CAAC;;;;2OAErC;;;;AAnID;;;;EAaG"}
@@ -51,7 +51,11 @@
51
51
  let resizeHandler = null; // To store the debounced resize handler
52
52
 
53
53
  onMounted(async () => {
54
- setThisPositionClasses = () => setPositionClasses(rootElement.value);
54
+ setThisPositionClasses = () => {
55
+ if (rootElement.value) {
56
+ setPositionClasses(rootElement.value);
57
+ }
58
+ };
55
59
  setThisPositionClasses(); // Initial call
56
60
  initialized.value = true;
57
61
  resizeHandler = debounce(setThisPositionClasses, 200, false); // `this` context is not needed in setup
@@ -60,6 +64,7 @@
60
64
 
61
65
  onBeforeUnmount(() => {
62
66
  if (resizeHandler) {
67
+ resizeHandler.cancel();
63
68
  window.removeEventListener("resize", resizeHandler);
64
69
  resizeHandler = null;
65
70
  setThisPositionClasses = null; // Clear the function reference
@@ -58,9 +58,19 @@
58
58
  };
59
59
 
60
60
  const tearDownHandlers = () => {
61
- if (uluBreakpointManager) {
61
+ if (uluBreakpointManager.value) {
62
62
  handlers.value.forEach(({ name, direction, handler }) => {
63
- uluBreakpointManager.at(name).remove(handler, direction);
63
+ const breakpoint = uluBreakpointManager.value.at(name);
64
+ if (breakpoint) {
65
+ try {
66
+ // HACK: The breakpoint.remove method is bugged, this is the correct implementation
67
+ if (breakpoint.directions[direction]) {
68
+ breakpoint.directions[direction].remove(handler);
69
+ }
70
+ } catch (error) {
71
+ console.error(error);
72
+ }
73
+ }
64
74
  });
65
75
  }
66
76
  handlers.value = [];
@@ -77,9 +87,9 @@
77
87
  // Watch all the props and update if they change
78
88
  // - Using array syntax to avoid "deep" flag
79
89
  watch([() => props.max, () => props.min, () => props.only], () => {
80
- if (uluBreakpointManager && handlersSetup.value) {
90
+ if (uluBreakpointManager.value && handlersSetup.value) {
81
91
  tearDownHandlers();
82
- setupHandlers(uluBreakpointManager);
92
+ setupHandlers(uluBreakpointManager.value);
83
93
  }
84
94
  });
85
95
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ulu/frontend-vue",
3
- "version": "0.1.3-beta.17",
3
+ "version": "0.1.3-beta.19",
4
4
  "description": "A modular and tree-shakeable Vue 3 component library for the Ulu frontend",
5
5
  "type": "module",
6
6
  "files": [
@@ -65,7 +65,7 @@
65
65
  },
66
66
  "dependencies": {
67
67
  "@floating-ui/vue": "^1.1.8",
68
- "@ulu/utils": "^0.0.32",
68
+ "@ulu/utils": "^0.0.33",
69
69
  "lodash-es": "^4.17.21"
70
70
  },
71
71
  "devDependencies": {