@robuust-digital/vue-components 2.7.0 → 2.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,13 @@
1
+ ## 2.7.1 (21-05-2026)
2
+
3
+ ### Added
4
+
5
+ * `Accordion`: Added per-item initial open state support with `open`, while keeping `defaultOpenIndex` as the fallback
6
+
7
+ ### Updated
8
+
9
+ * `Build`: Upgrade TypeScript to 6.0.3 while preserving top-level declaration output
10
+
1
11
  ## 2.7.0 (19-05-2026)
2
12
 
3
13
  ### Added
@@ -1,4 +1,4 @@
1
- import { openBlock as s, createElementBlock as r, createElementVNode as o, defineComponent as $, ref as h, useAttrs as B, computed as x, watch as y, Fragment as C, createVNode as v, withCtx as A, renderSlot as _, normalizeClass as M, unref as f, renderList as E, createBlock as S, resolveDynamicComponent as O, createCommentVNode as U } from "vue";
1
+ import { openBlock as s, createElementBlock as r, createElementVNode as o, defineComponent as $, ref as p, useAttrs as B, computed as w, watch as y, Fragment as x, createVNode as v, withCtx as C, renderSlot as A, normalizeClass as _, unref as f, renderList as E, createBlock as S, resolveDynamicComponent as O, createCommentVNode as U } from "vue";
2
2
  import { useEditor as N, EditorContent as T } from "@tiptap/vue-3";
3
3
  import j from "@tiptap/starter-kit";
4
4
  import { _ as z } from "./Tooltip.vue_vue_type_script_setup_true_lang-B3MHy48T.js";
@@ -90,35 +90,35 @@ const G = { class: "rvc-rich-text-toolbar" }, J = ["disabled", "aria-label", "on
90
90
  },
91
91
  emits: ["update:modelValue", "tiptap:onCreate"],
92
92
  setup(n, { emit: c }) {
93
- const a = n, b = c, g = h(!1), u = h(!1), d = h(""), m = B(), k = m.class ? `${m.class} ` : "", V = Object.fromEntries(
93
+ const a = n, h = c, b = p(!1), u = p(!1), d = p(""), m = B(), M = m.class ? `${m.class} ` : "", k = Object.fromEntries(
94
94
  Object.entries(m).filter(
95
95
  (l) => l[0] !== "class" && typeof l[1] == "string"
96
96
  )
97
- ), Z = j.configure({
97
+ ), V = j.configure({
98
98
  link: {
99
99
  openOnClick: !1
100
100
  }
101
101
  }), e = N({
102
- extensions: [Z, ...a.customExtensions],
102
+ extensions: [V, ...a.customExtensions],
103
103
  content: a.modelValue,
104
104
  editorProps: {
105
105
  attributes: {
106
- ...V,
106
+ ...k,
107
107
  id: a.id,
108
- class: `${k}rvc-textarea rvc-rich-text-textarea`
108
+ class: `${M}rvc-textarea rvc-rich-text-textarea`
109
109
  }
110
110
  },
111
111
  onCreate: ({ editor: l }) => {
112
- b("tiptap:onCreate", l);
112
+ h("tiptap:onCreate", l);
113
113
  },
114
114
  onUpdate: ({ editor: l }) => {
115
115
  const i = l.isEmpty ? "" : l.getHTML();
116
- b("update:modelValue", i);
116
+ h("update:modelValue", i);
117
117
  },
118
118
  onSelectionUpdate({ editor: l }) {
119
- g.value = !l.view.state.selection.empty;
119
+ b.value = !l.view.state.selection.empty;
120
120
  }
121
- }), H = x(() => [
121
+ }), Z = w(() => [
122
122
  {
123
123
  name: "bold",
124
124
  icon: q,
@@ -156,19 +156,19 @@ const G = { class: "rvc-rich-text-toolbar" }, J = ["disabled", "aria-label", "on
156
156
  icon: K,
157
157
  title: "Hyperlink",
158
158
  isVisible: a.config === "default",
159
- disabled: !g.value && !(e.value?.isActive("link") ?? !1),
159
+ disabled: !b.value && !(e.value?.isActive("link") ?? !1),
160
160
  isActive: () => e.value?.isActive("link") ?? !1,
161
161
  action: () => {
162
162
  d.value = e.value?.getAttributes("link").href || "", u.value = !0;
163
163
  }
164
164
  }
165
- ]), w = x(() => {
166
- const l = H.value.filter((t) => a.config === "default" || ["bold", "italic"].includes(t.name)), i = a.customCommands.map((t) => {
167
- let p = !1;
168
- return typeof t.disabled == "function" ? p = e.value ? t.disabled(e.value) : !1 : p = t.disabled ?? !1, {
165
+ ]), g = w(() => {
166
+ const l = Z.value.filter((t) => a.config === "default" || ["bold", "italic"].includes(t.name)), i = a.customCommands.map((t) => {
167
+ const L = typeof t.disabled == "function" ? e.value ? t.disabled(e.value) : !1 : t.disabled ?? !1;
168
+ return {
169
169
  ...t,
170
170
  isVisible: t.isVisible ?? !0,
171
- disabled: p,
171
+ disabled: L,
172
172
  isActive: () => t.isActive && e.value ? t.isActive(e.value) : !1,
173
173
  action: () => e.value && t.action(e.value)
174
174
  };
@@ -179,19 +179,19 @@ const G = { class: "rvc-rich-text-toolbar" }, J = ["disabled", "aria-label", "on
179
179
  if (!e.value) return;
180
180
  e.value.getHTML() === l || e.value.commands.setContent(l, { emitUpdate: !1 });
181
181
  });
182
- const L = () => {
182
+ const H = () => {
183
183
  e.value && (e.value.commands.setLink({ href: d.value }), u.value = !1, d.value = "");
184
184
  };
185
- return (l, i) => (s(), r(C, null, [
185
+ return (l, i) => (s(), r(x, null, [
186
186
  v(I, {
187
187
  id: `${a.id}-modal-add-hyperlink`,
188
188
  title: "Add Hyperlink",
189
189
  as: "form",
190
190
  show: u.value,
191
191
  "onModal:close": i[1] || (i[1] = (t) => u.value = !1),
192
- "onModal:save": L
192
+ "onModal:save": H
193
193
  }, {
194
- default: A(() => [
194
+ default: C(() => [
195
195
  v(D, {
196
196
  modelValue: d.value,
197
197
  "onUpdate:modelValue": i[0] || (i[0] = (t) => d.value = t),
@@ -202,17 +202,17 @@ const G = { class: "rvc-rich-text-toolbar" }, J = ["disabled", "aria-label", "on
202
202
  ]),
203
203
  _: 1
204
204
  }, 8, ["id", "show"]),
205
- _(l.$slots, "default"),
205
+ A(l.$slots, "default"),
206
206
  o("div", {
207
- class: M(["rvc-rich-text", n.rootClass, { "rvc-rich-text-disabled": n.disabled }])
207
+ class: _(["rvc-rich-text", n.rootClass, { "rvc-rich-text-disabled": n.disabled }])
208
208
  }, [
209
- f(e) ? _(l.$slots, "toolbar", {
209
+ f(e) ? A(l.$slots, "toolbar", {
210
210
  key: 0,
211
- commands: w.value,
211
+ commands: g.value,
212
212
  tiptap: f(e)
213
213
  }, () => [
214
214
  o("ul", G, [
215
- (s(!0), r(C, null, E(w.value.filter((t) => t.isVisible), (t) => (s(), r("li", {
215
+ (s(!0), r(x, null, E(g.value.filter((t) => t.isVisible), (t) => (s(), r("li", {
216
216
  key: `toolbar-item-command-${t.name}`
217
217
  }, [
218
218
  v(z, {
@@ -221,12 +221,12 @@ const G = { class: "rvc-rich-text-toolbar" }, J = ["disabled", "aria-label", "on
221
221
  size: "sm",
222
222
  class: "rvc-rich-text-tooltip"
223
223
  }, {
224
- default: A(() => [
224
+ default: C(() => [
225
225
  o("button", {
226
226
  disabled: t.disabled,
227
227
  type: "button",
228
228
  "aria-label": t.title,
229
- class: M([{ "rvc-rich-text-button-active": t.isActive() }, "rvc-rich-text-button"]),
229
+ class: _([{ "rvc-rich-text-button-active": t.isActive() }, "rvc-rich-text-button"]),
230
230
  onClick: t.action
231
231
  }, [
232
232
  (s(), S(O(t.icon)))
@@ -44,17 +44,17 @@ const be = { class: "rvc-accordion" }, ge = ["open", "name"], pe = ["innerHTML"]
44
44
  },
45
45
  setup(e) {
46
46
  return (d, o) => (t(), n("div", be, [
47
- (t(!0), n(L, null, B(e.items, (b, r) => (t(), n("details", {
47
+ (t(!0), n(L, null, B(e.items, (m, r) => (t(), n("details", {
48
48
  key: r,
49
- open: e.defaultOpenIndex === r,
49
+ open: m.open ?? e.defaultOpenIndex === r,
50
50
  name: e.name
51
51
  }, [
52
52
  c("summary", null, [
53
53
  v(d.$slots, "summary", {
54
- item: b,
54
+ item: m,
55
55
  index: r
56
56
  }, () => [
57
- O(g(b.title) + " ", 1),
57
+ O(g(m.title) + " ", 1),
58
58
  v(d.$slots, "icon", { classList: "rvc-accordion-icon" }, () => [
59
59
  A(w(me), { class: "rvc-accordion-icon" })
60
60
  ])
@@ -64,11 +64,11 @@ const be = { class: "rvc-accordion" }, ge = ["open", "name"], pe = ["innerHTML"]
64
64
  class: k(["rvc-accordion-content", e.contentClass])
65
65
  }, [
66
66
  v(d.$slots, "content", {
67
- item: b,
67
+ item: m,
68
68
  index: r
69
69
  }, () => [
70
70
  c("div", {
71
- innerHTML: b.content
71
+ innerHTML: m.content
72
72
  }, null, 8, pe)
73
73
  ])
74
74
  ], 2)
@@ -107,7 +107,7 @@ const be = { class: "rvc-accordion" }, ge = ["open", "name"], pe = ["innerHTML"]
107
107
  key: 0,
108
108
  type: "button",
109
109
  class: "rvc-alert-close",
110
- onClick: o[0] || (o[0] = (b) => d.$emit("alert:close"))
110
+ onClick: o[0] || (o[0] = (m) => d.$emit("alert:close"))
111
111
  }, [
112
112
  A(w(ue))
113
113
  ])) : y("", !0)
@@ -129,9 +129,9 @@ const be = { class: "rvc-accordion" }, ge = ["open", "name"], pe = ["innerHTML"]
129
129
  },
130
130
  emits: ["update:modelValue"],
131
131
  setup(e, { emit: d }) {
132
- const o = e, b = d, r = P({
132
+ const o = e, m = d, r = P({
133
133
  get: () => o.modelValue,
134
- set: (l) => b("update:modelValue", l)
134
+ set: (l) => m("update:modelValue", l)
135
135
  }), { hasModelBinding: f } = E(), p = N(), a = P(() => ({
136
136
  ...p,
137
137
  type: "checkbox"
@@ -243,9 +243,9 @@ const Le = ["value"], Be = ["value"], Q = /* @__PURE__ */ T({
243
243
  },
244
244
  emits: ["update:modelValue"],
245
245
  setup(e, { emit: d }) {
246
- const o = e, b = d, r = P({
246
+ const o = e, m = d, r = P({
247
247
  get: () => o.modelValue,
248
- set: (a) => b("update:modelValue", a)
248
+ set: (a) => m("update:modelValue", a)
249
249
  }), { hasModelBinding: f } = E(), p = M(null);
250
250
  return (a, u) => (t(), n("div", {
251
251
  class: k([
@@ -307,9 +307,9 @@ const Le = ["value"], Be = ["value"], Q = /* @__PURE__ */ T({
307
307
  },
308
308
  emits: ["pagination:change", "pagination:perPage"],
309
309
  setup(e, { emit: d }) {
310
- const o = e, b = d, r = P({
310
+ const o = e, m = d, r = P({
311
311
  get: () => o.perPage,
312
- set: (f) => b("pagination:perPage", Number(f))
312
+ set: (f) => m("pagination:perPage", Number(f))
313
313
  });
314
314
  return (f, p) => e.pagination?.total ? (t(), n("div", xe, [
315
315
  v(f.$slots, "perPage", V(e.pagination, { perPage: r.value }), () => [
@@ -344,7 +344,7 @@ const Le = ["value"], Be = ["value"], Q = /* @__PURE__ */ T({
344
344
  "rvc-pagination-button",
345
345
  { "rvc-pagination-button-active": a.active }
346
346
  ]),
347
- onClick: (l) => a.url && b("pagination:change", a.url)
347
+ onClick: (l) => a.url && m("pagination:change", a.url)
348
348
  }, [
349
349
  a.url !== "..." && u === 0 ? v(f.$slots, "prevIcon", {
350
350
  key: 0,
@@ -400,14 +400,14 @@ const Le = ["value"], Be = ["value"], Q = /* @__PURE__ */ T({
400
400
  },
401
401
  emits: ["table:sortBy", "pagination:change", "pagination:perPage"],
402
402
  setup(e, { emit: d }) {
403
- const o = e, b = d, r = M(o.defaultSort), f = (a) => o.headers.find((u) => u.key === a), p = (a) => {
403
+ const o = e, m = d, r = M(o.defaultSort), f = (a) => o.headers.find((u) => u.key === a), p = (a) => {
404
404
  a.key && (!r.value || r.value.key !== a.key ? r.value = {
405
405
  key: a.key,
406
406
  direction: "asc"
407
407
  } : r.value.direction === "asc" ? r.value = {
408
408
  key: a.key,
409
409
  direction: "desc"
410
- } : r.value = null, b("table:sortBy", r.value));
410
+ } : r.value = null, m("table:sortBy", r.value));
411
411
  };
412
412
  return (a, u) => (t(), n("div", null, [
413
413
  c("div", {
@@ -550,8 +550,8 @@ const Le = ["value"], Be = ["value"], Q = /* @__PURE__ */ T({
550
550
  "from-label": e.fromLabel,
551
551
  "prev-icon": e.prevIcon,
552
552
  "next-icon": e.nextIcon,
553
- "onPagination:change": u[0] || (u[0] = (l) => b("pagination:change", l)),
554
- "onPagination:perPage": u[1] || (u[1] = (l) => b("pagination:perPage", l))
553
+ "onPagination:change": u[0] || (u[0] = (l) => m("pagination:change", l)),
554
+ "onPagination:perPage": u[1] || (u[1] = (l) => m("pagination:perPage", l))
555
555
  }, null, 8, ["pagination", "per-page", "per-page-label", "per-page-options", "from-label", "prev-icon", "next-icon"])
556
556
  ]) : y("", !0)
557
557
  ]));
@@ -608,13 +608,13 @@ const Le = ["value"], Be = ["value"], Q = /* @__PURE__ */ T({
608
608
  },
609
609
  emits: ["update:modelValue", "file-upload:add", "file-upload:remove", "file-upload:remove-existing"],
610
610
  setup(e, { emit: d }) {
611
- const o = e, b = d, r = M(null), f = M(!1), p = M(0), a = M(/* @__PURE__ */ new Map()), u = N(), l = P(() => o.icon ?? we), s = P(() => o.modelValue ? Array.isArray(o.modelValue) ? o.modelValue : [o.modelValue] : []), h = (i) => i.type.startsWith("image/");
611
+ const o = e, m = d, r = M(null), f = M(!1), p = M(0), a = M(/* @__PURE__ */ new Map()), u = N(), l = P(() => o.icon ?? we), s = P(() => o.modelValue ? Array.isArray(o.modelValue) ? o.modelValue : [o.modelValue] : []), h = (i) => i.type.startsWith("image/");
612
612
  se(
613
613
  [s, () => o.showThumbnails],
614
614
  ([i, $]) => {
615
- const m = new Set(i);
615
+ const b = new Set(i);
616
616
  a.value.forEach((C, F) => {
617
- $ && m.has(F) && h(F) || (URL.revokeObjectURL(C), a.value.delete(F));
617
+ $ && b.has(F) && h(F) || (URL.revokeObjectURL(C), a.value.delete(F));
618
618
  }), $ && i.filter((C) => h(C) && !a.value.has(C)).forEach((C) => a.value.set(C, URL.createObjectURL(C)));
619
619
  },
620
620
  { immediate: !0 }
@@ -626,8 +626,8 @@ const Le = ["value"], Be = ["value"], Q = /* @__PURE__ */ T({
626
626
  }, R = (i) => {
627
627
  if (o.disabled || !i.length)
628
628
  return;
629
- const $ = o.multiple ? i : i.slice(0, 1), m = o.multiple ? [...s.value, ...$] : $;
630
- b("update:modelValue", o.multiple ? m : m[0] ?? null), b("file-upload:add", $);
629
+ const $ = o.multiple ? i : i.slice(0, 1), b = o.multiple ? [...s.value, ...$] : $;
630
+ m("update:modelValue", o.multiple ? b : b[0] ?? null), m("file-upload:add", $);
631
631
  }, z = (i) => {
632
632
  const $ = i.target;
633
633
  R(Array.from($.files ?? [])), $.value = "";
@@ -650,13 +650,13 @@ const Le = ["value"], Be = ["value"], Q = /* @__PURE__ */ T({
650
650
  }, W = (i) => {
651
651
  if (o.disabled)
652
652
  return;
653
- const $ = typeof i == "number" ? i : s.value.indexOf(i), m = s.value[$];
654
- if (!m)
653
+ const $ = typeof i == "number" ? i : s.value.indexOf(i), b = s.value[$];
654
+ if (!b)
655
655
  return;
656
656
  const C = s.value.filter((F, le) => le !== $);
657
- b("update:modelValue", o.multiple ? C : C[0] ?? null), b("file-upload:remove", m);
657
+ m("update:modelValue", o.multiple ? C : C[0] ?? null), m("file-upload:remove", b);
658
658
  }, K = (i) => {
659
- o.disabled || b("file-upload:remove-existing", i);
659
+ o.disabled || m("file-upload:remove-existing", i);
660
660
  };
661
661
  return (i, $) => (t(), n("div", {
662
662
  class: k([
@@ -710,9 +710,9 @@ const Le = ["value"], Be = ["value"], Q = /* @__PURE__ */ T({
710
710
  disabled: e.disabled,
711
711
  onClick: S
712
712
  }, {
713
- icon: D(({ icon: m }) => [
714
- v(i.$slots, "icon", { icon: m }, () => [
715
- m ? (t(), x(I(m), {
713
+ icon: D(({ icon: b }) => [
714
+ v(i.$slots, "icon", { icon: b }, () => [
715
+ b ? (t(), x(I(b), {
716
716
  key: 0,
717
717
  class: "rvc-button-icon",
718
718
  "aria-hidden": "true"
@@ -729,47 +729,47 @@ const Le = ["value"], Be = ["value"], Q = /* @__PURE__ */ T({
729
729
  removeExistingFile: K
730
730
  }, () => [
731
731
  c("ul", Je, [
732
- (t(!0), n(L, null, B(e.existingFiles, (m) => (t(), n("li", {
733
- key: `existing-${m.id}`,
732
+ (t(!0), n(L, null, B(e.existingFiles, (b) => (t(), n("li", {
733
+ key: `existing-${b.id}`,
734
734
  class: "rvc-file-upload-item"
735
735
  }, [
736
- Y(m) ? (t(), n("img", {
736
+ Y(b) ? (t(), n("img", {
737
737
  key: 0,
738
738
  class: "rvc-file-upload-thumbnail",
739
- src: H(m),
740
- alt: m.name
739
+ src: H(b),
740
+ alt: b.name
741
741
  }, null, 8, Qe)) : y("", !0),
742
- m.url ? (t(), n("a", {
742
+ b.url ? (t(), n("a", {
743
743
  key: 1,
744
744
  class: "rvc-file-upload-file",
745
- href: m.url
746
- }, g(m.name), 9, Xe)) : (t(), n("span", Ye, g(m.name), 1)),
745
+ href: b.url
746
+ }, g(b.name), 9, Xe)) : (t(), n("span", Ye, g(b.name), 1)),
747
747
  c("button", {
748
748
  class: "rvc-file-upload-remove",
749
749
  type: "button",
750
750
  disabled: e.disabled,
751
- "aria-label": `Remove ${m.name}`,
752
- onClick: (C) => K(m)
751
+ "aria-label": `Remove ${b.name}`,
752
+ onClick: (C) => K(b)
753
753
  }, [
754
754
  A(w(q), { "aria-hidden": "true" })
755
755
  ], 8, _e)
756
756
  ]))), 128)),
757
- (t(!0), n(L, null, B(s.value, (m, C) => (t(), n("li", {
758
- key: `${m.name}-${m.lastModified}-${C}`,
757
+ (t(!0), n(L, null, B(s.value, (b, C) => (t(), n("li", {
758
+ key: `${b.name}-${b.lastModified}-${C}`,
759
759
  class: "rvc-file-upload-item"
760
760
  }, [
761
- X(m) ? (t(), n("img", {
761
+ X(b) ? (t(), n("img", {
762
762
  key: 0,
763
763
  class: "rvc-file-upload-thumbnail",
764
- src: a.value.get(m),
765
- alt: m.name
764
+ src: a.value.get(b),
765
+ alt: b.name
766
766
  }, null, 8, et)) : y("", !0),
767
- c("span", tt, g(m.name), 1),
767
+ c("span", tt, g(b.name), 1),
768
768
  c("button", {
769
769
  class: "rvc-file-upload-remove",
770
770
  type: "button",
771
771
  disabled: e.disabled,
772
- "aria-label": `Remove ${m.name}`,
772
+ "aria-label": `Remove ${b.name}`,
773
773
  onClick: (F) => W(C)
774
774
  }, [
775
775
  A(w(q), { "aria-hidden": "true" })
@@ -787,9 +787,9 @@ const Le = ["value"], Be = ["value"], Q = /* @__PURE__ */ T({
787
787
  },
788
788
  emits: ["update:modelValue"],
789
789
  setup(e, { emit: d }) {
790
- const o = e, b = d, { hasModelBinding: r } = E(), f = M(null), p = P({
790
+ const o = e, m = d, { hasModelBinding: r } = E(), f = M(null), p = P({
791
791
  get: () => o.modelValue,
792
- set: (u) => b("update:modelValue", u)
792
+ set: (u) => m("update:modelValue", u)
793
793
  }), a = P(() => [
794
794
  "rvc-textarea",
795
795
  `rvc-textarea-${o.size}`
@@ -819,9 +819,9 @@ const Le = ["value"], Be = ["value"], Q = /* @__PURE__ */ T({
819
819
  },
820
820
  emits: ["update:modelValue"],
821
821
  setup(e, { emit: d }) {
822
- const o = e, b = d, r = P({
822
+ const o = e, m = d, r = P({
823
823
  get: () => o.modelValue,
824
- set: (l) => b("update:modelValue", l)
824
+ set: (l) => m("update:modelValue", l)
825
825
  }), { hasModelBinding: f } = E(), p = N(), a = P(() => ({
826
826
  ...p,
827
827
  type: "radio"
@@ -856,14 +856,14 @@ const Le = ["value"], Be = ["value"], Q = /* @__PURE__ */ T({
856
856
  },
857
857
  emits: ["update:modelValue", "tabs:change"],
858
858
  setup(e, { emit: d }) {
859
- const o = e, b = d, r = () => {
859
+ const o = e, m = d, r = () => {
860
860
  const u = o.tabs.findIndex((l) => l.active);
861
861
  return u >= 0 ? u : 0;
862
862
  }, f = P({
863
863
  get: () => o.modelValue ?? r(),
864
864
  set: (u) => {
865
865
  const l = o.tabs[u];
866
- b("update:modelValue", u), l && b("tabs:change", l);
866
+ m("update:modelValue", u), l && m("tabs:change", l);
867
867
  }
868
868
  }), p = (u) => {
869
869
  const s = +u.target.value;
@@ -1,132 +1,3 @@
1
- import { ComponentOptionsMixin } from 'vue';
2
- import { ComponentProvideOptions } from 'vue';
3
- import { DefineComponent } from 'vue';
4
- import { FunctionalComponent } from 'vue';
5
- import { HTMLAttributes } from 'vue';
6
- import { PublicProps } from 'vue';
7
- import { SVGAttributes } from 'vue';
8
- import { VNodeProps } from 'vue';
9
-
10
- declare const __VLS_component: DefineComponent<ComboboxProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
11
- "update:modelValue": (value: ComboboxModelValue) => any;
12
- "update:requestParams": (value: Record<string, unknown>) => any;
13
- "combobox:noResults": (value: string | null) => any;
14
- "combobox:error": (error: unknown) => any;
15
- }, string, PublicProps, Readonly<ComboboxProps> & Readonly<{
16
- "onUpdate:modelValue"?: ((value: ComboboxModelValue) => any) | undefined;
17
- "onUpdate:requestParams"?: ((value: Record<string, unknown>) => any) | undefined;
18
- "onCombobox:noResults"?: ((value: string | null) => any) | undefined;
19
- "onCombobox:error"?: ((error: unknown) => any) | undefined;
20
- }>, {
21
- icon: Icon | null;
22
- size: ComboboxSize;
23
- modelValue: ComboboxModelValue;
24
- rootClass: string;
25
- prefixIcon: Icon | null;
26
- disabled: boolean;
27
- multiple: boolean;
28
- endpoint: string;
29
- requestParams: Record<string, unknown>;
30
- manualInput: boolean;
31
- responseData: (data: unknown) => unknown[];
32
- displayValue: (item: unknown) => string | null;
33
- optionText: (option: unknown) => string | null;
34
- minLength: number;
35
- itemKey: string;
36
- clearable: boolean;
37
- rootAttrs: Record<string, unknown>;
38
- onSearch: (value: string | null, params: Record<string, unknown>, endpoint?: string) => Promise<{
39
- data: unknown;
40
- error?: unknown;
41
- cancel?: () => void;
42
- }>;
43
- searchOnly: boolean;
44
- debounce: number;
45
- minLoadingTime: number;
46
- onCancel: (cancelToken: (() => void) | null) => void;
47
- }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
48
-
49
- declare function __VLS_template(): {
50
- attrs: Partial<{}>;
51
- slots: {
52
- prefixIcon?(_: {
53
- icon: Icon;
54
- }): any;
55
- spinner?(_: {
56
- spinning: true;
57
- }): any;
58
- icon?(_: {
59
- icon: Icon | null;
60
- }): any;
61
- clear?(_: {}): any;
62
- chip?(_: {
63
- optionText: string | null;
64
- option: any;
65
- removeOption: (option: Record<string, unknown>) => void;
66
- }): any;
67
- option?(_: {
68
- option: unknown;
69
- isActive: (value: number | string) => boolean;
70
- }): any;
71
- optionPrefix?(_: {
72
- option: unknown;
73
- isActive: (value: number | string) => boolean;
74
- }): any;
75
- optionSuffix?(_: {
76
- option: unknown;
77
- isActive: (value: number | string) => boolean;
78
- }): any;
79
- };
80
- refs: {};
81
- rootEl: any;
82
- };
83
-
84
- declare type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
85
-
86
- declare type __VLS_WithTemplateSlots<T, S> = T & {
87
- new (): {
88
- $slots: S;
89
- };
90
- };
91
-
92
- declare type ComboboxModelValue = object | Array<unknown> | null;
93
-
94
- declare interface ComboboxProps {
95
- id: string;
96
- rootClass?: string;
97
- modelValue?: ComboboxModelValue;
98
- endpoint?: string;
99
- requestParams?: Record<string, unknown>;
100
- manualInput?: boolean;
101
- responseData?: (data: unknown) => unknown[];
102
- displayValue?: (item: unknown) => string | null;
103
- optionText?: (option: unknown) => string | null;
104
- disabled?: boolean;
105
- minLength?: number;
106
- itemKey?: string;
107
- clearable?: boolean;
108
- rootAttrs?: Record<string, unknown>;
109
- multiple?: boolean;
110
- onSearch?: (value: string | null, params: Record<string, unknown>, endpoint?: string) => Promise<{
111
- data: unknown;
112
- error?: unknown;
113
- cancel?: () => void;
114
- }>;
115
- searchOnly?: boolean;
116
- icon?: Icon | null;
117
- prefixIcon?: Icon | null;
118
- size?: ComboboxSize;
119
- debounce?: number;
120
- minLoadingTime?: number;
121
- onCancel?: (cancelToken: (() => void) | null) => void;
122
- }
123
-
124
- declare type ComboboxSize = 'sm' | 'base';
125
-
126
- declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
127
- export { _default as Combobox }
128
- export default _default;
129
-
130
- declare type Icon = FunctionalComponent<SVGAttributes & HTMLAttributes & VNodeProps>;
131
-
132
- export { }
1
+ import { default as Combobox } from './components/Combobox.vue';
2
+ export { Combobox };
3
+ export default Combobox;
@@ -0,0 +1,19 @@
1
+ import { Component, Ref, ComputedRef } from 'vue';
2
+ type DialogAs = string | Component;
3
+ interface DialogProps {
4
+ as: DialogAs;
5
+ id: string;
6
+ }
7
+ interface DialogContext {
8
+ contentRef: Ref<HTMLElement | null>;
9
+ ready: Ref<boolean>;
10
+ isForm: ComputedRef<boolean>;
11
+ titleId: ComputedRef<string>;
12
+ descriptionId: ComputedRef<string>;
13
+ initialFocusElement: ComputedRef<HTMLElement | null>;
14
+ }
15
+ /**
16
+ * Dialog context composable
17
+ */
18
+ export default function useDialogContext(props: DialogProps): DialogContext;
19
+ export {};
@@ -0,0 +1,6 @@
1
+ import { ComputedRef } from 'vue';
2
+ interface UseFormReturn {
3
+ hasModelBinding: ComputedRef<boolean>;
4
+ }
5
+ declare const _default: () => UseFormReturn;
6
+ export default _default;
@@ -1,4 +1,4 @@
1
- import { _ as e, a as s, b as t, c as r, d as m, e as p, f as i, g as x, h as c, i as d, j as f } from "../_shared/Tabs.vue_vue_type_script_setup_true_lang-BaTWaeN3.js";
1
+ import { _ as e, a as s, b as t, c as r, d as m, e as p, f as i, g as x, h as c, i as d, j as f } from "../_shared/Tabs.vue_vue_type_script_setup_true_lang-C4NAAuLp.js";
2
2
  import { _ as n } from "../_shared/ChevronDownIcon-BYWciGnh.js";
3
3
  import { _ as F } from "../_shared/ButtonBase.vue_vue_type_script_setup_true_lang-ZYVNEyNx.js";
4
4
  import { _ as g } from "../_shared/FormInput.vue_vue_type_script_setup_true_lang-Bg7YPGyY.js";