@helpdice/ui 1.1.8 → 1.2.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.
- package/dist/index.js +74 -50
- package/dist/table/index.js +1047 -95
- package/dist/table/table-column.d.ts +1 -0
- package/esm/table/table-body.js +12 -15
- package/esm/table/table-column.d.ts +1 -0
- package/esm/table/table-column.js +3 -1
- package/esm/table/table-head.js +36 -30
- package/esm/utils/use-hd-ui-context.js +0 -2
- package/package.json +1 -1
package/esm/table/table-body.js
CHANGED
|
@@ -26,9 +26,10 @@ var TableBody = function TableBody(_ref) {
|
|
|
26
26
|
setSelected = _useState2[1];
|
|
27
27
|
var _useTableContext = useTableContext(),
|
|
28
28
|
columns = _useTableContext.columns;
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
}
|
|
29
|
+
// const rowClickHandler = (row: TableDataItem, index: number) => {
|
|
30
|
+
// onRow && onRow(row, index)
|
|
31
|
+
// }
|
|
32
|
+
|
|
32
33
|
var handleClick = function handleClick(_event, id) {
|
|
33
34
|
if (readOnly) {
|
|
34
35
|
return true;
|
|
@@ -72,15 +73,11 @@ var TableBody = function TableBody(_ref) {
|
|
|
72
73
|
delete rw.table;
|
|
73
74
|
delete rw.style;
|
|
74
75
|
delete rw.onDragStart;
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
return col.id;
|
|
81
|
-
}).includes(ky);
|
|
82
|
-
}));
|
|
83
|
-
console.log(frow);
|
|
76
|
+
// console.log(row);
|
|
77
|
+
// const frow = Object.fromEntries(
|
|
78
|
+
// Object.entries(row).filter(([ky, _]) => ky !== '_id' && cols.map((col: any) => col.id).includes(ky))
|
|
79
|
+
// ) as unknown as TableDataItem
|
|
80
|
+
// console.log(frow);
|
|
84
81
|
var isRowSelected = selected.indexOf(row) !== -1;
|
|
85
82
|
return /*#__PURE__*/React.createElement("tr", {
|
|
86
83
|
draggable: rowDraggable,
|
|
@@ -98,8 +95,8 @@ var TableBody = function TableBody(_ref) {
|
|
|
98
95
|
}, rowStyle),
|
|
99
96
|
onClick: function onClick(e) {
|
|
100
97
|
if (!rowDraggable) {
|
|
101
|
-
if (
|
|
102
|
-
|
|
98
|
+
if (onRow) {
|
|
99
|
+
onRow(row, index);
|
|
103
100
|
} else {
|
|
104
101
|
handleClick(e, row);
|
|
105
102
|
}
|
|
@@ -107,7 +104,7 @@ var TableBody = function TableBody(_ref) {
|
|
|
107
104
|
}
|
|
108
105
|
}, /*#__PURE__*/React.createElement(TableCell, {
|
|
109
106
|
columns: cols,
|
|
110
|
-
row:
|
|
107
|
+
row: rw,
|
|
111
108
|
rowIndex: index,
|
|
112
109
|
emptyText: emptyText,
|
|
113
110
|
onCellClick: onCell
|
|
@@ -10,6 +10,7 @@ var TableColumn = function TableColumn(columnProps) {
|
|
|
10
10
|
label = _ref.label,
|
|
11
11
|
width = _ref.width,
|
|
12
12
|
filter = _ref.filter,
|
|
13
|
+
options = _ref.options,
|
|
13
14
|
_ref$className = _ref.className,
|
|
14
15
|
className = _ref$className === void 0 ? '' : _ref$className,
|
|
15
16
|
renderHandler = _ref.render;
|
|
@@ -23,12 +24,13 @@ var TableColumn = function TableColumn(columnProps) {
|
|
|
23
24
|
updateColumn({
|
|
24
25
|
label: children || label,
|
|
25
26
|
filter: filter,
|
|
27
|
+
options: options,
|
|
26
28
|
prop: safeProp,
|
|
27
29
|
width: width,
|
|
28
30
|
className: className,
|
|
29
31
|
renderHandler: function renderHandler() {}
|
|
30
32
|
});
|
|
31
|
-
}, [children, filter, label, prop, width, className, renderHandler]);
|
|
33
|
+
}, [children, filter, options, label, prop, width, className, renderHandler]);
|
|
32
34
|
return null;
|
|
33
35
|
};
|
|
34
36
|
TableColumn.displayName = 'TableColumn';
|
package/esm/table/table-head.js
CHANGED
|
@@ -6,6 +6,7 @@ import React, { useMemo } from 'react';
|
|
|
6
6
|
import useTheme from '../use-theme';
|
|
7
7
|
import Input from '../input';
|
|
8
8
|
import _ from 'lodash';
|
|
9
|
+
import Select from '../select';
|
|
9
10
|
var makeColgroup = function makeColgroup(width, columns) {
|
|
10
11
|
var unsetWidthCount = columns.filter(function (c) {
|
|
11
12
|
return !c.width;
|
|
@@ -41,10 +42,7 @@ var TableHead = function TableHead(props) {
|
|
|
41
42
|
if (!isScalableWidth) return /*#__PURE__*/React.createElement("colgroup", null);
|
|
42
43
|
return makeColgroup(width, columns);
|
|
43
44
|
}, [isScalableWidth, width]);
|
|
44
|
-
var handleFilterChange = function handleFilterChange(
|
|
45
|
-
var _e$target = e.target,
|
|
46
|
-
name = _e$target.name,
|
|
47
|
-
value = _e$target.value;
|
|
45
|
+
var handleFilterChange = function handleFilterChange(name, value) {
|
|
48
46
|
setFilters(function (prevFilters) {
|
|
49
47
|
var updatedFilters = _extends({}, prevFilters, _defineProperty({}, name, value));
|
|
50
48
|
// Call onFiltersChange to propagate filter changes to the parent
|
|
@@ -63,16 +61,19 @@ var TableHead = function TableHead(props) {
|
|
|
63
61
|
var filterName = (_String = String(col === null || col === void 0 ? void 0 : col.label)) === null || _String === void 0 ? void 0 : _String.replace(' ', '_').toLowerCase();
|
|
64
62
|
var unq_accessor = _.uniqueId(filterName);
|
|
65
63
|
if (accessor === 'fixed') {
|
|
64
|
+
var _filters$filterName;
|
|
66
65
|
// Dropdown filter for categorical data (category, status)
|
|
67
|
-
return /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement(
|
|
66
|
+
return /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement(Select, {
|
|
68
67
|
key: unq_accessor,
|
|
69
68
|
name: filterName,
|
|
70
|
-
value: filters[filterName],
|
|
71
|
-
onChange:
|
|
72
|
-
|
|
73
|
-
|
|
69
|
+
value: (_filters$filterName = filters[filterName]) !== null && _filters$filterName !== void 0 ? _filters$filterName : 'All',
|
|
70
|
+
onChange: function onChange(newValue) {
|
|
71
|
+
return handleFilterChange(filterName, newValue);
|
|
72
|
+
}
|
|
73
|
+
}, /*#__PURE__*/React.createElement(Select.Option, {
|
|
74
|
+
value: "All"
|
|
74
75
|
}, "All ", Header), options ? options.map(function (option) {
|
|
75
|
-
return /*#__PURE__*/React.createElement(
|
|
76
|
+
return /*#__PURE__*/React.createElement(Select.Option, {
|
|
76
77
|
value: option.value
|
|
77
78
|
}, option.name);
|
|
78
79
|
}) : null));
|
|
@@ -81,30 +82,35 @@ var TableHead = function TableHead(props) {
|
|
|
81
82
|
// Date filter
|
|
82
83
|
return /*#__PURE__*/React.createElement("th", {
|
|
83
84
|
key: unq_accessor
|
|
84
|
-
}, /*#__PURE__*/React.createElement(
|
|
85
|
-
|
|
85
|
+
}, /*#__PURE__*/React.createElement(Input, {
|
|
86
|
+
htmlType: "date",
|
|
87
|
+
name: filterName,
|
|
88
|
+
value: filters[filterName],
|
|
89
|
+
onChange: function onChange(e) {
|
|
90
|
+
return handleFilterChange(filterName, e.target.value);
|
|
91
|
+
}
|
|
92
|
+
}));
|
|
93
|
+
}
|
|
94
|
+
if (accessor === 'search') {
|
|
95
|
+
// Text search filter
|
|
96
|
+
return /*#__PURE__*/React.createElement("th", null, /*#__PURE__*/React.createElement(Input, {
|
|
97
|
+
id: "filter-search-".concat(filterName),
|
|
98
|
+
htmlType: "text"
|
|
99
|
+
// ref={filterRefs.current[filterName]} // Dynamically set ref}
|
|
100
|
+
,
|
|
86
101
|
name: filterName,
|
|
102
|
+
style: {
|
|
103
|
+
height: 30,
|
|
104
|
+
minWidth: 160
|
|
105
|
+
},
|
|
87
106
|
value: filters[filterName],
|
|
88
|
-
onChange:
|
|
107
|
+
onChange: function onChange(e) {
|
|
108
|
+
return handleFilterChange(filterName, e.target.value);
|
|
109
|
+
},
|
|
110
|
+
placeholder: "Search...",
|
|
111
|
+
fullWidth: true
|
|
89
112
|
}));
|
|
90
113
|
}
|
|
91
|
-
|
|
92
|
-
// Text search filter for other fields (like name)
|
|
93
|
-
return /*#__PURE__*/React.createElement("th", null, /*#__PURE__*/React.createElement(Input, {
|
|
94
|
-
id: "filter-search-".concat(filterName),
|
|
95
|
-
htmlType: "text"
|
|
96
|
-
// ref={filterRefs.current[filterName]} // Dynamically set ref}
|
|
97
|
-
,
|
|
98
|
-
name: filterName,
|
|
99
|
-
style: {
|
|
100
|
-
height: 30,
|
|
101
|
-
minWidth: 160
|
|
102
|
-
},
|
|
103
|
-
value: filters[filterName],
|
|
104
|
-
onChange: handleFilterChange,
|
|
105
|
-
placeholder: "Search...",
|
|
106
|
-
fullWidth: true
|
|
107
|
-
}));
|
|
108
114
|
});
|
|
109
115
|
};
|
|
110
116
|
return /*#__PURE__*/React.createElement(React.Fragment, null, colgroup, /*#__PURE__*/React.createElement("thead", {
|