qbs-react-grid 1.1.23 → 1.1.25
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.
- package/es/Table.js +1 -2
- package/es/qbsTable/QbsTable.js +4 -2
- package/es/qbsTable/utilities/ColumShowHide.d.ts +1 -0
- package/es/qbsTable/utilities/ColumShowHide.js +19 -3
- package/lib/Table.js +0 -1
- package/lib/qbsTable/QbsTable.js +2 -1
- package/lib/qbsTable/utilities/ColumShowHide.d.ts +1 -0
- package/lib/qbsTable/utilities/ColumShowHide.js +19 -3
- package/package.json +1 -1
- package/src/Table.tsx +3 -37
- package/src/qbsTable/QbsTable.tsx +4 -7
- package/src/qbsTable/utilities/ColumShowHide.tsx +14 -2
package/es/Table.js
CHANGED
|
@@ -8,7 +8,7 @@ import debounce from 'lodash/debounce';
|
|
|
8
8
|
import flatten from 'lodash/flatten';
|
|
9
9
|
import isFunction from 'lodash/isFunction';
|
|
10
10
|
import PropTypes from 'prop-types';
|
|
11
|
-
import React, { useCallback, useImperativeHandle, useReducer, useRef, useState
|
|
11
|
+
import React, { useCallback, useEffect, useImperativeHandle, useReducer, useRef, useState } from 'react';
|
|
12
12
|
import CellGroup from './CellGroup';
|
|
13
13
|
import { CELL_PADDING_HEIGHT, EXPANDED_KEY, ROW_HEADER_HEIGHT, ROW_HEIGHT, SCROLLBAR_WIDTH, SORT_TYPE, TREE_DEPTH } from './constants';
|
|
14
14
|
import EmptyMessage from './EmptyMessage';
|
|
@@ -616,7 +616,6 @@ var Table = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
616
616
|
}
|
|
617
617
|
return scrollbars;
|
|
618
618
|
};
|
|
619
|
-
console.log(window.innerHeight, 'sdfsfsf');
|
|
620
619
|
var _useState2 = useState(Array(data === null || data === void 0 ? void 0 : data.length).fill(1)),
|
|
621
620
|
rowZIndices = _useState2[0],
|
|
622
621
|
setRowZIndices = _useState2[1];
|
package/es/qbsTable/QbsTable.js
CHANGED
|
@@ -6,12 +6,13 @@ import ColumnGroup from '../ColumnGroup';
|
|
|
6
6
|
import HeaderCell from '../HeaderCell';
|
|
7
7
|
import Pagination from '../Pagination';
|
|
8
8
|
import Table from '../Table';
|
|
9
|
-
import { ActionCell, CheckCell, CustomTableCell, ExpandCell
|
|
9
|
+
import { ActionCell, CheckCell, CustomRowStatus, CustomTableCell, ExpandCell } from './CustomTableCell';
|
|
10
10
|
import ToolBar from './Toolbar';
|
|
11
11
|
import ColumToggle from './utilities/ColumShowHide';
|
|
12
12
|
import debounce from './utilities/debounce';
|
|
13
13
|
import { deepEqual } from './utilities/deepEqual';
|
|
14
14
|
import { SettingsIcon } from './utilities/icons';
|
|
15
|
+
|
|
15
16
|
// import 'qbs-react-table/dist/css/qbs-react-grid.css';
|
|
16
17
|
|
|
17
18
|
import '../../dist/css/qbs-react-grid.css';
|
|
@@ -507,7 +508,8 @@ var QbsTable = function QbsTable(_ref) {
|
|
|
507
508
|
onReorder: onReorder,
|
|
508
509
|
isOpen: isOpen,
|
|
509
510
|
setIsOpen: setIsOpen,
|
|
510
|
-
handleResetColumns: handleResetColumns
|
|
511
|
+
handleResetColumns: handleResetColumns,
|
|
512
|
+
handleColumnToggle: handleColumnToggle
|
|
511
513
|
})), /*#__PURE__*/React.createElement(ActionCell, {
|
|
512
514
|
actionProps: actionProps,
|
|
513
515
|
className: classes.cellClass + " " + classes.actionCellClass,
|
|
@@ -6,6 +6,7 @@ interface ColumnToggleProps {
|
|
|
6
6
|
onReorder: (columns: QbsColumnProps[]) => void;
|
|
7
7
|
setIsOpen: React.Dispatch<React.SetStateAction<boolean>>;
|
|
8
8
|
isOpen: boolean;
|
|
9
|
+
handleColumnToggle?: (columns: QbsColumnProps[]) => void;
|
|
9
10
|
handleResetColumns?: () => void;
|
|
10
11
|
}
|
|
11
12
|
declare const ColumnToggle: React.FC<ColumnToggleProps>;
|
|
@@ -6,7 +6,8 @@ var ColumnToggle = function ColumnToggle(_ref) {
|
|
|
6
6
|
onReorder = _ref.onReorder,
|
|
7
7
|
isOpen = _ref.isOpen,
|
|
8
8
|
setIsOpen = _ref.setIsOpen,
|
|
9
|
-
handleResetColumns = _ref.handleResetColumns
|
|
9
|
+
handleResetColumns = _ref.handleResetColumns,
|
|
10
|
+
handleColumnToggle = _ref.handleColumnToggle;
|
|
10
11
|
var _useState = useState(null),
|
|
11
12
|
draggedItem = _useState[0],
|
|
12
13
|
setDraggedItem = _useState[1];
|
|
@@ -141,6 +142,10 @@ var ColumnToggle = function ColumnToggle(_ref) {
|
|
|
141
142
|
return !item.isVisible;
|
|
142
143
|
})) === null || _columns$filter === void 0 ? void 0 : _columns$filter.length) > 0 ? true : false;
|
|
143
144
|
};
|
|
145
|
+
var handleColToggle = function handleColToggle() {
|
|
146
|
+
setIsOpen(false);
|
|
147
|
+
handleColumnToggle === null || handleColumnToggle === void 0 ? void 0 : handleColumnToggle(columns);
|
|
148
|
+
};
|
|
144
149
|
return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("button", {
|
|
145
150
|
onClick: function onClick() {
|
|
146
151
|
return setIsOpen(!isOpen);
|
|
@@ -187,13 +192,24 @@ var ColumnToggle = function ColumnToggle(_ref) {
|
|
|
187
192
|
})))))), handleResetColumns && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
188
193
|
className: "qbs-table-divider"
|
|
189
194
|
}), /*#__PURE__*/React.createElement("div", {
|
|
190
|
-
className: "qbs-table-popup-item"
|
|
195
|
+
className: "qbs-table-popup-item",
|
|
196
|
+
style: {
|
|
197
|
+
display: 'flex',
|
|
198
|
+
flexDirection: 'row',
|
|
199
|
+
justifyContent: 'space-between'
|
|
200
|
+
}
|
|
191
201
|
}, /*#__PURE__*/React.createElement("a", {
|
|
192
202
|
className: "qbs-table-reset-link",
|
|
193
203
|
href: "#",
|
|
194
204
|
onClick: function onClick() {
|
|
195
205
|
return handleResetColumns === null || handleResetColumns === void 0 ? void 0 : handleResetColumns();
|
|
196
206
|
}
|
|
197
|
-
}, "Reset to default")
|
|
207
|
+
}, "Reset to default"), /*#__PURE__*/React.createElement("a", {
|
|
208
|
+
className: "qbs-table-reset-link",
|
|
209
|
+
href: "#",
|
|
210
|
+
onClick: function onClick() {
|
|
211
|
+
return handleColToggle();
|
|
212
|
+
}
|
|
213
|
+
}, "Save"))))));
|
|
198
214
|
};
|
|
199
215
|
export default ColumnToggle;
|
package/lib/Table.js
CHANGED
|
@@ -623,7 +623,6 @@ var Table = /*#__PURE__*/_react["default"].forwardRef(function (props, ref) {
|
|
|
623
623
|
}
|
|
624
624
|
return scrollbars;
|
|
625
625
|
};
|
|
626
|
-
console.log(window.innerHeight, 'sdfsfsf');
|
|
627
626
|
var _useState2 = (0, _react.useState)(Array(data === null || data === void 0 ? void 0 : data.length).fill(1)),
|
|
628
627
|
rowZIndices = _useState2[0],
|
|
629
628
|
setRowZIndices = _useState2[1];
|
package/lib/qbsTable/QbsTable.js
CHANGED
|
@@ -514,7 +514,8 @@ var QbsTable = function QbsTable(_ref) {
|
|
|
514
514
|
onReorder: onReorder,
|
|
515
515
|
isOpen: isOpen,
|
|
516
516
|
setIsOpen: setIsOpen,
|
|
517
|
-
handleResetColumns: handleResetColumns
|
|
517
|
+
handleResetColumns: handleResetColumns,
|
|
518
|
+
handleColumnToggle: handleColumnToggle
|
|
518
519
|
})), /*#__PURE__*/_react["default"].createElement(_CustomTableCell.ActionCell, {
|
|
519
520
|
actionProps: actionProps,
|
|
520
521
|
className: classes.cellClass + " " + classes.actionCellClass,
|
|
@@ -6,6 +6,7 @@ interface ColumnToggleProps {
|
|
|
6
6
|
onReorder: (columns: QbsColumnProps[]) => void;
|
|
7
7
|
setIsOpen: React.Dispatch<React.SetStateAction<boolean>>;
|
|
8
8
|
isOpen: boolean;
|
|
9
|
+
handleColumnToggle?: (columns: QbsColumnProps[]) => void;
|
|
9
10
|
handleResetColumns?: () => void;
|
|
10
11
|
}
|
|
11
12
|
declare const ColumnToggle: React.FC<ColumnToggleProps>;
|
|
@@ -12,7 +12,8 @@ var ColumnToggle = function ColumnToggle(_ref) {
|
|
|
12
12
|
onReorder = _ref.onReorder,
|
|
13
13
|
isOpen = _ref.isOpen,
|
|
14
14
|
setIsOpen = _ref.setIsOpen,
|
|
15
|
-
handleResetColumns = _ref.handleResetColumns
|
|
15
|
+
handleResetColumns = _ref.handleResetColumns,
|
|
16
|
+
handleColumnToggle = _ref.handleColumnToggle;
|
|
16
17
|
var _useState = (0, _react.useState)(null),
|
|
17
18
|
draggedItem = _useState[0],
|
|
18
19
|
setDraggedItem = _useState[1];
|
|
@@ -147,6 +148,10 @@ var ColumnToggle = function ColumnToggle(_ref) {
|
|
|
147
148
|
return !item.isVisible;
|
|
148
149
|
})) === null || _columns$filter === void 0 ? void 0 : _columns$filter.length) > 0 ? true : false;
|
|
149
150
|
};
|
|
151
|
+
var handleColToggle = function handleColToggle() {
|
|
152
|
+
setIsOpen(false);
|
|
153
|
+
handleColumnToggle === null || handleColumnToggle === void 0 ? void 0 : handleColumnToggle(columns);
|
|
154
|
+
};
|
|
150
155
|
return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("button", {
|
|
151
156
|
onClick: function onClick() {
|
|
152
157
|
return setIsOpen(!isOpen);
|
|
@@ -193,14 +198,25 @@ var ColumnToggle = function ColumnToggle(_ref) {
|
|
|
193
198
|
})))))), handleResetColumns && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
194
199
|
className: "qbs-table-divider"
|
|
195
200
|
}), /*#__PURE__*/_react["default"].createElement("div", {
|
|
196
|
-
className: "qbs-table-popup-item"
|
|
201
|
+
className: "qbs-table-popup-item",
|
|
202
|
+
style: {
|
|
203
|
+
display: 'flex',
|
|
204
|
+
flexDirection: 'row',
|
|
205
|
+
justifyContent: 'space-between'
|
|
206
|
+
}
|
|
197
207
|
}, /*#__PURE__*/_react["default"].createElement("a", {
|
|
198
208
|
className: "qbs-table-reset-link",
|
|
199
209
|
href: "#",
|
|
200
210
|
onClick: function onClick() {
|
|
201
211
|
return handleResetColumns === null || handleResetColumns === void 0 ? void 0 : handleResetColumns();
|
|
202
212
|
}
|
|
203
|
-
}, "Reset to default")
|
|
213
|
+
}, "Reset to default"), /*#__PURE__*/_react["default"].createElement("a", {
|
|
214
|
+
className: "qbs-table-reset-link",
|
|
215
|
+
href: "#",
|
|
216
|
+
onClick: function onClick() {
|
|
217
|
+
return handleColToggle();
|
|
218
|
+
}
|
|
219
|
+
}, "Save"))))));
|
|
204
220
|
};
|
|
205
221
|
var _default = ColumnToggle;
|
|
206
222
|
exports["default"] = _default;
|
package/package.json
CHANGED
package/src/Table.tsx
CHANGED
|
@@ -3,50 +3,17 @@ import debounce from 'lodash/debounce';
|
|
|
3
3
|
import flatten from 'lodash/flatten';
|
|
4
4
|
import isFunction from 'lodash/isFunction';
|
|
5
5
|
import PropTypes from 'prop-types';
|
|
6
|
-
import React, {
|
|
7
|
-
useCallback,
|
|
8
|
-
useImperativeHandle,
|
|
9
|
-
useReducer,
|
|
10
|
-
useRef,
|
|
11
|
-
useState,
|
|
12
|
-
useEffect
|
|
13
|
-
} from 'react';
|
|
6
|
+
import React, { useCallback, useEffect, useImperativeHandle, useReducer, useRef, useState } from 'react';
|
|
14
7
|
|
|
15
8
|
import CellGroup from './CellGroup';
|
|
16
|
-
import {
|
|
17
|
-
CELL_PADDING_HEIGHT,
|
|
18
|
-
EXPANDED_KEY,
|
|
19
|
-
ROW_HEADER_HEIGHT,
|
|
20
|
-
ROW_HEIGHT,
|
|
21
|
-
SCROLLBAR_WIDTH,
|
|
22
|
-
SORT_TYPE,
|
|
23
|
-
TREE_DEPTH
|
|
24
|
-
} from './constants';
|
|
9
|
+
import { CELL_PADDING_HEIGHT, EXPANDED_KEY, ROW_HEADER_HEIGHT, ROW_HEIGHT, SCROLLBAR_WIDTH, SORT_TYPE, TREE_DEPTH } from './constants';
|
|
25
10
|
import EmptyMessage from './EmptyMessage';
|
|
26
11
|
import Loader from './Loader';
|
|
27
12
|
import MouseArea from './MouseArea';
|
|
28
13
|
import Row, { RowProps } from './Row';
|
|
29
14
|
import Scrollbar, { ScrollbarInstance } from './Scrollbar';
|
|
30
15
|
import TableContext from './TableContext';
|
|
31
|
-
import {
|
|
32
|
-
findAllParents,
|
|
33
|
-
findRowKeys,
|
|
34
|
-
flattenData,
|
|
35
|
-
isRTL,
|
|
36
|
-
isSupportTouchEvent,
|
|
37
|
-
mergeCells,
|
|
38
|
-
resetLeftForCells,
|
|
39
|
-
shouldShowRowByExpanded,
|
|
40
|
-
useAffix,
|
|
41
|
-
useCellDescriptor,
|
|
42
|
-
useClassNames,
|
|
43
|
-
useControlled,
|
|
44
|
-
usePosition,
|
|
45
|
-
useScrollListener,
|
|
46
|
-
useTableDimension,
|
|
47
|
-
useTableRows,
|
|
48
|
-
useUpdateEffect
|
|
49
|
-
} from './utils';
|
|
16
|
+
import { findAllParents, findRowKeys, flattenData, isRTL, isSupportTouchEvent, mergeCells, resetLeftForCells, shouldShowRowByExpanded, useAffix, useCellDescriptor, useClassNames, useControlled, usePosition, useScrollListener, useTableDimension, useTableRows, useUpdateEffect } from './utils';
|
|
50
17
|
|
|
51
18
|
import type {
|
|
52
19
|
StandardProps,
|
|
@@ -952,7 +919,6 @@ const Table = React.forwardRef(<Row extends RowDataType, Key>(props: TableProps<
|
|
|
952
919
|
|
|
953
920
|
return scrollbars;
|
|
954
921
|
};
|
|
955
|
-
console.log(window.innerHeight, 'sdfsfsf');
|
|
956
922
|
const [rowZIndices, setRowZIndices] = useState(Array(data?.length).fill(1));
|
|
957
923
|
useEffect(() => {
|
|
958
924
|
if (data?.length > 0) setRowZIndices(Array(data?.length).fill(1));
|
|
@@ -7,21 +7,17 @@ import HeaderCell from '../HeaderCell';
|
|
|
7
7
|
import Pagination from '../Pagination';
|
|
8
8
|
import Table from '../Table';
|
|
9
9
|
import { QbsColumnProps, QbsTableProps } from './commontypes';
|
|
10
|
-
import {
|
|
11
|
-
ActionCell,
|
|
12
|
-
CheckCell,
|
|
13
|
-
CustomTableCell,
|
|
14
|
-
ExpandCell,
|
|
15
|
-
CustomRowStatus
|
|
16
|
-
} from './CustomTableCell';
|
|
10
|
+
import { ActionCell, CheckCell, CustomRowStatus, CustomTableCell, ExpandCell } from './CustomTableCell';
|
|
17
11
|
import ToolBar from './Toolbar';
|
|
18
12
|
import ColumToggle from './utilities/ColumShowHide';
|
|
19
13
|
import debounce from './utilities/debounce';
|
|
20
14
|
import { deepEqual } from './utilities/deepEqual';
|
|
21
15
|
import { SettingsIcon } from './utilities/icons';
|
|
16
|
+
|
|
22
17
|
// import 'qbs-react-table/dist/css/qbs-react-grid.css';
|
|
23
18
|
|
|
24
19
|
import '../../dist/css/qbs-react-grid.css';
|
|
20
|
+
|
|
25
21
|
const CHECKBOX_LINE_HEIGHT = '36px';
|
|
26
22
|
const COLUMN_WIDTH = 250;
|
|
27
23
|
const QbsTable: React.FC<QbsTableProps> = ({
|
|
@@ -562,6 +558,7 @@ const QbsTable: React.FC<QbsTableProps> = ({
|
|
|
562
558
|
isOpen={isOpen}
|
|
563
559
|
setIsOpen={setIsOpen}
|
|
564
560
|
handleResetColumns={handleResetColumns}
|
|
561
|
+
handleColumnToggle={handleColumnToggle}
|
|
565
562
|
/>
|
|
566
563
|
)}
|
|
567
564
|
</HeaderCell>
|
|
@@ -9,6 +9,7 @@ interface ColumnToggleProps {
|
|
|
9
9
|
onReorder: (columns: QbsColumnProps[]) => void;
|
|
10
10
|
setIsOpen: React.Dispatch<React.SetStateAction<boolean>>;
|
|
11
11
|
isOpen: boolean;
|
|
12
|
+
handleColumnToggle?: (columns: QbsColumnProps[]) => void;
|
|
12
13
|
handleResetColumns?: () => void;
|
|
13
14
|
}
|
|
14
15
|
|
|
@@ -18,7 +19,8 @@ const ColumnToggle: React.FC<ColumnToggleProps> = ({
|
|
|
18
19
|
onReorder,
|
|
19
20
|
isOpen,
|
|
20
21
|
setIsOpen,
|
|
21
|
-
handleResetColumns
|
|
22
|
+
handleResetColumns,
|
|
23
|
+
handleColumnToggle
|
|
22
24
|
}) => {
|
|
23
25
|
const [draggedItem, setDraggedItem] = useState<number | null>(null);
|
|
24
26
|
const popupRef = useRef<HTMLDivElement | null>(null);
|
|
@@ -161,6 +163,10 @@ const ColumnToggle: React.FC<ColumnToggleProps> = ({
|
|
|
161
163
|
const handleAvailableColumns = () => {
|
|
162
164
|
return columns.filter(item => !item.isVisible)?.length > 0 ? true : false;
|
|
163
165
|
};
|
|
166
|
+
const handleColToggle = () => {
|
|
167
|
+
setIsOpen(false);
|
|
168
|
+
handleColumnToggle?.(columns);
|
|
169
|
+
};
|
|
164
170
|
return (
|
|
165
171
|
<div>
|
|
166
172
|
<button onClick={() => setIsOpen(!isOpen)}>
|
|
@@ -210,7 +216,10 @@ const ColumnToggle: React.FC<ColumnToggleProps> = ({
|
|
|
210
216
|
{handleResetColumns && (
|
|
211
217
|
<>
|
|
212
218
|
<div className="qbs-table-divider"></div>
|
|
213
|
-
<div
|
|
219
|
+
<div
|
|
220
|
+
className="qbs-table-popup-item"
|
|
221
|
+
style={{ display: 'flex', flexDirection: 'row', justifyContent: 'space-between' }}
|
|
222
|
+
>
|
|
214
223
|
<a
|
|
215
224
|
className="qbs-table-reset-link"
|
|
216
225
|
href="#"
|
|
@@ -218,6 +227,9 @@ const ColumnToggle: React.FC<ColumnToggleProps> = ({
|
|
|
218
227
|
>
|
|
219
228
|
Reset to default
|
|
220
229
|
</a>
|
|
230
|
+
<a className="qbs-table-reset-link" href="#" onClick={() => handleColToggle()}>
|
|
231
|
+
Save
|
|
232
|
+
</a>
|
|
221
233
|
</div>
|
|
222
234
|
</>
|
|
223
235
|
)}
|