pixelize-design-library 1.1.57 → 1.1.58

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.
@@ -33,7 +33,7 @@ exports.default = TableLoading;
33
33
  var TableBodyLoading = function (_a) {
34
34
  var noOfColumns = _a.noOfColumns, borderColor = _a.borderColor;
35
35
  return (react_1.default.createElement(react_1.default.Fragment, null, Array.from({ length: 5 }).map(function (_, index) {
36
- return (react_1.default.createElement(react_2.Tr, null,
36
+ return (react_1.default.createElement(react_2.Tr, { key: index },
37
37
  react_1.default.createElement(react_2.Td, { colSpan: noOfColumns, textAlign: "center", border: "1px solid ".concat(borderColor) },
38
38
  react_1.default.createElement(react_2.Skeleton, { height: "15px", variant: "shine" }))));
39
39
  })));
@@ -10,8 +10,9 @@ type UseTableProps = {
10
10
  tablePreferences?: Record<string, any>;
11
11
  savePreferences?: (data: Record<string, any>) => void;
12
12
  noOfRowsPerPage?: number;
13
+ isServerPagination: boolean;
13
14
  };
14
- declare const useTable: ({ tableBorderColor, data, isPagination, selections, columns, onSelection, tablePreferences, savePreferences, noOfRowsPerPage, }: UseTableProps) => {
15
+ declare const useTable: ({ tableBorderColor, data, isPagination, selections, columns, onSelection, tablePreferences, savePreferences, noOfRowsPerPage, isServerPagination, }: UseTableProps) => {
15
16
  tableData: DataObject[];
16
17
  tableContainerStyles: {
17
18
  borderRadius: string;
@@ -25,7 +25,7 @@ var useCustomTheme_1 = require("../../../Theme/useCustomTheme");
25
25
  var table_1 = require("../../../Utils/table");
26
26
  var defaultPageSize = 50;
27
27
  var useTable = function (_a) {
28
- var tableBorderColor = _a.tableBorderColor, data = _a.data, isPagination = _a.isPagination, selections = _a.selections, columns = _a.columns, onSelection = _a.onSelection, tablePreferences = _a.tablePreferences, savePreferences = _a.savePreferences, noOfRowsPerPage = _a.noOfRowsPerPage;
28
+ var tableBorderColor = _a.tableBorderColor, data = _a.data, isPagination = _a.isPagination, selections = _a.selections, columns = _a.columns, onSelection = _a.onSelection, tablePreferences = _a.tablePreferences, savePreferences = _a.savePreferences, noOfRowsPerPage = _a.noOfRowsPerPage, isServerPagination = _a.isServerPagination;
29
29
  var theme = (0, useCustomTheme_1.useCustomTheme)();
30
30
  var headerRefs = (0, react_1.useRef)([]);
31
31
  var _b = (0, react_1.useState)([]), columnWidths = _b[0], setColumnWidths = _b[1];
@@ -70,10 +70,13 @@ var useTable = function (_a) {
70
70
  var startRow = (0, react_1.useMemo)(function () { return (!isPagination ? 0 : currentPage * rowsPerPage); }, [currentPage, isPagination, rowsPerPage]);
71
71
  var endRow = (0, react_1.useMemo)(function () { return (!isPagination ? tableData.length : startRow + rowsPerPage); }, [isPagination, rowsPerPage, startRow, tableData.length]);
72
72
  (0, react_1.useEffect)(function () {
73
+ if (isServerPagination) {
74
+ return setFilteredData(tableData);
75
+ }
73
76
  var sortedData = (0, table_1.SortMultiColumnData)(tableData, columnsSort);
74
77
  var data = sortedData.slice(startRow, endRow);
75
- setFilteredData(data);
76
- }, [columnsSort, startRow, endRow, tableData]);
78
+ return setFilteredData(data);
79
+ }, [columnsSort, startRow, endRow, tableData, isServerPagination]);
77
80
  var handlePageSizeChange = function (event) {
78
81
  var value = Number(event.target.value);
79
82
  setRowsPerPage(value !== 0 ? value : defaultPageSize);
@@ -75,6 +75,7 @@ function Table(_a) {
75
75
  tablePreferences: tablePreferences,
76
76
  savePreferences: savePreferences,
77
77
  noOfRowsPerPage: noOfRowsPerPage,
78
+ isServerPagination: paginationMode === "server",
78
79
  }), tableData = _u.tableData, tableContainerStyles = _u.tableContainerStyles, isContent = _u.isContent, isLink = _u.isLink, headerRefs = _u.headerRefs, columnWidths = _u.columnWidths, visibleColumns = _u.visibleColumns, handleSort = _u.handleSort, handleCheckbox = _u.handleCheckbox, filteredData = _u.filteredData, startRow = _u.startRow, endRow = _u.endRow, selection = _u.selection, columnsSort = _u.columnsSort, currentPage = _u.currentPage, pages = _u.pages, rowsPerPage = _u.rowsPerPage, handleColumnVisibilityChange = _u.handleColumnVisibilityChange, handlePageSizeChange = _u.handlePageSizeChange, setCurrentPage = _u.setCurrentPage;
79
80
  var _filteredData = (0, react_1.useMemo)(function () {
80
81
  return (0, table_1.searchAndSortData)(filteredData, columnsSearch);
@@ -95,6 +96,6 @@ function Table(_a) {
95
96
  : "indeterminate", isContent: isContent, isLink: isLink, isActionFreeze: isActionFreeze, setColumnsSearch: setColumnsSearch, columnsSearch: columnsSearch })),
96
97
  react_1.default.createElement(react_3.Tbody, null,
97
98
  react_1.default.createElement(TableBody_1.default, { data: _filteredData, columns: columns, startRow: startRow, endRow: endRow, visibleColumns: visibleColumns, isCheckbox: isCheckbox, columnWidths: columnWidths, noBorders: noBorders, freezedBgColor: freezedBgColor !== null && freezedBgColor !== void 0 ? freezedBgColor : theme.colors.backgroundColor.secondary, freezedTextColor: freezedTextColor !== null && freezedTextColor !== void 0 ? freezedTextColor : (_d = theme.colors) === null || _d === void 0 ? void 0 : _d.gray[600], handleCheckbox: handleCheckbox, selections: selection, isLoading: isTableLoading, onRowClick: onRowClick, isContent: isContent, isLink: isLink, isActionFreeze: isActionFreeze })))),
98
- isPagination && (react_1.default.createElement(Pagination_1.default, { columns: columns, currentPage: currentPage, setCurrentPage: setCurrentPage, rowsPerPage: rowsPerPage, pages: totalPages !== null && totalPages !== void 0 ? totalPages : pages, paginationText: "".concat(startRow + 1, " to ").concat(endRow, " of ").concat(tableData.length), handlePageSizeChange: handlePageSizeChange, dataLength: tableData.length, isServerPagination: paginationMode === "server", visibleColumns: visibleColumns, handleColumnVisibilityChange: handleColumnVisibilityChange, isVisiblity: true }))));
99
+ isPagination && (react_1.default.createElement(Pagination_1.default, { columns: columns, currentPage: currentPage, setCurrentPage: setCurrentPage, rowsPerPage: rowsPerPage, pages: paginationMode === "server" ? totalPages : pages, paginationText: "".concat(startRow + 1, " to ").concat(endRow, " of ").concat(tableData.length), handlePageSizeChange: handlePageSizeChange, dataLength: tableData.length, isServerPagination: paginationMode === "server", visibleColumns: visibleColumns, handleColumnVisibilityChange: handleColumnVisibilityChange, isVisiblity: true }))));
99
100
  }
100
101
  exports.default = Table;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pixelize-design-library",
3
- "version": "1.1.57",
3
+ "version": "1.1.58",
4
4
  "private": false,
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",