@ulu/frontend-vue 0.2.0-beta.10 → 0.2.0-beta.12

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.
Files changed (27) hide show
  1. package/dist/components/collapsible/UluAccordionGroup.vue.d.ts +2 -2
  2. package/dist/components/collapsible/UluAccordionGroup.vue.d.ts.map +1 -1
  3. package/dist/components/collapsible/UluAccordionGroup.vue.js +22 -19
  4. package/dist/components/elements/UluBadgeStack.vue.d.ts +1 -1
  5. package/dist/components/elements/UluBadgeStack.vue.d.ts.map +1 -1
  6. package/dist/components/elements/UluBadgeStack.vue.js +12 -9
  7. package/dist/components/elements/UluDefinitionList.vue.d.ts +2 -2
  8. package/dist/components/elements/UluDefinitionList.vue.d.ts.map +1 -1
  9. package/dist/components/elements/UluDefinitionList.vue.js +8 -7
  10. package/dist/components/elements/UluList.vue.d.ts.map +1 -1
  11. package/dist/components/elements/UluList.vue.js +14 -13
  12. package/dist/components/navigation/UluMenu.vue.d.ts.map +1 -1
  13. package/dist/components/navigation/UluMenuStack.vue.d.ts.map +1 -1
  14. package/dist/components/navigation/UluMenuStack.vue.js +17 -16
  15. package/dist/components/navigation/UluNavStrip.vue.d.ts.map +1 -1
  16. package/dist/components/navigation/UluNavStrip.vue.js +9 -8
  17. package/dist/components/utils/UluRouteAnnouncer.vue.d.ts +1 -1
  18. package/dist/components/utils/UluRouteAnnouncer.vue.js +12 -11
  19. package/lib/components/collapsible/UluAccordionGroup.vue +4 -1
  20. package/lib/components/elements/UluBadgeStack.vue +4 -1
  21. package/lib/components/elements/UluDefinitionList.vue +5 -1
  22. package/lib/components/elements/UluList.vue +1 -0
  23. package/lib/components/navigation/UluMenu.vue +4 -1
  24. package/lib/components/navigation/UluMenuStack.vue +1 -0
  25. package/lib/components/navigation/UluNavStrip.vue +1 -0
  26. package/lib/components/utils/UluRouteAnnouncer.vue +3 -2
  27. package/package.json +3 -2
@@ -14,7 +14,7 @@ declare const __VLS_component: import('vue').DefineComponent<{}, {
14
14
  readonly items?: unknown[] | undefined;
15
15
  readonly modifiers?: string | unknown[] | undefined;
16
16
  };
17
- }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
17
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
18
18
  type __VLS_TemplateResult = {
19
19
  attrs: Partial<{}>;
20
20
  slots: {
@@ -36,6 +36,6 @@ type __VLS_TemplateResult = {
36
36
  }): any;
37
37
  };
38
38
  refs: {};
39
- rootEl: HTMLDivElement;
39
+ rootEl: any;
40
40
  };
41
41
  //# sourceMappingURL=UluAccordionGroup.vue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UluAccordionGroup.vue.d.ts","sourceRoot":"","sources":["../../../lib/components/collapsible/UluAccordionGroup.vue"],"names":[],"mappings":"AA6BA;wBA8QqB,uBAAuB,CAAC,OAAO,eAAe,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;;6BAEtE,CAAC,EAAE,CAAC;;;AAXjC;;;;;;;;;;;sPAQG"}
1
+ {"version":3,"file":"UluAccordionGroup.vue.d.ts","sourceRoot":"","sources":["../../../lib/components/collapsible/UluAccordionGroup.vue"],"names":[],"mappings":"AAgCA;wBAkRqB,uBAAuB,CAAC,OAAO,eAAe,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;;6BAEtE,CAAC,EAAE,CAAC;;;AAVjC;;;;;;;;;;;2OAOG"}
@@ -1,6 +1,9 @@
1
- import { ref as f, watch as p, createElementBlock as g, openBlock as o, Fragment as y, renderList as O, createBlock as v, createSlots as h, withCtx as l, renderSlot as m, createTextVNode as k, toDisplayString as $ } from "vue";
2
- import S from "./UluAccordion.vue.js";
3
- const B = { class: "accordion-group" }, x = {
1
+ import { ref as f, watch as p, createElementBlock as g, createCommentVNode as y, openBlock as s, Fragment as O, renderList as h, createBlock as k, createSlots as v, withCtx as l, renderSlot as m, createTextVNode as $, toDisplayString as S } from "vue";
2
+ import B from "./UluAccordion.vue.js";
3
+ const E = {
4
+ key: 0,
5
+ class: "accordion-group"
6
+ }, x = {
4
7
  __name: "UluAccordionGroup",
5
8
  props: {
6
9
  /**
@@ -33,30 +36,30 @@ const B = { class: "accordion-group" }, x = {
33
36
  default: !0
34
37
  }
35
38
  },
36
- setup(i) {
37
- const u = i, s = f([]);
39
+ setup(a) {
40
+ const u = a, o = f([]);
38
41
  p(() => u.items, (e) => {
39
- s.value = e.map((a) => ({
40
- ...a,
41
- isOpen: a.isOpen || !1
42
+ o.value = e.map((i) => ({
43
+ ...i,
44
+ isOpen: i.isOpen || !1
42
45
  }));
43
46
  }, { immediate: !0, deep: !0 });
44
- function c(e, a) {
45
- a ? s.value.forEach((t, r) => {
47
+ function c(e, i) {
48
+ i ? o.value.forEach((t, r) => {
46
49
  t.isOpen = r === e;
47
- }) : s.value[e].isOpen = !1;
50
+ }) : o.value[e].isOpen = !1;
48
51
  }
49
- return (e, a) => (o(), g("div", B, [
50
- (o(!0), g(y, null, O(s.value, (t, r) => (o(), v(S, {
52
+ return (e, i) => a.items?.length ? (s(), g("div", E, [
53
+ (s(!0), g(O, null, h(o.value, (t, r) => (s(), k(B, {
51
54
  key: r,
52
55
  "model-value": t.isOpen,
53
56
  "onUpdate:modelValue": (n) => c(r, n),
54
57
  "trigger-text": t.title,
55
58
  classes: t.classes,
56
- "trigger-text-element": i.triggerTextElement,
57
- modifiers: i.modifiers,
58
- animate: i.animate
59
- }, h({
59
+ "trigger-text-element": a.triggerTextElement,
60
+ modifiers: a.modifiers,
61
+ animate: a.animate
62
+ }, v({
60
63
  default: l(({ isOpen: n, toggle: d }) => [
61
64
  m(e.$slots, "item", {
62
65
  item: t,
@@ -64,7 +67,7 @@ const B = { class: "accordion-group" }, x = {
64
67
  isOpen: n,
65
68
  toggle: d
66
69
  }, () => [
67
- k($(t.content), 1)
70
+ $(S(t.content), 1)
68
71
  ])
69
72
  ]),
70
73
  _: 2
@@ -92,7 +95,7 @@ const B = { class: "accordion-group" }, x = {
92
95
  key: "1"
93
96
  } : void 0
94
97
  ]), 1032, ["model-value", "onUpdate:modelValue", "trigger-text", "classes", "trigger-text-element", "modifiers", "animate"]))), 128))
95
- ]));
98
+ ])) : y("", !0);
96
99
  }
97
100
  };
98
101
  export {
@@ -3,6 +3,6 @@ declare const _default: import('vue').DefineComponent<{}, {
3
3
  $props: {
4
4
  readonly items?: unknown[] | undefined;
5
5
  };
6
- }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLUListElement>;
6
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
7
7
  export default _default;
8
8
  //# sourceMappingURL=UluBadgeStack.vue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UluBadgeStack.vue.d.ts","sourceRoot":"","sources":["../../../lib/components/elements/UluBadgeStack.vue"],"names":[],"mappings":"AAWA;"}
1
+ {"version":3,"file":"UluBadgeStack.vue.d.ts","sourceRoot":"","sources":["../../../lib/components/elements/UluBadgeStack.vue"],"names":[],"mappings":"AAcA;"}
@@ -1,6 +1,9 @@
1
- import { createElementBlock as e, openBlock as r, Fragment as c, renderList as o, createVNode as n, mergeProps as l } from "vue";
2
- import m from "./UluBadge.vue.js";
3
- const _ = { class: "badge-stack" }, f = {
1
+ import { createElementBlock as e, createCommentVNode as c, openBlock as t, Fragment as m, renderList as n, createVNode as o, mergeProps as l } from "vue";
2
+ import u from "./UluBadge.vue.js";
3
+ const i = {
4
+ key: 0,
5
+ class: "badge-stack"
6
+ }, g = {
4
7
  __name: "UluBadgeStack",
5
8
  props: {
6
9
  /**
@@ -8,17 +11,17 @@ const _ = { class: "badge-stack" }, f = {
8
11
  */
9
12
  items: Array
10
13
  },
11
- setup(t) {
12
- return (u, i) => (r(), e("ul", _, [
13
- (r(!0), e(c, null, o(t.items, (a, s) => (r(), e("li", {
14
+ setup(r) {
15
+ return (_, d) => r.items?.length ? (t(), e("ul", i, [
16
+ (t(!0), e(m, null, n(r.items, (a, s) => (t(), e("li", {
14
17
  class: "badge-stack__item",
15
18
  key: s
16
19
  }, [
17
- n(m, l({ ref_for: !0 }, a), null, 16)
20
+ o(u, l({ ref_for: !0 }, a), null, 16)
18
21
  ]))), 128))
19
- ]));
22
+ ])) : c("", !0);
20
23
  }
21
24
  };
22
25
  export {
23
- f as default
26
+ g as default
24
27
  };
@@ -26,7 +26,7 @@ declare const __VLS_component: import('vue').DefineComponent<{}, {
26
26
  readonly modifiers?: string | unknown[] | undefined;
27
27
  readonly items?: unknown[] | undefined;
28
28
  };
29
- }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDListElement>;
29
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
30
30
  type __VLS_TemplateResult = {
31
31
  attrs: Partial<{}>;
32
32
  slots: {
@@ -40,6 +40,6 @@ type __VLS_TemplateResult = {
40
40
  }): any;
41
41
  };
42
42
  refs: {};
43
- rootEl: HTMLDListElement;
43
+ rootEl: any;
44
44
  };
45
45
  //# sourceMappingURL=UluDefinitionList.vue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UluDefinitionList.vue.d.ts","sourceRoot":"","sources":["../../../lib/components/elements/UluDefinitionList.vue"],"names":[],"mappings":"AAqBA;wBAqOqB,uBAAuB,CAAC,OAAO,eAAe,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;;6BAEtE,CAAC,EAAE,CAAC;;;AAXjC;;;;;;;;;;;;;;;;;;;;;;;wPAQG"}
1
+ {"version":3,"file":"UluDefinitionList.vue.d.ts","sourceRoot":"","sources":["../../../lib/components/elements/UluDefinitionList.vue"],"names":[],"mappings":"AAyBA;wBA0OqB,uBAAuB,CAAC,OAAO,eAAe,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;;6BAEtE,CAAC,EAAE,CAAC;;;AAVjC;;;;;;;;;;;;;;;;;;;;;;;2OAOG"}
@@ -1,5 +1,5 @@
1
- import { computed as u, createElementBlock as l, openBlock as n, normalizeClass as a, unref as B, Fragment as b, renderList as y, createElementVNode as o, renderSlot as c, createTextVNode as d, toDisplayString as m } from "vue";
2
- import { useModifiers as A } from "../../composables/useModifiers.js";
1
+ import { computed as u, createElementBlock as l, createCommentVNode as B, openBlock as n, normalizeClass as a, unref as y, Fragment as b, renderList as g, createElementVNode as o, renderSlot as c, createTextVNode as d, toDisplayString as m } from "vue";
2
+ import { useModifiers as k } from "../../composables/useModifiers.js";
3
3
  const F = {
4
4
  __name: "UluDefinitionList",
5
5
  props: {
@@ -57,15 +57,16 @@ const F = {
57
57
  "separated-first": e.separatedFirst,
58
58
  "separated-last": e.separatedLast,
59
59
  compact: e.compact
60
- })), { resolvedModifiers: f } = A({
60
+ })), { resolvedModifiers: f } = k({
61
61
  props: e,
62
62
  internal: p,
63
63
  baseClass: "definition-list"
64
64
  });
65
- return (r, L) => (n(), l("dl", {
66
- class: a(["definition-list", [B(f), t.classes.list]])
65
+ return (r, A) => t.items?.length ? (n(), l("dl", {
66
+ key: 0,
67
+ class: a(["definition-list", [y(f), t.classes.list]])
67
68
  }, [
68
- (n(!0), l(b, null, y(t.items, (s, i) => (n(), l("div", {
69
+ (n(!0), l(b, null, g(t.items, (s, i) => (n(), l("div", {
69
70
  key: i,
70
71
  class: a(t.classes.item)
71
72
  }, [
@@ -90,7 +91,7 @@ const F = {
90
91
  ])
91
92
  ], 2)
92
93
  ], 2))), 128))
93
- ], 2));
94
+ ], 2)) : B("", !0);
94
95
  }
95
96
  };
96
97
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"UluList.vue.d.ts","sourceRoot":"","sources":["../../../lib/components/elements/UluList.vue"],"names":[],"mappings":"AA6BA;wBA0OqB,uBAAuB,CAAC,OAAO,eAAe,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;;6BAEtE,CAAC,EAAE,CAAC;;;AAXjC;;;;;;;;;;;;;;;;;;;;;;;2OAQG"}
1
+ {"version":3,"file":"UluList.vue.d.ts","sourceRoot":"","sources":["../../../lib/components/elements/UluList.vue"],"names":[],"mappings":"AA8BA;wBA2OqB,uBAAuB,CAAC,OAAO,eAAe,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;;6BAEtE,CAAC,EAAE,CAAC;;;AAVjC;;;;;;;;;;;;;;;;;;;;;;;2OAOG"}
@@ -1,5 +1,5 @@
1
- import { computed as o, createBlock as u, openBlock as t, resolveDynamicComponent as m, normalizeStyle as y, normalizeClass as n, withCtx as B, createElementBlock as d, Fragment as f, renderList as v, renderSlot as S, createTextVNode as g, toDisplayString as k } from "vue";
2
- const x = {
1
+ import { computed as n, createBlock as m, createCommentVNode as u, openBlock as t, resolveDynamicComponent as y, normalizeStyle as B, normalizeClass as o, withCtx as f, createElementBlock as d, Fragment as v, renderList as S, renderSlot as g, createTextVNode as k, toDisplayString as C } from "vue";
2
+ const h = {
3
3
  __name: "UluList",
4
4
  props: {
5
5
  /**
@@ -49,9 +49,10 @@ const x = {
49
49
  listStyleType: String
50
50
  },
51
51
  setup(e) {
52
- const l = e, r = o(() => l.ordered || l.forceOrdered), c = o(() => r.value ? "ol" : "ul");
53
- return (i, O) => (t(), u(m(c.value), {
54
- class: n([
52
+ const l = e, r = n(() => l.ordered || l.forceOrdered), c = n(() => r.value ? "ol" : "ul");
53
+ return (i, O) => e.items?.length ? (t(), m(y(c.value), {
54
+ key: 0,
55
+ class: o([
55
56
  {
56
57
  "list-ordered": e.ordered,
57
58
  "list-unordered": e.unordered,
@@ -60,29 +61,29 @@ const x = {
60
61
  },
61
62
  e.classes.list
62
63
  ]),
63
- style: y({
64
+ style: B({
64
65
  listStyleType: e.listStyleType
65
66
  }),
66
67
  reversed: r.value ? e.reversed : null,
67
68
  start: e.start
68
69
  }, {
69
- default: B(() => [
70
- (t(!0), d(f, null, v(e.items, (s, a) => (t(), d("li", {
70
+ default: f(() => [
71
+ (t(!0), d(v, null, S(e.items, (s, a) => (t(), d("li", {
71
72
  key: a,
72
- class: n(e.classes.listItem)
73
+ class: o(e.classes.listItem)
73
74
  }, [
74
- S(i.$slots, "default", {
75
+ g(i.$slots, "default", {
75
76
  item: s,
76
77
  index: a
77
78
  }, () => [
78
- g(k(s), 1)
79
+ k(C(s), 1)
79
80
  ])
80
81
  ], 2))), 128))
81
82
  ]),
82
83
  _: 3
83
- }, 8, ["class", "style", "reversed", "start"]));
84
+ }, 8, ["class", "style", "reversed", "start"])) : u("", !0);
84
85
  }
85
86
  };
86
87
  export {
87
- x as default
88
+ h as default
88
89
  };
@@ -1 +1 @@
1
- {"version":3,"file":"UluMenu.vue.d.ts","sourceRoot":"","sources":["../../../lib/components/navigation/UluMenu.vue"],"names":[],"mappings":"AAmDA;;IAoIM;;;;;;;;;;;OAWG;;IAEH;;;OAGG;;;;;IAKH;;OAEG;;IAEH;;OAEG;;;;;IA3BH;;;;;;;;;;;OAWG;;IAEH;;;OAGG;;;;;IAKH;;OAEG;;IAEH;;OAEG"}
1
+ {"version":3,"file":"UluMenu.vue.d.ts","sourceRoot":"","sources":["../../../lib/components/navigation/UluMenu.vue"],"names":[],"mappings":"AAsDA;;IAuIM;;;;;;;;;;;OAWG;;IAEH;;;OAGG;;;;;IAKH;;OAEG;;IAEH;;OAEG;;;;;IA3BH;;;;;;;;;;;OAWG;;IAEH;;;OAGG;;;;;IAKH;;OAEG;;IAEH;;OAEG"}
@@ -1 +1 @@
1
- {"version":3,"file":"UluMenuStack.vue.d.ts","sourceRoot":"","sources":["../../../lib/components/navigation/UluMenuStack.vue"],"names":[],"mappings":"AAqBA;"}
1
+ {"version":3,"file":"UluMenuStack.vue.d.ts","sourceRoot":"","sources":["../../../lib/components/navigation/UluMenuStack.vue"],"names":[],"mappings":"AAsBA;"}
@@ -1,7 +1,7 @@
1
- import { computed as i, createBlock as o, openBlock as r, resolveDynamicComponent as s, normalizeClass as c, unref as m, withCtx as l, createVNode as u } from "vue";
2
- import k from "./UluMenu.vue.js";
3
- import { useModifiers as f } from "../../composables/useModifiers.js";
4
- const C = {
1
+ import { computed as i, createBlock as o, createCommentVNode as r, openBlock as s, resolveDynamicComponent as m, normalizeClass as c, unref as l, withCtx as u, createVNode as k } from "vue";
2
+ import f from "./UluMenu.vue.js";
3
+ import { useModifiers as d } from "../../composables/useModifiers.js";
4
+ const B = {
5
5
  __name: "UluMenuStack",
6
6
  props: {
7
7
  /**
@@ -33,19 +33,20 @@ const C = {
33
33
  modifiers: [String, Array]
34
34
  },
35
35
  setup(e) {
36
- const n = e, t = i(() => ({
37
- hanging: n.hanging,
38
- compact: n.compact
39
- })), { resolvedModifiers: a } = f({
40
- props: n,
41
- internal: t,
36
+ const t = e, n = i(() => ({
37
+ hanging: t.hanging,
38
+ compact: t.compact
39
+ })), { resolvedModifiers: a } = d({
40
+ props: t,
41
+ internal: n,
42
42
  baseClass: "menu-stack"
43
43
  });
44
- return (_, d) => (r(), o(s(e.containerElement), {
45
- class: c(["menu-stack", m(a)])
44
+ return (_, p) => e.items?.length ? (s(), o(m(e.containerElement), {
45
+ key: 0,
46
+ class: c(["menu-stack", l(a)])
46
47
  }, {
47
- default: l(() => [
48
- u(k, {
48
+ default: u(() => [
49
+ k(f, {
49
50
  items: e.items,
50
51
  classes: {
51
52
  list: "menu-stack__list",
@@ -60,9 +61,9 @@ const C = {
60
61
  }, null, 8, ["items", "noChildren"])
61
62
  ]),
62
63
  _: 1
63
- }, 8, ["class"]));
64
+ }, 8, ["class"])) : r("", !0);
64
65
  }
65
66
  };
66
67
  export {
67
- C as default
68
+ B as default
68
69
  };
@@ -1 +1 @@
1
- {"version":3,"file":"UluNavStrip.vue.d.ts","sourceRoot":"","sources":["../../../lib/components/navigation/UluNavStrip.vue"],"names":[],"mappings":"AAoBA;;IAwDM;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;;IAdH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG"}
1
+ {"version":3,"file":"UluNavStrip.vue.d.ts","sourceRoot":"","sources":["../../../lib/components/navigation/UluNavStrip.vue"],"names":[],"mappings":"AAqBA;;IAyDM;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;;IAdH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG"}
@@ -1,7 +1,7 @@
1
1
  import n from "./UluMenu.vue.js";
2
- import { resolveComponent as r, createElementBlock as i, openBlock as o, normalizeClass as s, createVNode as a } from "vue";
3
- import l from "../../_virtual/_plugin-vue_export-helper.js";
4
- const c = {
2
+ import { resolveComponent as r, createElementBlock as i, createCommentVNode as o, openBlock as a, normalizeClass as s, createVNode as l } from "vue";
3
+ import c from "../../_virtual/_plugin-vue_export-helper.js";
4
+ const m = {
5
5
  name: "UluNavStrip",
6
6
  components: {
7
7
  UluMenu: n
@@ -25,16 +25,17 @@ const c = {
25
25
  rule: Boolean
26
26
  }
27
27
  };
28
- function m(p, u, e, _, v, f) {
28
+ function u(_, p, e, v, f, d) {
29
29
  const t = r("UluMenu");
30
- return o(), i("nav", {
30
+ return e.items?.length ? (a(), i("nav", {
31
+ key: 0,
31
32
  class: s(["nav-strip", {
32
33
  "nav-strip--rule": e.rule,
33
34
  "nav-strip--center": e.center,
34
35
  "nav-strip--right": e.right
35
36
  }])
36
37
  }, [
37
- a(t, {
38
+ l(t, {
38
39
  items: e.items,
39
40
  classes: {
40
41
  list: "nav-strip__list",
@@ -43,9 +44,9 @@ function m(p, u, e, _, v, f) {
43
44
  linkExactActive: "is-active"
44
45
  }
45
46
  }, null, 8, ["items"])
46
- ], 2);
47
+ ], 2)) : o("", !0);
47
48
  }
48
- const U = /* @__PURE__ */ l(c, [["render", m]]);
49
+ const U = /* @__PURE__ */ c(m, [["render", u]]);
49
50
  export {
50
51
  U as default
51
52
  };
@@ -1,7 +1,7 @@
1
1
  declare const _default: import('vue').DefineComponent<{}, {
2
2
  validator: Function;
3
3
  exclude: unknown[];
4
- getTitle?: Function | undefined;
4
+ getTitle: Function;
5
5
  $props: {
6
6
  readonly validator?: Function | undefined;
7
7
  readonly exclude?: unknown[] | undefined;
@@ -1,6 +1,7 @@
1
- import { ref as i, computed as d, watch as f, nextTick as p, createElementBlock as m, createCommentVNode as h, openBlock as y, toDisplayString as v } from "vue";
1
+ import { ref as s, computed as f, watch as d, nextTick as p, createElementBlock as m, createCommentVNode as h, openBlock as y, toDisplayString as v } from "vue";
2
2
  import { useRoute as _ } from "vue-router";
3
- const x = {
3
+ import { getRouteTitle as g } from "../../utils/router.js";
4
+ const A = {
4
5
  __name: "UluRouteAnnouncer",
5
6
  props: {
6
7
  /**
@@ -27,24 +28,24 @@ const x = {
27
28
  */
28
29
  getTitle: {
29
30
  type: Function,
30
- default: (r) => r.meta?.title
31
+ default: (r) => g(r)
31
32
  }
32
33
  },
33
34
  setup(r) {
34
- const o = r, t = _(), u = i(null), l = d(() => {
35
+ const n = r, t = _(), u = s(null), l = f(() => {
35
36
  if (!t) return "";
36
- const e = o.getTitle(t);
37
+ const e = n.getTitle(t);
37
38
  return e || console.warn("RouteAnnouncer: No page title!"), e;
38
39
  });
39
- return t ? f(
40
+ return t ? d(
40
41
  () => t.path,
41
- async (e, s) => {
42
+ async (e, a) => {
42
43
  if (t.hash)
43
44
  return;
44
- const a = o.validator(e, s, t), c = o.exclude.some((n) => n.endsWith("*") ? e.startsWith(n.slice(0, n.length - 1)) : e === n);
45
- a && !c && (await p(), u.value?.focus());
45
+ const c = n.validator(e, a, t), i = n.exclude.some((o) => o.endsWith("*") ? e.startsWith(o.slice(0, o.length - 1)) : e === o);
46
+ c && !i && (await p(), u.value?.focus());
46
47
  }
47
- ) : console.error("RouteAnnouncer: No route instance found. Ensure vue-router is installed."), (e, s) => l.value ? (y(), m("p", {
48
+ ) : console.error("RouteAnnouncer: No route found (install vue-router)."), (e, a) => l.value ? (y(), m("p", {
48
49
  key: 0,
49
50
  tabindex: "-1",
50
51
  class: "hidden-visually",
@@ -54,5 +55,5 @@ const x = {
54
55
  }
55
56
  };
56
57
  export {
57
- x as default
58
+ A as default
58
59
  };
@@ -1,5 +1,8 @@
1
1
  <template>
2
- <div class="accordion-group">
2
+ <div
3
+ v-if="items?.length"
4
+ class="accordion-group"
5
+ >
3
6
  <UluAccordion
4
7
  v-for="(item, index) in internalItems"
5
8
  :key="index"
@@ -1,5 +1,8 @@
1
1
  <template>
2
- <ul class="badge-stack">
2
+ <ul
3
+ v-if="items?.length"
4
+ class="badge-stack"
5
+ >
3
6
  <li
4
7
  class="badge-stack__item"
5
8
  v-for="(item, index) in items"
@@ -1,5 +1,9 @@
1
1
  <template>
2
- <dl class="definition-list" :class="[resolvedModifiers, classes.list]">
2
+ <dl
3
+ v-if="items?.length"
4
+ class="definition-list"
5
+ :class="[resolvedModifiers, classes.list]"
6
+ >
3
7
  <div
4
8
  v-for="(item, index) in items"
5
9
  :key="index"
@@ -1,5 +1,6 @@
1
1
  <template>
2
2
  <component
3
+ v-if="items?.length"
3
4
  :is="listElement"
4
5
  :class="[
5
6
  {
@@ -1,5 +1,8 @@
1
1
  <template>
2
- <ul v-if="items?.length" :class="classes.list">
2
+ <ul
3
+ v-if="items?.length"
4
+ :class="classes.list"
5
+ >
3
6
  <li
4
7
  v-for="(item, index) in items"
5
8
  :key="index"
@@ -1,5 +1,6 @@
1
1
  <template>
2
2
  <component
3
+ v-if="items?.length"
3
4
  class="menu-stack"
4
5
  :is="containerElement"
5
6
  :class="resolvedModifiers"
@@ -1,5 +1,6 @@
1
1
  <template>
2
2
  <nav
3
+ v-if="items?.length"
3
4
  class="nav-strip"
4
5
  :class="{
5
6
  'nav-strip--rule' : rule,
@@ -23,6 +23,7 @@
23
23
  <script setup>
24
24
  import { ref, computed, watch, nextTick } from 'vue';
25
25
  import { useRoute } from 'vue-router';
26
+ import { getRouteTitle } from '../../utils/router.js';
26
27
 
27
28
  const props = defineProps({
28
29
  /**
@@ -49,7 +50,7 @@
49
50
  */
50
51
  getTitle: {
51
52
  type: Function,
52
- default: (route) => route.meta?.title
53
+ default: (route) => getRouteTitle(route)
53
54
  }
54
55
  });
55
56
 
@@ -89,6 +90,6 @@
89
90
  }
90
91
  );
91
92
  } else {
92
- console.error("RouteAnnouncer: No route instance found. Ensure vue-router is installed.");
93
+ console.error("RouteAnnouncer: No route found (install vue-router).");
93
94
  }
94
95
  </script>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ulu/frontend-vue",
3
- "version": "0.2.0-beta.10",
3
+ "version": "0.2.0-beta.12",
4
4
  "description": "A modular and tree-shakeable Vue 3 component library for the Ulu frontend",
5
5
  "type": "module",
6
6
  "files": [
@@ -45,7 +45,8 @@
45
45
  "design-system",
46
46
  "ulu",
47
47
  "frontend",
48
- "scss"
48
+ "scss",
49
+ "theme"
49
50
  ],
50
51
  "author": "Joseph Scherben <jscherbe@gmail.com>",
51
52
  "license": "MIT",