@volverjs/ui-vue 0.0.2 → 0.0.3-beta.3

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 (171) hide show
  1. package/auto-imports.d.ts +289 -0
  2. package/dist/components/VvAccordion/VvAccordion.es.js +63 -131
  3. package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
  4. package/dist/components/VvAccordion/VvAccordion.vue.d.ts +2 -2
  5. package/dist/components/VvAccordion/index.d.ts +2 -2
  6. package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +97 -176
  7. package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
  8. package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +4 -4
  9. package/dist/components/VvAccordionGroup/index.d.ts +2 -2
  10. package/dist/components/VvBadge/VvBadge.es.js +16 -50
  11. package/dist/components/VvBadge/VvBadge.umd.js +1 -1
  12. package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +38 -45
  13. package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
  14. package/dist/components/VvButton/VvButton.es.js +170 -306
  15. package/dist/components/VvButton/VvButton.umd.js +1 -1
  16. package/dist/components/VvButton/VvButton.vue.d.ts +4 -4
  17. package/dist/components/VvButton/index.d.ts +3 -3
  18. package/dist/components/VvButtonGroup/VvButtonGroup.es.js +39 -84
  19. package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
  20. package/dist/components/VvCard/VvCard.es.js +26 -60
  21. package/dist/components/VvCard/VvCard.umd.js +1 -1
  22. package/dist/components/VvCard/VvCard.vue.d.ts +2 -2
  23. package/dist/components/VvCard/index.d.ts +1 -1
  24. package/dist/components/VvCheckbox/VvCheckbox.es.js +144 -282
  25. package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -1
  26. package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +6 -6
  27. package/dist/components/VvCheckbox/index.d.ts +10 -4
  28. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +190 -346
  29. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -1
  30. package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +7 -7
  31. package/dist/components/VvCheckboxGroup/index.d.ts +3 -3
  32. package/dist/components/VvCombobox/VvCombobox.es.js +330 -487
  33. package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
  34. package/dist/components/VvCombobox/VvCombobox.vue.d.ts +8 -8
  35. package/dist/components/VvCombobox/index.d.ts +4 -4
  36. package/dist/components/VvDialog/VvDialog.es.js +66 -102
  37. package/dist/components/VvDialog/VvDialog.umd.js +1 -1
  38. package/dist/components/VvDropdown/VvDropdown.es.js +61 -185
  39. package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
  40. package/dist/components/VvDropdown/VvDropdown.vue.d.ts +2 -2
  41. package/dist/components/VvDropdown/index.d.ts +1 -1
  42. package/dist/components/VvIcon/VvIcon.es.js +30 -65
  43. package/dist/components/VvIcon/VvIcon.umd.js +1 -1
  44. package/dist/components/VvInputText/VvInputText.es.js +304 -407
  45. package/dist/components/VvInputText/VvInputText.umd.js +1 -1
  46. package/dist/components/VvInputText/VvInputText.vue.d.ts +10 -10
  47. package/dist/components/VvInputText/VvInputTextActions.d.ts +1 -1
  48. package/dist/components/VvInputText/index.d.ts +5 -5
  49. package/dist/components/VvProgress/VvProgress.es.js +17 -51
  50. package/dist/components/VvProgress/VvProgress.umd.js +1 -1
  51. package/dist/components/VvRadio/VvRadio.es.js +110 -249
  52. package/dist/components/VvRadio/VvRadio.umd.js +1 -1
  53. package/dist/components/VvRadio/VvRadio.vue.d.ts +6 -6
  54. package/dist/components/VvRadio/index.d.ts +3 -3
  55. package/dist/components/VvRadioGroup/VvRadioGroup.es.js +161 -318
  56. package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -1
  57. package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +7 -7
  58. package/dist/components/VvRadioGroup/index.d.ts +3 -3
  59. package/dist/components/VvSelect/VvSelect.es.js +200 -292
  60. package/dist/components/VvSelect/VvSelect.umd.js +1 -1
  61. package/dist/components/VvSelect/VvSelect.vue.d.ts +8 -8
  62. package/dist/components/VvSelect/index.d.ts +4 -4
  63. package/dist/components/VvTextarea/VvTextarea.es.js +196 -299
  64. package/dist/components/VvTextarea/VvTextarea.umd.js +1 -1
  65. package/dist/components/VvTextarea/VvTextarea.vue.d.ts +6 -6
  66. package/dist/components/VvTextarea/index.d.ts +3 -3
  67. package/dist/components/VvTooltip/VvTooltip.es.js +28 -0
  68. package/dist/components/VvTooltip/VvTooltip.umd.js +1 -0
  69. package/dist/components/VvTooltip/VvTooltip.vue.d.ts +23 -0
  70. package/dist/components/VvTooltip/index.d.ts +18 -0
  71. package/dist/components/common/HintSlot.d.ts +1 -1
  72. package/dist/components/index.es.js +1179 -1371
  73. package/dist/components/index.umd.js +1 -1
  74. package/dist/composables/group/useInjectedGroupState.d.ts +1 -1
  75. package/dist/composables/useComponentFocus.d.ts +1 -1
  76. package/dist/composables/useComponentIcons.d.ts +1 -1
  77. package/dist/composables/useDebouncedInput.d.ts +1 -1
  78. package/dist/composables/useModifiers.d.ts +1 -1
  79. package/dist/composables/useTextCount.d.ts +1 -1
  80. package/dist/icons.es.js +3 -3
  81. package/dist/icons.umd.js +1 -1
  82. package/dist/index.es.js +1211 -1404
  83. package/dist/index.umd.js +1 -1
  84. package/dist/props/index.d.ts +12 -12
  85. package/dist/stories/Tooltip/Tooltip.settings.d.ts +42 -0
  86. package/dist/stories/Tooltip/Tooltip.test.d.ts +2 -0
  87. package/dist/utils/ObjectUtilities.d.ts +1 -1
  88. package/package.json +27 -20
  89. package/src/assets/icons/detailed.json +1 -1
  90. package/src/assets/icons/normal.json +1 -1
  91. package/src/assets/icons/simple.json +1 -1
  92. package/src/components/VvAccordion/VvAccordion.vue +0 -3
  93. package/src/components/VvAccordion/index.ts +1 -2
  94. package/src/components/VvAccordionGroup/VvAccordionGroup.vue +1 -3
  95. package/src/components/VvBadge/VvBadge.vue +0 -1
  96. package/src/components/VvButton/VvButton.vue +0 -3
  97. package/src/components/VvButton/index.ts +2 -10
  98. package/src/components/VvButtonGroup/VvButtonGroup.vue +0 -3
  99. package/src/components/VvCard/VvCard.vue +0 -1
  100. package/src/components/VvCheckbox/VvCheckbox.vue +0 -3
  101. package/src/components/VvCheckbox/index.ts +1 -2
  102. package/src/components/VvCheckboxGroup/VvCheckboxGroup.vue +0 -5
  103. package/src/components/VvCombobox/VvCombobox.vue +0 -7
  104. package/src/components/VvDialog/VvDialog.vue +1 -2
  105. package/src/components/VvDropdown/VvDropdown.vue +0 -4
  106. package/src/components/VvIcon/VvIcon.vue +0 -2
  107. package/src/components/VvInputText/VvInputClearAction.ts +0 -1
  108. package/src/components/VvInputText/VvInputPasswordAction.ts +0 -1
  109. package/src/components/VvInputText/VvInputStepAction.ts +0 -1
  110. package/src/components/VvInputText/VvInputText.vue +1 -16
  111. package/src/components/VvInputText/VvInputTextActions.ts +1 -1
  112. package/src/components/VvProgress/VvProgress.vue +0 -2
  113. package/src/components/VvRadio/VvRadio.vue +0 -3
  114. package/src/components/VvRadio/index.ts +0 -1
  115. package/src/components/VvRadioGroup/VvRadioGroup.vue +0 -5
  116. package/src/components/VvSelect/VvSelect.vue +1 -14
  117. package/src/components/VvTextarea/VvTextarea.vue +1 -15
  118. package/src/components/VvTooltip/VvTooltip.vue +17 -0
  119. package/src/components/VvTooltip/index.ts +21 -0
  120. package/src/components/common/HintSlot.ts +1 -11
  121. package/src/composables/group/types/IAccordionGroupState.ts +0 -1
  122. package/src/composables/group/types/IButtonGroupState.ts +0 -1
  123. package/src/composables/group/types/IInputGroup.ts +0 -1
  124. package/src/composables/group/useInjectedGroupState.ts +1 -2
  125. package/src/composables/group/useProvideGroupState.ts +0 -1
  126. package/src/composables/useComponentFocus.ts +1 -2
  127. package/src/composables/useComponentIcons.ts +1 -1
  128. package/src/composables/useDebouncedInput.ts +1 -1
  129. package/src/composables/useModifiers.ts +1 -2
  130. package/src/composables/useOptions.ts +0 -1
  131. package/src/composables/useTextCount.ts +1 -1
  132. package/src/stories/Accordion/Accordion.stories.mdx +1 -1
  133. package/src/stories/AccordionGroup/AccordionGroup.stories.mdx +1 -1
  134. package/src/stories/AccordionGroup/AccordionGroupSlots.stories.mdx +1 -1
  135. package/src/stories/Badge/Badge.stories.mdx +1 -1
  136. package/src/stories/Breadcrumb/Breadcrumb.settings.ts +0 -1
  137. package/src/stories/Breadcrumb/Breadcrumb.stories.mdx +1 -1
  138. package/src/stories/Breadcrumb/BreadcrumbSlots.stories.mdx +1 -1
  139. package/src/stories/Button/Button.stories.mdx +1 -1
  140. package/src/stories/Button/ButtonModifiers.stories.mdx +2 -2
  141. package/src/stories/Button/ButtonSlots.stories.mdx +3 -3
  142. package/src/stories/ButtonGroup/ButtonGroup.settings.ts +0 -1
  143. package/src/stories/ButtonGroup/ButtonGroup.stories.mdx +1 -1
  144. package/src/stories/ButtonGroup/ButtonGroupSlots.stories.mdx +1 -1
  145. package/src/stories/Card/Card.stories.mdx +1 -1
  146. package/src/stories/Card/CardSlots.stories.mdx +1 -1
  147. package/src/stories/Checkbox/Checkbox.stories.mdx +1 -1
  148. package/src/stories/CheckboxGroup/CheckboxGroup.stories.mdx +1 -1
  149. package/src/stories/CheckboxGroup/CheckboxGroupSlots.stories.mdx +1 -1
  150. package/src/stories/Combobox/Combobox.settings.ts +0 -1
  151. package/src/stories/Combobox/Combobox.stories.mdx +1 -1
  152. package/src/stories/Dialog/Dialog.stories.mdx +1 -1
  153. package/src/stories/Dropdown/Dropdown.settings.ts +0 -1
  154. package/src/stories/Dropdown/Dropdown.stories.mdx +1 -1
  155. package/src/stories/Icon/Icon.settings.ts +0 -1
  156. package/src/stories/Icon/Icon.stories.mdx +1 -1
  157. package/src/stories/Icon/IconsCollection.stories.mdx +1 -1
  158. package/src/stories/InputText/InputText.settings.ts +0 -1
  159. package/src/stories/InputText/InputText.stories.mdx +1 -1
  160. package/src/stories/Progress/Progress.stories.mdx +1 -1
  161. package/src/stories/Radio/Radio.stories.mdx +1 -1
  162. package/src/stories/RadioGroup/RadioGroup.stories.mdx +1 -1
  163. package/src/stories/RadioGroup/RadioGroupSlots.stories.mdx +1 -1
  164. package/src/stories/Select/Select.settings.ts +0 -1
  165. package/src/stories/Select/Select.stories.mdx +1 -1
  166. package/src/stories/Textarea/Textarea.settings.ts +0 -1
  167. package/src/stories/Textarea/Textarea.stories.mdx +1 -1
  168. package/src/stories/Tooltip/Tooltip.settings.ts +25 -0
  169. package/src/stories/Tooltip/Tooltip.stories.mdx +98 -0
  170. package/src/stories/Tooltip/Tooltip.test.ts +49 -0
  171. package/src/utils/ObjectUtilities.ts +1 -1
@@ -1,85 +1,6 @@
1
- import { isRef as z, provide as D, computed as y, unref as a, inject as L, toRef as Z, toRefs as B, defineComponent as P, useAttrs as N, ref as j, openBlock as C, createElementBlock as $, normalizeClass as E, withModifiers as T, createElementVNode as h, renderSlot as _, normalizeProps as b, guardReactiveProps as G, createTextVNode as O, toDisplayString as k, watchEffect as U, Fragment as F, renderList as q, createBlock as x, mergeProps as H, withCtx as R } from "vue";
2
- import { useToggle as J } from "@vueuse/core";
3
- import { nanoid as K } from "nanoid";
4
- const M = "VV_ACCORDION_GROUP";
5
- function Q(r) {
6
- if (Object.keys(r).some(
7
- (e) => e !== "key" && !z(r[e])
8
- ))
9
- throw Error("One or more groupState props aren't ref.");
10
- D(
11
- r.key,
12
- y(() => r)
13
- );
14
- }
15
- function W(r) {
16
- return ((e) => e == null || e === "" || Array.isArray(e) && e.length === 0 || !(e instanceof Date) && typeof e == "object" && Object.keys(e).length === 0)(a(r));
17
- }
18
- function S(r) {
19
- var e, t;
20
- if (r)
21
- return (t = (e = r.match(
22
- /[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g
23
- )) == null ? void 0 : e.join("-")) == null ? void 0 : t.toLowerCase();
24
- }
25
- function I(r, e) {
26
- const t = { [`${r}`]: !0 };
27
- return {
28
- bemCssClasses: y(() => Object.keys(e).reduce((o, c) => {
29
- const l = a(e[c]) || !1;
30
- if (!l)
31
- return o;
32
- if (c === "modifiers") {
33
- const f = Array.isArray(l) ? l : l.split(" ");
34
- return {
35
- ...o,
36
- ...f.reduce(
37
- (n, d) => ({
38
- ...n,
39
- [`${r}--${S(d)}`]: !0
40
- }),
41
- {}
42
- )
43
- };
44
- } else
45
- return {
46
- ...o,
47
- [`${r}--${S(c)}`]: l
48
- };
49
- }, t) || {})
50
- };
51
- }
52
- function X(r) {
53
- const e = L(r, void 0), t = y(() => !W(e));
54
- function u(o, c, l) {
55
- if (e != null && e.value) {
56
- const n = a(e.value)[o];
57
- return y({
58
- get() {
59
- return n == null ? void 0 : n.value;
60
- },
61
- set(d) {
62
- n.value = d;
63
- }
64
- });
65
- }
66
- const f = Z(c, o);
67
- return y({
68
- get() {
69
- return f.value;
70
- },
71
- set(n) {
72
- l && l(`update:${o}`, n);
73
- }
74
- });
75
- }
76
- return {
77
- group: e,
78
- isInGroup: t,
79
- getGroupOrLocalRef: u
80
- };
81
- }
82
- const Y = {
1
+ import { defineComponent as P, openBlock as g, createElementBlock as S, unref as a, normalizeClass as O, withModifiers as k, createElementVNode as h, renderSlot as A, normalizeProps as C, guardReactiveProps as G, createTextVNode as b, toDisplayString as $, Fragment as M, renderList as E, createBlock as I, mergeProps as N, withCtx as B } from "vue";
2
+ import { nanoid as D } from "nanoid";
3
+ const R = "VV_ACCORDION_GROUP", x = {
83
4
  name: String,
84
5
  title: String,
85
6
  content: String,
@@ -89,88 +10,88 @@ const Y = {
89
10
  },
90
11
  modifiers: [String, Array],
91
12
  disabled: Boolean
92
- }, w = ["update:modelValue"];
93
- function ee(r, e) {
94
- const { group: t, isInGroup: u, getGroupOrLocalRef: o } = X(M), { title: c, content: l } = B(r), f = o("modelValue", r, e), n = o("disabled", r), d = o("collapse", r), i = o("modifiers", r);
13
+ }, z = ["update:modelValue"];
14
+ function L(s, m) {
15
+ const { group: t, isInGroup: l, getGroupOrLocalRef: e } = useInjectedGroupState(R), { title: p, content: v } = toRefs(s), f = e("modelValue", s, m), d = e("disabled", s), c = e("collapse", s), r = e("modifiers", s);
95
16
  return {
96
17
  modelValue: f,
97
- disabled: n,
98
- isInGroup: u,
18
+ disabled: d,
19
+ isInGroup: l,
99
20
  group: t,
100
- collapse: d,
101
- modifiers: i,
102
- title: c,
103
- content: l
21
+ collapse: c,
22
+ modifiers: r,
23
+ title: p,
24
+ content: v
104
25
  };
105
26
  }
106
- const oe = ["id", "open"], re = ["aria-controls", "aria-expanded"], te = ["aria-hidden"], se = {
27
+ const T = ["id", "open"], U = ["aria-controls", "aria-expanded"], j = ["aria-hidden"], F = {
107
28
  name: "VvAccordion"
108
- }, ne = /* @__PURE__ */ P({
109
- ...se,
110
- props: Y,
111
- emits: w,
112
- setup(r, { emit: e }) {
113
- const t = r, u = N(), o = t.name || (u == null ? void 0 : u.id) || K(), {
114
- modifiers: c,
115
- title: l,
29
+ }, q = /* @__PURE__ */ P({
30
+ ...F,
31
+ props: x,
32
+ emits: z,
33
+ setup(s, { emit: m }) {
34
+ const t = s, l = useAttrs(), e = t.name || (l == null ? void 0 : l.id) || D(), {
35
+ modifiers: p,
36
+ title: v,
116
37
  content: f,
117
- disabled: n,
118
- collapse: d,
119
- modelValue: i,
120
- isInGroup: g
121
- } = ee(t, e), s = j(!1), v = y({
122
- get: () => g.value ? d.value && Array.isArray(i.value) ? i.value.includes(o) : i.value === o : i.value === void 0 ? s.value : i.value,
123
- set: (p) => {
124
- if (g.value) {
125
- if (d.value && Array.isArray(i.value)) {
126
- if (p) {
127
- i.value.push(o);
38
+ disabled: d,
39
+ collapse: c,
40
+ modelValue: r,
41
+ isInGroup: _
42
+ } = L(t, m), o = ref(!1), u = computed({
43
+ get: () => _.value ? c.value && Array.isArray(r.value) ? r.value.includes(e) : r.value === e : r.value === void 0 ? o.value : r.value,
44
+ set: (i) => {
45
+ if (_.value) {
46
+ if (c.value && Array.isArray(r.value)) {
47
+ if (i) {
48
+ r.value.push(e);
128
49
  return;
129
50
  }
130
- i.value = i.value.filter(
131
- (V) => V !== o
51
+ r.value = r.value.filter(
52
+ (V) => V !== e
132
53
  );
133
54
  return;
134
55
  }
135
- i.value = p ? o : null;
56
+ r.value = i ? e : null;
136
57
  return;
137
58
  }
138
- if (i.value === void 0 && typeof p == "boolean") {
139
- s.value = p;
59
+ if (r.value === void 0 && typeof i == "boolean") {
60
+ o.value = i;
140
61
  return;
141
62
  }
142
- i.value = p;
63
+ r.value = i;
143
64
  }
144
- }), { bemCssClasses: m } = I("vv-accordion", {
145
- modifiers: c,
146
- disabled: n
147
- }), A = J(v);
148
- return (p, V) => (C(), $("details", {
149
- id: a(o),
150
- class: E(a(m)),
151
- open: a(v),
152
- onClick: V[0] || (V[0] = T((ue) => a(A)(), ["prevent"]))
65
+ }), { bemCssClasses: n } = useBemModifiers("vv-accordion", {
66
+ modifiers: p,
67
+ disabled: d
68
+ }), y = useToggle(u);
69
+ return (i, V) => (g(), S("details", {
70
+ id: a(e),
71
+ class: O(a(n)),
72
+ open: a(u),
73
+ onClick: V[0] || (V[0] = k((Q) => a(y)(), ["prevent"]))
153
74
  }, [
154
75
  h("summary", {
155
- "aria-controls": a(o),
156
- "aria-expanded": a(v),
76
+ "aria-controls": a(e),
77
+ "aria-expanded": a(u),
157
78
  class: "vv-collapse__summary"
158
79
  }, [
159
- _(p.$slots, "summary", b(G({ open: a(v) })), () => [
160
- O(k(a(l)), 1)
80
+ A(i.$slots, "summary", C(G({ open: a(u) })), () => [
81
+ b($(a(v)), 1)
161
82
  ])
162
- ], 8, re),
83
+ ], 8, U),
163
84
  h("div", {
164
- "aria-hidden": !a(v),
85
+ "aria-hidden": !a(u),
165
86
  class: "vv-collapse__content"
166
87
  }, [
167
- _(p.$slots, "details", b(G({ open: a(v) })), () => [
168
- O(k(a(f)), 1)
88
+ A(i.$slots, "details", C(G({ open: a(u) })), () => [
89
+ b($(a(f)), 1)
169
90
  ])
170
- ], 8, te)
171
- ], 10, oe));
91
+ ], 8, j)
92
+ ], 10, T));
172
93
  }
173
- }), ae = {
94
+ }), H = {
174
95
  modelValue: [String, Array],
175
96
  items: { type: Array, default: () => [] },
176
97
  collapse: Boolean,
@@ -180,57 +101,57 @@ const oe = ["id", "open"], re = ["aria-controls", "aria-expanded"], te = ["aria-
180
101
  default: ""
181
102
  },
182
103
  disabled: Boolean
183
- }, ie = ["update:modelValue"], le = {
104
+ }, J = ["update:modelValue"], K = {
184
105
  name: "VvAccordionGroup"
185
- }, me = /* @__PURE__ */ P({
186
- ...le,
187
- props: ae,
188
- emits: ie,
189
- setup(r, { emit: e }) {
190
- const t = r, { disabled: u, collapse: o, modifiers: c, itemModifiers: l, items: f } = B(t);
191
- U(() => {
192
- typeof t.modelValue == "string" && o.value && console.warn(
106
+ }, Y = /* @__PURE__ */ P({
107
+ ...K,
108
+ props: H,
109
+ emits: J,
110
+ setup(s, { emit: m }) {
111
+ const t = s, { disabled: l, collapse: e, modifiers: p, itemModifiers: v, items: f } = toRefs(t);
112
+ watchEffect(() => {
113
+ typeof t.modelValue == "string" && e.value && console.warn(
193
114
  "[VvAccordionGroup]: modelValue is a string but collapse is true."
194
115
  );
195
116
  });
196
- const n = j([]), d = y({
117
+ const d = ref([]), c = computed({
197
118
  get: () => {
198
- var s;
199
- return t.modelValue !== void 0 ? o.value ? t.modelValue : Array.isArray(t.modelValue) ? t.modelValue[0] : t.modelValue : o.value ? n.value : (s = n.value) == null ? void 0 : s[0];
119
+ var o;
120
+ return t.modelValue !== void 0 ? e.value ? t.modelValue : Array.isArray(t.modelValue) ? t.modelValue[0] : t.modelValue : e.value ? d.value : (o = d.value) == null ? void 0 : o[0];
200
121
  },
201
- set: (s) => {
122
+ set: (o) => {
202
123
  if (t.modelValue !== void 0)
203
- return (Array.isArray(t.modelValue) || o.value) && !Array.isArray(s) && (s = [s]), e("update:modelValue", s);
204
- n.value = Array.isArray(s) ? s : [s];
124
+ return (Array.isArray(t.modelValue) || e.value) && !Array.isArray(o) && (o = [o]), m("update:modelValue", o);
125
+ d.value = Array.isArray(o) ? o : [o];
205
126
  }
127
+ }), r = {
128
+ key: R,
129
+ modelValue: c,
130
+ disabled: l,
131
+ collapse: e,
132
+ modifiers: v
133
+ };
134
+ useProvideGroupState(r);
135
+ const { bemCssClasses: _ } = useBemModifiers("vv-accordion-group", {
136
+ modifiers: p,
137
+ disabled: l
206
138
  });
207
- Q({
208
- key: M,
209
- modelValue: d,
210
- disabled: u,
211
- collapse: o,
212
- modifiers: l
213
- });
214
- const { bemCssClasses: g } = I("vv-accordion-group", {
215
- modifiers: c,
216
- disabled: u
217
- });
218
- return (s, v) => (C(), $("div", {
219
- class: E(a(g))
139
+ return (o, u) => (g(), S("div", {
140
+ class: O(a(_))
220
141
  }, [
221
- _(s.$slots, "default", {}, () => [
222
- (C(!0), $(F, null, q(a(f), (m) => (C(), x(ne, H({
223
- key: m.title
142
+ A(o.$slots, "default", {}, () => [
143
+ (g(!0), S(M, null, E(a(f), (n) => (g(), I(q, N({
144
+ key: n.title
224
145
  }, {
225
- name: m.name,
226
- title: m.title,
227
- content: m.content
146
+ name: n.name,
147
+ title: n.title,
148
+ content: n.content
228
149
  }), {
229
- header: R((A) => [
230
- _(s.$slots, `header::${m.name}`, b(G(A)))
150
+ header: B((y) => [
151
+ A(o.$slots, `header::${n.name}`, C(G(y)))
231
152
  ]),
232
- details: R((A) => [
233
- _(s.$slots, `details::${m.name}`, b(G(A)))
153
+ details: B((y) => [
154
+ A(o.$slots, `details::${n.name}`, C(G(y)))
234
155
  ]),
235
156
  _: 2
236
157
  }, 1040))), 128))
@@ -239,5 +160,5 @@ const oe = ["id", "open"], re = ["aria-controls", "aria-expanded"], te = ["aria-
239
160
  }
240
161
  });
241
162
  export {
242
- me as default
163
+ Y as default
243
164
  };
@@ -1 +1 @@
1
- (function(e,A){typeof exports=="object"&&typeof module<"u"?module.exports=A(require("vue"),require("@vueuse/core"),require("nanoid")):typeof define=="function"&&define.amd?define(["vue","@vueuse/core","nanoid"],A):(e=typeof globalThis<"u"?globalThis:e||self,e.VvAccordionGroup=A(e.vue,e.core,e.nanoid))})(this,function(e,A,k){"use strict";const g="VV_ACCORDION_GROUP";function G(t){if(Object.keys(t).some(r=>r!=="key"&&!e.isRef(t[r])))throw Error("One or more groupState props aren't ref.");e.provide(t.key,e.computed(()=>t))}function S(t){return(r=>r==null||r===""||Array.isArray(r)&&r.length===0||!(r instanceof Date)&&typeof r=="object"&&Object.keys(r).length===0)(e.unref(t))}function h(t){var r,n;if(t)return(n=(r=t.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g))==null?void 0:r.join("-"))==null?void 0:n.toLowerCase()}function b(t,r){const n={[`${t}`]:!0};return{bemCssClasses:e.computed(()=>Object.keys(r).reduce((o,d)=>{const l=e.unref(r[d])||!1;if(!l)return o;if(d==="modifiers"){const u=Array.isArray(l)?l:l.split(" ");return{...o,...u.reduce((i,f)=>({...i,[`${t}--${h(f)}`]:!0}),{})}}else return{...o,[`${t}--${h(d)}`]:l}},n)||{})}}function $(t){const r=e.inject(t,void 0),n=e.computed(()=>!S(r));function c(o,d,l){if(r!=null&&r.value){const i=e.unref(r.value)[o];return e.computed({get(){return i==null?void 0:i.value},set(f){i.value=f}})}const u=e.toRef(d,o);return e.computed({get(){return u.value},set(i){l&&l(`update:${o}`,i)}})}return{group:r,isInGroup:n,getGroupOrLocalRef:c}}const R={name:String,title:String,content:String,modelValue:{type:Boolean,default:void 0},modifiers:[String,Array],disabled:Boolean},P=["update:modelValue"];function B(t,r){const{group:n,isInGroup:c,getGroupOrLocalRef:o}=$(g),{title:d,content:l}=e.toRefs(t),u=o("modelValue",t,r),i=o("disabled",t),f=o("collapse",t),a=o("modifiers",t);return{modelValue:u,disabled:i,isInGroup:c,group:n,collapse:f,modifiers:a,title:d,content:l}}const O=["id","open"],E=["aria-controls","aria-expanded"],j=["aria-hidden"],z={name:"VvAccordion"},M=e.defineComponent({...z,props:R,emits:P,setup(t,{emit:r}){const n=t,c=e.useAttrs(),o=n.name||(c==null?void 0:c.id)||k.nanoid(),{modifiers:d,title:l,content:u,disabled:i,collapse:f,modelValue:a,isInGroup:V}=B(n,r),s=e.ref(!1),y=e.computed({get:()=>V.value?f.value&&Array.isArray(a.value)?a.value.includes(o):a.value===o:a.value===void 0?s.value:a.value,set:m=>{if(V.value){if(f.value&&Array.isArray(a.value)){if(m){a.value.push(o);return}a.value=a.value.filter(C=>C!==o);return}a.value=m?o:null;return}if(a.value===void 0&&typeof m=="boolean"){s.value=m;return}a.value=m}}),{bemCssClasses:p}=b("vv-accordion",{modifiers:d,disabled:i}),_=A.useToggle(y);return(m,C)=>(e.openBlock(),e.createElementBlock("details",{id:e.unref(o),class:e.normalizeClass(e.unref(p)),open:e.unref(y),onClick:C[0]||(C[0]=e.withModifiers(L=>e.unref(_)(),["prevent"]))},[e.createElementVNode("summary",{"aria-controls":e.unref(o),"aria-expanded":e.unref(y),class:"vv-collapse__summary"},[e.renderSlot(m.$slots,"summary",e.normalizeProps(e.guardReactiveProps({open:e.unref(y)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(l)),1)])],8,E),e.createElementVNode("div",{"aria-hidden":!e.unref(y),class:"vv-collapse__content"},[e.renderSlot(m.$slots,"details",e.normalizeProps(e.guardReactiveProps({open:e.unref(y)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(u)),1)])],8,j)],10,O))}}),I={modelValue:[String,Array],items:{type:Array,default:()=>[]},collapse:Boolean,modifiers:[String,Array],itemModifiers:{type:[String,Array],default:""},disabled:Boolean},D=["update:modelValue"],N={name:"VvAccordionGroup"};return e.defineComponent({...N,props:I,emits:D,setup(t,{emit:r}){const n=t,{disabled:c,collapse:o,modifiers:d,itemModifiers:l,items:u}=e.toRefs(n);e.watchEffect(()=>{typeof n.modelValue=="string"&&o.value&&console.warn("[VvAccordionGroup]: modelValue is a string but collapse is true.")});const i=e.ref([]),f=e.computed({get:()=>{var s;return n.modelValue!==void 0?o.value?n.modelValue:Array.isArray(n.modelValue)?n.modelValue[0]:n.modelValue:o.value?i.value:(s=i.value)==null?void 0:s[0]},set:s=>{if(n.modelValue!==void 0)return(Array.isArray(n.modelValue)||o.value)&&!Array.isArray(s)&&(s=[s]),r("update:modelValue",s);i.value=Array.isArray(s)?s:[s]}});G({key:g,modelValue:f,disabled:c,collapse:o,modifiers:l});const{bemCssClasses:V}=b("vv-accordion-group",{modifiers:d,disabled:c});return(s,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(V))},[e.renderSlot(s.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(u),p=>(e.openBlock(),e.createBlock(M,e.mergeProps({key:p.title},{name:p.name,title:p.title,content:p.content}),{header:e.withCtx(_=>[e.renderSlot(s.$slots,`header::${p.name}`,e.normalizeProps(e.guardReactiveProps(_)))]),details:e.withCtx(_=>[e.renderSlot(s.$slots,`details::${p.name}`,e.normalizeProps(e.guardReactiveProps(_)))]),_:2},1040))),128))])],2))}})});
1
+ (function(e,f){typeof exports=="object"&&typeof module<"u"?module.exports=f(require("vue"),require("nanoid")):typeof define=="function"&&define.amd?define(["vue","nanoid"],f):(e=typeof globalThis<"u"?globalThis:e||self,e.VvAccordionGroup=f(e.vue,e.nanoid))})(this,function(e,f){"use strict";const S="VV_ACCORDION_GROUP",C={name:String,title:String,content:String,modelValue:{type:Boolean,default:void 0},modifiers:[String,Array],disabled:Boolean},h=["update:modelValue"];function P(s,p){const{group:n,isInGroup:a,getGroupOrLocalRef:o}=useInjectedGroupState(S),{title:m,content:y}=toRefs(s),A=o("modelValue",s,p),d=o("disabled",s),u=o("collapse",s),t=o("modifiers",s);return{modelValue:A,disabled:d,isInGroup:a,group:n,collapse:u,modifiers:t,title:m,content:y}}const B=["id","open"],G=["aria-controls","aria-expanded"],k=["aria-hidden"],v={name:"VvAccordion"},R=e.defineComponent({...v,props:C,emits:h,setup(s,{emit:p}){const n=s,a=useAttrs(),o=n.name||(a==null?void 0:a.id)||f.nanoid(),{modifiers:m,title:y,content:A,disabled:d,collapse:u,modelValue:t,isInGroup:_}=P(n,p),r=ref(!1),c=computed({get:()=>_.value?u.value&&Array.isArray(t.value)?t.value.includes(o):t.value===o:t.value===void 0?r.value:t.value,set:i=>{if(_.value){if(u.value&&Array.isArray(t.value)){if(i){t.value.push(o);return}t.value=t.value.filter(g=>g!==o);return}t.value=i?o:null;return}if(t.value===void 0&&typeof i=="boolean"){r.value=i;return}t.value=i}}),{bemCssClasses:l}=useBemModifiers("vv-accordion",{modifiers:m,disabled:d}),V=useToggle(c);return(i,g)=>(e.openBlock(),e.createElementBlock("details",{id:e.unref(o),class:e.normalizeClass(e.unref(l)),open:e.unref(c),onClick:g[0]||(g[0]=e.withModifiers(M=>e.unref(V)(),["prevent"]))},[e.createElementVNode("summary",{"aria-controls":e.unref(o),"aria-expanded":e.unref(c),class:"vv-collapse__summary"},[e.renderSlot(i.$slots,"summary",e.normalizeProps(e.guardReactiveProps({open:e.unref(c)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(y)),1)])],8,G),e.createElementVNode("div",{"aria-hidden":!e.unref(c),class:"vv-collapse__content"},[e.renderSlot(i.$slots,"details",e.normalizeProps(e.guardReactiveProps({open:e.unref(c)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(A)),1)])],8,k)],10,B))}}),$={modelValue:[String,Array],items:{type:Array,default:()=>[]},collapse:Boolean,modifiers:[String,Array],itemModifiers:{type:[String,Array],default:""},disabled:Boolean},b=["update:modelValue"],E={name:"VvAccordionGroup"};return e.defineComponent({...E,props:$,emits:b,setup(s,{emit:p}){const n=s,{disabled:a,collapse:o,modifiers:m,itemModifiers:y,items:A}=toRefs(n);watchEffect(()=>{typeof n.modelValue=="string"&&o.value&&console.warn("[VvAccordionGroup]: modelValue is a string but collapse is true.")});const d=ref([]),u=computed({get:()=>{var r;return n.modelValue!==void 0?o.value?n.modelValue:Array.isArray(n.modelValue)?n.modelValue[0]:n.modelValue:o.value?d.value:(r=d.value)==null?void 0:r[0]},set:r=>{if(n.modelValue!==void 0)return(Array.isArray(n.modelValue)||o.value)&&!Array.isArray(r)&&(r=[r]),p("update:modelValue",r);d.value=Array.isArray(r)?r:[r]}}),t={key:S,modelValue:u,disabled:a,collapse:o,modifiers:y};useProvideGroupState(t);const{bemCssClasses:_}=useBemModifiers("vv-accordion-group",{modifiers:m,disabled:a});return(r,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(_))},[e.renderSlot(r.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(A),l=>(e.openBlock(),e.createBlock(R,e.mergeProps({key:l.title},{name:l.name,title:l.title,content:l.content}),{header:e.withCtx(V=>[e.renderSlot(r.$slots,`header::${l.name}`,e.normalizeProps(e.guardReactiveProps(V)))]),details:e.withCtx(V=>[e.renderSlot(r.$slots,`details::${l.name}`,e.normalizeProps(e.guardReactiveProps(V)))]),_:2},1040))),128))])],2))}})});
@@ -1,5 +1,5 @@
1
1
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
2
- modelValue: (ArrayConstructor | StringConstructor)[];
2
+ modelValue: (StringConstructor | ArrayConstructor)[];
3
3
  items: {
4
4
  type: {
5
5
  (arrayLength: number): import("@/components/VvAccordionGroup/").VvAccordionGroupItem[];
@@ -18,7 +18,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
18
18
  default: () => never[];
19
19
  };
20
20
  collapse: BooleanConstructor;
21
- modifiers: (ArrayConstructor | StringConstructor)[];
21
+ modifiers: (StringConstructor | ArrayConstructor)[];
22
22
  itemModifiers: {
23
23
  type: (StringConstructor | {
24
24
  (arrayLength: number): string[];
@@ -38,7 +38,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
38
38
  };
39
39
  disabled: BooleanConstructor;
40
40
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
41
- modelValue: (ArrayConstructor | StringConstructor)[];
41
+ modelValue: (StringConstructor | ArrayConstructor)[];
42
42
  items: {
43
43
  type: {
44
44
  (arrayLength: number): import("@/components/VvAccordionGroup/").VvAccordionGroupItem[];
@@ -57,7 +57,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
57
57
  default: () => never[];
58
58
  };
59
59
  collapse: BooleanConstructor;
60
- modifiers: (ArrayConstructor | StringConstructor)[];
60
+ modifiers: (StringConstructor | ArrayConstructor)[];
61
61
  itemModifiers: {
62
62
  type: (StringConstructor | {
63
63
  (arrayLength: number): string[];
@@ -9,7 +9,7 @@ export declare const VvAccordionGroupProps: {
9
9
  /**
10
10
  * VModel
11
11
  */
12
- modelValue: (ArrayConstructor | StringConstructor)[];
12
+ modelValue: (StringConstructor | ArrayConstructor)[];
13
13
  /**
14
14
  * Accordion items
15
15
  * @type VvAccordionGroupItem
@@ -38,7 +38,7 @@ export declare const VvAccordionGroupProps: {
38
38
  /**
39
39
  * String or String[] of css classes (modifiers) that will be concatenated to prefix 'vv-accordion-group--'
40
40
  */
41
- modifiers: (ArrayConstructor | StringConstructor)[];
41
+ modifiers: (StringConstructor | ArrayConstructor)[];
42
42
  /**
43
43
  * String or String[] of css classes (modifiers) that will be concatenated to prefix 'vv-accordion--'
44
44
  */
@@ -1,62 +1,28 @@
1
- import { computed as f, unref as u, defineComponent as m, openBlock as p, createElementBlock as C, normalizeClass as b, renderSlot as _, createTextVNode as g, toDisplayString as A } from "vue";
2
- function i(e) {
3
- var s, r;
4
- if (e)
5
- return (r = (s = e.match(
6
- /[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g
7
- )) == null ? void 0 : s.join("-")) == null ? void 0 : r.toLowerCase();
8
- }
9
- function $(e, s) {
10
- const r = { [`${e}`]: !0 };
11
- return {
12
- bemCssClasses: f(() => Object.keys(s).reduce((o, a) => {
13
- const t = u(s[a]) || !1;
14
- if (!t)
15
- return o;
16
- if (a === "modifiers") {
17
- const c = Array.isArray(t) ? t : t.split(" ");
18
- return {
19
- ...o,
20
- ...c.reduce(
21
- (l, d) => ({
22
- ...l,
23
- [`${e}--${i(d)}`]: !0
24
- }),
25
- {}
26
- )
27
- };
28
- } else
29
- return {
30
- ...o,
31
- [`${e}--${i(a)}`]: t
32
- };
33
- }, r) || {})
34
- };
35
- }
36
- const v = {
1
+ import { defineComponent as t, openBlock as a, createElementBlock as n, normalizeClass as i, unref as l, renderSlot as d, createTextVNode as c, toDisplayString as m } from "vue";
2
+ const p = {
37
3
  modifiers: [String, Array]
38
- }, y = {
39
- ...v,
4
+ }, f = {
5
+ ...p,
40
6
  value: [String, Number]
41
- }, B = {
7
+ }, u = {
42
8
  name: "VvBadge"
43
- }, S = /* @__PURE__ */ m({
44
- ...B,
45
- props: y,
46
- setup(e) {
47
- const s = e, { bemCssClasses: r } = $("vv-badge", {
48
- modifiers: s.modifiers
9
+ }, _ = /* @__PURE__ */ t({
10
+ ...u,
11
+ props: f,
12
+ setup(s) {
13
+ const o = s, { bemCssClasses: r } = useBemModifiers("vv-badge", {
14
+ modifiers: o.modifiers
49
15
  });
50
- return (n, o) => (p(), C("span", {
51
- class: b(u(r)),
16
+ return (e, g) => (a(), n("span", {
17
+ class: i(l(r)),
52
18
  role: "status"
53
19
  }, [
54
- _(n.$slots, "default", {}, () => [
55
- g(A(n.value), 1)
20
+ d(e.$slots, "default", {}, () => [
21
+ c(m(e.value), 1)
56
22
  ])
57
23
  ], 2));
58
24
  }
59
25
  });
60
26
  export {
61
- S as default
27
+ _ as default
62
28
  };
@@ -1 +1 @@
1
- (function(e,n){typeof exports=="object"&&typeof module<"u"?module.exports=n(require("vue")):typeof define=="function"&&define.amd?define(["vue"],n):(e=typeof globalThis<"u"?globalThis:e||self,e.VvBadge=n(e.vue))})(this,function(e){"use strict";function n(s){var r,t;if(s)return(t=(r=s.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g))==null?void 0:r.join("-"))==null?void 0:t.toLowerCase()}function f(s,r){const t={[`${s}`]:!0};return{bemCssClasses:e.computed(()=>Object.keys(r).reduce((i,a)=>{const o=e.unref(r[a])||!1;if(!o)return i;if(a==="modifiers"){const l=Array.isArray(o)?o:o.split(" ");return{...i,...l.reduce((m,p)=>({...m,[`${s}--${n(p)}`]:!0}),{})}}else return{...i,[`${s}--${n(a)}`]:o}},t)||{})}}const u={...{modifiers:[String,Array]},value:[String,Number]},c={name:"VvBadge"};return e.defineComponent({...c,props:u,setup(s){const r=s,{bemCssClasses:t}=f("vv-badge",{modifiers:r.modifiers});return(d,i)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(e.unref(t)),role:"status"},[e.renderSlot(d.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(d.value),1)])],2))}})});
1
+ (function(e,s){typeof exports=="object"&&typeof module<"u"?module.exports=s(require("vue")):typeof define=="function"&&define.amd?define(["vue"],s):(e=typeof globalThis<"u"?globalThis:e||self,e.VvBadge=s(e.vue))})(this,function(e){"use strict";const o={...{modifiers:[String,Array]},value:[String,Number]},t={name:"VvBadge"};return e.defineComponent({...t,props:o,setup(i){const r=i,{bemCssClasses:d}=useBemModifiers("vv-badge",{modifiers:r.modifiers});return(n,a)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(e.unref(d)),role:"status"},[e.renderSlot(n.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(n.value),1)])],2))}})});
@@ -1,79 +1,72 @@
1
- import { computed as v, unref as _, defineComponent as C, openBlock as c, createElementBlock as u, normalizeClass as p, createElementVNode as d, Fragment as g, renderList as h, createBlock as y, resolveDynamicComponent as $, mergeProps as k, withCtx as A, renderSlot as B, normalizeProps as N, guardReactiveProps as P, createTextVNode as z, toDisplayString as L } from "vue";
2
- function f(s) {
3
- var t, a;
4
- if (s)
5
- return (a = (t = s.match(
6
- /[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g
7
- )) == null ? void 0 : t.join("-")) == null ? void 0 : a.toLowerCase();
8
- }
9
- function V(s, t) {
10
- const a = { [`${s}`]: !0 };
1
+ import { defineComponent as f, openBlock as m, createElementBlock as c, normalizeClass as p, unref as v, createElementVNode as d, Fragment as _, renderList as C, createBlock as g, resolveDynamicComponent as h, mergeProps as $, withCtx as k, renderSlot as y, normalizeProps as B, guardReactiveProps as N, createTextVNode as P, toDisplayString as A } from "vue";
2
+ function V(t, o) {
3
+ const u = { [`${t}`]: !0 };
11
4
  return {
12
- bemCssClasses: v(() => Object.keys(t).reduce((n, r) => {
13
- const e = _(t[r]) || !1;
5
+ bemCssClasses: computed(() => Object.keys(o).reduce((a, r) => {
6
+ const e = unref(o[r]) || !1;
14
7
  if (!e)
15
- return n;
8
+ return a;
16
9
  if (r === "modifiers") {
17
- const i = Array.isArray(e) ? e : e.split(" ");
10
+ const n = Array.isArray(e) ? e : e.split(" ");
18
11
  return {
19
- ...n,
20
- ...i.reduce(
21
- (l, m) => ({
12
+ ...a,
13
+ ...n.reduce(
14
+ (l, i) => ({
22
15
  ...l,
23
- [`${s}--${f(m)}`]: !0
16
+ [`${t}--${kebabCase(i)}`]: !0
24
17
  }),
25
18
  {}
26
19
  )
27
20
  };
28
21
  } else
29
22
  return {
30
- ...n,
31
- [`${s}--${f(r)}`]: e
23
+ ...a,
24
+ [`${t}--${kebabCase(r)}`]: e
32
25
  };
33
- }, a) || {})
26
+ }, u) || {})
34
27
  };
35
28
  }
36
- const Z = {
29
+ const E = {
37
30
  modifiers: [String, Array]
38
- }, E = {
39
- ...Z,
31
+ }, L = {
32
+ ...E,
40
33
  routes: Array
41
- }, M = { class: "vv-breadcrumb__list" }, S = ["content"], j = {
34
+ }, M = { class: "vv-breadcrumb__list" }, S = ["content"], z = {
42
35
  name: "VvBreadcrumb"
43
- }, D = /* @__PURE__ */ C({
44
- ...j,
45
- props: E,
46
- setup(s) {
47
- const t = s, { bemCssClasses: a } = V("vv-breadcrumb", {
48
- modifiers: t.modifiers
36
+ }, j = /* @__PURE__ */ f({
37
+ ...z,
38
+ props: L,
39
+ setup(t) {
40
+ const o = t, { bemCssClasses: u } = V("vv-breadcrumb", {
41
+ modifiers: o.modifiers
49
42
  });
50
- return (o, n) => (c(), u("nav", {
51
- class: p(_(a)),
43
+ return (s, a) => (m(), c("nav", {
44
+ class: p(v(u)),
52
45
  "aria-label": "breadcrumbs"
53
46
  }, [
54
47
  d("ol", M, [
55
- (c(!0), u(g, null, h(o.routes, (r, e) => {
56
- var i, l, m, b;
57
- return c(), u("li", {
48
+ (m(!0), c(_, null, C(s.routes, (r, e) => {
49
+ var n, l, i, b;
50
+ return m(), c("li", {
58
51
  key: `${r.label}-${e}`,
59
52
  class: p({
60
- "vv-breadcrumb__item": e < Number((i = o.routes) == null ? void 0 : i.length) - 1,
61
- "vv-breadcrumb__item-active": e === Number((l = o.routes) == null ? void 0 : l.length) - 1
53
+ "vv-breadcrumb__item": e < Number((n = s.routes) == null ? void 0 : n.length) - 1,
54
+ "vv-breadcrumb__item-active": e === Number((l = s.routes) == null ? void 0 : l.length) - 1
62
55
  }),
63
56
  itemprop: "itemListElement",
64
57
  itemtype: "https://schema.org/ListItem",
65
58
  itemscope: ""
66
59
  }, [
67
- (c(), y($(r.to ? "router-link" : r.href ? "a" : "span"), k(r, {
60
+ (m(), g(h(r.to ? "router-link" : r.href ? "a" : "span"), $(r, {
68
61
  class: {
69
- "vv-breadcrumb__link": e < Number((m = o.routes) == null ? void 0 : m.length) - 1
62
+ "vv-breadcrumb__link": e < Number((i = s.routes) == null ? void 0 : i.length) - 1
70
63
  },
71
- "aria-current": e === Number((b = o.routes) == null ? void 0 : b.length) - 1 ? "page" : void 0,
64
+ "aria-current": e === Number((b = s.routes) == null ? void 0 : b.length) - 1 ? "page" : void 0,
72
65
  itemprop: "item"
73
66
  }), {
74
- default: A(() => [
75
- B(o.$slots, "label", N(P({ route: r, index: e })), () => [
76
- z(L(r.label), 1)
67
+ default: k(() => [
68
+ y(s.$slots, "label", B(N({ route: r, index: e })), () => [
69
+ P(A(r.label), 1)
77
70
  ])
78
71
  ]),
79
72
  _: 2
@@ -89,5 +82,5 @@ const Z = {
89
82
  }
90
83
  });
91
84
  export {
92
- D as default
85
+ j as default
93
86
  };
@@ -1 +1 @@
1
- (function(e,a){typeof exports=="object"&&typeof module<"u"?module.exports=a(require("vue")):typeof define=="function"&&define.amd?define(["vue"],a):(e=typeof globalThis<"u"?globalThis:e||self,e.VvBreadcrumb=a(e.vue))})(this,function(e){"use strict";function a(t){var o,i;if(t)return(i=(o=t.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g))==null?void 0:o.join("-"))==null?void 0:i.toLowerCase()}function u(t,o){const i={[`${t}`]:!0};return{bemCssClasses:e.computed(()=>Object.keys(o).reduce((l,s)=>{const r=e.unref(o[s])||!1;if(!r)return l;if(s==="modifiers"){const c=Array.isArray(r)?r:r.split(" ");return{...l,...c.reduce((m,d)=>({...m,[`${t}--${a(d)}`]:!0}),{})}}else return{...l,[`${t}--${a(s)}`]:r}},i)||{})}}const b={...{modifiers:[String,Array]},routes:Array},f={class:"vv-breadcrumb__list"},_=["content"],h={name:"VvBreadcrumb"};return e.defineComponent({...h,props:b,setup(t){const o=t,{bemCssClasses:i}=u("vv-breadcrumb",{modifiers:o.modifiers});return(n,l)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(e.unref(i)),"aria-label":"breadcrumbs"},[e.createElementVNode("ol",f,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.routes,(s,r)=>{var c,m,d,p;return e.openBlock(),e.createElementBlock("li",{key:`${s.label}-${r}`,class:e.normalizeClass({"vv-breadcrumb__item":r<Number((c=n.routes)==null?void 0:c.length)-1,"vv-breadcrumb__item-active":r===Number((m=n.routes)==null?void 0:m.length)-1}),itemprop:"itemListElement",itemtype:"https://schema.org/ListItem",itemscope:""},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.to?"router-link":s.href?"a":"span"),e.mergeProps(s,{class:{"vv-breadcrumb__link":r<Number((d=n.routes)==null?void 0:d.length)-1},"aria-current":r===Number((p=n.routes)==null?void 0:p.length)-1?"page":void 0,itemprop:"item"}),{default:e.withCtx(()=>[e.renderSlot(n.$slots,"label",e.normalizeProps(e.guardReactiveProps({route:s,index:r})),()=>[e.createTextVNode(e.toDisplayString(s.label),1)])]),_:2},1040,["class","aria-current"])),e.createElementVNode("meta",{itemprop:"position",content:`${r+1}`},null,8,_)],2)}),128))])],2))}})});
1
+ (function(e,o){typeof exports=="object"&&typeof module<"u"?module.exports=o(require("vue")):typeof define=="function"&&define.amd?define(["vue"],o):(e=typeof globalThis<"u"?globalThis:e||self,e.VvBreadcrumb=o(e.vue))})(this,function(e){"use strict";function o(n,a){const d={[`${n}`]:!0};return{bemCssClasses:computed(()=>Object.keys(a).reduce((i,s)=>{const r=unref(a[s])||!1;if(!r)return i;if(s==="modifiers"){const l=Array.isArray(r)?r:r.split(" ");return{...i,...l.reduce((c,m)=>({...c,[`${n}--${kebabCase(m)}`]:!0}),{})}}else return{...i,[`${n}--${kebabCase(s)}`]:r}},d)||{})}}const u={...{modifiers:[String,Array]},routes:Array},b={class:"vv-breadcrumb__list"},f=["content"],_={name:"VvBreadcrumb"};return e.defineComponent({..._,props:u,setup(n){const a=n,{bemCssClasses:d}=o("vv-breadcrumb",{modifiers:a.modifiers});return(t,i)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(e.unref(d)),"aria-label":"breadcrumbs"},[e.createElementVNode("ol",b,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.routes,(s,r)=>{var l,c,m,p;return e.openBlock(),e.createElementBlock("li",{key:`${s.label}-${r}`,class:e.normalizeClass({"vv-breadcrumb__item":r<Number((l=t.routes)==null?void 0:l.length)-1,"vv-breadcrumb__item-active":r===Number((c=t.routes)==null?void 0:c.length)-1}),itemprop:"itemListElement",itemtype:"https://schema.org/ListItem",itemscope:""},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.to?"router-link":s.href?"a":"span"),e.mergeProps(s,{class:{"vv-breadcrumb__link":r<Number((m=t.routes)==null?void 0:m.length)-1},"aria-current":r===Number((p=t.routes)==null?void 0:p.length)-1?"page":void 0,itemprop:"item"}),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"label",e.normalizeProps(e.guardReactiveProps({route:s,index:r})),()=>[e.createTextVNode(e.toDisplayString(s.label),1)])]),_:2},1040,["class","aria-current"])),e.createElementVNode("meta",{itemprop:"position",content:`${r+1}`},null,8,f)],2)}),128))])],2))}})});