@bridge-ui/vue 0.3.0 → 0.4.0

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 (69) hide show
  1. package/dist/Components/Autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js +40 -45
  2. package/dist/Components/Autocomplete/composables/useAutocomplete.d.ts +1 -0
  3. package/dist/Components/ColorField/ColorField.vue_vue_type_script_setup_true_lang.js +39 -44
  4. package/dist/Components/ColorField/composables/useColorField.d.ts +1 -0
  5. package/dist/Components/DataTable/DataTable.vue.d.ts +3 -3
  6. package/dist/Components/DataTable/DataTable.vue_vue_type_script_setup_true_lang.js +86 -72
  7. package/dist/Components/DataTable/DataTableColumnsMenu.vue.d.ts +9 -3
  8. package/dist/Components/DataTable/DataTableColumnsMenu.vue_vue_type_script_setup_true_lang.js +71 -26
  9. package/dist/Components/DataTable/DataTableFilterMenu.vue.d.ts +5 -2
  10. package/dist/Components/DataTable/DataTableFilterMenu.vue_vue_type_script_setup_true_lang.js +94 -75
  11. package/dist/Components/DataTable/DataTableFilterOptions.vue.d.ts +4 -1
  12. package/dist/Components/DataTable/DataTableFilterOptions.vue_vue_type_script_setup_true_lang.js +12 -4
  13. package/dist/Components/DataTable/DataTableSelection.vue_vue_type_script_setup_true_lang.js +22 -21
  14. package/dist/Components/DataTable/DataTableToolbarButton.vue.d.ts +2 -1
  15. package/dist/Components/DataTable/composables/useDataTable.d.ts +12 -4
  16. package/dist/Components/DataTable/composables/useDataTable.js +254 -222
  17. package/dist/Components/DataTable/composables/useDataTableColumnsMenu.d.ts +27 -0
  18. package/dist/Components/DataTable/composables/useDataTableColumnsMenu.js +54 -0
  19. package/dist/Components/DataTable/dataTable.types.d.ts +26 -9
  20. package/dist/Components/DataTable/index.d.ts +1 -1
  21. package/dist/Components/DateField/DateField.vue_vue_type_script_setup_true_lang.js +52 -57
  22. package/dist/Components/DateField/composables/useDateField.d.ts +1 -0
  23. package/dist/Components/DateRangeField/DateRangeField.vue_vue_type_script_setup_true_lang.js +50 -55
  24. package/dist/Components/DateRangeField/composables/useDateRangeField.d.ts +1 -0
  25. package/dist/Components/DateTimeField/DateTimeField.vue_vue_type_script_setup_true_lang.js +56 -61
  26. package/dist/Components/DateTimeField/composables/useDateTimeField.d.ts +1 -0
  27. package/dist/Components/DateTimeRangeField/DateTimeRangeField.vue_vue_type_script_setup_true_lang.js +56 -61
  28. package/dist/Components/DateTimeRangeField/composables/useDateTimeRangeField.d.ts +1 -0
  29. package/dist/Components/FormField/composables/useFormField.d.ts +1 -0
  30. package/dist/Components/FormField/composables/useFormField.js +80 -75
  31. package/dist/Components/NumberField/NumberField.vue_vue_type_script_setup_true_lang.js +53 -43
  32. package/dist/Components/NumberField/composables/useNumberField.d.ts +8 -1
  33. package/dist/Components/NumberField/composables/useNumberField.js +49 -36
  34. package/dist/Components/NumberField/index.d.ts +1 -1
  35. package/dist/Components/NumberField/numberField.types.d.ts +13 -1
  36. package/dist/Components/PasswordField/PasswordField.vue_vue_type_script_setup_true_lang.js +28 -33
  37. package/dist/Components/PasswordField/composables/usePasswordField.d.ts +1 -0
  38. package/dist/Components/Select/Select.vue_vue_type_script_setup_true_lang.js +42 -47
  39. package/dist/Components/Select/composables/useSelect.d.ts +1 -0
  40. package/dist/Components/Slider/Slider.vue_vue_type_script_setup_true_lang.js +43 -48
  41. package/dist/Components/Slider/composables/useSlider.d.ts +1 -1
  42. package/dist/Components/Table/Table.vue_vue_type_script_setup_true_lang.js +2 -2
  43. package/dist/Components/Table/composables/useTable.d.ts +3 -0
  44. package/dist/Components/Table/composables/useTable.js +1 -0
  45. package/dist/Components/Table/table.types.d.ts +2 -1
  46. package/dist/Components/TextField/TextField.vue_vue_type_script_setup_true_lang.js +11 -16
  47. package/dist/Components/TextField/composables/useTextField.d.ts +1 -0
  48. package/dist/Components/Textarea/Textarea.vue_vue_type_script_setup_true_lang.js +15 -20
  49. package/dist/Components/Textarea/composables/useTextarea.d.ts +1 -0
  50. package/dist/Components/TimeField/TimeField.vue_vue_type_script_setup_true_lang.js +45 -50
  51. package/dist/Components/TimeField/composables/useTimeField.d.ts +1 -0
  52. package/dist/Components/TimeRangeField/TimeRangeField.vue_vue_type_script_setup_true_lang.js +45 -50
  53. package/dist/Components/TimeRangeField/composables/useTimeRangeField.d.ts +1 -0
  54. package/dist/Utils/index.d.ts +1 -0
  55. package/dist/Utils/index.js +28 -27
  56. package/dist/Utils/useOptionalModel.d.ts +6 -0
  57. package/dist/Utils/useOptionalModel.js +13 -0
  58. package/dist/augments.d.ts +1 -1
  59. package/dist/index.d.ts +1 -1
  60. package/dist/theme.css +46 -42
  61. package/docs/components/DataTable.md +42 -16
  62. package/docs/components/NumberField.md +17 -6
  63. package/docs/examples/i18n-dictionary.ts +6 -0
  64. package/docs/examples/icon-fontawesome.ts +4 -0
  65. package/docs/examples/icon-heroicons.ts +4 -0
  66. package/docs/examples/icon-lucide.ts +4 -0
  67. package/docs/examples/icon-phosphor.ts +4 -0
  68. package/docs/examples/icon-tabler.ts +4 -0
  69. package/package.json +2 -2
@@ -1,21 +1,22 @@
1
1
  import { useResolveMessage as e } from "../../Adapters/I18n/useI18nAdapter.js";
2
- import t from "../Icon/Icon.js";
3
- import n from "../Button/Button.js";
4
- import r from "../Menu/Menu.js";
5
- import i from "../Checkbox/Checkbox.js";
6
- import a from "../TextField/TextField.js";
7
- import o from "./DataTableFilterOptions.js";
8
- import { computed as s, createBlock as c, createCommentVNode as l, createElementBlock as u, createElementVNode as d, createTextVNode as f, createVNode as p, defineComponent as m, normalizeClass as h, openBlock as g, ref as _, unref as v, watch as y, withCtx as b } from "vue";
9
- import { flattenDataTableFilterOptionValues as x, setDataTableFilterDraftAll as S, toggleDataTableFilterDraft as C } from "@bridge-ui/core/Domain";
10
- import { cn as w } from "@bridge-ui/core/Utils";
2
+ import { useBreakpoint as t } from "../../Utils/useBreakpoint.js";
3
+ import n from "../Icon/Icon.js";
4
+ import r from "../Button/Button.js";
5
+ import i from "../FieldOverlay/FieldOverlay.js";
6
+ import a from "../Checkbox/Checkbox.js";
7
+ import o from "../TextField/TextField.js";
8
+ import s from "./DataTableFilterOptions.js";
9
+ import { computed as c, createCommentVNode as l, createElementBlock as u, createElementVNode as d, createTextVNode as f, createVNode as p, defineComponent as m, normalizeClass as h, openBlock as g, ref as _, toDisplayString as v, unref as y, watch as b, withCtx as x } from "vue";
10
+ import { flattenDataTableFilterOptionValues as S, getFieldOverlayControlSize as C, resolveFieldOverlay as w, setDataTableFilterDraftAll as T, toggleDataTableFilterDraft as E } from "@bridge-ui/core/Domain";
11
+ import { cn as D } from "@bridge-ui/core/Utils";
11
12
  //#region src/Components/DataTable/DataTableFilterMenu.vue?vue&type=script&setup=true&lang.ts
12
- var T = ["aria-pressed"], E = { class: "min-w-52 px-1 pb-0.5 pt-2.5" }, D = {
13
+ var O = { class: "relative z-2 inline-flex items-center leading-none" }, k = ["aria-pressed", "aria-label"], A = { class: "min-w-52 overflow-hidden rounded-md bg-white px-1 pb-0.5 pt-2.5 shadow-lg ring-1 ring-black/5 dark:bg-dark-800 dark:ring-white/10" }, j = {
13
14
  key: 0,
14
15
  class: "px-1 pb-1.5"
15
- }, O = {
16
+ }, M = {
16
17
  key: 1,
17
- class: "flex max-h-60 flex-col gap-0.5 overflow-y-auto pb-2"
18
- }, k = ["aria-checked"], A = { class: "flex justify-end gap-2 border-t border-dark-200 px-2 pb-1 pt-1.5 dark:border-dark-700" }, j = /*@__PURE__*/ m({
18
+ class: "flex max-h-60 flex-col gap-0.5 overflow-y-auto overscroll-contain pb-2 bridge-soft-scrollbar"
19
+ }, N = ["aria-checked"], P = { class: "flex justify-end gap-2 border-t border-dark-200 px-2 pb-1 pt-1.5 dark:border-dark-700" }, F = /*@__PURE__*/ m({
19
20
  inheritAttrs: !1,
20
21
  name: "DataTableFilterMenu",
21
22
  __name: "DataTableFilterMenu",
@@ -24,109 +25,127 @@ var T = ["aria-pressed"], E = { class: "min-w-52 px-1 pb-0.5 pt-2.5" }, D = {
24
25
  columnId: {},
25
26
  multiple: { type: Boolean },
26
27
  options: {},
28
+ overlay: { default: "auto" },
27
29
  searchable: { type: Boolean },
28
30
  searchValue: {},
29
31
  values: {}
30
32
  },
31
33
  emits: ["apply"],
32
- setup(m, { emit: j }) {
33
- let M = m, N = j, P = _(!1), F = _([]), I = _(""), L = e(), R = s(() => L("Search")), z = s(() => x(M.options)), B = s(() => z.value.length > 0 && z.value.every((e) => F.value.includes(e))), V = s(() => {
34
- let e = z.value.filter((e) => F.value.includes(e)).length;
35
- return e > 0 && e < z.value.length;
34
+ setup(m, { emit: F }) {
35
+ let I = m, L = F, R = _(!1), z = _(""), B = t(), V = _([]), H = e(), U = _(null), W = c(() => S(I.options)), G = c(() => C(w(I.overlay, B.mobile))), K = c(() => W.value.length > 0 && W.value.every((e) => V.value.includes(e))), q = c(() => {
36
+ let e = W.value.filter((e) => V.value.includes(e)).length;
37
+ return e > 0 && e < W.value.length;
38
+ }), J = c(() => ({ menu: {
39
+ anchorEl: U.value,
40
+ placement: "bottom"
41
+ } }));
42
+ b(R, (e) => {
43
+ e && (z.value = I.searchValue, V.value = [...I.values]);
36
44
  });
37
- y(P, (e) => {
38
- e && (I.value = M.searchValue, F.value = [...M.values]);
39
- });
40
- function H(e, t) {
41
- F.value = C(F.value, e, t, M.multiple);
45
+ function Y() {
46
+ R.value = !R.value;
47
+ }
48
+ function X(e, t) {
49
+ V.value = E(V.value, e, t, I.multiple);
42
50
  }
43
- function U() {
44
- F.value = S(F.value, z.value, !B.value);
51
+ function Z() {
52
+ V.value = T(V.value, W.value, !K.value);
45
53
  }
46
- function W() {
47
- F.value = [], I.value = "";
54
+ function Q() {
55
+ V.value = [], z.value = "";
48
56
  }
49
- function G() {
50
- N("apply", F.value, I.value), P.value = !1;
57
+ function $() {
58
+ L("apply", V.value, z.value), R.value = !1;
51
59
  }
52
- return (e, s) => (g(), c(v(r), {
53
- modelValue: P.value,
54
- "onUpdate:modelValue": s[1] ||= (e) => P.value = e,
55
- placement: "bottom",
56
- "custom-props": {
57
- root: { class: "relative z-[2] inline-flex items-center leading-none" },
58
- trigger: { class: "inline-flex items-center leading-none" }
59
- }
60
+ return (e, t) => (g(), u("span", O, [d("button", {
61
+ type: "button",
62
+ ref_key: "triggerRef",
63
+ ref: U,
64
+ "aria-pressed": m.active,
65
+ onClick: Y,
66
+ "aria-label": y(H)("Filter column"),
67
+ class: h(y(D)({
68
+ "inline-flex size-6 shrink-0 cursor-pointer items-center justify-center rounded-sm leading-none hover:bg-dark-500/10 dark:hover:bg-dark-500/15": !0,
69
+ "text-primary-600": m.active
70
+ }))
71
+ }, [p(y(n), {
72
+ size: "sm",
73
+ icon: "filter"
74
+ })], 10, k), p(y(i), {
75
+ modelValue: R.value,
76
+ "onUpdate:modelValue": t[1] ||= (e) => R.value = e,
77
+ overlay: m.overlay,
78
+ "custom-props": J.value
60
79
  }, {
61
- trigger: b(() => [d("button", {
62
- type: "button",
63
- "aria-pressed": m.active,
64
- "aria-label": "Filter column",
65
- class: h(v(w)({
66
- "inline-flex size-6 shrink-0 cursor-pointer items-center justify-center rounded-sm leading-none hover:bg-dark-500/10 dark:hover:bg-dark-500/15": !0,
67
- "text-primary-600": m.active
68
- }))
69
- }, [p(v(t), {
70
- size: "sm",
71
- icon: "filter"
72
- })], 10, T)]),
73
- default: b(() => [d("div", E, [
74
- m.searchable ? (g(), u("div", D, [p(v(a), {
75
- size: "sm",
80
+ default: x(() => [d("div", A, [
81
+ m.searchable ? (g(), u("div", j, [p(y(o), {
76
82
  "hide-error-message": "",
77
83
  "start-icon": "search",
78
- modelValue: I.value,
79
- "onUpdate:modelValue": s[0] ||= (e) => I.value = e,
80
- "aria-label": R.value,
81
- placeholder: R.value
84
+ size: G.value,
85
+ modelValue: z.value,
86
+ "onUpdate:modelValue": t[0] ||= (e) => z.value = e,
87
+ "aria-label": y(H)("Search"),
88
+ placeholder: y(H)("Search")
82
89
  }, null, 8, [
90
+ "size",
83
91
  "modelValue",
84
92
  "aria-label",
85
93
  "placeholder"
86
94
  ])])) : l("", !0),
87
- m.options.length > 0 ? (g(), u("div", O, [m.multiple && z.value.length > 0 ? (g(), u("div", {
95
+ m.options.length > 0 ? (g(), u("div", M, [m.multiple && W.value.length > 0 ? (g(), u("div", {
88
96
  key: 0,
89
97
  role: "menuitemcheckbox",
90
- "aria-checked": B.value,
91
- onClick: U,
98
+ "aria-checked": K.value,
99
+ onClick: Z,
92
100
  class: "flex w-full cursor-pointer items-center rounded-md px-2 py-1.5 text-start hover:bg-dark-500/5 dark:hover:bg-dark-500/10"
93
- }, [p(v(i), {
94
- size: "sm",
101
+ }, [p(y(a), {
95
102
  "hide-error-message": "",
96
- "model-value": B.value,
97
- "end-label": "Select all items",
98
- indeterminate: V.value,
99
- classes: { root: "pointer-events-none" }
100
- }, null, 8, ["model-value", "indeterminate"])], 8, k)) : l("", !0), p(o, {
103
+ size: G.value,
104
+ "model-value": K.value,
105
+ indeterminate: q.value,
106
+ classes: { root: "pointer-events-none" },
107
+ "end-label": y(H)("Select all items")
108
+ }, null, 8, [
109
+ "size",
110
+ "model-value",
111
+ "indeterminate",
112
+ "end-label"
113
+ ])], 8, N)) : l("", !0), p(s, {
101
114
  options: m.options,
102
- draft: F.value,
115
+ size: G.value,
116
+ draft: V.value,
103
117
  multiple: m.multiple,
104
- onToggle: H,
118
+ onToggle: X,
105
119
  name: `filter-${m.columnId}`
106
120
  }, null, 8, [
107
121
  "options",
122
+ "size",
108
123
  "draft",
109
124
  "multiple",
110
125
  "name"
111
126
  ])])) : l("", !0),
112
- d("div", A, [p(v(n), {
127
+ d("div", P, [p(y(r), {
113
128
  size: "sm",
114
129
  variant: "outline",
115
- onClick: W
130
+ onClick: Q
116
131
  }, {
117
- default: b(() => [...s[2] ||= [f(" Reset ", -1)]]),
132
+ default: x(() => [f(v(y(H)("Reset")), 1)]),
118
133
  _: 1
119
- }), p(v(n), {
134
+ }), p(y(r), {
120
135
  size: "sm",
121
- onClick: G
136
+ onClick: $
122
137
  }, {
123
- default: b(() => [...s[3] ||= [f("OK", -1)]]),
138
+ default: x(() => [f(v(y(H)("OK")), 1)]),
124
139
  _: 1
125
140
  })])
126
141
  ])]),
127
142
  _: 1
128
- }, 8, ["modelValue"]));
143
+ }, 8, [
144
+ "modelValue",
145
+ "overlay",
146
+ "custom-props"
147
+ ])]));
129
148
  }
130
149
  });
131
150
  //#endregion
132
- export { j as default };
151
+ export { F as default };
@@ -4,11 +4,14 @@ type __VLS_Props = {
4
4
  multiple: boolean;
5
5
  name: string;
6
6
  options: DataTableFilterOption[];
7
+ size?: "md" | "sm";
7
8
  };
8
9
  declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
9
10
  toggle: (value: string, selected: boolean) => any;
10
11
  }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
11
12
  onToggle?: ((value: string, selected: boolean) => any) | undefined;
12
- }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
13
+ }>, {
14
+ size: "md" | "sm";
15
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
13
16
  declare const _default: typeof __VLS_export;
14
17
  export default _default;
@@ -17,7 +17,8 @@ var p = {
17
17
  draft: {},
18
18
  multiple: { type: Boolean },
19
19
  name: {},
20
- options: {}
20
+ options: {},
21
+ size: { default: "sm" }
21
22
  },
22
23
  emits: ["toggle"],
23
24
  setup(s, { emit: _ }) {
@@ -29,12 +30,14 @@ var p = {
29
30
  let x = u("DataTableFilterOptions", !0);
30
31
  return c(!0), i(n, null, l(s.options, (l) => (c(), i(n, { key: l.value }, [l.children && l.children.length > 0 ? (c(), i("div", p, [a("div", m, d(l.label), 1), a("div", h, [o(x, {
31
32
  name: s.name,
33
+ size: s.size,
32
34
  draft: s.draft,
33
35
  multiple: s.multiple,
34
36
  options: l.children,
35
37
  onToggle: v[0] ||= (e, t) => y("toggle", e, t)
36
38
  }, null, 8, [
37
39
  "name",
40
+ "size",
38
41
  "draft",
39
42
  "multiple",
40
43
  "options"
@@ -46,15 +49,19 @@ var p = {
46
49
  class: "flex w-full cursor-pointer items-center rounded-md px-2 py-1.5 text-start hover:bg-dark-500/5 dark:hover:bg-dark-500/10"
47
50
  }, [s.multiple ? (c(), r(f(e), {
48
51
  key: 0,
49
- size: "sm",
52
+ size: s.size,
50
53
  "hide-error-message": "",
51
54
  "end-label": l.label,
52
55
  "model-value": b(l.value),
53
56
  classes: { root: "pointer-events-none" }
54
- }, null, 8, ["end-label", "model-value"])) : (c(), r(f(t), {
57
+ }, null, 8, [
58
+ "size",
59
+ "end-label",
60
+ "model-value"
61
+ ])) : (c(), r(f(t), {
55
62
  key: 1,
56
- size: "sm",
57
63
  name: s.name,
64
+ size: s.size,
58
65
  "hide-error-message": "",
59
66
  value: l.value,
60
67
  "model-value": s.draft[0],
@@ -62,6 +69,7 @@ var p = {
62
69
  classes: { root: "pointer-events-none" }
63
70
  }, null, 8, [
64
71
  "name",
72
+ "size",
65
73
  "value",
66
74
  "model-value",
67
75
  "end-label"
@@ -1,8 +1,9 @@
1
- import e from "../Checkbox/Checkbox.js";
2
- import t from "../Radio/Radio.js";
3
- import { computed as n, createBlock as r, defineComponent as i, mergeProps as a, openBlock as o, unref as s } from "vue";
1
+ import { useResolveMessage as e } from "../../Adapters/I18n/useI18nAdapter.js";
2
+ import t from "../Checkbox/Checkbox.js";
3
+ import n from "../Radio/Radio.js";
4
+ import { computed as r, createBlock as i, defineComponent as a, mergeProps as o, openBlock as s, unref as c } from "vue";
4
5
  //#region src/Components/DataTable/DataTableSelection.vue?vue&type=script&setup=true&lang.ts
5
- var c = /*@__PURE__*/ i({
6
+ var l = /*@__PURE__*/ a({
6
7
  inheritAttrs: !1,
7
8
  name: "DataTableSelection",
8
9
  __name: "DataTableSelection",
@@ -18,30 +19,30 @@ var c = /*@__PURE__*/ i({
18
19
  value: {}
19
20
  },
20
21
  emits: ["change"],
21
- setup(i, { emit: c }) {
22
- let l = i, u = c, d = n(() => l.kind === "page" ? "Select all rows" : "Select row");
23
- return (n, c) => i.kind === "page" || i.multiple ? (o(), r(s(e), a({
22
+ setup(a, { emit: l }) {
23
+ let u = a, d = l, f = e(), p = r(() => u.kind === "page" ? f("Select all rows") : f("Select row"));
24
+ return (e, r) => a.kind === "page" || a.multiple ? (s(), i(c(t), o({
24
25
  key: 0,
25
- size: i.size,
26
+ size: a.size,
26
27
  "hide-error-message": "",
27
- "model-value": i.checked,
28
- "aria-label": d.value,
29
- indeterminate: i.indeterminate
30
- }, i.checkboxProps, { "onUpdate:modelValue": c[0] ||= (e) => u("change", !!e) }), null, 16, [
28
+ "model-value": a.checked,
29
+ "aria-label": p.value,
30
+ indeterminate: a.indeterminate
31
+ }, a.checkboxProps, { "onUpdate:modelValue": r[0] ||= (e) => d("change", !!e) }), null, 16, [
31
32
  "size",
32
33
  "model-value",
33
34
  "aria-label",
34
35
  "indeterminate"
35
- ])) : (o(), r(s(t), a({
36
+ ])) : (s(), i(c(n), o({
36
37
  key: 1,
37
- size: i.size,
38
- name: i.name,
39
- value: i.value,
38
+ size: a.size,
39
+ name: a.name,
40
+ value: a.value,
40
41
  "hide-error-message": "",
41
- "aria-label": d.value
42
- }, i.radioProps, {
43
- "model-value": i.checked ? i.value : "",
44
- "onUpdate:modelValue": c[1] ||= () => u("change", !0)
42
+ "aria-label": p.value
43
+ }, a.radioProps, {
44
+ "model-value": a.checked ? a.value : "",
45
+ "onUpdate:modelValue": r[1] ||= () => d("change", !0)
45
46
  }), null, 16, [
46
47
  "size",
47
48
  "name",
@@ -52,4 +53,4 @@ var c = /*@__PURE__*/ i({
52
53
  }
53
54
  });
54
55
  //#endregion
55
- export { c as default };
56
+ export { l as default };
@@ -1,7 +1,8 @@
1
+ import { IconSource } from '../../Adapters/Icon';
1
2
  import { ButtonOwnProps } from '../Button/button.types';
2
3
  type __VLS_Props = {
3
4
  buttonProps?: Partial<Omit<ButtonOwnProps, "icon">>;
4
- icon: "columns";
5
+ icon: IconSource;
5
6
  label: string;
6
7
  };
7
8
  declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
@@ -2,11 +2,12 @@ import { Ref, VNode, VNodeChild } from 'vue';
2
2
  import { getDataTableAriaSort, getDataTableSortIcon, DataTableColumnSearch, DataTableFilterOption, DataTableFilters, DataTablePaginationSlotProps, DataTablePerPageSlotProps, DataTableSorting, DataTableStickyEdge, DataTableStickyInset } from '@bridge-ui/core/Domain';
3
3
  import { LibDefaultsShape, MergeLibDefaults } from '@bridge-ui/core/Utils';
4
4
  import { DataTableColumn, DataTableOwnProps, DataTableProps } from '../dataTable.types';
5
- type DataTableLibDefaults = LibDefaultsShape<DataTableOwnProps<unknown>, "full" | "size" | "loading" | "rounded" | "striped" | "variant" | "hoverable" | "stickyHeader" | "selectionMode" | "loadingVariant" | "paginationAlign">;
5
+ type DataTableLibDefaults = LibDefaultsShape<DataTableOwnProps<unknown>, "full" | "size" | "loading" | "rounded" | "striped" | "variant" | "hoverable" | "stickyHeader" | "filterOverlay" | "selectionMode" | "columnsOverlay" | "loadingVariant">;
6
6
  type DataTableMerged<T> = MergeLibDefaults<DataTableOwnProps<T>, DataTableLibDefaults>;
7
7
  export type DataTableHeaderView = {
8
8
  align?: DataTableColumn<unknown>["align"];
9
9
  ariaSort: ReturnType<typeof getDataTableAriaSort>;
10
+ classes?: DataTableColumn<unknown>["classes"];
10
11
  ellipsis: boolean;
11
12
  filterable: boolean;
12
13
  filterActive: boolean;
@@ -29,6 +30,7 @@ export type DataTableHeaderView = {
29
30
  };
30
31
  export type DataTableCellView = {
31
32
  align?: DataTableColumn<unknown>["align"];
33
+ classes?: DataTableColumn<unknown>["classes"];
32
34
  content: VNodeChild;
33
35
  ellipsis: boolean;
34
36
  id: string;
@@ -71,11 +73,14 @@ export declare function useDataTable<T>(props: DataTableOwnProps<T>, libDefaults
71
73
  rowViews: import('vue').ComputedRef<DataTableRowView<T>[]>;
72
74
  rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<{
73
75
  class: string;
74
- }, "class", import('vue').HTMLAttributes | undefined, Partial<Omit<DataTableProps<T>, "search" | "columns" | "size" | "classes" | "customProps" | "full" | "rounded" | "variant" | "page" | "loading" | "rows" | "filters" | "hoverable" | "stickyHeader" | "striped" | "columnSearch" | "expanded" | "getRowId" | "hiddenColumns" | "loadingVariant" | "pageCount" | "paginationAlign" | "perPage" | "perPageOptions" | "selection" | "selectionMode" | "sorting" | "totalCount">>>>;
76
+ }, "class", import('vue').HTMLAttributes | undefined, Partial<Omit<DataTableProps<T>, "search" | "columns" | "size" | "classes" | "customProps" | "full" | "rounded" | "variant" | "page" | "loading" | "rows" | "filters" | "hoverable" | "stickyHeader" | "striped" | "columnSearch" | "columnsOverlay" | "columnsShowFooter" | "expanded" | "filterOverlay" | "getRowId" | "hiddenColumns" | "loadingVariant" | "pageCount" | "perPage" | "perPageOptions" | "selection" | "selectionMode" | "sorting" | "totalCount">>>>;
75
77
  emptyBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<{
76
78
  class: string;
77
79
  }, "class", import('vue').HTMLAttributes | undefined, {}>>;
78
80
  showEmpty: import('vue').ComputedRef<boolean>;
81
+ frameBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<{
82
+ class: string;
83
+ }, "class", {}, {}>>;
79
84
  tableProps: import('vue').ComputedRef<{
80
85
  size: NonNullable<keyof import('@bridge-ui/core/Tokens').TableSize | undefined>;
81
86
  variant: NonNullable<keyof import('@bridge-ui/core/Tokens').TableVariant | undefined>;
@@ -488,7 +493,7 @@ export declare function useDataTable<T>(props: DataTableOwnProps<T>, libDefaults
488
493
  left?: number;
489
494
  right?: number;
490
495
  width?: string | undefined;
491
- minWidth?: string | undefined;
496
+ maxWidth?: string | undefined;
492
497
  };
493
498
  tabindex: number | undefined;
494
499
  "aria-sort": import('@bridge-ui/core/Domain').DataTableAriaSort | undefined;
@@ -512,7 +517,7 @@ export declare function useDataTable<T>(props: DataTableOwnProps<T>, libDefaults
512
517
  left?: number;
513
518
  right?: number;
514
519
  width?: string | undefined;
515
- minWidth?: string | undefined;
520
+ maxWidth?: string | undefined;
516
521
  };
517
522
  class: string;
518
523
  }, "class", import('vue').HTMLAttributes | undefined, {}>;
@@ -532,6 +537,8 @@ export declare function useDataTable<T>(props: DataTableOwnProps<T>, libDefaults
532
537
  class: string;
533
538
  }, "class", {}, {}>>;
534
539
  paginationBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<{
540
+ onVnodeMounted: (vnode: VNode) => void;
541
+ onVnodeUnmounted: () => void;
535
542
  class: string;
536
543
  }, "class", {}, {}>>;
537
544
  selectAllState: import('vue').ComputedRef<{
@@ -551,6 +558,7 @@ export declare function useDataTable<T>(props: DataTableOwnProps<T>, libDefaults
551
558
  visibilityEnabled: import('vue').ComputedRef<boolean>;
552
559
  paginationSlotProps: import('vue').ComputedRef<DataTablePaginationSlotProps>;
553
560
  onCommitColumnFilter: (columnId: string, values: string[], query: string) => void;
561
+ onHiddenColumnsChange: (ids: string[]) => void;
554
562
  onToggleColumnVisibility: (columnId: string, hide: boolean) => void;
555
563
  loadingBar: import('vue').ComputedRef<boolean>;
556
564
  };