@astral/ui 0.21.0 → 0.22.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 (207) hide show
  1. package/DataGrid/DataGrid.d.ts +3 -0
  2. package/DataGrid/DataGrid.js +64 -0
  3. package/DataGrid/DataGridBody/DataGridBody.d.ts +3 -0
  4. package/DataGrid/DataGridBody/DataGridBody.js +39 -0
  5. package/DataGrid/DataGridBody/index.d.ts +1 -0
  6. package/DataGrid/DataGridBody/index.js +13 -0
  7. package/DataGrid/DataGridBody/styled.d.ts +13 -0
  8. package/DataGrid/DataGridBody/styled.js +17 -0
  9. package/DataGrid/DataGridBody/types.d.ts +11 -0
  10. package/DataGrid/DataGridBody/types.js +2 -0
  11. package/DataGrid/DataGridCell/DataGridCell.d.ts +3 -0
  12. package/DataGrid/DataGridCell/DataGridCell.js +29 -0
  13. package/DataGrid/DataGridCell/index.d.ts +1 -0
  14. package/DataGrid/DataGridCell/index.js +13 -0
  15. package/DataGrid/DataGridCell/types.d.ts +5 -0
  16. package/DataGrid/DataGridCell/types.js +2 -0
  17. package/DataGrid/DataGridHead/DataGridHead.d.ts +3 -0
  18. package/DataGrid/DataGridHead/DataGridHead.js +71 -0
  19. package/DataGrid/DataGridHead/index.d.ts +2 -0
  20. package/DataGrid/DataGridHead/index.js +14 -0
  21. package/DataGrid/DataGridHead/types.d.ts +11 -0
  22. package/DataGrid/DataGridHead/types.js +2 -0
  23. package/DataGrid/DataGridHeadColumn/DataGridHeadColumn.d.ts +3 -0
  24. package/DataGrid/DataGridHeadColumn/DataGridHeadColumn.js +30 -0
  25. package/DataGrid/DataGridHeadColumn/index.d.ts +2 -0
  26. package/DataGrid/DataGridHeadColumn/index.js +14 -0
  27. package/DataGrid/DataGridHeadColumn/styled.d.ts +38 -0
  28. package/DataGrid/DataGridHeadColumn/styled.js +20 -0
  29. package/DataGrid/DataGridHeadColumn/types.d.ts +11 -0
  30. package/DataGrid/DataGridHeadColumn/types.js +2 -0
  31. package/DataGrid/DataGridLoader/DataGridLoader.d.ts +4 -0
  32. package/DataGrid/DataGridLoader/DataGridLoader.js +9 -0
  33. package/DataGrid/DataGridLoader/index.d.ts +2 -0
  34. package/DataGrid/DataGridLoader/index.js +14 -0
  35. package/DataGrid/DataGridLoader/styled.d.ts +27 -0
  36. package/DataGrid/DataGridLoader/styled.js +18 -0
  37. package/DataGrid/DataGridLoader/types.d.ts +3 -0
  38. package/DataGrid/DataGridLoader/types.js +2 -0
  39. package/DataGrid/constants.d.ts +4 -0
  40. package/DataGrid/constants.js +8 -0
  41. package/DataGrid/index.d.ts +2 -0
  42. package/DataGrid/index.js +14 -0
  43. package/DataGrid/styled.d.ts +16 -0
  44. package/DataGrid/styled.js +17 -0
  45. package/DataGrid/types.d.ts +32 -0
  46. package/DataGrid/types.js +2 -0
  47. package/DataGridPagination/DataGridPagination.d.ts +3 -0
  48. package/DataGridPagination/DataGridPagination.js +38 -0
  49. package/DataGridPagination/index.d.ts +2 -0
  50. package/DataGridPagination/index.js +14 -0
  51. package/DataGridPagination/styled.d.ts +10 -0
  52. package/DataGridPagination/styled.js +18 -0
  53. package/DataGridPagination/types.d.ts +6 -0
  54. package/DataGridPagination/types.js +2 -0
  55. package/Pagination/Pagination.d.ts +3 -0
  56. package/Pagination/Pagination.js +32 -0
  57. package/Pagination/index.d.ts +2 -0
  58. package/Pagination/index.js +14 -0
  59. package/Pagination/types.d.ts +2 -0
  60. package/Pagination/types.js +2 -0
  61. package/Table/Table.d.ts +3 -0
  62. package/Table/Table.js +32 -0
  63. package/Table/TableBody/TableBody.d.ts +3 -0
  64. package/Table/TableBody/TableBody.js +5 -0
  65. package/Table/TableBody/index.d.ts +1 -0
  66. package/Table/TableBody/index.js +13 -0
  67. package/Table/TableCell/TableCell.d.ts +3 -0
  68. package/Table/TableCell/TableCell.js +5 -0
  69. package/Table/TableCell/index.d.ts +1 -0
  70. package/Table/TableCell/index.js +13 -0
  71. package/Table/TableContainer/TableContainer.d.ts +3 -0
  72. package/Table/TableContainer/TableContainer.js +5 -0
  73. package/Table/TableContainer/index.d.ts +1 -0
  74. package/Table/TableContainer/index.js +13 -0
  75. package/Table/TableFooter/TableFooter.d.ts +3 -0
  76. package/Table/TableFooter/TableFooter.js +5 -0
  77. package/Table/TableFooter/index.d.ts +1 -0
  78. package/Table/TableFooter/index.js +13 -0
  79. package/Table/TableHead/TableHead.d.ts +3 -0
  80. package/Table/TableHead/TableHead.js +5 -0
  81. package/Table/TableHead/index.d.ts +1 -0
  82. package/Table/TableHead/index.js +13 -0
  83. package/Table/TableRow/TableRow.d.ts +3 -0
  84. package/Table/TableRow/TableRow.js +5 -0
  85. package/Table/TableRow/index.d.ts +1 -0
  86. package/Table/TableRow/index.js +13 -0
  87. package/Table/TableSortLabel/TableSortLabel.d.ts +3 -0
  88. package/Table/TableSortLabel/TableSortLabel.js +5 -0
  89. package/Table/TableSortLabel/index.d.ts +1 -0
  90. package/Table/TableSortLabel/index.js +13 -0
  91. package/Table/index.d.ts +7 -0
  92. package/Table/index.js +19 -0
  93. package/esm/DataGrid/DataGrid.d.ts +3 -0
  94. package/esm/DataGrid/DataGrid.js +57 -0
  95. package/esm/DataGrid/DataGridBody/DataGridBody.d.ts +3 -0
  96. package/esm/DataGrid/DataGridBody/DataGridBody.js +35 -0
  97. package/esm/DataGrid/DataGridBody/index.d.ts +1 -0
  98. package/esm/DataGrid/DataGridBody/index.js +1 -0
  99. package/esm/DataGrid/DataGridBody/styled.d.ts +13 -0
  100. package/esm/DataGrid/DataGridBody/styled.js +14 -0
  101. package/esm/DataGrid/DataGridBody/types.d.ts +11 -0
  102. package/esm/DataGrid/DataGridBody/types.js +1 -0
  103. package/esm/DataGrid/DataGridCell/DataGridCell.d.ts +3 -0
  104. package/esm/DataGrid/DataGridCell/DataGridCell.js +25 -0
  105. package/esm/DataGrid/DataGridCell/index.d.ts +1 -0
  106. package/esm/DataGrid/DataGridCell/index.js +1 -0
  107. package/esm/DataGrid/DataGridCell/types.d.ts +5 -0
  108. package/esm/DataGrid/DataGridCell/types.js +1 -0
  109. package/esm/DataGrid/DataGridHead/DataGridHead.d.ts +3 -0
  110. package/esm/DataGrid/DataGridHead/DataGridHead.js +67 -0
  111. package/esm/DataGrid/DataGridHead/index.d.ts +2 -0
  112. package/esm/DataGrid/DataGridHead/index.js +2 -0
  113. package/esm/DataGrid/DataGridHead/types.d.ts +11 -0
  114. package/esm/DataGrid/DataGridHead/types.js +1 -0
  115. package/esm/DataGrid/DataGridHeadColumn/DataGridHeadColumn.d.ts +3 -0
  116. package/esm/DataGrid/DataGridHeadColumn/DataGridHeadColumn.js +26 -0
  117. package/esm/DataGrid/DataGridHeadColumn/index.d.ts +2 -0
  118. package/esm/DataGrid/DataGridHeadColumn/index.js +2 -0
  119. package/esm/DataGrid/DataGridHeadColumn/styled.d.ts +38 -0
  120. package/esm/DataGrid/DataGridHeadColumn/styled.js +17 -0
  121. package/esm/DataGrid/DataGridHeadColumn/types.d.ts +11 -0
  122. package/esm/DataGrid/DataGridHeadColumn/types.js +1 -0
  123. package/esm/DataGrid/DataGridLoader/DataGridLoader.d.ts +4 -0
  124. package/esm/DataGrid/DataGridLoader/DataGridLoader.js +7 -0
  125. package/esm/DataGrid/DataGridLoader/index.d.ts +2 -0
  126. package/esm/DataGrid/DataGridLoader/index.js +2 -0
  127. package/esm/DataGrid/DataGridLoader/styled.d.ts +27 -0
  128. package/esm/DataGrid/DataGridLoader/styled.js +15 -0
  129. package/esm/DataGrid/DataGridLoader/types.d.ts +3 -0
  130. package/esm/DataGrid/DataGridLoader/types.js +1 -0
  131. package/esm/DataGrid/constants.d.ts +4 -0
  132. package/esm/DataGrid/constants.js +5 -0
  133. package/esm/DataGrid/index.d.ts +2 -0
  134. package/esm/DataGrid/index.js +2 -0
  135. package/esm/DataGrid/styled.d.ts +16 -0
  136. package/esm/DataGrid/styled.js +14 -0
  137. package/esm/DataGrid/types.d.ts +32 -0
  138. package/esm/DataGrid/types.js +1 -0
  139. package/esm/DataGridPagination/DataGridPagination.d.ts +3 -0
  140. package/esm/DataGridPagination/DataGridPagination.js +34 -0
  141. package/esm/DataGridPagination/index.d.ts +2 -0
  142. package/esm/DataGridPagination/index.js +2 -0
  143. package/esm/DataGridPagination/styled.d.ts +10 -0
  144. package/esm/DataGridPagination/styled.js +15 -0
  145. package/esm/DataGridPagination/types.d.ts +6 -0
  146. package/esm/DataGridPagination/types.js +1 -0
  147. package/esm/Pagination/Pagination.d.ts +3 -0
  148. package/esm/Pagination/Pagination.js +28 -0
  149. package/esm/Pagination/index.d.ts +2 -0
  150. package/esm/Pagination/index.js +2 -0
  151. package/esm/Pagination/types.d.ts +2 -0
  152. package/esm/Pagination/types.js +1 -0
  153. package/esm/Table/Table.d.ts +3 -0
  154. package/esm/Table/Table.js +28 -0
  155. package/esm/Table/TableBody/TableBody.d.ts +3 -0
  156. package/esm/Table/TableBody/TableBody.js +2 -0
  157. package/esm/Table/TableBody/index.d.ts +1 -0
  158. package/esm/Table/TableBody/index.js +1 -0
  159. package/esm/Table/TableCell/TableCell.d.ts +3 -0
  160. package/esm/Table/TableCell/TableCell.js +2 -0
  161. package/esm/Table/TableCell/index.d.ts +1 -0
  162. package/esm/Table/TableCell/index.js +1 -0
  163. package/esm/Table/TableContainer/TableContainer.d.ts +3 -0
  164. package/esm/Table/TableContainer/TableContainer.js +2 -0
  165. package/esm/Table/TableContainer/index.d.ts +1 -0
  166. package/esm/Table/TableContainer/index.js +1 -0
  167. package/esm/Table/TableFooter/TableFooter.d.ts +3 -0
  168. package/esm/Table/TableFooter/TableFooter.js +2 -0
  169. package/esm/Table/TableFooter/index.d.ts +1 -0
  170. package/esm/Table/TableFooter/index.js +1 -0
  171. package/esm/Table/TableHead/TableHead.d.ts +3 -0
  172. package/esm/Table/TableHead/TableHead.js +2 -0
  173. package/esm/Table/TableHead/index.d.ts +1 -0
  174. package/esm/Table/TableHead/index.js +1 -0
  175. package/esm/Table/TableRow/TableRow.d.ts +3 -0
  176. package/esm/Table/TableRow/TableRow.js +2 -0
  177. package/esm/Table/TableRow/index.d.ts +1 -0
  178. package/esm/Table/TableRow/index.js +1 -0
  179. package/esm/Table/TableSortLabel/TableSortLabel.d.ts +3 -0
  180. package/esm/Table/TableSortLabel/TableSortLabel.js +2 -0
  181. package/esm/Table/TableSortLabel/index.d.ts +1 -0
  182. package/esm/Table/TableSortLabel/index.js +1 -0
  183. package/esm/Table/index.d.ts +7 -0
  184. package/esm/Table/index.js +7 -0
  185. package/esm/index.d.ts +3 -0
  186. package/esm/index.js +3 -0
  187. package/esm/theme/__tests__/BaseTheme.test.js +1 -1
  188. package/esm/theme/components/MuiPaginationItem.d.ts +3 -0
  189. package/esm/theme/components/MuiPaginationItem.js +14 -0
  190. package/esm/theme/components/MuiTableCell.d.ts +3 -0
  191. package/esm/theme/components/MuiTableCell.js +9 -0
  192. package/esm/theme/components/MuiTableHead.d.ts +3 -0
  193. package/esm/theme/components/MuiTableHead.js +12 -0
  194. package/esm/theme/components/components.js +7 -1
  195. package/esm/theme/elevation.js +5 -5
  196. package/index.d.ts +3 -0
  197. package/index.js +3 -0
  198. package/package.json +2 -2
  199. package/theme/__tests__/BaseTheme.test.js +1 -1
  200. package/theme/components/MuiPaginationItem.d.ts +3 -0
  201. package/theme/components/MuiPaginationItem.js +17 -0
  202. package/theme/components/MuiTableCell.d.ts +3 -0
  203. package/theme/components/MuiTableCell.js +12 -0
  204. package/theme/components/MuiTableHead.d.ts +3 -0
  205. package/theme/components/MuiTableHead.js +15 -0
  206. package/theme/components/components.js +7 -1
  207. package/theme/elevation.js +5 -5
@@ -0,0 +1,35 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
+ import { useCallback, useMemo } from 'react';
14
+ import { TableCell, TableRow } from '../../Table';
15
+ import { DataGridCell } from '../DataGridCell';
16
+ import { Checkbox } from '../../Checkbox';
17
+ import { StyledTableBody } from './styled';
18
+ export function DataGridBody(_a) {
19
+ var rows = _a.rows, columns = _a.columns, selectable = _a.selectable, onSelectRow = _a.onSelectRow, _b = _a.selectedRows, selectedRows = _b === void 0 ? [] : _b, minDisplayRows = _a.minDisplayRows, keyId = _a.keyId;
20
+ var renderCells = useCallback(function (row, rowId) {
21
+ return columns.map(function (cell, index) {
22
+ var cellId = "".concat(rowId, "-").concat(index);
23
+ return _jsx(DataGridCell, { row: row, cell: cell }, cellId);
24
+ });
25
+ }, [columns]);
26
+ var renderedRows = useMemo(function () {
27
+ return rows.map(function (row) {
28
+ var rowId = row[keyId];
29
+ var checked = selectable &&
30
+ Boolean(selectedRows.find(function (selectedRow) { return selectedRow[keyId] === rowId; }));
31
+ return (_jsxs(TableRow, { children: [selectable && (_jsx(TableCell, __assign({ padding: "checkbox" }, { children: _jsx(Checkbox, { checked: checked, onChange: onSelectRow(row) }, void 0) }), void 0)), renderCells(row, rowId)] }, rowId));
32
+ });
33
+ }, [rows, keyId, selectable, selectedRows, onSelectRow, columns]);
34
+ return (_jsx(StyledTableBody, __assign({ empty: !rows.length, minDisplayRows: minDisplayRows }, { children: renderedRows }), void 0));
35
+ }
@@ -0,0 +1 @@
1
+ export * from './DataGridBody';
@@ -0,0 +1 @@
1
+ export * from './DataGridBody';
@@ -0,0 +1,13 @@
1
+ /// <reference types="react" />
2
+ export declare const StyledTableBody: import("@emotion/styled").StyledComponent<{
3
+ children?: import("react").ReactNode;
4
+ classes?: Partial<import("@mui/material").TableBodyClasses> | undefined;
5
+ sx?: import("@mui/system").SxProps<import("@mui/material").Theme> | undefined;
6
+ } & import("@mui/material/OverridableComponent").CommonProps & Omit<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLTableSectionElement>, HTMLTableSectionElement>, "key" | keyof import("react").HTMLAttributes<HTMLTableSectionElement>> & {
7
+ ref?: ((instance: HTMLTableSectionElement | null) => void) | import("react").RefObject<HTMLTableSectionElement> | null | undefined;
8
+ }, keyof import("@mui/material/OverridableComponent").CommonProps | "children" | "sx"> & {
9
+ theme?: import("@emotion/react").Theme | undefined;
10
+ } & {
11
+ empty: boolean;
12
+ minDisplayRows: number;
13
+ }, {}, {}>;
@@ -0,0 +1,14 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import { styled } from '../../styles';
6
+ import { TableBody } from '../../Table';
7
+ var TABLE_ROW_HEIGHT = 44;
8
+ export var StyledTableBody = styled(TableBody, {
9
+ shouldForwardProp: function (prop) { return prop !== 'empty' && prop !== 'minDisplayRows'; },
10
+ })(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n height: ", ";\n"], ["\n height: ", ";\n"])), function (_a) {
11
+ var empty = _a.empty, minDisplayRows = _a.minDisplayRows;
12
+ return empty ? "".concat(TABLE_ROW_HEIGHT * minDisplayRows, "px") : 'auto';
13
+ });
14
+ var templateObject_1;
@@ -0,0 +1,11 @@
1
+ import { ChangeEvent } from 'react';
2
+ import { DataGridColumns, DataGridRow } from '../types';
3
+ export declare type DataGridBodyProps<T = DataGridRow> = {
4
+ columns: DataGridColumns<T>[];
5
+ keyId: keyof DataGridRow;
6
+ selectable?: boolean;
7
+ selectedRows?: Array<T>;
8
+ rows: T[];
9
+ onSelectRow: (row: T) => (event: ChangeEvent<HTMLInputElement>) => void;
10
+ minDisplayRows: number;
11
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { CellProps } from './types';
3
+ export declare function DataGridCell<T>({ row, cell: { field, renderCell, format, align }, }: CellProps<T>): JSX.Element;
@@ -0,0 +1,25 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
+ import { useMemo } from 'react';
14
+ import { TableCell } from '../../Table';
15
+ import { Typography } from '../../Typography';
16
+ export function DataGridCell(_a) {
17
+ var row = _a.row, _b = _a.cell, field = _b.field, renderCell = _b.renderCell, format = _b.format, _c = _b.align, align = _c === void 0 ? 'left' : _c;
18
+ var formattedValue = useMemo(function () {
19
+ if (format) {
20
+ return format(row);
21
+ }
22
+ return row[field];
23
+ }, [field, format, row]);
24
+ return (_jsxs(TableCell, __assign({ align: align }, { children: [renderCell && renderCell(row), !renderCell && _jsx(Typography, { children: formattedValue }, void 0)] }), void 0));
25
+ }
@@ -0,0 +1 @@
1
+ export * from './DataGridCell';
@@ -0,0 +1 @@
1
+ export * from './DataGridCell';
@@ -0,0 +1,5 @@
1
+ import { DataGridColumns } from '../types';
2
+ export declare type CellProps<T> = {
3
+ row: T;
4
+ cell: DataGridColumns<T>;
5
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { DataGridHeadProps } from './types';
3
+ export declare function DataGridHead<T>({ columns, selectable, onSelectAllRows, rowsCount, onSort, sorting, uncheckedRowsCount, }: DataGridHeadProps<T>): JSX.Element;
@@ -0,0 +1,67 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
13
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
14
+ if (ar || !(i in from)) {
15
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
16
+ ar[i] = from[i];
17
+ }
18
+ }
19
+ return to.concat(ar || Array.prototype.slice.call(from));
20
+ };
21
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
22
+ import { useCallback, useMemo } from 'react';
23
+ import { TableHead } from '../../Table/TableHead';
24
+ import { TableCell, TableRow } from '../../Table';
25
+ import { Checkbox } from '../../Checkbox';
26
+ import { SortStates } from '../constants';
27
+ import { DataGridHeadColumn } from '../DataGridHeadColumn';
28
+ export function DataGridHead(_a) {
29
+ var columns = _a.columns, selectable = _a.selectable, onSelectAllRows = _a.onSelectAllRows, rowsCount = _a.rowsCount, onSort = _a.onSort, _b = _a.sorting, sorting = _b === void 0 ? [] : _b, uncheckedRowsCount = _a.uncheckedRowsCount;
30
+ var checked = useMemo(function () { return !Boolean(uncheckedRowsCount) && rowsCount > 0; }, [uncheckedRowsCount, rowsCount]);
31
+ var indeterminate = useMemo(function () { return uncheckedRowsCount > 0 && uncheckedRowsCount < rowsCount; }, [uncheckedRowsCount, rowsCount]);
32
+ var handleSort = useCallback(function (field, sortable) { return function () {
33
+ if (sortable) {
34
+ var currentSort = sorting.find(function (_a) {
35
+ var fieldId = _a.fieldId;
36
+ return fieldId === field;
37
+ });
38
+ // если для выбранного столбца текущая сортировка ASC - меняем на DESC
39
+ if (currentSort && currentSort.sort === SortStates.ASC) {
40
+ var newSorting = __spreadArray(__spreadArray([], sorting.filter(function (_a) {
41
+ var fieldId = _a.fieldId;
42
+ return fieldId !== field;
43
+ }), true), [
44
+ { fieldId: field, sort: SortStates.DESC },
45
+ ], false);
46
+ return onSort(newSorting);
47
+ // если для выбранного столбца текущая сортировка DESC - убираем сортировку
48
+ }
49
+ else if (currentSort && currentSort.sort === SortStates.DESC) {
50
+ var newSorting = sorting.filter(function (_a) {
51
+ var fieldId = _a.fieldId;
52
+ return fieldId !== field;
53
+ });
54
+ return onSort(newSorting);
55
+ }
56
+ // если для выбранного столбца нет сортировки - добавляем сортировку ASC
57
+ onSort(__spreadArray(__spreadArray([], sorting, true), [{ fieldId: field, sort: SortStates.ASC }], false));
58
+ }
59
+ }; }, [sorting]);
60
+ var renderColumns = useMemo(function () {
61
+ return columns.map(function (_a) {
62
+ var field = _a.field, label = _a.label, sortable = _a.sortable, align = _a.align, renderCell = _a.renderCell;
63
+ return (_jsx(DataGridHeadColumn, { sorting: sorting, renderCell: renderCell, field: field, onSort: handleSort, label: label, sortable: sortable, align: align }, void 0));
64
+ });
65
+ }, [columns, handleSort, sorting]);
66
+ return (_jsx(TableHead, { children: _jsxs(TableRow, { children: [selectable && (_jsx(TableCell, __assign({ padding: "checkbox" }, { children: _jsx(Checkbox, { checked: checked, indeterminate: indeterminate, onChange: onSelectAllRows }, void 0) }), void 0)), renderColumns] }, void 0) }, void 0));
67
+ }
@@ -0,0 +1,2 @@
1
+ export * from './DataGridHead';
2
+ export * from './types';
@@ -0,0 +1,2 @@
1
+ export * from './DataGridHead';
2
+ export * from './types';
@@ -0,0 +1,11 @@
1
+ import { ChangeEvent } from 'react';
2
+ import { DataGridColumns, DataGridRow, DataGridSort } from '../types';
3
+ export declare type DataGridHeadProps<T = DataGridRow> = {
4
+ columns: DataGridColumns<T>[];
5
+ selectable: boolean;
6
+ onSelectAllRows: (event: ChangeEvent<HTMLInputElement>) => void;
7
+ sorting: DataGridSort<T>[];
8
+ onSort: (sorting: DataGridSort<T>[]) => void;
9
+ uncheckedRowsCount: number;
10
+ rowsCount: number;
11
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { DataGridHeadColumnProps } from './types';
3
+ export declare function DataGridHeadColumn<T>({ onSort, field, sortable, align, label, sorting, renderCell, }: DataGridHeadColumnProps<T>): JSX.Element;
@@ -0,0 +1,26 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
+ import { Typography } from '../../Typography/Typography';
14
+ import { SortStates } from '../constants';
15
+ import { StyledTableCell, StyledTableSortLabel } from './styled';
16
+ export function DataGridHeadColumn(_a) {
17
+ var onSort = _a.onSort, field = _a.field, sortable = _a.sortable, align = _a.align, label = _a.label, sorting = _a.sorting, renderCell = _a.renderCell;
18
+ var sortParams = sorting.find(function (_a) {
19
+ var fieldId = _a.fieldId;
20
+ return field === fieldId;
21
+ });
22
+ var hideSortIcon = !Boolean(sortParams);
23
+ var sortDirection = sortParams ? sortParams.sort : SortStates.ASC;
24
+ var fitContent = Boolean(renderCell);
25
+ return (_jsxs(StyledTableCell, __assign({ onClick: onSort(field, sortable), fitContent: fitContent, align: align }, { children: [_jsx(Typography, __assign({ variant: "pointer" }, { children: label }), void 0), sortable && (_jsx(StyledTableSortLabel, { hideSortIcon: hideSortIcon, direction: sortDirection, active: true }, void 0))] }), void 0));
26
+ }
@@ -0,0 +1,2 @@
1
+ export * from './DataGridHeadColumn';
2
+ export * from './types';
@@ -0,0 +1,2 @@
1
+ export * from './DataGridHeadColumn';
2
+ export * from './types';
@@ -0,0 +1,38 @@
1
+ /// <reference types="react" />
2
+ import { TableCellProps } from '@mui/material';
3
+ export declare const StyledTableSortLabel: import("@emotion/styled").StyledComponent<{
4
+ active?: boolean | undefined;
5
+ children?: import("react").ReactNode;
6
+ classes?: Partial<import("@mui/material").TableSortLabelClasses> | undefined;
7
+ direction?: "desc" | "asc" | undefined;
8
+ hideSortIcon?: boolean | undefined;
9
+ IconComponent?: import("react").JSXElementConstructor<{
10
+ className: string;
11
+ }> | undefined;
12
+ sx?: import("@mui/material").SxProps<import("@mui/material").Theme> | undefined;
13
+ } & Omit<{
14
+ action?: import("react").Ref<import("@mui/material").ButtonBaseActions> | undefined;
15
+ centerRipple?: boolean | undefined;
16
+ children?: import("react").ReactNode;
17
+ classes?: Partial<import("@mui/material").ButtonBaseClasses> | undefined;
18
+ disabled?: boolean | undefined;
19
+ disableRipple?: boolean | undefined;
20
+ disableTouchRipple?: boolean | undefined;
21
+ focusRipple?: boolean | undefined;
22
+ focusVisibleClassName?: string | undefined;
23
+ LinkComponent?: import("react").ElementType<any> | undefined;
24
+ onFocusVisible?: import("react").FocusEventHandler<any> | undefined;
25
+ sx?: import("@mui/material").SxProps<import("@mui/material").Theme> | undefined;
26
+ tabIndex?: number | undefined;
27
+ TouchRippleProps?: Partial<import("@mui/material/ButtonBase/TouchRipple").TouchRippleProps> | undefined;
28
+ touchRippleRef?: import("react").Ref<import("@mui/material/ButtonBase/TouchRipple").TouchRippleActions> | undefined;
29
+ }, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "key" | keyof import("react").HTMLAttributes<HTMLSpanElement>> & {
30
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
31
+ }, keyof import("@mui/material/OverridableComponent").CommonProps | "children" | "disabled" | "sx" | "tabIndex" | "direction" | "action" | "active" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "hideSortIcon" | "IconComponent"> & {
32
+ theme?: import("@emotion/react").Theme | undefined;
33
+ }, {}, {}>;
34
+ export declare const StyledTableCell: import("@emotion/styled").StyledComponent<TableCellProps & {
35
+ theme?: import("@emotion/react").Theme | undefined;
36
+ } & {
37
+ fitContent?: boolean | undefined;
38
+ }, {}, {}>;
@@ -0,0 +1,17 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import { styled } from '../../styles';
6
+ import { TableCell, TableSortLabel } from '../../Table';
7
+ export var StyledTableSortLabel = styled(TableSortLabel)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n visibility: ", ";\n"], ["\n visibility: ", ";\n"])), function (_a) {
8
+ var hideSortIcon = _a.hideSortIcon;
9
+ return hideSortIcon && 'hidden';
10
+ });
11
+ export var StyledTableCell = styled(TableCell, {
12
+ shouldForwardProp: function (prop) { return prop !== 'fitContent'; },
13
+ })(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n width: ", ";\n\n cursor: pointer;\n\n user-select: none;\n"], ["\n width: ", ";\n\n cursor: pointer;\n\n user-select: none;\n"])), function (_a) {
14
+ var fitContent = _a.fitContent;
15
+ return (fitContent ? '1%' : 'auto');
16
+ });
17
+ var templateObject_1, templateObject_2;
@@ -0,0 +1,11 @@
1
+ import { TableCellProps } from '@mui/material';
2
+ import { DataGridSort, RenderCell } from '../types';
3
+ export declare type DataGridHeadColumnProps<T> = {
4
+ onSort: (field: keyof T, sortable: boolean | undefined) => () => void;
5
+ sorting: DataGridSort<T>[];
6
+ renderCell?: RenderCell<T>;
7
+ label?: string;
8
+ sortable?: boolean;
9
+ align?: TableCellProps['align'];
10
+ field: keyof T;
11
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { DataGridLoaderProps } from './types';
3
+ declare const DataGridLoader: ({ loading }: DataGridLoaderProps) => JSX.Element;
4
+ export default DataGridLoader;
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Backdrop, LoaderWrapper, StyledDivider, StyledLinearProgress, } from './styled';
3
+ var DataGridLoader = function (_a) {
4
+ var _b = _a.loading, loading = _b === void 0 ? false : _b;
5
+ return (_jsxs(LoaderWrapper, { children: [loading && _jsx(Backdrop, {}, void 0), loading ? _jsx(StyledLinearProgress, {}, void 0) : _jsx(StyledDivider, {}, void 0)] }, void 0));
6
+ };
7
+ export default DataGridLoader;
@@ -0,0 +1,2 @@
1
+ export * from './styled';
2
+ export * from './types';
@@ -0,0 +1,2 @@
1
+ export * from './styled';
2
+ export * from './types';
@@ -0,0 +1,27 @@
1
+ /// <reference types="react" />
2
+ export declare const Backdrop: import("@emotion/styled").StyledComponent<{
3
+ theme?: import("@emotion/react").Theme | undefined;
4
+ as?: import("react").ElementType<any> | undefined;
5
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
6
+ export declare const StyledDivider: import("@emotion/styled").StyledComponent<{
7
+ absolute?: boolean | undefined;
8
+ children?: import("react").ReactNode;
9
+ classes?: Partial<import("@mui/material").DividerClasses> | undefined;
10
+ flexItem?: boolean | undefined;
11
+ light?: boolean | undefined;
12
+ orientation?: "horizontal" | "vertical" | undefined;
13
+ sx?: import("@mui/material").SxProps<import("@mui/material").Theme> | undefined;
14
+ textAlign?: "left" | "center" | "right" | undefined;
15
+ variant?: "middle" | "inset" | "fullWidth" | undefined;
16
+ } & import("@mui/material/OverridableComponent").CommonProps & Omit<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLHRElement>, HTMLHRElement>, "key" | keyof import("react").HTMLAttributes<HTMLHRElement>> & {
17
+ ref?: ((instance: HTMLHRElement | null) => void) | import("react").RefObject<HTMLHRElement> | null | undefined;
18
+ }, keyof import("@mui/material/OverridableComponent").CommonProps | "children" | "sx" | "variant" | "orientation" | "textAlign" | "light" | "absolute" | "flexItem"> & {
19
+ theme?: import("@emotion/react").Theme | undefined;
20
+ }, {}, {}>;
21
+ export declare const LoaderWrapper: import("@emotion/styled").StyledComponent<{
22
+ theme?: import("@emotion/react").Theme | undefined;
23
+ as?: import("react").ElementType<any> | undefined;
24
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
25
+ export declare const StyledLinearProgress: import("@emotion/styled").StyledComponent<import("@mui/material").LinearProgressProps & {
26
+ theme?: import("@emotion/react").Theme | undefined;
27
+ }, {}, {}>;
@@ -0,0 +1,15 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import { LinearProgress } from '@mui/material';
6
+ import { Divider } from '../../Divider';
7
+ import { styled } from '../../styles';
8
+ export var Backdrop = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: absolute;\n top: 0;\n\n width: 100%;\n height: 100%;\n\n background-color: ", ";\n opacity: 0.6;\n"], ["\n position: absolute;\n top: 0;\n\n width: 100%;\n height: 100%;\n\n background-color: ", ";\n opacity: 0.6;\n"])), function (_a) {
9
+ var theme = _a.theme;
10
+ return theme.palette.grey['100'];
11
+ });
12
+ export var StyledDivider = styled(Divider)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n border-width: 1px;\n"], ["\n border-width: 1px;\n"])));
13
+ export var LoaderWrapper = styled.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n height: 2px;\n"], ["\n height: 2px;\n"])));
14
+ export var StyledLinearProgress = styled(LinearProgress)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n height: 2px;\n"], ["\n height: 2px;\n"])));
15
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4;
@@ -0,0 +1,3 @@
1
+ export declare type DataGridLoaderProps = {
2
+ loading?: boolean;
3
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ export declare enum SortStates {
2
+ ASC = "asc",
3
+ DESC = "desc"
4
+ }
@@ -0,0 +1,5 @@
1
+ export var SortStates;
2
+ (function (SortStates) {
3
+ SortStates["ASC"] = "asc";
4
+ SortStates["DESC"] = "desc";
5
+ })(SortStates || (SortStates = {}));
@@ -0,0 +1,2 @@
1
+ export * from './DataGrid';
2
+ export * from './types';
@@ -0,0 +1,2 @@
1
+ export * from './DataGrid';
2
+ export * from './types';
@@ -0,0 +1,16 @@
1
+ /// <reference types="react" />
2
+ export declare const DataGridContainer: import("@emotion/styled").StyledComponent<{
3
+ theme?: import("@emotion/react").Theme | undefined;
4
+ as?: import("react").ElementType<any> | undefined;
5
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
6
+ export declare const StyledTableContainer: import("@emotion/styled").StyledComponent<{
7
+ children?: import("react").ReactNode;
8
+ classes?: Partial<import("@mui/material").TableContainerClasses> | undefined;
9
+ sx?: import("@mui/material").SxProps<import("@mui/material").Theme> | undefined;
10
+ } & import("@mui/material/OverridableComponent").CommonProps & Omit<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof import("react").HTMLAttributes<HTMLDivElement>> & {
11
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
12
+ }, keyof import("@mui/material/OverridableComponent").CommonProps | "children" | "sx"> & {
13
+ theme?: import("@emotion/react").Theme | undefined;
14
+ } & {
15
+ maxHeight?: number | undefined;
16
+ }, {}, {}>;
@@ -0,0 +1,14 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import { styled } from '../styles';
6
+ import { TableContainer } from '../Table';
7
+ export var DataGridContainer = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n width: 100%;\n overflow: hidden;\n"], ["\n width: 100%;\n overflow: hidden;\n"])));
8
+ export var StyledTableContainer = styled(TableContainer, {
9
+ shouldForwardProp: function (prop) { return prop !== 'maxHeight'; },
10
+ })(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n position: relative;\n\n max-height: ", ";\n"], ["\n position: relative;\n\n max-height: ", ";\n"])), function (_a) {
11
+ var maxHeight = _a.maxHeight;
12
+ return "".concat(maxHeight, "px") || 'auto';
13
+ });
14
+ var templateObject_1, templateObject_2;
@@ -0,0 +1,32 @@
1
+ import { ReactNode } from 'react';
2
+ import { SortStates } from './constants';
3
+ export declare type CellValue = string | number | boolean | Date | null | undefined | object;
4
+ export declare type SortState = `${SortStates}`;
5
+ export declare type RenderCell<T> = (params: T) => ReactNode;
6
+ export declare type DataGridRow = Record<string, any>;
7
+ export declare type DataGridSort<Data extends {}> = {
8
+ fieldId: keyof Data;
9
+ sort: SortState;
10
+ };
11
+ export declare type DataGridProps<T = DataGridRow> = {
12
+ rows: T[];
13
+ columns: DataGridColumns<T>[];
14
+ keyId: keyof DataGridRow;
15
+ selectedRows?: Array<T>;
16
+ onSelectRow?: (row: T[]) => void;
17
+ sorting?: DataGridSort<T>[];
18
+ onSort: (sorting: DataGridSort<T>[]) => void;
19
+ Footer?: ReactNode;
20
+ maxHeight?: number;
21
+ loading?: boolean;
22
+ minDisplayRows?: number;
23
+ };
24
+ export declare type DataGridColumns<Column extends {}> = {
25
+ field: keyof Column & string;
26
+ label?: string;
27
+ sortable?: boolean;
28
+ pointer?: boolean;
29
+ renderCell?: RenderCell<Column>;
30
+ format?: (data: Column) => CellValue;
31
+ align?: 'inherit' | 'left' | 'center' | 'right' | 'justify';
32
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { DataGridPaginationProps } from './types';
3
+ export declare const DataGridPagination: ({ page, rowsPerPage, totalCount, className, ...props }: DataGridPaginationProps) => JSX.Element;
@@ -0,0 +1,34 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __rest = (this && this.__rest) || function (s, e) {
13
+ var t = {};
14
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
+ t[p] = s[p];
16
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
+ t[p[i]] = s[p[i]];
20
+ }
21
+ return t;
22
+ };
23
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
24
+ import { useMemo } from 'react';
25
+ import { Pagination } from '../Pagination';
26
+ import { PaginationWrapper, Range } from './styled';
27
+ export var DataGridPagination = function (_a) {
28
+ var page = _a.page, _b = _a.rowsPerPage, rowsPerPage = _b === void 0 ? 10 : _b, totalCount = _a.totalCount, className = _a.className, props = __rest(_a, ["page", "rowsPerPage", "totalCount", "className"]);
29
+ var count = Math.ceil(totalCount / rowsPerPage);
30
+ var rangeStart = useMemo(function () { return page * rowsPerPage; }, [page]);
31
+ var rangeEnd = useMemo(function () { return page * rowsPerPage + rowsPerPage; }, [page]);
32
+ var formattedRange = "".concat(rangeStart, " \u2014 ").concat(rangeEnd, " \u0438\u0437 ").concat(totalCount, " \u0437\u0430\u043F\u0438\u0441\u0435\u0439");
33
+ return (_jsxs(PaginationWrapper, __assign({ className: className }, { children: [_jsx(Range, __assign({ variant: "h6" }, { children: formattedRange }), void 0), _jsx(Pagination, __assign({ count: count }, props), void 0)] }), void 0));
34
+ };
@@ -0,0 +1,2 @@
1
+ export * from './DataGridPagination';
2
+ export * from './types';
@@ -0,0 +1,2 @@
1
+ export * from './DataGridPagination';
2
+ export * from './types';
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ export declare const PaginationWrapper: import("@emotion/styled").StyledComponent<{
3
+ theme?: import("@emotion/react").Theme | undefined;
4
+ as?: import("react").ElementType<any> | undefined;
5
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
6
+ export declare const Range: import("@emotion/styled").StyledComponent<Omit<import("@mui/material").TypographyProps<"span", {}>, "variant"> & {
7
+ variant?: "link" | "small" | "code" | "pointer" | import("@mui/material").TypographyVariant | "h7" | "h8" | "h9" | "ui" | undefined;
8
+ } & {
9
+ theme?: import("@emotion/react").Theme | undefined;
10
+ }, {}, {}>;
@@ -0,0 +1,15 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import { styled } from '../styles';
6
+ import { Typography } from '../Typography';
7
+ export var PaginationWrapper = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: ", ";\n"], ["\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: ", ";\n"])), function (_a) {
8
+ var theme = _a.theme;
9
+ return theme.spacing(2, 0);
10
+ });
11
+ export var Range = styled(Typography)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n color: ", ";\n"], ["\n color: ", ";\n"])), function (_a) {
12
+ var theme = _a.theme;
13
+ return theme.palette.grey['700'];
14
+ });
15
+ var templateObject_1, templateObject_2;
@@ -0,0 +1,6 @@
1
+ import { PaginationProps } from '../Pagination';
2
+ export declare type DataGridPaginationProps = Omit<PaginationProps, 'count'> & {
3
+ totalCount: number;
4
+ rowsPerPage?: number;
5
+ page: number;
6
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { PaginationProps } from './types';
3
+ export declare const Pagination: ({ ...props }: PaginationProps) => JSX.Element;