@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
@@ -1,93 +1,78 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const jsxRuntime = require("../../../node_modules/react/jsx-runtime.cjs");
4
- const redisUiIcons = require("@redislabsdev/redis-ui-icons");
5
- const Table_context = require("../../Table.context.cjs");
4
+ const redisUiComponents = require("@redislabsdev/redis-ui-components");
5
+ const PaginationPlugin = require("../../plugins/PaginationPlugin.cjs");
6
+ const Compose = require("./components/Compose/Compose.cjs");
6
7
  const TablePagination_style = require("./TablePagination.style.cjs");
7
- const DEFAULT_PAGE_SIZES = [10, 25, 50, 100];
8
- const TablePagination = ({
9
- pageSizes = DEFAULT_PAGE_SIZES
10
- }) => {
11
- const {
12
- table
13
- } = Table_context.useTableContext();
14
- if (!table._getPaginationRowModel) {
8
+ const renderRowCount = ({
9
+ visibleItemCount,
10
+ totalItemCount
11
+ }) => `Showing ${visibleItemCount} out of ${totalItemCount} rows`;
12
+ const renderPageCount = ({
13
+ pageIndex,
14
+ pageCount
15
+ }) => `${pageIndex + 1} of ${pageCount}`;
16
+ const renderTotalPageCount = ({
17
+ pageCount
18
+ }) => `of ${pageCount}`;
19
+ const TablePagination = Object.assign(() => {
20
+ const pagination = PaginationPlugin.usePaginationContext();
21
+ if (!pagination) {
15
22
  return null;
16
23
  }
17
- const {
18
- pageIndex,
19
- pageSize
20
- } = table.getState().pagination;
21
- const totalRowCount = table.getRowCount();
22
- const pageCount = Math.max(table.getPageCount(), 1);
23
- const handlePageSizeChange = (value) => {
24
- table.setPageSize(Number(value));
25
- };
26
- const handlePageIndexChange = (index) => {
27
- table.setPageIndex(index);
28
- };
29
- return jsxRuntime.jsxRuntimeExports.jsx(TablePagination_style.PaginationRow, {
30
- "data-role": "pagination",
31
- children: jsxRuntime.jsxRuntimeExports.jsxs(jsxRuntime.jsxRuntimeExports.Fragment, {
32
- children: [jsxRuntime.jsxRuntimeExports.jsxs(TablePagination_style.CountInfo, {
33
- children: ["Showing ", table.getRowModel().rows.length, " out of ", totalRowCount, " rows"]
34
- }), jsxRuntime.jsxRuntimeExports.jsxs("div", {
35
- style: {
36
- display: "flex",
37
- alignItems: "center",
38
- gap: "1rem"
39
- },
40
- children: [jsxRuntime.jsxRuntimeExports.jsx(TablePagination_style.ItemPerPageText, {
24
+ return jsxRuntime.jsxRuntimeExports.jsx(TablePagination.Compose, {
25
+ children: jsxRuntime.jsxRuntimeExports.jsxs(TablePagination.Bar, {
26
+ "data-role": "pagination",
27
+ children: [jsxRuntime.jsxRuntimeExports.jsx(TablePagination.InfoLabel, {
28
+ renderer: renderRowCount,
29
+ ellipsis: true,
30
+ tooltipOnEllipsis: true
31
+ }), jsxRuntime.jsxRuntimeExports.jsx(TablePagination.Split, {}), jsxRuntime.jsxRuntimeExports.jsxs(TablePagination.PageSizeGroup, {
32
+ children: [jsxRuntime.jsxRuntimeExports.jsx(TablePagination.PageSizeSelect.Label, {
41
33
  children: "Items per page:"
42
- }), jsxRuntime.jsxRuntimeExports.jsx(TablePagination_style.Select, {
43
- value: pageSize.toString(),
44
- onChange: handlePageSizeChange,
45
- disabled: pageSizes[0] > totalRowCount,
46
- options: pageSizes.map(String).map((value) => ({
47
- value
48
- }))
34
+ }), jsxRuntime.jsxRuntimeExports.jsx(TablePagination.PageSizeSelect, {
35
+ pageSizes: pagination.pageSizes
49
36
  })]
50
- }), jsxRuntime.jsxRuntimeExports.jsxs(TablePagination_style.PaginationActions, {
51
- children: [jsxRuntime.jsxRuntimeExports.jsx(TablePagination_style.PaginationIconButton, {
52
- icon: redisUiIcons.DoubleChevronLeftIcon,
53
- size: "S",
54
- onClick: () => handlePageIndexChange(0),
55
- disabled: pageIndex === 0
56
- }), jsxRuntime.jsxRuntimeExports.jsx(TablePagination_style.PaginationIconButton, {
57
- icon: redisUiIcons.ChevronLeftIcon,
58
- size: "S",
59
- onClick: () => handlePageIndexChange(pageIndex - 1),
60
- disabled: pageIndex === 0
61
- }), jsxRuntime.jsxRuntimeExports.jsxs(TablePagination_style.PaginationIndexText, {
62
- size: "S",
63
- children: [pageIndex + 1, " of ", pageCount]
64
- }), jsxRuntime.jsxRuntimeExports.jsx(TablePagination_style.PaginationIconButton, {
65
- icon: redisUiIcons.ChevronRightIcon,
66
- size: "S",
67
- onClick: () => handlePageIndexChange(pageIndex + 1),
68
- disabled: pageIndex === pageCount - 1
69
- }), jsxRuntime.jsxRuntimeExports.jsx(TablePagination_style.PaginationIconButton, {
70
- icon: redisUiIcons.DoubleChevronRightIcon,
71
- size: "S",
72
- onClick: () => handlePageIndexChange(pageCount - 1),
73
- disabled: pageIndex === pageCount - 1
37
+ }), jsxRuntime.jsxRuntimeExports.jsxs(TablePagination.PageNavGroup, {
38
+ children: [jsxRuntime.jsxRuntimeExports.jsxs("div", {
39
+ children: [jsxRuntime.jsxRuntimeExports.jsx(TablePagination.NavigationButton, {
40
+ navType: "first"
41
+ }), jsxRuntime.jsxRuntimeExports.jsx(TablePagination.NavigationButton, {
42
+ navType: "prev"
43
+ })]
44
+ }), jsxRuntime.jsxRuntimeExports.jsx(TablePagination.InfoLabel, {
45
+ ellipsis: true,
46
+ tooltipOnEllipsis: true,
47
+ renderer: renderPageCount
48
+ }), jsxRuntime.jsxRuntimeExports.jsxs("div", {
49
+ children: [jsxRuntime.jsxRuntimeExports.jsx(TablePagination.NavigationButton, {
50
+ navType: "next"
51
+ }), jsxRuntime.jsxRuntimeExports.jsx(TablePagination.NavigationButton, {
52
+ navType: "last"
53
+ })]
74
54
  })]
75
- }), jsxRuntime.jsxRuntimeExports.jsxs(TablePagination_style.PaginationActions, {
76
- children: [jsxRuntime.jsxRuntimeExports.jsx(TablePagination_style.PageLabelText, {
55
+ }), jsxRuntime.jsxRuntimeExports.jsxs(TablePagination.PageSelectGroup, {
56
+ children: [jsxRuntime.jsxRuntimeExports.jsx(TablePagination.PageSelect.Label, {
77
57
  children: "Page"
78
- }), jsxRuntime.jsxRuntimeExports.jsx(TablePagination_style.Select, {
79
- value: (pageIndex + 1).toString(),
80
- onChange: (value) => handlePageIndexChange(Number(value) - 1),
81
- options: Array.from({
82
- length: pageCount
83
- }, (_, i) => String(i + 1)).map((value) => ({
84
- value
85
- }))
86
- }), jsxRuntime.jsxRuntimeExports.jsxs(TablePagination_style.TotalPagesText, {
87
- children: ["of ", pageCount]
58
+ }), jsxRuntime.jsxRuntimeExports.jsx(TablePagination.PageSelect, {}), jsxRuntime.jsxRuntimeExports.jsx(TablePagination.InfoLabel, {
59
+ ellipsis: true,
60
+ tooltipOnEllipsis: true,
61
+ renderer: renderTotalPageCount
88
62
  })]
89
63
  })]
90
64
  })
91
65
  });
92
- };
66
+ }, {
67
+ Compose: Compose.TablePaginationCompose,
68
+ Bar: TablePagination_style.PaginationBar,
69
+ Split: redisUiComponents.Pagination.Split,
70
+ InfoLabel: TablePagination_style.InfoLabel,
71
+ PageSelect: TablePagination_style.PageSelect,
72
+ PageSizeSelect: TablePagination_style.PageSizeSelect,
73
+ NavigationButton: TablePagination_style.NavigationButton,
74
+ PageSizeGroup: TablePagination_style.PageSizeGroup,
75
+ PageNavGroup: TablePagination_style.PageNavGroup,
76
+ PageSelectGroup: TablePagination_style.PageSelectGroup
77
+ });
93
78
  exports.default = TablePagination;
@@ -1,4 +1,24 @@
1
- declare const TablePagination: ({ pageSizes }: {
2
- pageSizes?: number[] | undefined;
3
- }) => import("react/jsx-runtime").JSX.Element | null;
1
+ import { PaginationInfoLabelProps } from '@redislabsdev/redis-ui-components';
2
+ declare const TablePagination: (() => import("react/jsx-runtime").JSX.Element | null) & {
3
+ Compose: ({ children }: import("@redislabsdev/redis-ui-components").ComposeChildrenProps) => import("react/jsx-runtime").JSX.Element | null;
4
+ Bar: import("styled-components").StyledComponent<"nav", any, {
5
+ 'aria-label': string;
6
+ } & {
7
+ 'aria-label': string;
8
+ }, "aria-label">;
9
+ Split: import("styled-components").StyledComponent<"div", any, {}, never>;
10
+ InfoLabel: import("styled-components").StyledComponent<({ renderer, ...restProps }: PaginationInfoLabelProps) => import("react/jsx-runtime").JSX.Element, any, {}, never>;
11
+ PageSelect: import("styled-components").StyledComponent<{
12
+ ({ ...restProps }: import("@redislabsdev/redis-ui-components").PaginationPageSelectProps): import("react/jsx-runtime").JSX.Element;
13
+ Label: ({ children, ...restProps }: import("@redislabsdev/redis-ui-components").TypographyBodyProps) => import("react/jsx-runtime").JSX.Element;
14
+ }, any, {}, never>;
15
+ PageSizeSelect: import("styled-components").StyledComponent<{
16
+ ({ pageSizes, ...restProps }: import("@redislabsdev/redis-ui-components").PaginationPageSizeSelectProps): import("react/jsx-runtime").JSX.Element | null;
17
+ Label: ({ children, ...restProps }: import("@redislabsdev/redis-ui-components").TypographyBodyProps) => import("react/jsx-runtime").JSX.Element | null;
18
+ }, any, {}, never>;
19
+ NavigationButton: import("styled-components").StyledComponent<({ navType, ...restProps }: import("@redislabsdev/redis-ui-components").PaginationNavigationButtonProps) => import("react/jsx-runtime").JSX.Element, any, {}, never>;
20
+ PageSizeGroup: import("styled-components").StyledComponent<"div", any, {}, never>;
21
+ PageNavGroup: import("styled-components").StyledComponent<"div", any, {}, never>;
22
+ PageSelectGroup: import("styled-components").StyledComponent<"div", any, {}, never>;
23
+ };
4
24
  export default TablePagination;
@@ -1,93 +1,78 @@
1
1
  import { j as jsxRuntimeExports } from "../../../node_modules/react/jsx-runtime.js";
2
- import { DoubleChevronLeftIcon, ChevronLeftIcon, ChevronRightIcon, DoubleChevronRightIcon } from "@redislabsdev/redis-ui-icons";
3
- import { useTableContext } from "../../Table.context.js";
4
- import { PaginationRow, CountInfo, ItemPerPageText, Select, PaginationActions, PaginationIconButton, PaginationIndexText, PageLabelText, TotalPagesText } from "./TablePagination.style.js";
5
- const DEFAULT_PAGE_SIZES = [10, 25, 50, 100];
6
- const TablePagination = ({
7
- pageSizes = DEFAULT_PAGE_SIZES
8
- }) => {
9
- const {
10
- table
11
- } = useTableContext();
12
- if (!table._getPaginationRowModel) {
2
+ import { Pagination } from "@redislabsdev/redis-ui-components";
3
+ import { usePaginationContext } from "../../plugins/PaginationPlugin.js";
4
+ import { TablePaginationCompose } from "./components/Compose/Compose.js";
5
+ import { PaginationBar, InfoLabel, PageSelect, PageSizeSelect, NavigationButton, PageSizeGroup, PageNavGroup, PageSelectGroup } from "./TablePagination.style.js";
6
+ const renderRowCount = ({
7
+ visibleItemCount,
8
+ totalItemCount
9
+ }) => `Showing ${visibleItemCount} out of ${totalItemCount} rows`;
10
+ const renderPageCount = ({
11
+ pageIndex,
12
+ pageCount
13
+ }) => `${pageIndex + 1} of ${pageCount}`;
14
+ const renderTotalPageCount = ({
15
+ pageCount
16
+ }) => `of ${pageCount}`;
17
+ const TablePagination = Object.assign(() => {
18
+ const pagination = usePaginationContext();
19
+ if (!pagination) {
13
20
  return null;
14
21
  }
15
- const {
16
- pageIndex,
17
- pageSize
18
- } = table.getState().pagination;
19
- const totalRowCount = table.getRowCount();
20
- const pageCount = Math.max(table.getPageCount(), 1);
21
- const handlePageSizeChange = (value) => {
22
- table.setPageSize(Number(value));
23
- };
24
- const handlePageIndexChange = (index) => {
25
- table.setPageIndex(index);
26
- };
27
- return jsxRuntimeExports.jsx(PaginationRow, {
28
- "data-role": "pagination",
29
- children: jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, {
30
- children: [jsxRuntimeExports.jsxs(CountInfo, {
31
- children: ["Showing ", table.getRowModel().rows.length, " out of ", totalRowCount, " rows"]
32
- }), jsxRuntimeExports.jsxs("div", {
33
- style: {
34
- display: "flex",
35
- alignItems: "center",
36
- gap: "1rem"
37
- },
38
- children: [jsxRuntimeExports.jsx(ItemPerPageText, {
22
+ return jsxRuntimeExports.jsx(TablePagination.Compose, {
23
+ children: jsxRuntimeExports.jsxs(TablePagination.Bar, {
24
+ "data-role": "pagination",
25
+ children: [jsxRuntimeExports.jsx(TablePagination.InfoLabel, {
26
+ renderer: renderRowCount,
27
+ ellipsis: true,
28
+ tooltipOnEllipsis: true
29
+ }), jsxRuntimeExports.jsx(TablePagination.Split, {}), jsxRuntimeExports.jsxs(TablePagination.PageSizeGroup, {
30
+ children: [jsxRuntimeExports.jsx(TablePagination.PageSizeSelect.Label, {
39
31
  children: "Items per page:"
40
- }), jsxRuntimeExports.jsx(Select, {
41
- value: pageSize.toString(),
42
- onChange: handlePageSizeChange,
43
- disabled: pageSizes[0] > totalRowCount,
44
- options: pageSizes.map(String).map((value) => ({
45
- value
46
- }))
32
+ }), jsxRuntimeExports.jsx(TablePagination.PageSizeSelect, {
33
+ pageSizes: pagination.pageSizes
47
34
  })]
48
- }), jsxRuntimeExports.jsxs(PaginationActions, {
49
- children: [jsxRuntimeExports.jsx(PaginationIconButton, {
50
- icon: DoubleChevronLeftIcon,
51
- size: "S",
52
- onClick: () => handlePageIndexChange(0),
53
- disabled: pageIndex === 0
54
- }), jsxRuntimeExports.jsx(PaginationIconButton, {
55
- icon: ChevronLeftIcon,
56
- size: "S",
57
- onClick: () => handlePageIndexChange(pageIndex - 1),
58
- disabled: pageIndex === 0
59
- }), jsxRuntimeExports.jsxs(PaginationIndexText, {
60
- size: "S",
61
- children: [pageIndex + 1, " of ", pageCount]
62
- }), jsxRuntimeExports.jsx(PaginationIconButton, {
63
- icon: ChevronRightIcon,
64
- size: "S",
65
- onClick: () => handlePageIndexChange(pageIndex + 1),
66
- disabled: pageIndex === pageCount - 1
67
- }), jsxRuntimeExports.jsx(PaginationIconButton, {
68
- icon: DoubleChevronRightIcon,
69
- size: "S",
70
- onClick: () => handlePageIndexChange(pageCount - 1),
71
- disabled: pageIndex === pageCount - 1
35
+ }), jsxRuntimeExports.jsxs(TablePagination.PageNavGroup, {
36
+ children: [jsxRuntimeExports.jsxs("div", {
37
+ children: [jsxRuntimeExports.jsx(TablePagination.NavigationButton, {
38
+ navType: "first"
39
+ }), jsxRuntimeExports.jsx(TablePagination.NavigationButton, {
40
+ navType: "prev"
41
+ })]
42
+ }), jsxRuntimeExports.jsx(TablePagination.InfoLabel, {
43
+ ellipsis: true,
44
+ tooltipOnEllipsis: true,
45
+ renderer: renderPageCount
46
+ }), jsxRuntimeExports.jsxs("div", {
47
+ children: [jsxRuntimeExports.jsx(TablePagination.NavigationButton, {
48
+ navType: "next"
49
+ }), jsxRuntimeExports.jsx(TablePagination.NavigationButton, {
50
+ navType: "last"
51
+ })]
72
52
  })]
73
- }), jsxRuntimeExports.jsxs(PaginationActions, {
74
- children: [jsxRuntimeExports.jsx(PageLabelText, {
53
+ }), jsxRuntimeExports.jsxs(TablePagination.PageSelectGroup, {
54
+ children: [jsxRuntimeExports.jsx(TablePagination.PageSelect.Label, {
75
55
  children: "Page"
76
- }), jsxRuntimeExports.jsx(Select, {
77
- value: (pageIndex + 1).toString(),
78
- onChange: (value) => handlePageIndexChange(Number(value) - 1),
79
- options: Array.from({
80
- length: pageCount
81
- }, (_, i) => String(i + 1)).map((value) => ({
82
- value
83
- }))
84
- }), jsxRuntimeExports.jsxs(TotalPagesText, {
85
- children: ["of ", pageCount]
56
+ }), jsxRuntimeExports.jsx(TablePagination.PageSelect, {}), jsxRuntimeExports.jsx(TablePagination.InfoLabel, {
57
+ ellipsis: true,
58
+ tooltipOnEllipsis: true,
59
+ renderer: renderTotalPageCount
86
60
  })]
87
61
  })]
88
62
  })
89
63
  });
90
- };
64
+ }, {
65
+ Compose: TablePaginationCompose,
66
+ Bar: PaginationBar,
67
+ Split: Pagination.Split,
68
+ InfoLabel,
69
+ PageSelect,
70
+ PageSizeSelect,
71
+ NavigationButton,
72
+ PageSizeGroup,
73
+ PageNavGroup,
74
+ PageSelectGroup
75
+ });
91
76
  export {
92
77
  TablePagination as default
93
78
  };
@@ -5,56 +5,81 @@ const redisUiStyles = require("@redislabsdev/redis-ui-styles");
5
5
  const redisUiComponents = require("@redislabsdev/redis-ui-components");
6
6
  const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
7
7
  const _styled__default = /* @__PURE__ */ _interopDefault(_styled);
8
- const PaginationIconButton = _styled__default.default(redisUiComponents.IconButton).withConfig({
9
- displayName: "TablePaginationstyle__PaginationIconButton",
10
- componentId: "sc-ccqfi0-0"
11
- })(["color:", ";&:disabled{color:", ";}"], () => redisUiStyles.useTheme().components.table.components.tablePagination.paginationIconButton.enabledColor, () => redisUiStyles.useTheme().components.table.components.tablePagination.paginationIconButton.disabledColor);
12
- const CountInfo = _styled__default.default(redisUiComponents.Typography.Body).withConfig({
13
- displayName: "TablePaginationstyle__CountInfo",
14
- componentId: "sc-ccqfi0-1"
15
- })(["display:flex;margin-right:auto;font-size:1.2rem;color:", ";"], () => redisUiStyles.useTheme().components.table.components.tablePagination.countInfoText.color);
16
- const PaginationRow = _styled__default.default.div.withConfig({
17
- displayName: "TablePaginationstyle__PaginationRow",
18
- componentId: "sc-ccqfi0-2"
19
- })(["display:flex;align-items:center;gap:3.2rem;width:100%;height:4.8rem;padding:0 1.2rem;justify-content:flex-end;border-top:1px solid ", ";"], () => redisUiStyles.useTheme().components.table.components.tablePagination.paginationRow.borderTop);
20
- const Select = _styled__default.default(redisUiComponents.Select).withConfig({
21
- displayName: "TablePaginationstyle__Select",
22
- componentId: "sc-ccqfi0-3"
23
- })(["height:2rem;padding:0 0.4rem;gap:0.4rem;span{font-size:1.2rem;line-height:initial;}"]);
24
- const PaginationActions = _styled__default.default.div.withConfig({
25
- displayName: "TablePaginationstyle__PaginationActions",
26
- componentId: "sc-ccqfi0-4"
27
- })(["display:flex;align-items:center;gap:0.4rem;"]);
28
- const ItemPerPageText = _styled__default.default(redisUiComponents.Typography.Body).attrs({
29
- size: "S"
30
- }).withConfig({
31
- displayName: "TablePaginationstyle__ItemPerPageText",
32
- componentId: "sc-ccqfi0-5"
33
- })(["color:", ";flex-shrink:0;"], () => redisUiStyles.useTheme().components.table.components.tablePagination.itemPerPageText.color);
34
- const PaginationIndexText = _styled__default.default(redisUiComponents.Typography.Body).attrs({
35
- size: "S"
36
- }).withConfig({
37
- displayName: "TablePaginationstyle__PaginationIndexText",
38
- componentId: "sc-ccqfi0-6"
39
- })(["color:", ";"], () => redisUiStyles.useTheme().components.table.components.tablePagination.paginationIndexText.color);
40
- const PageLabelText = _styled__default.default(redisUiComponents.Typography.Body).attrs({
41
- size: "S"
42
- }).withConfig({
43
- displayName: "TablePaginationstyle__PageLabelText",
44
- componentId: "sc-ccqfi0-7"
45
- })(["color:", ";flex-shrink:0;"], () => redisUiStyles.useTheme().components.table.components.tablePagination.pageLabelText.color);
46
- const TotalPagesText = _styled__default.default(redisUiComponents.Typography.Body).attrs({
47
- size: "S"
48
- }).withConfig({
49
- displayName: "TablePaginationstyle__TotalPagesText",
50
- componentId: "sc-ccqfi0-8"
51
- })(["color:", ";flex-shrink:0;"], () => redisUiStyles.useTheme().components.table.components.tablePagination.totalPagesText.color);
52
- exports.CountInfo = CountInfo;
53
- exports.ItemPerPageText = ItemPerPageText;
54
- exports.PageLabelText = PageLabelText;
55
- exports.PaginationActions = PaginationActions;
56
- exports.PaginationIconButton = PaginationIconButton;
57
- exports.PaginationIndexText = PaginationIndexText;
58
- exports.PaginationRow = PaginationRow;
59
- exports.Select = Select;
60
- exports.TotalPagesText = TotalPagesText;
8
+ const NavigationButton = _styled__default.default(redisUiComponents.Pagination.NavigationButton).withConfig({
9
+ displayName: "TablePaginationstyle__NavigationButton",
10
+ componentId: "RedisUI__sc-ccqfi0-0"
11
+ })(["", ";"], () => {
12
+ const styles = redisUiStyles.useTheme().components.table.pagination.navButton;
13
+ return _styled.css`
14
+ width: ${styles.width};
15
+ height: ${styles.height};
16
+ padding: ${styles.padding};
17
+ color: ${styles.color};
18
+
19
+ &:disabled {
20
+ color: ${styles.disabledColor};
21
+ }
22
+ `;
23
+ });
24
+ const PaginationBar = _styled__default.default(redisUiComponents.Pagination.Bar).attrs(({
25
+ "aria-label": al
26
+ }) => ({
27
+ "aria-label": al ?? "Table Pagination"
28
+ })).withConfig({
29
+ displayName: "TablePaginationstyle__PaginationBar",
30
+ componentId: "RedisUI__sc-ccqfi0-1"
31
+ })(["", " width:100%;overflow:auto hidden;> *{flex:none;}"], () => {
32
+ const styles = redisUiStyles.useTheme().components.table.pagination.bar;
33
+ return _styled.css`
34
+ font-size: ${styles.fontSize};
35
+ gap: ${styles.gap};
36
+ height: ${styles.height};
37
+ padding: ${styles.padding};
38
+ border: solid ${styles.borderColor};
39
+ border-width: ${styles.borderSize};
40
+ color: ${styles.textColor};
41
+ `;
42
+ });
43
+ const InfoLabel = _styled__default.default(redisUiComponents.Pagination.InfoLabel).withConfig({
44
+ displayName: "TablePaginationstyle__InfoLabel",
45
+ componentId: "RedisUI__sc-ccqfi0-2"
46
+ })(["line-height:", ";"], () => redisUiStyles.useTheme().components.table.pagination.select.height);
47
+ const useSelectStyles = () => {
48
+ const styles = redisUiStyles.useTheme().components.table.pagination.select;
49
+ return _styled.css`
50
+ gap: ${styles.gap};
51
+ height: ${styles.height};
52
+ padding: ${styles.padding};
53
+ color: ${styles.textColor};
54
+ font-size: ${styles.fontSize};
55
+ line-height: initial;
56
+ `;
57
+ };
58
+ const PageSizeSelect = _styled__default.default(redisUiComponents.Pagination.PageSizeSelect).withConfig({
59
+ displayName: "TablePaginationstyle__PageSizeSelect",
60
+ componentId: "RedisUI__sc-ccqfi0-3"
61
+ })(["", ""], useSelectStyles);
62
+ const PageSelect = _styled__default.default(redisUiComponents.Pagination.PageSelect).withConfig({
63
+ displayName: "TablePaginationstyle__PageSelect",
64
+ componentId: "RedisUI__sc-ccqfi0-4"
65
+ })(["", ""], useSelectStyles);
66
+ const PageSizeGroup = _styled__default.default(redisUiComponents.Pagination.Group).withConfig({
67
+ displayName: "TablePaginationstyle__PageSizeGroup",
68
+ componentId: "RedisUI__sc-ccqfi0-5"
69
+ })(["gap:1rem;"]);
70
+ const PageNavGroup = _styled__default.default(redisUiComponents.Pagination.Group).withConfig({
71
+ displayName: "TablePaginationstyle__PageNavGroup",
72
+ componentId: "RedisUI__sc-ccqfi0-6"
73
+ })(["gap:0.4rem;"]);
74
+ const PageSelectGroup = _styled__default.default(redisUiComponents.Pagination.Group).withConfig({
75
+ displayName: "TablePaginationstyle__PageSelectGroup",
76
+ componentId: "RedisUI__sc-ccqfi0-7"
77
+ })(["gap:0.4rem;"]);
78
+ exports.InfoLabel = InfoLabel;
79
+ exports.NavigationButton = NavigationButton;
80
+ exports.PageNavGroup = PageNavGroup;
81
+ exports.PageSelect = PageSelect;
82
+ exports.PageSelectGroup = PageSelectGroup;
83
+ exports.PageSizeGroup = PageSizeGroup;
84
+ exports.PageSizeSelect = PageSizeSelect;
85
+ exports.PaginationBar = PaginationBar;
@@ -1,50 +1,18 @@
1
- /// <reference types="react" />
2
- export declare const PaginationIconButton: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("@redislabsdev/redis-ui-components").IconButtonProps & import("react").RefAttributes<HTMLButtonElement>>, any, {}, never>;
3
- export declare const CountInfo: import("styled-components").StyledComponent<({ size, variant, component, ellipsis, ...restProps }: import("@redislabsdev/redis-ui-components/dist/Typography/components/Body/Body.types").BodyProps) => import("react/jsx-runtime").JSX.Element, any, {}, never>;
4
- export declare const PaginationRow: import("styled-components").StyledComponent<"div", any, {}, never>;
5
- export declare const Select: import("styled-components").StyledComponent<(<TValue extends string = string, TOption extends import("@redislabsdev/redis-ui-components").SelectOption<TValue> = import("@redislabsdev/redis-ui-components").SelectOption<TValue>>({ options, disabled, defaultOpen, open, onOpenChange, defaultValue, value, onChange, customCompare, error, valid, valueRender, searchable, placement, maxVisibleItems, placeholder, virtualized, contentWidth, ...restProps }: import("@redislabsdev/redis-ui-components/dist/Select/components/Compose/Compose.types").SelectComposeProps<TValue, TOption> & Omit<import("@redislabsdev/redis-ui-components/dist/Select/components/Trigger/components/Compose/Compose.types").SelectTriggerComposeProps, "customContainer"> & import("@redislabsdev/redis-ui-components/dist/Select/components/Trigger/components/Value/Value.types").SelectTriggerValueProps<TOption> & {
6
- allowReset?: boolean | undefined;
7
- loading?: boolean | undefined;
8
- } & Omit<import("@redislabsdev/redis-ui-components/dist/Select/components/Content/Content.types").SelectContentProps<TOption>, "optionComponent" | "optionValueRender"> & import("@redislabsdev/redis-ui-components/dist/Select/components/Trigger/components/Compose/Compose.types").RestSelectTriggerComposeProps) => import("react/jsx-runtime").JSX.Element) & {
9
- Compose: <TValue_1 extends string = string, TOption_1 extends import("@redislabsdev/redis-ui-components").SelectOption<TValue_1> = import("@redislabsdev/redis-ui-components").SelectOption<TValue_1>>({ options, children, onOpenChange, defaultValue, value, onChange, customCompare, error, valid, disabled, ...restProps }: import("@redislabsdev/redis-ui-components/dist/Select/components/Compose/Compose.types").SelectComposeProps<TValue_1, TOption_1> & import("@redislabsdev/redis-ui-components/dist/Helpers/common.types").ComposeChildrenProps) => import("react/jsx-runtime").JSX.Element;
10
- Trigger: (<TOption_2 extends import("@redislabsdev/redis-ui-components").SelectOption<string> = import("@redislabsdev/redis-ui-components").SelectOption<string>>({ placeholder, valueRender, allowReset, loading, ...props }: Omit<import("@redislabsdev/redis-ui-components/dist/Select/components/Trigger/components/Compose/Compose.types").SelectTriggerComposeProps, "customContainer"> & import("@redislabsdev/redis-ui-components/dist/Select/components/Trigger/components/Value/Value.types").SelectTriggerValueProps<TOption_2> & {
11
- allowReset?: boolean | undefined;
12
- loading?: boolean | undefined;
13
- } & import("@redislabsdev/redis-ui-components/dist/Select/components/Trigger/components/Compose/Compose.types").RestSelectTriggerComposeProps) => import("react/jsx-runtime").JSX.Element) & {
14
- Compose: ({ customContainer, id, ...restProps }: import("@redislabsdev/redis-ui-components/dist/Select/components/Trigger/components/Compose/Compose.types").SelectTriggerComposeProps & import("@redislabsdev/redis-ui-components/dist/Select/components/Trigger/components/Compose/Compose.types").RestSelectTriggerComposeProps & import("@redislabsdev/redis-ui-components/dist/Helpers/common.types").ComposeChildrenProps) => import("react/jsx-runtime").JSX.Element;
15
- Value: <TOption_3 extends import("@redislabsdev/redis-ui-components").SelectOption<string> = import("@redislabsdev/redis-ui-components").SelectOption<string>>({ placeholder, valueRender, ...restProps }: import("@redislabsdev/redis-ui-components/dist/Select/components/Trigger/components/Value/Value.types").SelectTriggerValueProps<TOption_3> & import("@redislabsdev/redis-ui-components/dist/Select/components/Trigger/components/Value/Value.types").RestSelectTriggerValueProps) => import("react/jsx-runtime").JSX.Element;
16
- ResetButton: ({ children, title, ...restProps }: import("react").HTMLAttributes<HTMLButtonElement>) => import("react/jsx-runtime").JSX.Element | null;
17
- StatusIndicator: (props: import("@redislabsdev/redis-ui-icons/monochrome").MonochromeIconProps & Pick<import("react").HTMLAttributes<unknown>, "style" | "className">) => import("react/jsx-runtime").JSX.Element;
18
- LoadingIndicator: ({ loading, ...restProps }: import("@redislabsdev/redis-ui-components/dist/Inputs/components/LoadingIndicator/LoadingIndicator.types").LoadingIndicatorProps & import("@redislabsdev/redis-ui-components/dist/Inputs/components/LoadingIndicator/LoadingIndicator.types").RestLoadingIndicatorProps) => import("react/jsx-runtime").JSX.Element | null;
19
- Arrow: ({ icon, ...restProps }: import("@redislabsdev/redis-ui-components/dist/Select/components/Trigger/components/Arrow/Arrow.types").TriggerArrowProps) => import("react/jsx-runtime").JSX.Element;
20
- ErrorIcon: (props: import("@redislabsdev/redis-ui-icons/monochrome").MonochromeIconProps & Pick<import("react").HTMLAttributes<unknown>, "style" | "className">) => import("react/jsx-runtime").JSX.Element;
21
- };
22
- Content: (<TOption_4 extends import("@redislabsdev/redis-ui-components").SelectOption<string> = import("@redislabsdev/redis-ui-components").SelectOption<string>>({ searchable, optionValueRender, optionComponent, maxVisibleItems, virtualized, ...restProps }: import("@redislabsdev/redis-ui-components/dist/Select/components/Content/components/Compose/Compose.types").SelectContentComposeProps & import("@redislabsdev/redis-ui-components/dist/Select/components/Content/components/OptionList/OptionList.types").OptionListProps<TOption_4> & {
23
- searchable?: boolean | undefined;
24
- } & import("@redislabsdev/redis-ui-components/dist/Select/components/Content/components/Compose/Compose.types").RestSelectContentComposeProps) => import("react/jsx-runtime").JSX.Element) & {
25
- Compose: ({ children, placement, contentWidth, ...restProps }: import("@redislabsdev/redis-ui-components/dist/Select/components/Content/components/Compose/Compose.types").SelectContentComposeProps & import("@redislabsdev/redis-ui-components/dist/Select/components/Content/components/Compose/Compose.types").RestSelectContentComposeProps & import("@redislabsdev/redis-ui-components/dist/Helpers/common.types").ComposeChildrenProps) => import("react/jsx-runtime").JSX.Element;
26
- OptionList: <TOption_5 extends import("@redislabsdev/redis-ui-components").SelectOption<string> = import("@redislabsdev/redis-ui-components").SelectOption<string>>({ optionValueRender, optionComponent: OptionComponent, maxVisibleItems, virtualized, ...restProps }: import("@redislabsdev/redis-ui-components/dist/Select/components/Content/components/OptionList/OptionList.types").OptionListProps<TOption_5> & import("@redislabsdev/redis-ui-components/dist/Select/components/Content/components/OptionList/OptionList.types").RestOptionListProps) => import("react/jsx-runtime").JSX.Element;
27
- Search: import("react").ForwardRefExoticComponent<Omit<import("@redislabsdev/redis-ui-components/dist/Inputs/components/Compose/TextCompose.types").TextInputComposeProps, "readOnly" | "parser" | "formatter"> & import("@redislabsdev/redis-ui-components/dist/Inputs/components/InputTag/InputTag.types").InputTagProps & import("@redislabsdev/redis-ui-components/dist/Inputs/components/LoadingIndicator/LoadingIndicator.types").LoadingIndicatorProps & import("@redislabsdev/redis-ui-components/dist/Inputs/components/ResetButton/ResetButton.types").ResetButtonProps & import("@redislabsdev/redis-ui-components").RestInputProps & import("react").RefAttributes<HTMLInputElement>>;
28
- Footer: import("styled-components").StyledComponent<"div", any, {}, never>;
29
- };
30
- Option: (<TOption_6 extends import("@redislabsdev/redis-ui-components").SelectOption<string> = import("@redislabsdev/redis-ui-components").SelectOption<string>>({ option, content, ...restProps }: import("@redislabsdev/redis-ui-components/dist/Select/components/Content/components/Option/components/Compose/Compose.types").SelectOptionComposeProps<TOption_6> & {
31
- content?: import("react").ReactNode;
32
- } & import("@redislabsdev/redis-ui-components/dist/Select/components/Content/components/Option/components/Compose/Compose.types").RestSelectOptionComposeProps) => import("react/jsx-runtime").JSX.Element) & {
33
- Compose: import("react").ForwardRefExoticComponent<import("@redislabsdev/redis-ui-components/dist/Select/components/Content/components/Option/components/Compose/Compose.types").SelectOptionComposeProps<import("@redislabsdev/redis-ui-components").SelectOption<string>> & import("@redislabsdev/redis-ui-components/dist/Select/components/Content/components/Option/components/Compose/Compose.types").RestSelectOptionComposeProps & import("@redislabsdev/redis-ui-components/dist/Helpers/common.types").ComposeChildrenProps & import("react").RefAttributes<HTMLDivElement>>;
34
- Content: (props: import("@redislabsdev/redis-ui-components/dist/Helpers/common.types").ComposeChildrenProps & import("@redislabsdev/redis-ui-components/dist/Select/components/Content/components/Option/components/Content/Content.types").RestSelectOptionContentProps) => import("react/jsx-runtime").JSX.Element;
35
- Indicator: ({ children, ...restProps }: import("@radix-ui/react-select").SelectItemIndicatorProps) => import("react/jsx-runtime").JSX.Element;
36
- };
1
+ export declare const NavigationButton: import("styled-components").StyledComponent<({ navType, ...restProps }: import("@redislabsdev/redis-ui-components").PaginationNavigationButtonProps) => import("react/jsx-runtime").JSX.Element, any, {}, never>;
2
+ export declare const PaginationBar: import("styled-components").StyledComponent<"nav", any, {
3
+ 'aria-label': string;
4
+ } & {
5
+ 'aria-label': string;
6
+ }, "aria-label">;
7
+ export declare const InfoLabel: import("styled-components").StyledComponent<({ renderer, ...restProps }: import("@redislabsdev/redis-ui-components").PaginationInfoLabelProps) => import("react/jsx-runtime").JSX.Element, any, {}, never>;
8
+ export declare const PageSizeSelect: import("styled-components").StyledComponent<{
9
+ ({ pageSizes, ...restProps }: import("@redislabsdev/redis-ui-components").PaginationPageSizeSelectProps): import("react/jsx-runtime").JSX.Element | null;
10
+ Label: ({ children, ...restProps }: import("@redislabsdev/redis-ui-components").TypographyBodyProps) => import("react/jsx-runtime").JSX.Element | null;
37
11
  }, any, {}, never>;
38
- export declare const PaginationActions: import("styled-components").StyledComponent<"div", any, {}, never>;
39
- export declare const ItemPerPageText: import("styled-components").StyledComponent<({ size, variant, component, ellipsis, ...restProps }: import("@redislabsdev/redis-ui-components/dist/Typography/components/Body/Body.types").BodyProps) => import("react/jsx-runtime").JSX.Element, any, {
40
- size: "S";
41
- }, "size">;
42
- export declare const PaginationIndexText: import("styled-components").StyledComponent<({ size, variant, component, ellipsis, ...restProps }: import("@redislabsdev/redis-ui-components/dist/Typography/components/Body/Body.types").BodyProps) => import("react/jsx-runtime").JSX.Element, any, {
43
- size: "S";
44
- }, "size">;
45
- export declare const PageLabelText: import("styled-components").StyledComponent<({ size, variant, component, ellipsis, ...restProps }: import("@redislabsdev/redis-ui-components/dist/Typography/components/Body/Body.types").BodyProps) => import("react/jsx-runtime").JSX.Element, any, {
46
- size: "S";
47
- }, "size">;
48
- export declare const TotalPagesText: import("styled-components").StyledComponent<({ size, variant, component, ellipsis, ...restProps }: import("@redislabsdev/redis-ui-components/dist/Typography/components/Body/Body.types").BodyProps) => import("react/jsx-runtime").JSX.Element, any, {
49
- size: "S";
50
- }, "size">;
12
+ export declare const PageSelect: import("styled-components").StyledComponent<{
13
+ ({ ...restProps }: import("@redislabsdev/redis-ui-components").PaginationPageSelectProps): import("react/jsx-runtime").JSX.Element;
14
+ Label: ({ children, ...restProps }: import("@redislabsdev/redis-ui-components").TypographyBodyProps) => import("react/jsx-runtime").JSX.Element;
15
+ }, any, {}, never>;
16
+ export declare const PageSizeGroup: import("styled-components").StyledComponent<"div", any, {}, never>;
17
+ export declare const PageNavGroup: import("styled-components").StyledComponent<"div", any, {}, never>;
18
+ export declare const PageSelectGroup: import("styled-components").StyledComponent<"div", any, {}, never>;