@bridge-ui/vue 0.2.0 → 0.3.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 (107) hide show
  1. package/ai/skills/bridge-ui-components/SKILL.md +3 -1
  2. package/dist/Components/Autocomplete/composables/useAutocomplete.d.ts +1 -1
  3. package/dist/Components/ColorField/composables/useColorField.d.ts +2 -1
  4. package/dist/Components/DataTable/DataTable.js +5 -0
  5. package/dist/Components/DataTable/DataTable.vue.d.ts +43 -0
  6. package/dist/Components/DataTable/DataTable.vue_vue_type_script_setup_true_lang.js +382 -0
  7. package/dist/Components/DataTable/DataTableCellContent.js +5 -0
  8. package/dist/Components/DataTable/DataTableCellContent.vue.d.ts +23 -0
  9. package/dist/Components/DataTable/DataTableCellContent.vue_vue_type_script_setup_true_lang.js +38 -0
  10. package/dist/Components/DataTable/DataTableColumnsMenu.js +5 -0
  11. package/dist/Components/DataTable/DataTableColumnsMenu.vue.d.ts +11 -0
  12. package/dist/Components/DataTable/DataTableColumnsMenu.vue_vue_type_script_setup_true_lang.js +47 -0
  13. package/dist/Components/DataTable/DataTableFilterMenu.js +5 -0
  14. package/dist/Components/DataTable/DataTableFilterMenu.vue.d.ts +17 -0
  15. package/dist/Components/DataTable/DataTableFilterMenu.vue_vue_type_script_setup_true_lang.js +132 -0
  16. package/dist/Components/DataTable/DataTableFilterOptions.js +5 -0
  17. package/dist/Components/DataTable/DataTableFilterOptions.vue.d.ts +14 -0
  18. package/dist/Components/DataTable/DataTableFilterOptions.vue_vue_type_script_setup_true_lang.js +73 -0
  19. package/dist/Components/DataTable/DataTableSearch.js +5 -0
  20. package/dist/Components/DataTable/DataTableSearch.vue.d.ts +12 -0
  21. package/dist/Components/DataTable/DataTableSearch.vue_vue_type_script_setup_true_lang.js +39 -0
  22. package/dist/Components/DataTable/DataTableSelection.js +5 -0
  23. package/dist/Components/DataTable/DataTableSelection.vue.d.ts +20 -0
  24. package/dist/Components/DataTable/DataTableSelection.vue_vue_type_script_setup_true_lang.js +55 -0
  25. package/dist/Components/DataTable/DataTableSortButton.js +5 -0
  26. package/dist/Components/DataTable/DataTableSortButton.vue.d.ts +17 -0
  27. package/dist/Components/DataTable/DataTableSortButton.vue_vue_type_script_setup_true_lang.js +43 -0
  28. package/dist/Components/DataTable/DataTableToolbarButton.js +5 -0
  29. package/dist/Components/DataTable/DataTableToolbarButton.vue.d.ts +13 -0
  30. package/dist/Components/DataTable/DataTableToolbarButton.vue_vue_type_script_setup_true_lang.js +31 -0
  31. package/dist/Components/DataTable/composables/useDataTable.d.ts +557 -0
  32. package/dist/Components/DataTable/composables/useDataTable.js +479 -0
  33. package/dist/Components/DataTable/dataTable.types.d.ts +480 -0
  34. package/dist/Components/DataTable/index.d.ts +3 -0
  35. package/dist/Components/DataTable/index.js +3 -0
  36. package/dist/Components/DateField/composables/useDateField.d.ts +2 -1
  37. package/dist/Components/DateRangeField/composables/useDateRangeField.d.ts +2 -1
  38. package/dist/Components/DateTimeField/composables/useDateTimeField.d.ts +2 -1
  39. package/dist/Components/DateTimeRangeField/composables/useDateTimeRangeField.d.ts +2 -1
  40. package/dist/Components/FormField/composables/useFormField.d.ts +1 -1
  41. package/dist/Components/Menu/Menu.vue_vue_type_script_setup_true_lang.js +1 -0
  42. package/dist/Components/Menu/composables/useMenu.d.ts +1 -1
  43. package/dist/Components/Menu/composables/useMenu.js +7 -3
  44. package/dist/Components/Menu/menu.types.d.ts +6 -0
  45. package/dist/Components/NumberField/composables/useNumberField.d.ts +1 -1
  46. package/dist/Components/PasswordField/composables/usePasswordField.d.ts +1 -1
  47. package/dist/Components/Radio/Radio.vue_vue_type_script_setup_true_lang.js +9 -9
  48. package/dist/Components/Radio/composables/useRadio.js +57 -54
  49. package/dist/Components/Select/composables/useSelect.d.ts +1 -1
  50. package/dist/Components/Slider/composables/useSlider.d.ts +2 -2
  51. package/dist/Components/Snackbar/composables/useSnackbar.d.ts +1 -1
  52. package/dist/Components/Table/Table.js +5 -0
  53. package/dist/Components/Table/Table.vue.d.ts +16 -0
  54. package/dist/Components/Table/Table.vue_vue_type_script_setup_true_lang.js +44 -0
  55. package/dist/Components/Table/TableBody.js +5 -0
  56. package/dist/Components/Table/TableBody.vue.d.ts +11 -0
  57. package/dist/Components/Table/TableBody.vue_vue_type_script_setup_true_lang.js +17 -0
  58. package/dist/Components/Table/TableCaption.js +5 -0
  59. package/dist/Components/Table/TableCaption.vue.d.ts +11 -0
  60. package/dist/Components/Table/TableCaption.vue_vue_type_script_setup_true_lang.js +17 -0
  61. package/dist/Components/Table/TableCell.js +5 -0
  62. package/dist/Components/Table/TableCell.vue.d.ts +11 -0
  63. package/dist/Components/Table/TableCell.vue_vue_type_script_setup_true_lang.js +19 -0
  64. package/dist/Components/Table/TableFooter.js +5 -0
  65. package/dist/Components/Table/TableFooter.vue.d.ts +11 -0
  66. package/dist/Components/Table/TableFooter.vue_vue_type_script_setup_true_lang.js +17 -0
  67. package/dist/Components/Table/TableHead.js +5 -0
  68. package/dist/Components/Table/TableHead.vue.d.ts +11 -0
  69. package/dist/Components/Table/TableHead.vue_vue_type_script_setup_true_lang.js +19 -0
  70. package/dist/Components/Table/TableHeader.js +5 -0
  71. package/dist/Components/Table/TableHeader.vue.d.ts +11 -0
  72. package/dist/Components/Table/TableHeader.vue_vue_type_script_setup_true_lang.js +17 -0
  73. package/dist/Components/Table/TableRow.js +5 -0
  74. package/dist/Components/Table/TableRow.vue.d.ts +11 -0
  75. package/dist/Components/Table/TableRow.vue_vue_type_script_setup_true_lang.js +17 -0
  76. package/dist/Components/Table/composables/useTable.d.ts +16 -0
  77. package/dist/Components/Table/composables/useTable.js +88 -0
  78. package/dist/Components/Table/composables/useTableCell.d.ts +12 -0
  79. package/dist/Components/Table/composables/useTableCell.js +40 -0
  80. package/dist/Components/Table/composables/useTablePart.d.ts +12 -0
  81. package/dist/Components/Table/composables/useTablePart.js +32 -0
  82. package/dist/Components/Table/composables/useTableRow.d.ts +6 -0
  83. package/dist/Components/Table/composables/useTableRow.js +29 -0
  84. package/dist/Components/Table/index.d.ts +14 -0
  85. package/dist/Components/Table/index.js +14 -0
  86. package/dist/Components/Table/table.types.d.ts +416 -0
  87. package/dist/Components/Table/tableInjectionKey.d.ts +114 -0
  88. package/dist/Components/Table/tableInjectionKey.js +4 -0
  89. package/dist/Components/TextField/composables/useTextField.d.ts +1 -1
  90. package/dist/Components/Textarea/composables/useTextarea.d.ts +1 -1
  91. package/dist/Components/TimeField/composables/useTimeField.d.ts +2 -1
  92. package/dist/Components/TimeRangeField/composables/useTimeRangeField.d.ts +2 -1
  93. package/docs/README.md +2 -0
  94. package/docs/components/CalendarDate.md +1 -1
  95. package/docs/components/DataTable.md +345 -0
  96. package/docs/components/DateField.md +2 -2
  97. package/docs/components/DatePicker.md +3 -3
  98. package/docs/components/DateRangePicker.md +1 -1
  99. package/docs/components/Pagination.md +2 -2
  100. package/docs/components/Table.md +122 -0
  101. package/docs/examples/i18n-dictionary.ts +4 -0
  102. package/docs/examples/icon-fontawesome.ts +8 -0
  103. package/docs/examples/icon-heroicons.ts +8 -0
  104. package/docs/examples/icon-lucide.ts +8 -0
  105. package/docs/examples/icon-phosphor.ts +8 -0
  106. package/docs/examples/icon-tabler.ts +8 -0
  107. package/package.json +9 -2
@@ -0,0 +1,88 @@
1
+ import { mergePartBind as e, useBridgeUIComponent as t, useBridgeUIMergedRegistryClasses as n } from "../../../Utils/index.js";
2
+ import { TABLE_INJECTION_KEY as r } from "../tableInjectionKey.js";
3
+ import { computed as i, provide as a, useAttrs as o } from "vue";
4
+ import { get as s } from "es-toolkit/compat";
5
+ import { tableAlignProps as c, tableRoundedProps as l, tableSizeProps as u, tableVariantProps as d } from "@bridge-ui/core/Tokens";
6
+ import { cn as f, mergeBridgeUILayeredClasses as p, splitComponentProps as m } from "@bridge-ui/core/Utils";
7
+ //#region src/Components/Table/composables/useTable.ts
8
+ var h = [
9
+ "full",
10
+ "size",
11
+ "classes",
12
+ "rounded",
13
+ "striped",
14
+ "variant",
15
+ "hoverable",
16
+ "customProps",
17
+ "stickyHeader"
18
+ ];
19
+ function g(g, _) {
20
+ let v = o(), y = i(() => m({
21
+ bridgeKeys: h,
22
+ props: {
23
+ ...v,
24
+ ...g
25
+ }
26
+ })), { merged: b, entry: x } = t({
27
+ libDefaults: _,
28
+ componentName: "Table",
29
+ props: () => y.value.componentProps
30
+ }), S = n({
31
+ entry: x,
32
+ props: () => y.value.componentProps
33
+ }), C = i(() => p(u, x.value?.tokens?.size)), w = i(() => p(d, x.value?.tokens?.variant)), T = i(() => p(c, x.value?.tokens?.align)), E = i(() => p(l, x.value?.tokens?.rounded)), D = i(() => s(C.value, b.value.size)), O = i(() => s(w.value, b.value.variant)), k = i(() => s(E.value, b.value.rounded)), A = i(() => ({
34
+ full: b.value.full === !0,
35
+ striped: b.value.striped === !0,
36
+ hoverable: b.value.hoverable === !0,
37
+ stickyHeader: b.value.stickyHeader === !0,
38
+ mergedClasses: {
39
+ row: s(S.value, "row"),
40
+ body: s(S.value, "body"),
41
+ cell: s(S.value, "cell"),
42
+ head: s(S.value, "head"),
43
+ footer: s(S.value, "footer"),
44
+ header: s(S.value, "header"),
45
+ caption: s(S.value, "caption")
46
+ },
47
+ tokenClasses: {
48
+ sizeHead: s(D.value, "head"),
49
+ sizeCell: s(D.value, "cell"),
50
+ align: T.value,
51
+ variantRow: s(O.value, "row"),
52
+ sizeCaption: s(D.value, "caption"),
53
+ variantBody: s(O.value, "body"),
54
+ variantHead: s(O.value, "head"),
55
+ variantCell: s(O.value, "cell"),
56
+ variantFooter: s(O.value, "footer"),
57
+ variantHeader: s(O.value, "header"),
58
+ roundedFooter: s(k.value, "footer"),
59
+ roundedHeader: s(k.value, "header"),
60
+ variantCaption: s(O.value, "caption"),
61
+ variantRowHover: s(O.value, "rowHover"),
62
+ variantRowStriped: s(O.value, "rowStriped"),
63
+ variantHeadSticky: s(O.value, "headSticky")
64
+ }
65
+ }));
66
+ return a(r, A), {
67
+ merged: b,
68
+ rootBind: i(() => e(b.value.customProps?.root, y.value.inheritedAttrs, { class: f({
69
+ "overflow-x-auto": b.value.stickyHeader !== !0,
70
+ [s(D.value, "root") ?? ""]: !0,
71
+ [s(O.value, "root") ?? ""]: !0,
72
+ [s(k.value, "root") ?? ""]: !0,
73
+ [s(S.value, "root") ?? ""]: !0
74
+ }) })),
75
+ tableBind: i(() => {
76
+ let t = b.value.stickyHeader === !0 ? s(O.value, "tableSticky") : s(O.value, "table");
77
+ return e(b.value.customProps?.table, {}, { class: f({
78
+ "min-w-full": b.value.full === !0,
79
+ [s(D.value, "table") ?? ""]: !0,
80
+ [t ?? ""]: !0,
81
+ [s(S.value, "table") ?? ""]: !0
82
+ }) });
83
+ }),
84
+ contextValue: A
85
+ };
86
+ }
87
+ //#endregion
88
+ export { g as useTable };
@@ -0,0 +1,12 @@
1
+ import { TableCellOwnProps, TableCellProps, TableHeadOwnProps, TableHeadProps } from '../table.types';
2
+ type TableCellKind = "cell" | "head";
3
+ /**
4
+ * Bind for `TableCell` (`td`) and `TableHead` (`th`).
5
+ */
6
+ export declare function useTableCell(props: TableCellOwnProps | TableHeadOwnProps, part: TableCellKind): {
7
+ rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<{
8
+ scope: string | undefined;
9
+ class: string;
10
+ }, "class", import('vue').TdHTMLAttributes | import('vue').ThHTMLAttributes | undefined, Omit<TableCellProps | TableHeadProps, "classes" | "customProps" | "numeric" | "align">>>;
11
+ };
12
+ export {};
@@ -0,0 +1,40 @@
1
+ import { mergePartBind as e } from "../../../Utils/index.js";
2
+ import { TABLE_INJECTION_KEY as t, TABLE_SECTION_INJECTION_KEY as n } from "../tableInjectionKey.js";
3
+ import { computed as r, inject as i, useAttrs as a } from "vue";
4
+ import { get as o } from "es-toolkit/compat";
5
+ import { cn as s, splitComponentProps as c } from "@bridge-ui/core/Utils";
6
+ //#region src/Components/Table/composables/useTableCell.ts
7
+ var l = [
8
+ "align",
9
+ "classes",
10
+ "numeric",
11
+ "customProps"
12
+ ];
13
+ function u(u, d) {
14
+ let f = a(), p = i(t, null), m = i(n, null);
15
+ if (!p) throw Error("Table parts must be used within a Table provider");
16
+ let h = r(() => c({
17
+ props: {
18
+ ...f,
19
+ ...u
20
+ },
21
+ bridgeKeys: l
22
+ }));
23
+ return { rootBind: r(() => {
24
+ let t = p.value, n = h.value.componentProps.numeric === !0, r = h.value.componentProps.align ?? (n ? "end" : "start"), i = o(t.tokenClasses.align, r), a = d === "head" ? t.tokenClasses.sizeHead : t.tokenClasses.sizeCell, c = d === "head" ? t.tokenClasses.variantHead : t.tokenClasses.variantCell, l = d === "head" ? o(i, "head") : o(i, "cell"), u = d === "head" ? t.mergedClasses.head : t.mergedClasses.cell, f = d === "head" && t.stickyHeader && m?.value === "header";
25
+ return e(h.value.componentProps.customProps?.root, h.value.inheritedAttrs, {
26
+ scope: d === "head" ? "col" : void 0,
27
+ class: s({
28
+ "tabular-nums": n,
29
+ [a ?? ""]: !0,
30
+ [l ?? ""]: !0,
31
+ [c ?? ""]: !0,
32
+ [u ?? ""]: !0,
33
+ [h.value.componentProps.classes?.root ?? ""]: !0,
34
+ [t.tokenClasses.variantHeadSticky ?? ""]: f
35
+ })
36
+ });
37
+ }) };
38
+ }
39
+ //#endregion
40
+ export { u as useTableCell };
@@ -0,0 +1,12 @@
1
+ import { TableBodyProps, TableCaptionProps, TableFooterProps, TableHeaderProps } from '../table.types';
2
+ type TablePartKind = "body" | "footer" | "header" | "caption";
3
+ type TablePartProps = TableBodyProps | TableFooterProps | TableHeaderProps | TableCaptionProps;
4
+ /**
5
+ * Bind for `TableHeader` / `TableBody` / `TableFooter` / `TableCaption`.
6
+ */
7
+ export declare function useTablePart(props: TablePartProps, part: TablePartKind): {
8
+ rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<{
9
+ class: string;
10
+ }, "class", import('vue').HTMLAttributes | undefined, Omit<TablePartProps, "classes" | "customProps">>>;
11
+ };
12
+ export {};
@@ -0,0 +1,32 @@
1
+ import { mergePartBind as e } from "../../../Utils/index.js";
2
+ import { TABLE_INJECTION_KEY as t, TABLE_SECTION_INJECTION_KEY as n } from "../tableInjectionKey.js";
3
+ import { computed as r, inject as i, provide as a, useAttrs as o } from "vue";
4
+ import { cn as s, splitComponentProps as c } from "@bridge-ui/core/Utils";
5
+ //#region src/Components/Table/composables/useTablePart.ts
6
+ var l = ["classes", "customProps"];
7
+ function u(u, d) {
8
+ let f = o(), p = i(t, null);
9
+ if (!p) throw Error("Table parts must be used within a Table provider");
10
+ d !== "caption" && a(n, r(() => d));
11
+ let m = r(() => c({
12
+ props: {
13
+ ...f,
14
+ ...u
15
+ },
16
+ bridgeKeys: l
17
+ }));
18
+ return { rootBind: r(() => {
19
+ let t = p.value, n = d === "header" ? t.tokenClasses.variantHeader : d === "body" ? t.tokenClasses.variantBody : d === "footer" ? t.tokenClasses.variantFooter : t.tokenClasses.variantCaption, r = d === "caption" ? t.tokenClasses.sizeCaption : void 0;
20
+ return e(m.value.componentProps.customProps?.root, m.value.inheritedAttrs, { class: s({
21
+ "sticky top-0 z-20": d === "header" && t.stickyHeader,
22
+ [r ?? ""]: !0,
23
+ [n ?? ""]: !0,
24
+ [t.tokenClasses.roundedHeader ?? ""]: d === "header",
25
+ [t.tokenClasses.roundedFooter ?? ""]: d === "footer",
26
+ [t.mergedClasses[d] ?? ""]: !0,
27
+ [m.value.componentProps.classes?.root ?? ""]: !0
28
+ }) });
29
+ }) };
30
+ }
31
+ //#endregion
32
+ export { u as useTablePart };
@@ -0,0 +1,6 @@
1
+ import { TableRowOwnProps, TableRowProps } from '../table.types';
2
+ export declare function useTableRow(props: TableRowOwnProps): {
3
+ rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<{
4
+ class: string;
5
+ }, "class", import('vue').HTMLAttributes | undefined, Omit<TableRowProps, "classes" | "customProps">>>;
6
+ };
@@ -0,0 +1,29 @@
1
+ import { mergePartBind as e } from "../../../Utils/index.js";
2
+ import { TABLE_INJECTION_KEY as t, TABLE_SECTION_INJECTION_KEY as n } from "../tableInjectionKey.js";
3
+ import { computed as r, inject as i, useAttrs as a } from "vue";
4
+ import { cn as o, splitComponentProps as s } from "@bridge-ui/core/Utils";
5
+ //#region src/Components/Table/composables/useTableRow.ts
6
+ var c = ["classes", "customProps"];
7
+ function l(l) {
8
+ let u = a(), d = i(t, null), f = i(n, null);
9
+ if (!d) throw Error("Table parts must be used within a Table provider");
10
+ let p = r(() => s({
11
+ props: {
12
+ ...u,
13
+ ...l
14
+ },
15
+ bridgeKeys: c
16
+ }));
17
+ return { rootBind: r(() => {
18
+ let t = d.value, n = f?.value === "body";
19
+ return e(p.value.componentProps.customProps?.root, p.value.inheritedAttrs, { class: o({
20
+ [t.tokenClasses.variantRow ?? ""]: !0,
21
+ [t.mergedClasses.row ?? ""]: !0,
22
+ [p.value.componentProps.classes?.root ?? ""]: !0,
23
+ [t.tokenClasses.variantRowHover ?? ""]: n && t.hoverable,
24
+ [t.tokenClasses.variantRowStriped ?? ""]: n && t.striped
25
+ }) });
26
+ }) };
27
+ }
28
+ //#endregion
29
+ export { l as useTableRow };
@@ -0,0 +1,14 @@
1
+ export { useTable } from './composables/useTable';
2
+ export { useTableCell } from './composables/useTableCell';
3
+ export { useTablePart } from './composables/useTablePart';
4
+ export { useTableRow } from './composables/useTableRow';
5
+ export type { TableAlignOverrides, TableBodyClasses, TableBodyCustomProps, TableBodyOwnProps, TableBodyProps, TableBodySlots, TableCaptionClasses, TableCaptionCustomProps, TableCaptionOwnProps, TableCaptionProps, TableCaptionSlots, TableCellClasses, TableCellCustomProps, TableCellOwnProps, TableCellProps, TableCellSlots, TableClasses, TableCustomProps, TableFooterClasses, TableFooterCustomProps, TableFooterOwnProps, TableFooterProps, TableFooterSlots, TableHeadClasses, TableHeadCustomProps, TableHeadOwnProps, TableHeadProps, TableHeadSlots, TableHeaderClasses, TableHeaderCustomProps, TableHeaderOwnProps, TableHeaderProps, TableHeaderSlots, TableOwnProps, TableProps, TableRoundedOverrides, TableRowClasses, TableRowCustomProps, TableRowOwnProps, TableRowProps, TableRowSlots, TableSizeOverrides, TableSlots, TableVariantOverrides, } from './table.types';
6
+ export { default as Table } from './Table.vue';
7
+ export { default as TableBody } from './TableBody.vue';
8
+ export { default as TableCaption } from './TableCaption.vue';
9
+ export { default as TableCell } from './TableCell.vue';
10
+ export { default as TableFooter } from './TableFooter.vue';
11
+ export { default as TableHead } from './TableHead.vue';
12
+ export { default as TableHeader } from './TableHeader.vue';
13
+ export { TABLE_INJECTION_KEY, TABLE_SECTION_INJECTION_KEY, type TableContextValue, type TableSection, type TableTokenClasses, } from './tableInjectionKey';
14
+ export { default as TableRow } from './TableRow.vue';
@@ -0,0 +1,14 @@
1
+ import { TABLE_INJECTION_KEY as e, TABLE_SECTION_INJECTION_KEY as t } from "./tableInjectionKey.js";
2
+ import { useTable as n } from "./composables/useTable.js";
3
+ import { useTableCell as r } from "./composables/useTableCell.js";
4
+ import { useTablePart as i } from "./composables/useTablePart.js";
5
+ import { useTableRow as a } from "./composables/useTableRow.js";
6
+ import o from "./Table.js";
7
+ import s from "./TableBody.js";
8
+ import c from "./TableCaption.js";
9
+ import l from "./TableCell.js";
10
+ import u from "./TableFooter.js";
11
+ import d from "./TableHead.js";
12
+ import f from "./TableHeader.js";
13
+ import p from "./TableRow.js";
14
+ export { e as TABLE_INJECTION_KEY, t as TABLE_SECTION_INJECTION_KEY, o as Table, s as TableBody, c as TableCaption, l as TableCell, u as TableFooter, d as TableHead, f as TableHeader, p as TableRow, n as useTable, r as useTableCell, i as useTablePart, a as useTableRow };
@@ -0,0 +1,416 @@
1
+ import { HTMLAttributes, Slot, TdHTMLAttributes, ThHTMLAttributes } from 'vue';
2
+ import { TableAlign, TableRounded, TableSize, TableVariant } from '@bridge-ui/core/Tokens';
3
+ import { MergeHtmlProps, MergeProps } from '@bridge-ui/core/Utils';
4
+ export interface TableSizeOverrides {}
5
+ export interface TableAlignOverrides {}
6
+ export interface TableRoundedOverrides {}
7
+ export interface TableVariantOverrides {}
8
+ export interface TableBodyClasses {
9
+ /**
10
+ * Classes merged onto the `tbody`.
11
+ */
12
+ root?: string;
13
+ }
14
+ export interface TableBodyCustomProps {
15
+ /**
16
+ * Props forwarded to the `tbody`.
17
+ *
18
+ * @default undefined
19
+ */
20
+ root?: HTMLAttributes;
21
+ }
22
+ /**
23
+ * Table body (`tbody`). Must be used inside `Table`.
24
+ */
25
+ export interface TableBodyOwnProps {
26
+ /**
27
+ * Classes for the body.
28
+ *
29
+ * @default undefined
30
+ */
31
+ classes?: TableBodyClasses;
32
+ /**
33
+ * Extra props for the `tbody`.
34
+ *
35
+ * @default undefined
36
+ */
37
+ customProps?: TableBodyCustomProps;
38
+ }
39
+ export interface TableBodySlots {
40
+ /**
41
+ * Body rows.
42
+ */
43
+ default?: Slot<undefined>;
44
+ }
45
+ export interface TableCaptionClasses {
46
+ /**
47
+ * Classes merged onto the caption.
48
+ */
49
+ root?: string;
50
+ }
51
+ export interface TableCaptionCustomProps {
52
+ /**
53
+ * Props forwarded to the caption.
54
+ *
55
+ * @default undefined
56
+ */
57
+ root?: HTMLAttributes;
58
+ }
59
+ /**
60
+ * Table caption. Must be used inside `Table`.
61
+ */
62
+ export interface TableCaptionOwnProps {
63
+ /**
64
+ * Classes for the caption.
65
+ *
66
+ * @default undefined
67
+ */
68
+ classes?: TableCaptionClasses;
69
+ /**
70
+ * Extra props for the caption.
71
+ *
72
+ * @default undefined
73
+ */
74
+ customProps?: TableCaptionCustomProps;
75
+ }
76
+ export interface TableCaptionSlots {
77
+ /**
78
+ * Caption content.
79
+ */
80
+ default?: Slot<undefined>;
81
+ }
82
+ export interface TableCellClasses {
83
+ /**
84
+ * Classes merged onto the `td`.
85
+ */
86
+ root?: string;
87
+ }
88
+ export interface TableCellCustomProps {
89
+ /**
90
+ * Props forwarded to the `td`.
91
+ *
92
+ * @default undefined
93
+ */
94
+ root?: TdHTMLAttributes;
95
+ }
96
+ /**
97
+ * Table body cell (`td`). Must be used inside `Table`.
98
+ */
99
+ export interface TableCellOwnProps {
100
+ /**
101
+ * Text alignment.
102
+ *
103
+ * @default "start"
104
+ */
105
+ align?: MergeProps<TableAlign, TableAlignOverrides>;
106
+ /**
107
+ * Classes for the cell.
108
+ *
109
+ * @default undefined
110
+ */
111
+ classes?: TableCellClasses;
112
+ /**
113
+ * Extra props for the `td`.
114
+ *
115
+ * @default undefined
116
+ */
117
+ customProps?: TableCellCustomProps;
118
+ /**
119
+ * Tabular numbers and end alignment (unless `align` is set).
120
+ *
121
+ * @default false
122
+ */
123
+ numeric?: boolean;
124
+ }
125
+ export interface TableCellSlots {
126
+ /**
127
+ * Cell content.
128
+ */
129
+ default?: Slot<undefined>;
130
+ }
131
+ export interface TableClasses {
132
+ /**
133
+ * Classes merged onto the `tbody`.
134
+ */
135
+ body?: string;
136
+ /**
137
+ * Classes merged onto the caption.
138
+ */
139
+ caption?: string;
140
+ /**
141
+ * Classes merged onto body cells.
142
+ */
143
+ cell?: string;
144
+ /**
145
+ * Classes merged onto the `tfoot`.
146
+ */
147
+ footer?: string;
148
+ /**
149
+ * Classes merged onto header cells.
150
+ */
151
+ head?: string;
152
+ /**
153
+ * Classes merged onto the `thead`.
154
+ */
155
+ header?: string;
156
+ /**
157
+ * Classes merged onto the wrapper around `<table>`.
158
+ */
159
+ root?: string;
160
+ /**
161
+ * Classes merged onto rows.
162
+ */
163
+ row?: string;
164
+ /**
165
+ * Classes merged onto the `<table>` element.
166
+ */
167
+ table?: string;
168
+ }
169
+ export interface TableCustomProps {
170
+ /**
171
+ * Props forwarded to the wrapper around `<table>`.
172
+ *
173
+ * @default undefined
174
+ */
175
+ root?: HTMLAttributes;
176
+ /**
177
+ * Props forwarded to the `<table>` element.
178
+ *
179
+ * @default undefined
180
+ */
181
+ table?: HTMLAttributes;
182
+ }
183
+ export interface TableFooterClasses {
184
+ /**
185
+ * Classes merged onto the `tfoot`.
186
+ */
187
+ root?: string;
188
+ }
189
+ export interface TableFooterCustomProps {
190
+ /**
191
+ * Props forwarded to the `tfoot`.
192
+ *
193
+ * @default undefined
194
+ */
195
+ root?: HTMLAttributes;
196
+ }
197
+ /**
198
+ * Table footer (`tfoot`). Must be used inside `Table`.
199
+ */
200
+ export interface TableFooterOwnProps {
201
+ /**
202
+ * Classes for the footer.
203
+ *
204
+ * @default undefined
205
+ */
206
+ classes?: TableFooterClasses;
207
+ /**
208
+ * Extra props for the `tfoot`.
209
+ *
210
+ * @default undefined
211
+ */
212
+ customProps?: TableFooterCustomProps;
213
+ }
214
+ export interface TableFooterSlots {
215
+ /**
216
+ * Footer rows.
217
+ */
218
+ default?: Slot<undefined>;
219
+ }
220
+ export interface TableHeadClasses {
221
+ /**
222
+ * Classes merged onto the `th`.
223
+ */
224
+ root?: string;
225
+ }
226
+ export interface TableHeadCustomProps {
227
+ /**
228
+ * Props forwarded to the `th`.
229
+ *
230
+ * @default undefined
231
+ */
232
+ root?: ThHTMLAttributes;
233
+ }
234
+ /**
235
+ * Table header cell (`th`). Must be used inside `Table`.
236
+ */
237
+ export interface TableHeadOwnProps {
238
+ /**
239
+ * Text alignment.
240
+ *
241
+ * @default "start"
242
+ */
243
+ align?: MergeProps<TableAlign, TableAlignOverrides>;
244
+ /**
245
+ * Classes for the header cell.
246
+ *
247
+ * @default undefined
248
+ */
249
+ classes?: TableHeadClasses;
250
+ /**
251
+ * Extra props for the `th`.
252
+ *
253
+ * @default undefined
254
+ */
255
+ customProps?: TableHeadCustomProps;
256
+ /**
257
+ * Tabular numbers and end alignment (unless `align` is set).
258
+ *
259
+ * @default false
260
+ */
261
+ numeric?: boolean;
262
+ }
263
+ export interface TableHeadSlots {
264
+ /**
265
+ * Header cell content.
266
+ */
267
+ default?: Slot<undefined>;
268
+ }
269
+ export interface TableHeaderClasses {
270
+ /**
271
+ * Classes merged onto the `thead`.
272
+ */
273
+ root?: string;
274
+ }
275
+ export interface TableHeaderCustomProps {
276
+ /**
277
+ * Props forwarded to the `thead`.
278
+ *
279
+ * @default undefined
280
+ */
281
+ root?: HTMLAttributes;
282
+ }
283
+ /**
284
+ * Table header (`thead`). Must be used inside `Table`.
285
+ */
286
+ export interface TableHeaderOwnProps {
287
+ /**
288
+ * Classes for the header.
289
+ *
290
+ * @default undefined
291
+ */
292
+ classes?: TableHeaderClasses;
293
+ /**
294
+ * Extra props for the `thead`.
295
+ *
296
+ * @default undefined
297
+ */
298
+ customProps?: TableHeaderCustomProps;
299
+ }
300
+ export interface TableHeaderSlots {
301
+ /**
302
+ * Header rows.
303
+ */
304
+ default?: Slot<undefined>;
305
+ }
306
+ /**
307
+ * Presentational table root. Compose with `TableHeader`, `TableBody`,
308
+ * `TableRow`, `TableHead`, and `TableCell`.
309
+ */
310
+ export interface TableOwnProps {
311
+ /**
312
+ * Classes for table parts.
313
+ *
314
+ * @default undefined
315
+ */
316
+ classes?: TableClasses;
317
+ /**
318
+ * Extra props for the wrapper and `<table>`.
319
+ *
320
+ * @default undefined
321
+ */
322
+ customProps?: TableCustomProps;
323
+ /**
324
+ * Stretch the table to at least the wrapper width.
325
+ *
326
+ * @default true
327
+ */
328
+ full?: boolean;
329
+ /**
330
+ * Row hover styles on the body.
331
+ *
332
+ * @default false
333
+ */
334
+ hoverable?: boolean;
335
+ /**
336
+ * Corner radius of the wrapper, header, and footer.
337
+ *
338
+ * @default "lg"
339
+ */
340
+ rounded?: MergeProps<TableRounded, TableRoundedOverrides>;
341
+ /**
342
+ * Cell padding / type scale.
343
+ *
344
+ * @default "md"
345
+ */
346
+ size?: MergeProps<TableSize, TableSizeOverrides>;
347
+ /**
348
+ * Stick header cells to the top of the nearest scrollport (usually the page).
349
+ *
350
+ * @default false
351
+ */
352
+ stickyHeader?: boolean;
353
+ /**
354
+ * Alternating body row surfaces.
355
+ *
356
+ * @default false
357
+ */
358
+ striped?: boolean;
359
+ /**
360
+ * Chrome treatment. Pair with Pagination `text` / `ghost` / `outlined`.
361
+ *
362
+ * @default "plain"
363
+ */
364
+ variant?: MergeProps<TableVariant, TableVariantOverrides>;
365
+ }
366
+ export interface TableRowClasses {
367
+ /**
368
+ * Classes merged onto the `tr`.
369
+ */
370
+ root?: string;
371
+ }
372
+ export interface TableRowCustomProps {
373
+ /**
374
+ * Props forwarded to the `tr`.
375
+ *
376
+ * @default undefined
377
+ */
378
+ root?: HTMLAttributes;
379
+ }
380
+ /**
381
+ * Table row (`tr`). Must be used inside `Table`.
382
+ */
383
+ export interface TableRowOwnProps {
384
+ /**
385
+ * Classes for the row.
386
+ *
387
+ * @default undefined
388
+ */
389
+ classes?: TableRowClasses;
390
+ /**
391
+ * Extra props for the `tr`.
392
+ *
393
+ * @default undefined
394
+ */
395
+ customProps?: TableRowCustomProps;
396
+ }
397
+ export interface TableRowSlots {
398
+ /**
399
+ * Row cells.
400
+ */
401
+ default?: Slot<undefined>;
402
+ }
403
+ export interface TableSlots {
404
+ /**
405
+ * Table sections and caption.
406
+ */
407
+ default?: Slot<undefined>;
408
+ }
409
+ export type TableBodyProps = MergeHtmlProps<TableBodyOwnProps, HTMLAttributes>;
410
+ export type TableCaptionProps = MergeHtmlProps<TableCaptionOwnProps, HTMLAttributes>;
411
+ export type TableCellProps = MergeHtmlProps<TableCellOwnProps, TdHTMLAttributes>;
412
+ export type TableFooterProps = MergeHtmlProps<TableFooterOwnProps, HTMLAttributes>;
413
+ export type TableHeadProps = MergeHtmlProps<TableHeadOwnProps, ThHTMLAttributes>;
414
+ export type TableHeaderProps = MergeHtmlProps<TableHeaderOwnProps, HTMLAttributes>;
415
+ export type TableProps = MergeHtmlProps<TableOwnProps, HTMLAttributes>;
416
+ export type TableRowProps = MergeHtmlProps<TableRowOwnProps, HTMLAttributes>;