@redis-ui/table 2.4.0 → 2.18.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 (154) hide show
  1. package/dist/Table/Table.cjs +85 -136
  2. package/dist/Table/Table.context.cjs +16 -1
  3. package/dist/Table/Table.context.d.ts +22 -4
  4. package/dist/Table/Table.context.js +16 -1
  5. package/dist/Table/Table.d.ts +83 -3
  6. package/dist/Table/Table.js +86 -137
  7. package/dist/Table/Table.style.cjs +33 -17
  8. package/dist/Table/Table.style.d.ts +5 -2
  9. package/dist/Table/Table.style.js +34 -18
  10. package/dist/Table/Table.types.d.ts +21 -22
  11. package/dist/Table/components/Compose/Compose.cjs +42 -0
  12. package/dist/Table/components/Compose/Compose.d.ts +13 -0
  13. package/dist/Table/components/Compose/Compose.js +42 -0
  14. package/dist/Table/components/EmptyState/EmptyState.cjs +31 -0
  15. package/dist/Table/components/EmptyState/EmptyState.d.ts +6 -0
  16. package/dist/Table/components/EmptyState/EmptyState.js +31 -0
  17. package/dist/Table/components/ExpandRowButton/ExpandRowButton.cjs +1 -0
  18. package/dist/Table/components/ExpandRowButton/ExpandRowButton.js +1 -0
  19. package/dist/Table/components/HiddenCaption/HiddenCaption.cjs +13 -0
  20. package/dist/Table/components/HiddenCaption/HiddenCaption.d.ts +3 -0
  21. package/dist/Table/components/HiddenCaption/HiddenCaption.js +13 -0
  22. package/dist/Table/components/PluggableTable/PluggableTable.cjs +19 -0
  23. package/dist/Table/components/PluggableTable/PluggableTable.d.ts +10 -0
  24. package/dist/Table/components/PluggableTable/PluggableTable.js +19 -0
  25. package/dist/Table/components/PluggableTable/compositionComponents.cjs +21 -0
  26. package/dist/Table/components/PluggableTable/compositionComponents.d.ts +67 -0
  27. package/dist/Table/components/PluggableTable/compositionComponents.js +21 -0
  28. package/dist/Table/components/RowSelection/HeaderMultiRowSelectionButton.cjs +29 -0
  29. package/dist/Table/components/RowSelection/HeaderMultiRowSelectionButton.d.ts +7 -0
  30. package/dist/Table/components/RowSelection/HeaderMultiRowSelectionButton.js +29 -0
  31. package/dist/Table/components/RowSelection/HeaderMultiRowSelectionButton.test.d.ts +1 -0
  32. package/dist/Table/components/RowSelection/RowSelectionButton.cjs +15 -0
  33. package/dist/Table/components/RowSelection/RowSelectionButton.d.ts +6 -0
  34. package/dist/Table/components/RowSelection/RowSelectionButton.js +15 -0
  35. package/dist/Table/components/RowSelection/RowSelectionButton.test.d.ts +1 -0
  36. package/dist/Table/components/TableBody/TableBody.cjs +33 -0
  37. package/dist/Table/components/TableBody/TableBody.d.ts +23 -0
  38. package/dist/Table/components/TableBody/TableBody.js +33 -0
  39. package/dist/Table/components/TableBody/components/Compose/Compose.cjs +10 -0
  40. package/dist/Table/components/TableBody/components/Compose/Compose.d.ts +3 -0
  41. package/dist/Table/components/TableBody/components/Compose/Compose.js +10 -0
  42. package/dist/Table/components/TableBodyCell/TableBodyCell.cjs +22 -0
  43. package/dist/Table/components/TableBodyCell/TableBodyCell.d.ts +12 -0
  44. package/dist/Table/components/TableBodyCell/TableBodyCell.js +22 -0
  45. package/dist/Table/components/TableBodyCell/components/Compose/Compose.cjs +5 -0
  46. package/dist/Table/components/TableBodyCell/components/Compose/Compose.d.ts +3 -0
  47. package/dist/Table/components/TableBodyCell/components/Compose/Compose.js +5 -0
  48. package/dist/Table/components/TableBodyRow/TableBodyRow.cjs +38 -0
  49. package/dist/Table/components/TableBodyRow/TableBodyRow.d.ts +20 -0
  50. package/dist/Table/components/TableBodyRow/TableBodyRow.js +38 -0
  51. package/dist/Table/components/TableBodyRow/TableBodyRowExpandable.cjs +33 -0
  52. package/dist/Table/components/TableBodyRow/TableBodyRowExpandable.d.ts +2 -0
  53. package/dist/Table/components/TableBodyRow/TableBodyRowExpandable.js +33 -0
  54. package/dist/Table/components/TableBodyRow/components/Compose/Compose.cjs +17 -0
  55. package/dist/Table/components/TableBodyRow/components/Compose/Compose.d.ts +4 -0
  56. package/dist/Table/components/TableBodyRow/components/Compose/Compose.js +17 -0
  57. package/dist/Table/components/TableExpandedRow/TableAnimatedExpandedRow.cjs +3 -4
  58. package/dist/Table/components/TableExpandedRow/TableAnimatedExpandedRow.d.ts +1 -1
  59. package/dist/Table/components/TableExpandedRow/TableAnimatedExpandedRow.js +3 -4
  60. package/dist/Table/components/TableExpandedRow/TableAnimatedExpandedRow.style.cjs +1 -1
  61. package/dist/Table/components/TableExpandedRow/TableAnimatedExpandedRow.style.js +1 -1
  62. package/dist/Table/components/TableExpandedRow/TableExpandedRow.cjs +9 -4
  63. package/dist/Table/components/TableExpandedRow/TableExpandedRow.d.ts +1 -1
  64. package/dist/Table/components/TableExpandedRow/TableExpandedRow.js +9 -4
  65. package/dist/Table/components/TableExpandedRow/TableExpandedRow.style.cjs +2 -2
  66. package/dist/Table/components/TableExpandedRow/TableExpandedRow.style.js +2 -2
  67. package/dist/Table/components/TableExpandedRow/TableExpandedRow.types.d.ts +3 -5
  68. package/dist/Table/components/TableHeader/TableHeader.cjs +28 -0
  69. package/dist/Table/components/TableHeader/TableHeader.d.ts +21 -0
  70. package/dist/Table/components/TableHeader/TableHeader.js +28 -0
  71. package/dist/Table/components/TableHeader/components/Compose/Compose.cjs +5 -0
  72. package/dist/Table/components/TableHeader/components/Compose/Compose.d.ts +3 -0
  73. package/dist/Table/components/TableHeader/components/Compose/Compose.js +5 -0
  74. package/dist/Table/components/TableHeaderCell/SRSortingNotification.cjs +19 -0
  75. package/dist/Table/components/TableHeaderCell/SRSortingNotification.d.ts +1 -0
  76. package/dist/Table/components/TableHeaderCell/SRSortingNotification.js +19 -0
  77. package/dist/Table/components/TableHeaderCell/TableHeaderCell.cjs +23 -0
  78. package/dist/Table/components/TableHeaderCell/TableHeaderCell.context.cjs +15 -0
  79. package/dist/Table/components/TableHeaderCell/TableHeaderCell.context.d.ts +8 -0
  80. package/dist/Table/components/TableHeaderCell/TableHeaderCell.context.js +15 -0
  81. package/dist/Table/components/TableHeaderCell/TableHeaderCell.d.ts +16 -0
  82. package/dist/Table/components/TableHeaderCell/TableHeaderCell.js +23 -0
  83. package/dist/Table/components/TableHeaderCell/TableHeaderCell.test.d.ts +1 -0
  84. package/dist/Table/components/TableHeaderCell/TableHeaderCell.types.d.ts +13 -0
  85. package/dist/Table/components/TableHeaderCell/TableHeaderCell.utils.cjs +79 -0
  86. package/dist/Table/components/TableHeaderCell/TableHeaderCell.utils.d.ts +10 -0
  87. package/dist/Table/components/TableHeaderCell/TableHeaderCell.utils.js +79 -0
  88. package/dist/Table/components/TableHeaderCell/components/Compose/Compose.cjs +40 -0
  89. package/dist/Table/components/TableHeaderCell/components/Compose/Compose.d.ts +9 -0
  90. package/dist/Table/components/TableHeaderCell/components/Compose/Compose.js +40 -0
  91. package/dist/Table/components/TableHeaderCell/components/Heading/Heading.cjs +34 -0
  92. package/dist/Table/components/TableHeaderCell/components/Heading/Heading.d.ts +5 -0
  93. package/dist/Table/components/TableHeaderCell/components/Heading/Heading.js +34 -0
  94. package/dist/Table/components/TableHeaderCell/components/SortableHeading/SortableHeading.cjs +16 -0
  95. package/dist/Table/components/TableHeaderCell/components/SortableHeading/SortableHeading.d.ts +8 -0
  96. package/dist/Table/components/TableHeaderCell/components/SortableHeading/SortableHeading.js +16 -0
  97. package/dist/Table/components/TableHeaderCell/components/SortableHeading/components/Compose/Compose.cjs +23 -0
  98. package/dist/Table/components/TableHeaderCell/components/SortableHeading/components/Compose/Compose.d.ts +5 -0
  99. package/dist/Table/components/TableHeaderCell/components/SortableHeading/components/Compose/Compose.js +23 -0
  100. package/dist/Table/components/TableHeaderCell/components/SortableHeading/components/SortIndicator/SortIndicator.cjs +6 -0
  101. package/dist/Table/components/TableHeaderCell/components/SortableHeading/components/SortIndicator/SortIndicator.d.ts +2 -0
  102. package/dist/Table/components/TableHeaderCell/components/SortableHeading/components/SortIndicator/SortIndicator.js +6 -0
  103. package/dist/Table/components/TableHeaderRow/TableHeaderRow.cjs +27 -0
  104. package/dist/Table/components/TableHeaderRow/TableHeaderRow.d.ts +12 -0
  105. package/dist/Table/components/TableHeaderRow/TableHeaderRow.js +27 -0
  106. package/dist/Table/components/TableHeaderRow/components/Compose/Compose.cjs +5 -0
  107. package/dist/Table/components/TableHeaderRow/components/Compose/Compose.d.ts +3 -0
  108. package/dist/Table/components/TableHeaderRow/components/Compose/Compose.js +5 -0
  109. package/dist/Table/components/TablePagination/TablePagination.cjs +63 -78
  110. package/dist/Table/components/TablePagination/TablePagination.d.ts +23 -3
  111. package/dist/Table/components/TablePagination/TablePagination.js +64 -79
  112. package/dist/Table/components/TablePagination/TablePagination.style.cjs +78 -53
  113. package/dist/Table/components/TablePagination/TablePagination.style.d.ts +17 -49
  114. package/dist/Table/components/TablePagination/TablePagination.style.js +80 -55
  115. package/dist/Table/components/TablePagination/components/Compose/Compose.cjs +41 -0
  116. package/dist/Table/components/TablePagination/components/Compose/Compose.d.ts +3 -0
  117. package/dist/Table/components/TablePagination/components/Compose/Compose.js +41 -0
  118. package/dist/Table/components/TableRoot/TableRoot.cjs +5 -0
  119. package/dist/Table/components/TableRoot/TableRoot.d.ts +1 -0
  120. package/dist/Table/components/TableRoot/TableRoot.js +5 -0
  121. package/dist/Table/index.d.ts +3 -6
  122. package/dist/Table/plugins/ClickableRowPlugin.cjs +48 -0
  123. package/dist/Table/plugins/ClickableRowPlugin.d.ts +25 -0
  124. package/dist/Table/plugins/ClickableRowPlugin.js +48 -0
  125. package/dist/Table/plugins/ExpandableRowPlugin.cjs +38 -0
  126. package/dist/Table/plugins/ExpandableRowPlugin.d.ts +22 -0
  127. package/dist/Table/plugins/ExpandableRowPlugin.js +38 -0
  128. package/dist/Table/plugins/PaginationPlugin.cjs +45 -0
  129. package/dist/Table/plugins/PaginationPlugin.d.ts +16 -0
  130. package/dist/Table/plugins/PaginationPlugin.js +45 -0
  131. package/dist/Table/plugins/RowSelectionPlugin.cjs +28 -0
  132. package/dist/Table/plugins/RowSelectionPlugin.d.ts +12 -0
  133. package/dist/Table/plugins/RowSelectionPlugin.js +28 -0
  134. package/dist/Table/plugins/SortingPlugin.cjs +44 -0
  135. package/dist/Table/plugins/SortingPlugin.d.ts +18 -0
  136. package/dist/Table/plugins/SortingPlugin.js +44 -0
  137. package/dist/Table/tanStackExtendedTypes.d.ts +11 -0
  138. package/dist/Table/utils/plugin.utils.cjs +49 -0
  139. package/dist/Table/utils/plugin.utils.d.ts +17 -0
  140. package/dist/Table/utils/plugin.utils.js +49 -0
  141. package/dist/Table/utils/plugin.utils.test.d.ts +1 -0
  142. package/dist/index.cjs +60 -0
  143. package/dist/index.js +61 -1
  144. package/dist/node_modules/@radix-ui/react-primitive/dist/index.cjs +55 -0
  145. package/dist/node_modules/@radix-ui/react-primitive/dist/index.js +37 -0
  146. package/dist/node_modules/@radix-ui/react-slot/dist/index.cjs +100 -0
  147. package/dist/node_modules/@radix-ui/react-slot/dist/index.js +82 -0
  148. package/dist/node_modules/@radix-ui/react-visually-hidden/dist/index.cjs +51 -0
  149. package/dist/node_modules/@radix-ui/react-visually-hidden/dist/index.js +33 -0
  150. package/dist/node_modules/@tanstack/react-table/build/lib/index.cjs +7 -0
  151. package/dist/node_modules/@tanstack/react-table/build/lib/index.js +8 -1
  152. package/dist/node_modules/@tanstack/table-core/build/lib/index.cjs +361 -4
  153. package/dist/node_modules/@tanstack/table-core/build/lib/index.js +361 -4
  154. package/package.json +7 -5
@@ -0,0 +1,23 @@
1
+ import { j as jsxRuntimeExports } from "../../../node_modules/react/jsx-runtime.js";
2
+ import { forwardRefWithGenerics } from "@redislabsdev/redis-ui-components";
3
+ import { TableHeaderCellCompose } from "./components/Compose/Compose.js";
4
+ import { SortableHeading } from "./components/SortableHeading/SortableHeading.js";
5
+ import { TableHeaderCellHeading } from "./components/Heading/Heading.js";
6
+ const TableHeaderCell = Object.assign(forwardRefWithGenerics(({
7
+ header,
8
+ ...restProps
9
+ }, ref) => jsxRuntimeExports.jsx(TableHeaderCell.Compose, {
10
+ header,
11
+ ...restProps,
12
+ ref,
13
+ children: jsxRuntimeExports.jsx(TableHeaderCell.SortableHeading, {
14
+ children: jsxRuntimeExports.jsx(TableHeaderCell.Heading, {})
15
+ })
16
+ })), {
17
+ Compose: TableHeaderCellCompose,
18
+ SortableHeading,
19
+ Heading: TableHeaderCellHeading
20
+ });
21
+ export {
22
+ TableHeaderCell
23
+ };
@@ -0,0 +1,13 @@
1
+ import { Header } from '@tanstack/react-table';
2
+ import { AriaAttributes } from 'react';
3
+ export type CommonHeader = Header<any, any>;
4
+ export type AllowedAriaSort = Exclude<AriaAttributes['aria-sort'], 'other'>;
5
+ export type FormatColumnSortNotification = (params: {
6
+ title: string;
7
+ direction: AllowedAriaSort;
8
+ nextDirection: AllowedAriaSort;
9
+ }) => string;
10
+ export type FormatTableSortNotification = (params: {
11
+ title: string;
12
+ direction: 'descending' | 'ascending';
13
+ }[] | undefined) => string;
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("../../../node_modules/react/jsx-runtime.cjs");
4
+ const index = require("../../../node_modules/@tanstack/react-table/build/lib/index.cjs");
5
+ const redisUiComponents = require("@redislabsdev/redis-ui-components");
6
+ const redisUiIcons = require("@redislabsdev/redis-ui-icons");
7
+ const sortSign = {
8
+ asc: jsxRuntime.jsxRuntimeExports.jsx(redisUiIcons.ArrowUpIcon, {
9
+ size: "S",
10
+ color: "neutral700",
11
+ "aria-hidden": true
12
+ }),
13
+ desc: jsxRuntime.jsxRuntimeExports.jsx(redisUiIcons.ArrowDownIcon, {
14
+ size: "S",
15
+ color: "neutral700",
16
+ "aria-hidden": true
17
+ })
18
+ };
19
+ const getSortSign = (header) => sortSign[header.column.getIsSorted()] ?? null;
20
+ const ariaSort = {
21
+ asc: "ascending",
22
+ desc: "descending"
23
+ };
24
+ const getAriaSort = (sort) => ariaSort[sort] ?? "none";
25
+ const getCurrentAriaSort = (header) => getAriaSort(header.column.getIsSorted());
26
+ const formatColumnSortNotification = ({
27
+ title,
28
+ nextDirection
29
+ }) => `Sort by ${title}, activate to ${nextDirection === "none" ? "unsort" : `sort ${nextDirection}`}`;
30
+ const getColumnSortLabel = (header, formatLabel) => {
31
+ var _a;
32
+ if (header.column.getCanSort()) {
33
+ const content = index.flexRender(header.column.columnDef.header, header.getContext());
34
+ const text = (_a = redisUiComponents.childrenToString(content)) == null ? void 0 : _a.trim();
35
+ return formatLabel({
36
+ title: text || "actions",
37
+ direction: getAriaSort(header.column.getIsSorted()),
38
+ nextDirection: getAriaSort(header.column.getNextSortingOrder())
39
+ });
40
+ }
41
+ return void 0;
42
+ };
43
+ const formatTableSortNotification = (sortings) => {
44
+ if (!(sortings == null ? void 0 : sortings.length)) {
45
+ return "Unsorted";
46
+ }
47
+ const parts = sortings.map(({
48
+ title,
49
+ direction
50
+ }) => `by ${title} ${direction}`);
51
+ return `Sorted ${parts.join(", then ")}`;
52
+ };
53
+ const getTableSortLabel = (table, formatLabel) => {
54
+ var _a;
55
+ return formatLabel((_a = table.getState().sorting) == null ? void 0 : _a.map(({
56
+ desc,
57
+ id
58
+ }) => {
59
+ var _a2, _b;
60
+ const column = table.getColumn(id);
61
+ const header = (_a2 = column == null ? void 0 : column.columnDef) == null ? void 0 : _a2.header;
62
+ const title = column && (header && ((_b = redisUiComponents.childrenToString(index.flexRender(header, {
63
+ table,
64
+ column
65
+ }))) == null ? void 0 : _b.trim()) || `column ${column.getIndex() + 1} `) || "unknown column";
66
+ return {
67
+ direction: desc ? "descending" : "ascending",
68
+ title
69
+ };
70
+ }).filter((sort) => sort.title));
71
+ };
72
+ const normalizeCellSpan = (span) => span > 1 ? span : void 0;
73
+ exports.formatColumnSortNotification = formatColumnSortNotification;
74
+ exports.formatTableSortNotification = formatTableSortNotification;
75
+ exports.getColumnSortLabel = getColumnSortLabel;
76
+ exports.getCurrentAriaSort = getCurrentAriaSort;
77
+ exports.getSortSign = getSortSign;
78
+ exports.getTableSortLabel = getTableSortLabel;
79
+ exports.normalizeCellSpan = normalizeCellSpan;
@@ -0,0 +1,10 @@
1
+ import { Table } from '@tanstack/react-table';
2
+ import { ReactElement } from 'react';
3
+ import { AllowedAriaSort, CommonHeader, FormatColumnSortNotification, FormatTableSortNotification } from './TableHeaderCell.types';
4
+ export declare const getSortSign: (header: CommonHeader) => ReactElement<any, string | import("react").JSXElementConstructor<any>>;
5
+ export declare const getCurrentAriaSort: (header: CommonHeader) => AllowedAriaSort;
6
+ export declare const formatColumnSortNotification: FormatColumnSortNotification;
7
+ export declare const getColumnSortLabel: (header: CommonHeader, formatLabel: FormatColumnSortNotification) => string | undefined;
8
+ export declare const formatTableSortNotification: FormatTableSortNotification;
9
+ export declare const getTableSortLabel: <T extends object>(table: Table<T>, formatLabel: FormatTableSortNotification) => string;
10
+ export declare const normalizeCellSpan: (span: number) => number | undefined;
@@ -0,0 +1,79 @@
1
+ import { j as jsxRuntimeExports } from "../../../node_modules/react/jsx-runtime.js";
2
+ import { flexRender } from "../../../node_modules/@tanstack/react-table/build/lib/index.js";
3
+ import { childrenToString } from "@redislabsdev/redis-ui-components";
4
+ import { ArrowUpIcon, ArrowDownIcon } from "@redislabsdev/redis-ui-icons";
5
+ const sortSign = {
6
+ asc: jsxRuntimeExports.jsx(ArrowUpIcon, {
7
+ size: "S",
8
+ color: "neutral700",
9
+ "aria-hidden": true
10
+ }),
11
+ desc: jsxRuntimeExports.jsx(ArrowDownIcon, {
12
+ size: "S",
13
+ color: "neutral700",
14
+ "aria-hidden": true
15
+ })
16
+ };
17
+ const getSortSign = (header) => sortSign[header.column.getIsSorted()] ?? null;
18
+ const ariaSort = {
19
+ asc: "ascending",
20
+ desc: "descending"
21
+ };
22
+ const getAriaSort = (sort) => ariaSort[sort] ?? "none";
23
+ const getCurrentAriaSort = (header) => getAriaSort(header.column.getIsSorted());
24
+ const formatColumnSortNotification = ({
25
+ title,
26
+ nextDirection
27
+ }) => `Sort by ${title}, activate to ${nextDirection === "none" ? "unsort" : `sort ${nextDirection}`}`;
28
+ const getColumnSortLabel = (header, formatLabel) => {
29
+ var _a;
30
+ if (header.column.getCanSort()) {
31
+ const content = flexRender(header.column.columnDef.header, header.getContext());
32
+ const text = (_a = childrenToString(content)) == null ? void 0 : _a.trim();
33
+ return formatLabel({
34
+ title: text || "actions",
35
+ direction: getAriaSort(header.column.getIsSorted()),
36
+ nextDirection: getAriaSort(header.column.getNextSortingOrder())
37
+ });
38
+ }
39
+ return void 0;
40
+ };
41
+ const formatTableSortNotification = (sortings) => {
42
+ if (!(sortings == null ? void 0 : sortings.length)) {
43
+ return "Unsorted";
44
+ }
45
+ const parts = sortings.map(({
46
+ title,
47
+ direction
48
+ }) => `by ${title} ${direction}`);
49
+ return `Sorted ${parts.join(", then ")}`;
50
+ };
51
+ const getTableSortLabel = (table, formatLabel) => {
52
+ var _a;
53
+ return formatLabel((_a = table.getState().sorting) == null ? void 0 : _a.map(({
54
+ desc,
55
+ id
56
+ }) => {
57
+ var _a2, _b;
58
+ const column = table.getColumn(id);
59
+ const header = (_a2 = column == null ? void 0 : column.columnDef) == null ? void 0 : _a2.header;
60
+ const title = column && (header && ((_b = childrenToString(flexRender(header, {
61
+ table,
62
+ column
63
+ }))) == null ? void 0 : _b.trim()) || `column ${column.getIndex() + 1} `) || "unknown column";
64
+ return {
65
+ direction: desc ? "descending" : "ascending",
66
+ title
67
+ };
68
+ }).filter((sort) => sort.title));
69
+ };
70
+ const normalizeCellSpan = (span) => span > 1 ? span : void 0;
71
+ export {
72
+ formatColumnSortNotification,
73
+ formatTableSortNotification,
74
+ getColumnSortLabel,
75
+ getCurrentAriaSort,
76
+ getSortSign,
77
+ getTableSortLabel,
78
+ normalizeCellSpan
79
+ };
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("../../../../../node_modules/react/jsx-runtime.cjs");
4
+ const redisUiComponents = require("@redislabsdev/redis-ui-components");
5
+ const index = require("../../../../../node_modules/@radix-ui/react-visually-hidden/dist/index.cjs");
6
+ const React = require("react");
7
+ const TableHeaderCell_utils = require("../../TableHeaderCell.utils.cjs");
8
+ const TableHeaderCell_context = require("../../TableHeaderCell.context.cjs");
9
+ const Table_style = require("../../../../Table.style.cjs");
10
+ const TableHeaderCellCompose = redisUiComponents.forwardRefWithGenerics(({
11
+ header,
12
+ children,
13
+ ...restProps
14
+ }, ref) => {
15
+ const colSpan = TableHeaderCell_utils.normalizeCellSpan(header.colSpan);
16
+ const rowSpan = TableHeaderCell_utils.normalizeCellSpan(header.rowSpan);
17
+ return jsxRuntime.jsxRuntimeExports.jsx(TableHeaderCell_context.TableHeaderCellContextProvider, {
18
+ value: React.useMemo(() => ({
19
+ header
20
+ }), [header]),
21
+ children: jsxRuntime.jsxRuntimeExports.jsx(Table_style.TableTh, {
22
+ ...restProps,
23
+ ref,
24
+ colSpan,
25
+ rowSpan,
26
+ style: {
27
+ width: header.column.getSize(),
28
+ ...restProps.style
29
+ },
30
+ "aria-hidden": header.isPlaceholder,
31
+ onClick: header.column.getCanSort() ? header.column.getToggleSortingHandler() : void 0,
32
+ "aria-sort": header.column.getCanSort() ? TableHeaderCell_utils.getCurrentAriaSort(header) : void 0,
33
+ scope: "col",
34
+ children: header.isPlaceholder ? jsxRuntime.jsxRuntimeExports.jsx(index.VisuallyHidden, {
35
+ children: "Placeholder"
36
+ }) : children
37
+ })
38
+ });
39
+ });
40
+ exports.TableHeaderCellCompose = TableHeaderCellCompose;
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import { ComposeElementProps } from '@redislabsdev/redis-ui-components';
3
+ import { Header } from '@tanstack/react-table';
4
+ export type OwnTableHeaderCellComposeProps<T extends object> = {
5
+ header: Header<T, unknown>;
6
+ };
7
+ export type RestTableHeaderCellComposeProps = ComposeElementProps<HTMLTableCellElement>;
8
+ export type TableHeaderCellComposeProps<T extends object> = OwnTableHeaderCellComposeProps<T> & RestTableHeaderCellComposeProps;
9
+ export declare const TableHeaderCellCompose: <T extends object>(props: OwnTableHeaderCellComposeProps<T> & import("@redislabsdev/redis-ui-components").ComposeChildrenProps & Omit<import("react").HTMLAttributes<HTMLTableCellElement>, "content" | "children"> & import("react").RefAttributes<HTMLTableCellElement>) => import("react").ReactElement<any, any> | null;
@@ -0,0 +1,40 @@
1
+ import { j as jsxRuntimeExports } from "../../../../../node_modules/react/jsx-runtime.js";
2
+ import { forwardRefWithGenerics } from "@redislabsdev/redis-ui-components";
3
+ import { VisuallyHidden } from "../../../../../node_modules/@radix-ui/react-visually-hidden/dist/index.js";
4
+ import { useMemo } from "react";
5
+ import { normalizeCellSpan, getCurrentAriaSort } from "../../TableHeaderCell.utils.js";
6
+ import { TableHeaderCellContextProvider } from "../../TableHeaderCell.context.js";
7
+ import { TableTh } from "../../../../Table.style.js";
8
+ const TableHeaderCellCompose = forwardRefWithGenerics(({
9
+ header,
10
+ children,
11
+ ...restProps
12
+ }, ref) => {
13
+ const colSpan = normalizeCellSpan(header.colSpan);
14
+ const rowSpan = normalizeCellSpan(header.rowSpan);
15
+ return jsxRuntimeExports.jsx(TableHeaderCellContextProvider, {
16
+ value: useMemo(() => ({
17
+ header
18
+ }), [header]),
19
+ children: jsxRuntimeExports.jsx(TableTh, {
20
+ ...restProps,
21
+ ref,
22
+ colSpan,
23
+ rowSpan,
24
+ style: {
25
+ width: header.column.getSize(),
26
+ ...restProps.style
27
+ },
28
+ "aria-hidden": header.isPlaceholder,
29
+ onClick: header.column.getCanSort() ? header.column.getToggleSortingHandler() : void 0,
30
+ "aria-sort": header.column.getCanSort() ? getCurrentAriaSort(header) : void 0,
31
+ scope: "col",
32
+ children: header.isPlaceholder ? jsxRuntimeExports.jsx(VisuallyHidden, {
33
+ children: "Placeholder"
34
+ }) : children
35
+ })
36
+ });
37
+ });
38
+ export {
39
+ TableHeaderCellCompose
40
+ };
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("../../../../../node_modules/react/jsx-runtime.cjs");
4
+ const index = require("../../../../../node_modules/@tanstack/react-table/build/lib/index.cjs");
5
+ const redisUiComponents = require("@redislabsdev/redis-ui-components");
6
+ const index$1 = require("../../../../../node_modules/@radix-ui/react-visually-hidden/dist/index.cjs");
7
+ const TableHeaderCell_context = require("../../TableHeaderCell.context.cjs");
8
+ const Table_style = require("../../../../Table.style.cjs");
9
+ const DEFAULT_HIDDEN_HEADER = "Actions";
10
+ const TableHeaderCellHeading = (props) => {
11
+ var _a;
12
+ const {
13
+ header
14
+ } = TableHeaderCell_context.useTableHeaderCellContext();
15
+ const content = index.flexRender(header.column.columnDef.header, header.getContext());
16
+ if (header.column.columnDef.isHeaderCustom) return jsxRuntime.jsxRuntimeExports.jsx(jsxRuntime.jsxRuntimeExports.Fragment, {
17
+ children: content
18
+ });
19
+ const text = (_a = redisUiComponents.childrenToString(content)) == null ? void 0 : _a.trim();
20
+ if (!text || header.column.columnDef.isHeaderHidden) {
21
+ return jsxRuntime.jsxRuntimeExports.jsx(index$1.VisuallyHidden, {
22
+ children: text || DEFAULT_HIDDEN_HEADER
23
+ });
24
+ }
25
+ return jsxRuntime.jsxRuntimeExports.jsx(Table_style.HeaderTitleWrapper, {
26
+ variant: "semiBold",
27
+ ellipsis: true,
28
+ tooltipOnEllipsis: true,
29
+ ...props,
30
+ "$isTextual": redisUiComponents.isTextualNode(content),
31
+ children: content
32
+ });
33
+ };
34
+ exports.TableHeaderCellHeading = TableHeaderCellHeading;
@@ -0,0 +1,5 @@
1
+ import { ComponentProps } from 'react';
2
+ import { ChildFree, Typography } from '@redislabsdev/redis-ui-components';
3
+ export type RestTableHeaderCellHeadingProps = ChildFree<ComponentProps<typeof Typography.Body>>;
4
+ export type TableHeaderCellHeadingProps = RestTableHeaderCellHeadingProps;
5
+ export declare const TableHeaderCellHeading: (props: TableHeaderCellHeadingProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,34 @@
1
+ import { j as jsxRuntimeExports } from "../../../../../node_modules/react/jsx-runtime.js";
2
+ import { flexRender } from "../../../../../node_modules/@tanstack/react-table/build/lib/index.js";
3
+ import { childrenToString, isTextualNode } from "@redislabsdev/redis-ui-components";
4
+ import { VisuallyHidden } from "../../../../../node_modules/@radix-ui/react-visually-hidden/dist/index.js";
5
+ import { useTableHeaderCellContext } from "../../TableHeaderCell.context.js";
6
+ import { HeaderTitleWrapper } from "../../../../Table.style.js";
7
+ const DEFAULT_HIDDEN_HEADER = "Actions";
8
+ const TableHeaderCellHeading = (props) => {
9
+ var _a;
10
+ const {
11
+ header
12
+ } = useTableHeaderCellContext();
13
+ const content = flexRender(header.column.columnDef.header, header.getContext());
14
+ if (header.column.columnDef.isHeaderCustom) return jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, {
15
+ children: content
16
+ });
17
+ const text = (_a = childrenToString(content)) == null ? void 0 : _a.trim();
18
+ if (!text || header.column.columnDef.isHeaderHidden) {
19
+ return jsxRuntimeExports.jsx(VisuallyHidden, {
20
+ children: text || DEFAULT_HIDDEN_HEADER
21
+ });
22
+ }
23
+ return jsxRuntimeExports.jsx(HeaderTitleWrapper, {
24
+ variant: "semiBold",
25
+ ellipsis: true,
26
+ tooltipOnEllipsis: true,
27
+ ...props,
28
+ "$isTextual": isTextualNode(content),
29
+ children: content
30
+ });
31
+ };
32
+ export {
33
+ TableHeaderCellHeading
34
+ };
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("../../../../../node_modules/react/jsx-runtime.cjs");
4
+ const SortIndicator = require("./components/SortIndicator/SortIndicator.cjs");
5
+ const Compose = require("./components/Compose/Compose.cjs");
6
+ const SortableHeading = Object.assign(({
7
+ children,
8
+ ...restProps
9
+ }) => jsxRuntime.jsxRuntimeExports.jsxs(SortableHeading.Compose, {
10
+ ...restProps,
11
+ children: [children, jsxRuntime.jsxRuntimeExports.jsx(SortableHeading.SortIndicator, {})]
12
+ }), {
13
+ Compose: Compose.SortableHeadingCompose,
14
+ SortIndicator: SortIndicator.SortIndicator
15
+ });
16
+ exports.SortableHeading = SortableHeading;
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ import { ComposeElementProps } from '@redislabsdev/redis-ui-components';
3
+ export declare const SortableHeading: (({ children, ...restProps }: ComposeElementProps) => import("react/jsx-runtime").JSX.Element) & {
4
+ Compose: ((props: ComposeElementProps<HTMLDivElement>) => import("react/jsx-runtime").JSX.Element) & {
5
+ SortIndicator: () => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
6
+ };
7
+ SortIndicator: () => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
8
+ };
@@ -0,0 +1,16 @@
1
+ import { j as jsxRuntimeExports } from "../../../../../node_modules/react/jsx-runtime.js";
2
+ import { SortIndicator } from "./components/SortIndicator/SortIndicator.js";
3
+ import { SortableHeadingCompose } from "./components/Compose/Compose.js";
4
+ const SortableHeading = Object.assign(({
5
+ children,
6
+ ...restProps
7
+ }) => jsxRuntimeExports.jsxs(SortableHeading.Compose, {
8
+ ...restProps,
9
+ children: [children, jsxRuntimeExports.jsx(SortableHeading.SortIndicator, {})]
10
+ }), {
11
+ Compose: SortableHeadingCompose,
12
+ SortIndicator
13
+ });
14
+ export {
15
+ SortableHeading
16
+ };
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("../../../../../../../node_modules/react/jsx-runtime.cjs");
4
+ const TableHeaderCell_utils = require("../../../../TableHeaderCell.utils.cjs");
5
+ const TableHeaderCell_context = require("../../../../TableHeaderCell.context.cjs");
6
+ const SortIndicator = require("../SortIndicator/SortIndicator.cjs");
7
+ const Table_style = require("../../../../../../Table.style.cjs");
8
+ const SortableHeadingCompose = Object.assign((props) => {
9
+ const {
10
+ header
11
+ } = TableHeaderCell_context.useTableHeaderCellContext();
12
+ return jsxRuntime.jsxRuntimeExports.jsx(
13
+ Table_style.SortableHeadingCompose,
14
+ {
15
+ "aria-description": TableHeaderCell_utils.getColumnSortLabel(header, TableHeaderCell_utils.formatColumnSortNotification),
16
+ ...props,
17
+ as: header.column.getCanSort() ? void 0 : "div"
18
+ }
19
+ );
20
+ }, {
21
+ SortIndicator: SortIndicator.SortIndicator
22
+ });
23
+ exports.SortableHeadingCompose = SortableHeadingCompose;
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ import { ComposeElementProps } from '@redislabsdev/redis-ui-components';
3
+ export declare const SortableHeadingCompose: ((props: ComposeElementProps) => import("react/jsx-runtime").JSX.Element) & {
4
+ SortIndicator: () => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
5
+ };
@@ -0,0 +1,23 @@
1
+ import { j as jsxRuntimeExports } from "../../../../../../../node_modules/react/jsx-runtime.js";
2
+ import { getColumnSortLabel, formatColumnSortNotification } from "../../../../TableHeaderCell.utils.js";
3
+ import { useTableHeaderCellContext } from "../../../../TableHeaderCell.context.js";
4
+ import { SortIndicator } from "../SortIndicator/SortIndicator.js";
5
+ import { SortableHeadingCompose as SortableHeadingCompose$1 } from "../../../../../../Table.style.js";
6
+ const SortableHeadingCompose = Object.assign((props) => {
7
+ const {
8
+ header
9
+ } = useTableHeaderCellContext();
10
+ return jsxRuntimeExports.jsx(
11
+ SortableHeadingCompose$1,
12
+ {
13
+ "aria-description": getColumnSortLabel(header, formatColumnSortNotification),
14
+ ...props,
15
+ as: header.column.getCanSort() ? void 0 : "div"
16
+ }
17
+ );
18
+ }, {
19
+ SortIndicator
20
+ });
21
+ export {
22
+ SortableHeadingCompose
23
+ };
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const TableHeaderCell_utils = require("../../../../TableHeaderCell.utils.cjs");
4
+ const TableHeaderCell_context = require("../../../../TableHeaderCell.context.cjs");
5
+ const SortIndicator = () => TableHeaderCell_utils.getSortSign(TableHeaderCell_context.useTableHeaderCellContext().header);
6
+ exports.SortIndicator = SortIndicator;
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const SortIndicator: () => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
@@ -0,0 +1,6 @@
1
+ import { getSortSign } from "../../../../TableHeaderCell.utils.js";
2
+ import { useTableHeaderCellContext } from "../../../../TableHeaderCell.context.js";
3
+ const SortIndicator = () => getSortSign(useTableHeaderCellContext().header);
4
+ export {
5
+ SortIndicator
6
+ };
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("../../../node_modules/react/jsx-runtime.cjs");
4
+ const redisUiComponents = require("@redislabsdev/redis-ui-components");
5
+ const TableHeaderCell = require("../TableHeaderCell/TableHeaderCell.cjs");
6
+ const Compose = require("./components/Compose/Compose.cjs");
7
+ const Table_context = require("../../Table.context.cjs");
8
+ const TableHeaderRow = Object.assign(redisUiComponents.forwardRefWithGenerics(({
9
+ headerGroup,
10
+ ...restProps
11
+ }, ref) => {
12
+ const {
13
+ TableHeaderCell: Cell
14
+ } = Table_context.useComposeContext({
15
+ TableHeaderCell: TableHeaderCell.TableHeaderCell
16
+ });
17
+ return jsxRuntime.jsxRuntimeExports.jsx(TableHeaderRow.Compose, {
18
+ ...restProps,
19
+ ref,
20
+ children: headerGroup.headers.map((header) => jsxRuntime.jsxRuntimeExports.jsx(Cell, {
21
+ header
22
+ }, header.id))
23
+ });
24
+ }), {
25
+ Compose: Compose.TableHeaderRowCompose
26
+ });
27
+ exports.TableHeaderRow = TableHeaderRow;
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ import { HeaderGroup } from '@tanstack/react-table';
3
+ import { ChildFree } from '@redislabsdev/redis-ui-components';
4
+ import { TableHeaderRowComposeProps } from './components/Compose/Compose';
5
+ export type OwnTableHeaderRowProps<T extends object> = {
6
+ headerGroup: HeaderGroup<T>;
7
+ };
8
+ export type RestTableHeaderRowProps = ChildFree<TableHeaderRowComposeProps>;
9
+ export type TableHeaderRowProps<T extends object> = OwnTableHeaderRowProps<T> & RestTableHeaderRowProps;
10
+ export declare const TableHeaderRow: (<T extends object>(props: OwnTableHeaderRowProps<T> & RestTableHeaderRowProps & import("react").RefAttributes<HTMLTableRowElement>) => import("react").ReactElement<any, any> | null) & {
11
+ Compose: import("styled-components").StyledComponent<"tr", any, {}, never>;
12
+ };
@@ -0,0 +1,27 @@
1
+ import { j as jsxRuntimeExports } from "../../../node_modules/react/jsx-runtime.js";
2
+ import { forwardRefWithGenerics } from "@redislabsdev/redis-ui-components";
3
+ import { TableHeaderCell } from "../TableHeaderCell/TableHeaderCell.js";
4
+ import { TableHeaderRowCompose } from "./components/Compose/Compose.js";
5
+ import { useComposeContext } from "../../Table.context.js";
6
+ const TableHeaderRow = Object.assign(forwardRefWithGenerics(({
7
+ headerGroup,
8
+ ...restProps
9
+ }, ref) => {
10
+ const {
11
+ TableHeaderCell: Cell
12
+ } = useComposeContext({
13
+ TableHeaderCell
14
+ });
15
+ return jsxRuntimeExports.jsx(TableHeaderRow.Compose, {
16
+ ...restProps,
17
+ ref,
18
+ children: headerGroup.headers.map((header) => jsxRuntimeExports.jsx(Cell, {
19
+ header
20
+ }, header.id))
21
+ });
22
+ }), {
23
+ Compose: TableHeaderRowCompose
24
+ });
25
+ export {
26
+ TableHeaderRow
27
+ };
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const Table_style = require("../../../../Table.style.cjs");
4
+ const TableHeaderRowCompose = Table_style.TableHeaderRow;
5
+ exports.TableHeaderRowCompose = TableHeaderRowCompose;
@@ -0,0 +1,3 @@
1
+ import { ComposeElementProps } from '@redislabsdev/redis-ui-components';
2
+ export type TableHeaderRowComposeProps = ComposeElementProps<HTMLTableRowElement>;
3
+ export declare const TableHeaderRowCompose: import("styled-components").StyledComponent<"tr", any, {}, never>;
@@ -0,0 +1,5 @@
1
+ import { TableHeaderRow } from "../../../../Table.style.js";
2
+ const TableHeaderRowCompose = TableHeaderRow;
3
+ export {
4
+ TableHeaderRowCompose
5
+ };