qbs-react-grid 1.1.11 → 1.1.13
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/qbsTable/CustomTableCell.js +9 -4
- package/es/qbsTable/QbsTable.js +4 -1
- package/es/qbsTable/commontypes.d.ts +1 -0
- package/lib/qbsTable/CustomTableCell.js +9 -4
- package/lib/qbsTable/QbsTable.js +4 -1
- package/lib/qbsTable/commontypes.d.ts +1 -0
- package/package.json +6 -3
- package/src/qbsTable/CustomTableCell.tsx +7 -3
- package/src/qbsTable/QbsTable.tsx +5 -2
- package/src/qbsTable/commontypes.ts +2 -1
|
@@ -2,11 +2,12 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
3
|
var _excluded = ["rowData", "onChange", "checkedKeys", "dataKey", "dataTheme"],
|
|
4
4
|
_excluded2 = ["rowData", "dataKey", "expandedRowKeys", "onChange"],
|
|
5
|
-
_excluded3 = ["rowData", "renderCell", "toolTip", "dataKey", "onChange", "rowClick", "type", "link"];
|
|
5
|
+
_excluded3 = ["rowData", "renderCell", "toolTip", "dataKey", "onChange", "rowClick", "type", "path", "link"];
|
|
6
6
|
import React from 'react';
|
|
7
7
|
import Cell from '../Cell';
|
|
8
8
|
import { handleCellFormat } from './utilities/handleFormatCell';
|
|
9
9
|
import MenuDropDown from './utilities/menuDropDown';
|
|
10
|
+
import { Link } from 'react-router-dom';
|
|
10
11
|
var CHECKBOX_LINE_HEIGHT = '36px';
|
|
11
12
|
export var CheckCell = /*#__PURE__*/React.memo(function (_ref) {
|
|
12
13
|
var rowData = _ref.rowData,
|
|
@@ -72,7 +73,7 @@ export var ExpandCell = /*#__PURE__*/React.memo(function (_ref3) {
|
|
|
72
73
|
}) ? '-' : '+'));
|
|
73
74
|
});
|
|
74
75
|
export var CustomTableCell = /*#__PURE__*/React.memo(function (_ref4) {
|
|
75
|
-
var _renderCell, _renderCell2;
|
|
76
|
+
var _renderCell, _path, _renderCell2, _renderCell3;
|
|
76
77
|
var rowData = _ref4.rowData,
|
|
77
78
|
renderCell = _ref4.renderCell,
|
|
78
79
|
toolTip = _ref4.toolTip,
|
|
@@ -80,14 +81,18 @@ export var CustomTableCell = /*#__PURE__*/React.memo(function (_ref4) {
|
|
|
80
81
|
onChange = _ref4.onChange,
|
|
81
82
|
rowClick = _ref4.rowClick,
|
|
82
83
|
type = _ref4.type,
|
|
84
|
+
path = _ref4.path,
|
|
83
85
|
link = _ref4.link,
|
|
84
86
|
props = _objectWithoutPropertiesLoose(_ref4, _excluded3);
|
|
85
87
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Cell, _extends({}, props, {
|
|
86
88
|
dataKey: dataKey
|
|
87
|
-
}), link ? /*#__PURE__*/React.createElement("a", {
|
|
89
|
+
}), link && !path ? /*#__PURE__*/React.createElement("a", {
|
|
88
90
|
onClick: function onClick() {
|
|
89
91
|
return rowClick === null || rowClick === void 0 ? void 0 : rowClick(rowData);
|
|
90
92
|
},
|
|
91
93
|
className: "qbs-table-row-link"
|
|
92
|
-
}, renderCell ? (_renderCell = renderCell(rowData)) === null || _renderCell === void 0 ? void 0 : _renderCell.cell : handleCellFormat(rowData[dataKey], type)) : /*#__PURE__*/React.createElement(
|
|
94
|
+
}, renderCell ? (_renderCell = renderCell(rowData)) === null || _renderCell === void 0 ? void 0 : _renderCell.cell : handleCellFormat(rowData[dataKey], type)) : path ? /*#__PURE__*/React.createElement(Link, {
|
|
95
|
+
to: (_path = path === null || path === void 0 ? void 0 : path(rowData)) != null ? _path : '',
|
|
96
|
+
className: "qbs-table-row-link"
|
|
97
|
+
}, renderCell ? (_renderCell2 = renderCell(rowData)) === null || _renderCell2 === void 0 ? void 0 : _renderCell2.cell : handleCellFormat(rowData[dataKey], type)) : /*#__PURE__*/React.createElement(React.Fragment, null, renderCell ? (_renderCell3 = renderCell(rowData)) === null || _renderCell3 === void 0 ? void 0 : _renderCell3.cell : handleCellFormat(rowData[dataKey], type))));
|
|
93
98
|
});
|
package/es/qbsTable/QbsTable.js
CHANGED
|
@@ -311,6 +311,7 @@ var QbsTable = function QbsTable(_ref) {
|
|
|
311
311
|
renderCell = _ref3.renderCell,
|
|
312
312
|
isVisible = _ref3.isVisible,
|
|
313
313
|
link = _ref3.link,
|
|
314
|
+
getPath = _ref3.getPath,
|
|
314
315
|
rowClick = _ref3.rowClick,
|
|
315
316
|
sortKey = _ref3.sortKey,
|
|
316
317
|
type = _ref3.type;
|
|
@@ -335,11 +336,12 @@ var QbsTable = function QbsTable(_ref) {
|
|
|
335
336
|
verticalAlign: 'middle',
|
|
336
337
|
className: " " + classes.headerClass,
|
|
337
338
|
sortKey: child.sortKey
|
|
338
|
-
}, child.title), customCell || child.link ? /*#__PURE__*/React.createElement(CustomTableCell, {
|
|
339
|
+
}, child.title), child.customCell || child.link ? /*#__PURE__*/React.createElement(CustomTableCell, {
|
|
339
340
|
renderCell: child.renderCell,
|
|
340
341
|
dataKey: child.field,
|
|
341
342
|
dataTheme: dataTheme,
|
|
342
343
|
type: child.type,
|
|
344
|
+
path: child.getPath,
|
|
343
345
|
link: child.link
|
|
344
346
|
}) : /*#__PURE__*/React.createElement(Cell, {
|
|
345
347
|
className: " " + classes.cellClass,
|
|
@@ -364,6 +366,7 @@ var QbsTable = function QbsTable(_ref) {
|
|
|
364
366
|
dataKey: field,
|
|
365
367
|
rowClick: rowClick,
|
|
366
368
|
type: type,
|
|
369
|
+
path: getPath,
|
|
367
370
|
dataTheme: dataTheme,
|
|
368
371
|
link: link
|
|
369
372
|
}) : /*#__PURE__*/React.createElement(Cell, {
|
|
@@ -9,9 +9,10 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
9
9
|
var _Cell = _interopRequireDefault(require("../Cell"));
|
|
10
10
|
var _handleFormatCell = require("./utilities/handleFormatCell");
|
|
11
11
|
var _menuDropDown = _interopRequireDefault(require("./utilities/menuDropDown"));
|
|
12
|
+
var _reactRouterDom = require("react-router-dom");
|
|
12
13
|
var _excluded = ["rowData", "onChange", "checkedKeys", "dataKey", "dataTheme"],
|
|
13
14
|
_excluded2 = ["rowData", "dataKey", "expandedRowKeys", "onChange"],
|
|
14
|
-
_excluded3 = ["rowData", "renderCell", "toolTip", "dataKey", "onChange", "rowClick", "type", "link"];
|
|
15
|
+
_excluded3 = ["rowData", "renderCell", "toolTip", "dataKey", "onChange", "rowClick", "type", "path", "link"];
|
|
15
16
|
var CHECKBOX_LINE_HEIGHT = '36px';
|
|
16
17
|
var CheckCell = /*#__PURE__*/_react["default"].memo(function (_ref) {
|
|
17
18
|
var rowData = _ref.rowData,
|
|
@@ -80,7 +81,7 @@ var ExpandCell = /*#__PURE__*/_react["default"].memo(function (_ref3) {
|
|
|
80
81
|
});
|
|
81
82
|
exports.ExpandCell = ExpandCell;
|
|
82
83
|
var CustomTableCell = /*#__PURE__*/_react["default"].memo(function (_ref4) {
|
|
83
|
-
var _renderCell, _renderCell2;
|
|
84
|
+
var _renderCell, _path, _renderCell2, _renderCell3;
|
|
84
85
|
var rowData = _ref4.rowData,
|
|
85
86
|
renderCell = _ref4.renderCell,
|
|
86
87
|
toolTip = _ref4.toolTip,
|
|
@@ -88,15 +89,19 @@ var CustomTableCell = /*#__PURE__*/_react["default"].memo(function (_ref4) {
|
|
|
88
89
|
onChange = _ref4.onChange,
|
|
89
90
|
rowClick = _ref4.rowClick,
|
|
90
91
|
type = _ref4.type,
|
|
92
|
+
path = _ref4.path,
|
|
91
93
|
link = _ref4.link,
|
|
92
94
|
props = (0, _objectWithoutPropertiesLoose2["default"])(_ref4, _excluded3);
|
|
93
95
|
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_Cell["default"], (0, _extends2["default"])({}, props, {
|
|
94
96
|
dataKey: dataKey
|
|
95
|
-
}), link ? /*#__PURE__*/_react["default"].createElement("a", {
|
|
97
|
+
}), link && !path ? /*#__PURE__*/_react["default"].createElement("a", {
|
|
96
98
|
onClick: function onClick() {
|
|
97
99
|
return rowClick === null || rowClick === void 0 ? void 0 : rowClick(rowData);
|
|
98
100
|
},
|
|
99
101
|
className: "qbs-table-row-link"
|
|
100
|
-
}, renderCell ? (_renderCell = renderCell(rowData)) === null || _renderCell === void 0 ? void 0 : _renderCell.cell : (0, _handleFormatCell.handleCellFormat)(rowData[dataKey], type)) : /*#__PURE__*/_react["default"].createElement(
|
|
102
|
+
}, renderCell ? (_renderCell = renderCell(rowData)) === null || _renderCell === void 0 ? void 0 : _renderCell.cell : (0, _handleFormatCell.handleCellFormat)(rowData[dataKey], type)) : path ? /*#__PURE__*/_react["default"].createElement(_reactRouterDom.Link, {
|
|
103
|
+
to: (_path = path === null || path === void 0 ? void 0 : path(rowData)) != null ? _path : '',
|
|
104
|
+
className: "qbs-table-row-link"
|
|
105
|
+
}, renderCell ? (_renderCell2 = renderCell(rowData)) === null || _renderCell2 === void 0 ? void 0 : _renderCell2.cell : (0, _handleFormatCell.handleCellFormat)(rowData[dataKey], type)) : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, renderCell ? (_renderCell3 = renderCell(rowData)) === null || _renderCell3 === void 0 ? void 0 : _renderCell3.cell : (0, _handleFormatCell.handleCellFormat)(rowData[dataKey], type))));
|
|
101
106
|
});
|
|
102
107
|
exports.CustomTableCell = CustomTableCell;
|
package/lib/qbsTable/QbsTable.js
CHANGED
|
@@ -318,6 +318,7 @@ var QbsTable = function QbsTable(_ref) {
|
|
|
318
318
|
renderCell = _ref3.renderCell,
|
|
319
319
|
isVisible = _ref3.isVisible,
|
|
320
320
|
link = _ref3.link,
|
|
321
|
+
getPath = _ref3.getPath,
|
|
321
322
|
rowClick = _ref3.rowClick,
|
|
322
323
|
sortKey = _ref3.sortKey,
|
|
323
324
|
type = _ref3.type;
|
|
@@ -342,11 +343,12 @@ var QbsTable = function QbsTable(_ref) {
|
|
|
342
343
|
verticalAlign: 'middle',
|
|
343
344
|
className: " " + classes.headerClass,
|
|
344
345
|
sortKey: child.sortKey
|
|
345
|
-
}, child.title), customCell || child.link ? /*#__PURE__*/_react["default"].createElement(_CustomTableCell.CustomTableCell, {
|
|
346
|
+
}, child.title), child.customCell || child.link ? /*#__PURE__*/_react["default"].createElement(_CustomTableCell.CustomTableCell, {
|
|
346
347
|
renderCell: child.renderCell,
|
|
347
348
|
dataKey: child.field,
|
|
348
349
|
dataTheme: dataTheme,
|
|
349
350
|
type: child.type,
|
|
351
|
+
path: child.getPath,
|
|
350
352
|
link: child.link
|
|
351
353
|
}) : /*#__PURE__*/_react["default"].createElement(_Cell["default"], {
|
|
352
354
|
className: " " + classes.cellClass,
|
|
@@ -371,6 +373,7 @@ var QbsTable = function QbsTable(_ref) {
|
|
|
371
373
|
dataKey: field,
|
|
372
374
|
rowClick: rowClick,
|
|
373
375
|
type: type,
|
|
376
|
+
path: getPath,
|
|
374
377
|
dataTheme: dataTheme,
|
|
375
378
|
link: link
|
|
376
379
|
}) : /*#__PURE__*/_react["default"].createElement(_Cell["default"], {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "qbs-react-grid",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.13",
|
|
4
4
|
"description": "A React table component",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"typings": "lib/index.d.ts",
|
|
@@ -44,13 +44,16 @@
|
|
|
44
44
|
"classnames": "^2.3.1",
|
|
45
45
|
"dom-lib": "^3.1.3",
|
|
46
46
|
"lodash": "^4.17.21",
|
|
47
|
-
"react-is": "^17.0.2"
|
|
47
|
+
"react-is": "^17.0.2",
|
|
48
|
+
"react-router-dom": "^6.21.0"
|
|
48
49
|
},
|
|
49
50
|
"peerDependencies": {
|
|
50
51
|
"prop-types": "^15.7.1",
|
|
51
52
|
"react": "^18.2.0",
|
|
52
53
|
"react-dom": "^18.2.0",
|
|
53
|
-
"rsuite": "^5.21.0"
|
|
54
|
+
"rsuite": "^5.21.0",
|
|
55
|
+
"react-router-dom": "^6.21.0"
|
|
56
|
+
|
|
54
57
|
},
|
|
55
58
|
"devDependencies": {
|
|
56
59
|
"@babel/cli": "^7.12.8",
|
|
@@ -3,7 +3,7 @@ import React from 'react';
|
|
|
3
3
|
import Cell from '../Cell';
|
|
4
4
|
import { handleCellFormat } from './utilities/handleFormatCell';
|
|
5
5
|
import MenuDropDown from './utilities/menuDropDown';
|
|
6
|
-
|
|
6
|
+
import { Link } from 'react-router-dom';
|
|
7
7
|
const CHECKBOX_LINE_HEIGHT = '36px';
|
|
8
8
|
export const CheckCell: React.FC<any> = React.memo(
|
|
9
9
|
({ rowData, onChange, checkedKeys, dataKey, dataTheme, ...props }) => (
|
|
@@ -61,14 +61,18 @@ export const ExpandCell: React.FC<any> = React.memo(
|
|
|
61
61
|
)
|
|
62
62
|
);
|
|
63
63
|
export const CustomTableCell: React.FC<any> = React.memo(
|
|
64
|
-
({ rowData, renderCell, toolTip, dataKey, onChange, rowClick, type, link, ...props }) => {
|
|
64
|
+
({ rowData, renderCell, toolTip, dataKey, onChange, rowClick, type, path, link, ...props }) => {
|
|
65
65
|
return (
|
|
66
66
|
<>
|
|
67
67
|
<Cell {...props} dataKey={dataKey}>
|
|
68
|
-
{link ? (
|
|
68
|
+
{link && !path ? (
|
|
69
69
|
<a onClick={() => rowClick?.(rowData)} className="qbs-table-row-link">
|
|
70
70
|
{renderCell ? renderCell(rowData)?.cell : handleCellFormat(rowData[dataKey], type)}
|
|
71
71
|
</a>
|
|
72
|
+
) : path ? (
|
|
73
|
+
<Link to={path?.(rowData) ?? ''} className="qbs-table-row-link">
|
|
74
|
+
{renderCell ? renderCell(rowData)?.cell : handleCellFormat(rowData[dataKey], type)}
|
|
75
|
+
</Link>
|
|
72
76
|
) : (
|
|
73
77
|
<>{renderCell ? renderCell(rowData)?.cell : handleCellFormat(rowData[dataKey], type)}</>
|
|
74
78
|
)}
|
|
@@ -118,7 +118,7 @@ const QbsTable: React.FC<QbsTableProps> = ({
|
|
|
118
118
|
|
|
119
119
|
[checkedKeys]
|
|
120
120
|
);
|
|
121
|
-
|
|
121
|
+
|
|
122
122
|
const handleToggle = useCallback(
|
|
123
123
|
(columnName: string) => {
|
|
124
124
|
let lastVisibleColumn: any = null;
|
|
@@ -308,6 +308,7 @@ const QbsTable: React.FC<QbsTableProps> = ({
|
|
|
308
308
|
renderCell,
|
|
309
309
|
isVisible,
|
|
310
310
|
link,
|
|
311
|
+
getPath,
|
|
311
312
|
rowClick,
|
|
312
313
|
sortKey,
|
|
313
314
|
type
|
|
@@ -342,12 +343,13 @@ const QbsTable: React.FC<QbsTableProps> = ({
|
|
|
342
343
|
>
|
|
343
344
|
{child.title}
|
|
344
345
|
</HeaderCell>
|
|
345
|
-
{customCell || child.link ? (
|
|
346
|
+
{child.customCell || child.link ? (
|
|
346
347
|
<CustomTableCell
|
|
347
348
|
renderCell={child.renderCell}
|
|
348
349
|
dataKey={child.field}
|
|
349
350
|
dataTheme={dataTheme}
|
|
350
351
|
type={child.type}
|
|
352
|
+
path={child.getPath}
|
|
351
353
|
link={child.link}
|
|
352
354
|
/>
|
|
353
355
|
) : (
|
|
@@ -385,6 +387,7 @@ const QbsTable: React.FC<QbsTableProps> = ({
|
|
|
385
387
|
dataKey={field}
|
|
386
388
|
rowClick={rowClick}
|
|
387
389
|
type={type}
|
|
390
|
+
path={getPath}
|
|
388
391
|
dataTheme={dataTheme}
|
|
389
392
|
link={link}
|
|
390
393
|
/>
|
|
@@ -19,6 +19,7 @@ export interface ColumnBase {
|
|
|
19
19
|
rowClick?: (rowData: any) => void;
|
|
20
20
|
sortKey?: string;
|
|
21
21
|
type?: string;
|
|
22
|
+
getPath?: (data: any) => string;
|
|
22
23
|
}
|
|
23
24
|
|
|
24
25
|
export interface QbsColumnProps extends ColumnBase {
|
|
@@ -99,7 +100,7 @@ export interface QbsTableProps {
|
|
|
99
100
|
handleColumnToggle?: (columns: QbsColumnProps[]) => void;
|
|
100
101
|
handleResetColumns?: () => void;
|
|
101
102
|
headerHeight?: number;
|
|
102
|
-
tableBodyHeight?:string
|
|
103
|
+
tableBodyHeight?: string;
|
|
103
104
|
}
|
|
104
105
|
|
|
105
106
|
export interface QbsTableToolbarProps {
|