@helpdice/ui 1.5.3 → 1.5.4
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 +47 -46
- package/dist/table/index.js +47 -46
- package/esm/table/data-table.js +47 -46
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -44233,28 +44233,29 @@ function DataTable(_ref) {
|
|
|
44233
44233
|
onNextPage = _ref.onNextPage,
|
|
44234
44234
|
onPreviousPage = _ref.onPreviousPage;
|
|
44235
44235
|
var TABLE_ID = _.uniqueId('tbl');
|
|
44236
|
+
var COLUMNS = cols.filter(function (col) {
|
|
44237
|
+
var _String;
|
|
44238
|
+
var dataName = (_String = String(col === null || col === void 0 ? void 0 : col.name)) === null || _String === void 0 ? void 0 : _String.replace(' ', '_').toLowerCase();
|
|
44239
|
+
return !hideColumn.includes(dataName);
|
|
44240
|
+
});
|
|
44236
44241
|
// const [anchorEl, setAnchorEl] = useState(null);
|
|
44237
44242
|
var _useState = React$1.useState([]),
|
|
44238
44243
|
_useState2 = _slicedToArray(_useState, 2),
|
|
44239
44244
|
selected = _useState2[0],
|
|
44240
44245
|
setSelected = _useState2[1];
|
|
44241
|
-
|
|
44246
|
+
// State for filter values
|
|
44247
|
+
var _useState3 = React$1.useState(COLUMNS.reduce(function (acc, col) {
|
|
44248
|
+
acc[col.filter] = '';
|
|
44249
|
+
return acc;
|
|
44250
|
+
}, {})),
|
|
44242
44251
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
44243
|
-
|
|
44244
|
-
|
|
44252
|
+
filterValues = _useState4[0],
|
|
44253
|
+
setFilterValues = _useState4[1];
|
|
44245
44254
|
// const [table_filters] = useDebounce(filters, 500);
|
|
44246
|
-
// const open = Boolean(anchorEl);
|
|
44247
|
-
// const handleMenuOpen = (event: any) => {
|
|
44248
|
-
// setAnchorEl(event.currentTarget);
|
|
44249
|
-
// };
|
|
44250
44255
|
var _useState5 = React$1.useState([]),
|
|
44251
44256
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
44252
44257
|
hideColumn = _useState6[0],
|
|
44253
44258
|
setHideColumn = _useState6[1];
|
|
44254
|
-
// const handleMenuClose = () => {
|
|
44255
|
-
// setAnchorEl(null);
|
|
44256
|
-
// };
|
|
44257
|
-
|
|
44258
44259
|
var _useState7 = React$1.useState(false),
|
|
44259
44260
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
44260
44261
|
openFilter = _useState8[0],
|
|
@@ -44264,8 +44265,8 @@ function DataTable(_ref) {
|
|
|
44264
44265
|
}
|
|
44265
44266
|
React$1.useEffect(function () {
|
|
44266
44267
|
cols.forEach(function (col) {
|
|
44267
|
-
var
|
|
44268
|
-
var dataName = (
|
|
44268
|
+
var _String2;
|
|
44269
|
+
var dataName = (_String2 = String(col === null || col === void 0 ? void 0 : col.name)) === null || _String2 === void 0 ? void 0 : _String2.replace(' ', '_').toLowerCase();
|
|
44269
44270
|
if (hideColumn.includes(col.name)) {
|
|
44270
44271
|
document.querySelectorAll("[data-column=\"".concat(dataName, "\"]")).forEach(function (el) {
|
|
44271
44272
|
el.style.display = 'none !important';
|
|
@@ -44278,8 +44279,8 @@ function DataTable(_ref) {
|
|
|
44278
44279
|
});
|
|
44279
44280
|
}, [hideColumn, cols]);
|
|
44280
44281
|
function handleHideColumnClick(_event, _id) {
|
|
44281
|
-
var
|
|
44282
|
-
var id = (
|
|
44282
|
+
var _String3;
|
|
44283
|
+
var id = (_String3 = String(_id)) === null || _String3 === void 0 ? void 0 : _String3.replace(' ', '_').toLowerCase();
|
|
44283
44284
|
var selectedIndex = hideColumn.indexOf(id);
|
|
44284
44285
|
var newSelected = [];
|
|
44285
44286
|
if (selectedIndex === -1) {
|
|
@@ -44328,20 +44329,12 @@ function DataTable(_ref) {
|
|
|
44328
44329
|
// // '& tr': { borderBottom: '1px solid #ccc !important' }
|
|
44329
44330
|
// };
|
|
44330
44331
|
|
|
44331
|
-
var COLUMNS = cols.filter(function (col) {
|
|
44332
|
-
var _String3;
|
|
44333
|
-
var dataName = (_String3 = String(col === null || col === void 0 ? void 0 : col.name)) === null || _String3 === void 0 ? void 0 : _String3.replace(' ', '_').toLowerCase();
|
|
44334
|
-
return !hideColumn.includes(dataName);
|
|
44335
|
-
});
|
|
44336
44332
|
var handleFilterChange = function handleFilterChange(name, value) {
|
|
44337
|
-
|
|
44338
|
-
var updatedFilters = _objectSpread2(_objectSpread2({}, prevFilters), {}, _defineProperty$1({}, name, value));
|
|
44339
|
-
return updatedFilters;
|
|
44340
|
-
});
|
|
44333
|
+
setFilterValues(_objectSpread2(_objectSpread2({}, filterValues), {}, _defineProperty$1({}, name, value)));
|
|
44341
44334
|
};
|
|
44342
44335
|
var generateFilterInputs = function generateFilterInputs() {
|
|
44343
44336
|
return COLUMNS.map(function (col) {
|
|
44344
|
-
var _String4,
|
|
44337
|
+
var _String4, _filterValues$filterN;
|
|
44345
44338
|
var Header = col.name,
|
|
44346
44339
|
accessor = col.filter,
|
|
44347
44340
|
options = col.options;
|
|
@@ -44354,17 +44347,16 @@ function DataTable(_ref) {
|
|
|
44354
44347
|
// </th>
|
|
44355
44348
|
// )
|
|
44356
44349
|
// }
|
|
44357
|
-
return /*#__PURE__*/React$1.createElement(
|
|
44350
|
+
return /*#__PURE__*/React$1.createElement(Popover.Item, {
|
|
44358
44351
|
style: {
|
|
44359
44352
|
padding: '3px'
|
|
44360
44353
|
},
|
|
44361
44354
|
"data-column": Header,
|
|
44362
44355
|
key: unq_accessor
|
|
44363
|
-
}, accessor === 'fixed' && /*#__PURE__*/React$1.createElement(Select
|
|
44364
|
-
|
|
44365
|
-
|
|
44366
|
-
|
|
44367
|
-
value: (_filters$filterName = filters[filterName]) !== null && _filters$filterName !== void 0 ? _filters$filterName : 'All',
|
|
44356
|
+
}, accessor === 'fixed' && /*#__PURE__*/React$1.createElement(Select, {
|
|
44357
|
+
key: filterName,
|
|
44358
|
+
name: filterName,
|
|
44359
|
+
value: (_filterValues$filterN = filterValues[filterName]) !== null && _filterValues$filterN !== void 0 ? _filterValues$filterN : 'All',
|
|
44368
44360
|
onChange: function onChange(newValue) {
|
|
44369
44361
|
return handleFilterChange(filterName, newValue);
|
|
44370
44362
|
}
|
|
@@ -44377,26 +44369,27 @@ function DataTable(_ref) {
|
|
|
44377
44369
|
}) : null), accessor === 'date' && /*#__PURE__*/React$1.createElement(Input
|
|
44378
44370
|
// id={`filter-date-${filterName}`}
|
|
44379
44371
|
, {
|
|
44380
|
-
|
|
44381
|
-
|
|
44382
|
-
,
|
|
44383
|
-
value:
|
|
44372
|
+
key: filterName,
|
|
44373
|
+
htmlType: "date",
|
|
44374
|
+
name: filterName,
|
|
44375
|
+
value: filterValues[filterName],
|
|
44384
44376
|
onChange: function onChange(e) {
|
|
44385
44377
|
return handleFilterChange(filterName, e.target.value);
|
|
44386
44378
|
}
|
|
44387
44379
|
}), accessor === 'search' && /*#__PURE__*/React$1.createElement(Input
|
|
44388
44380
|
// id={`filter-search-${filterName}`}
|
|
44389
44381
|
, {
|
|
44382
|
+
key: filterName,
|
|
44390
44383
|
htmlType: "text",
|
|
44391
44384
|
autoComplete: "off"
|
|
44392
44385
|
// ref={filterRefs.current[filterName]} // Dynamically set ref}
|
|
44393
|
-
// name={filterName}
|
|
44394
44386
|
,
|
|
44387
|
+
name: filterName,
|
|
44395
44388
|
style: {
|
|
44396
44389
|
height: 30,
|
|
44397
44390
|
minWidth: 160
|
|
44398
44391
|
},
|
|
44399
|
-
value:
|
|
44392
|
+
value: filterValues[filterName],
|
|
44400
44393
|
onChange: function onChange(e) {
|
|
44401
44394
|
return handleFilterChange(filterName, e.target.value);
|
|
44402
44395
|
},
|
|
@@ -44420,6 +44413,15 @@ function DataTable(_ref) {
|
|
|
44420
44413
|
}, /*#__PURE__*/React$1.createElement("span", null, option.name));
|
|
44421
44414
|
}));
|
|
44422
44415
|
};
|
|
44416
|
+
var filterContent = function filterContent() {
|
|
44417
|
+
return /*#__PURE__*/React$1.createElement(React$1.Fragment, null, generateFilterInputs(), /*#__PURE__*/React$1.createElement(Popover.Item, null, /*#__PURE__*/React$1.createElement(Button, {
|
|
44418
|
+
onClick: function onClick() {
|
|
44419
|
+
if (onFilters) {
|
|
44420
|
+
onFilters(filterValues);
|
|
44421
|
+
}
|
|
44422
|
+
}
|
|
44423
|
+
}, "Apply")));
|
|
44424
|
+
};
|
|
44423
44425
|
return /*#__PURE__*/React$1.createElement(GridContainer, {
|
|
44424
44426
|
className: "helpdice-ui-data-table-container",
|
|
44425
44427
|
direction: "column"
|
|
@@ -44511,6 +44513,11 @@ function DataTable(_ref) {
|
|
|
44511
44513
|
px: 0.6,
|
|
44512
44514
|
py: 0.4,
|
|
44513
44515
|
type: "dark"
|
|
44516
|
+
}, /*#__PURE__*/React$1.createElement(Popover, {
|
|
44517
|
+
hideArrow: true,
|
|
44518
|
+
disableItemsAutoClose: true,
|
|
44519
|
+
placement: "bottomEnd",
|
|
44520
|
+
child: filterContent
|
|
44514
44521
|
}, /*#__PURE__*/React$1.createElement(Button, {
|
|
44515
44522
|
htmlType: "button",
|
|
44516
44523
|
onClick: handleShowFilter,
|
|
@@ -44518,7 +44525,7 @@ function DataTable(_ref) {
|
|
|
44518
44525
|
scale: 2 / 3,
|
|
44519
44526
|
px: 0.6,
|
|
44520
44527
|
iconRight: /*#__PURE__*/React$1.createElement(Filters, null)
|
|
44521
|
-
})) : null, !disableViewColumn && /*#__PURE__*/React$1.createElement(Tooltip, {
|
|
44528
|
+
}))) : null, !disableViewColumn && /*#__PURE__*/React$1.createElement(Tooltip, {
|
|
44522
44529
|
text: "Columns",
|
|
44523
44530
|
placement: "bottomEnd",
|
|
44524
44531
|
font: 0.8,
|
|
@@ -44546,7 +44553,7 @@ function DataTable(_ref) {
|
|
|
44546
44553
|
display: 'flex',
|
|
44547
44554
|
flexDirection: sideMenu ? 'row' : 'column'
|
|
44548
44555
|
}
|
|
44549
|
-
}, sideMenu
|
|
44556
|
+
}, sideMenu ? /*#__PURE__*/React$1.createElement(GridContainer, {
|
|
44550
44557
|
direction: "column",
|
|
44551
44558
|
style: {
|
|
44552
44559
|
width: '15rem',
|
|
@@ -44555,13 +44562,7 @@ function DataTable(_ref) {
|
|
|
44555
44562
|
border: '1px solid #cfcfcf',
|
|
44556
44563
|
borderRadius: '5px'
|
|
44557
44564
|
}
|
|
44558
|
-
},
|
|
44559
|
-
onClick: function onClick() {
|
|
44560
|
-
if (onFilters) {
|
|
44561
|
-
onFilters(filters);
|
|
44562
|
-
}
|
|
44563
|
-
}
|
|
44564
|
-
}, "Apply")) : sideMenu) : null, /*#__PURE__*/React$1.createElement("div", {
|
|
44565
|
+
}, sideMenu) : null, /*#__PURE__*/React$1.createElement("div", {
|
|
44565
44566
|
onDragOver: onDragOver,
|
|
44566
44567
|
onDragEnter: onDragEnter,
|
|
44567
44568
|
onDragLeave: onDragLeave,
|
package/dist/table/index.js
CHANGED
|
@@ -31521,28 +31521,29 @@ function DataTable(_ref) {
|
|
|
31521
31521
|
onNextPage = _ref.onNextPage,
|
|
31522
31522
|
onPreviousPage = _ref.onPreviousPage;
|
|
31523
31523
|
var TABLE_ID = _.uniqueId('tbl');
|
|
31524
|
+
var COLUMNS = cols.filter(function (col) {
|
|
31525
|
+
var _String;
|
|
31526
|
+
var dataName = (_String = String(col === null || col === void 0 ? void 0 : col.name)) === null || _String === void 0 ? void 0 : _String.replace(' ', '_').toLowerCase();
|
|
31527
|
+
return !hideColumn.includes(dataName);
|
|
31528
|
+
});
|
|
31524
31529
|
// const [anchorEl, setAnchorEl] = useState(null);
|
|
31525
31530
|
var _useState = React.useState([]),
|
|
31526
31531
|
_useState2 = _slicedToArray(_useState, 2),
|
|
31527
31532
|
selected = _useState2[0],
|
|
31528
31533
|
setSelected = _useState2[1];
|
|
31529
|
-
|
|
31534
|
+
// State for filter values
|
|
31535
|
+
var _useState3 = React.useState(COLUMNS.reduce(function (acc, col) {
|
|
31536
|
+
acc[col.filter] = '';
|
|
31537
|
+
return acc;
|
|
31538
|
+
}, {})),
|
|
31530
31539
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
31531
|
-
|
|
31532
|
-
|
|
31540
|
+
filterValues = _useState4[0],
|
|
31541
|
+
setFilterValues = _useState4[1];
|
|
31533
31542
|
// const [table_filters] = useDebounce(filters, 500);
|
|
31534
|
-
// const open = Boolean(anchorEl);
|
|
31535
|
-
// const handleMenuOpen = (event: any) => {
|
|
31536
|
-
// setAnchorEl(event.currentTarget);
|
|
31537
|
-
// };
|
|
31538
31543
|
var _useState5 = React.useState([]),
|
|
31539
31544
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
31540
31545
|
hideColumn = _useState6[0],
|
|
31541
31546
|
setHideColumn = _useState6[1];
|
|
31542
|
-
// const handleMenuClose = () => {
|
|
31543
|
-
// setAnchorEl(null);
|
|
31544
|
-
// };
|
|
31545
|
-
|
|
31546
31547
|
var _useState7 = React.useState(false),
|
|
31547
31548
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
31548
31549
|
openFilter = _useState8[0],
|
|
@@ -31552,8 +31553,8 @@ function DataTable(_ref) {
|
|
|
31552
31553
|
}
|
|
31553
31554
|
React.useEffect(function () {
|
|
31554
31555
|
cols.forEach(function (col) {
|
|
31555
|
-
var
|
|
31556
|
-
var dataName = (
|
|
31556
|
+
var _String2;
|
|
31557
|
+
var dataName = (_String2 = String(col === null || col === void 0 ? void 0 : col.name)) === null || _String2 === void 0 ? void 0 : _String2.replace(' ', '_').toLowerCase();
|
|
31557
31558
|
if (hideColumn.includes(col.name)) {
|
|
31558
31559
|
document.querySelectorAll("[data-column=\"".concat(dataName, "\"]")).forEach(function (el) {
|
|
31559
31560
|
el.style.display = 'none !important';
|
|
@@ -31566,8 +31567,8 @@ function DataTable(_ref) {
|
|
|
31566
31567
|
});
|
|
31567
31568
|
}, [hideColumn, cols]);
|
|
31568
31569
|
function handleHideColumnClick(_event, _id) {
|
|
31569
|
-
var
|
|
31570
|
-
var id = (
|
|
31570
|
+
var _String3;
|
|
31571
|
+
var id = (_String3 = String(_id)) === null || _String3 === void 0 ? void 0 : _String3.replace(' ', '_').toLowerCase();
|
|
31571
31572
|
var selectedIndex = hideColumn.indexOf(id);
|
|
31572
31573
|
var newSelected = [];
|
|
31573
31574
|
if (selectedIndex === -1) {
|
|
@@ -31616,20 +31617,12 @@ function DataTable(_ref) {
|
|
|
31616
31617
|
// // '& tr': { borderBottom: '1px solid #ccc !important' }
|
|
31617
31618
|
// };
|
|
31618
31619
|
|
|
31619
|
-
var COLUMNS = cols.filter(function (col) {
|
|
31620
|
-
var _String3;
|
|
31621
|
-
var dataName = (_String3 = String(col === null || col === void 0 ? void 0 : col.name)) === null || _String3 === void 0 ? void 0 : _String3.replace(' ', '_').toLowerCase();
|
|
31622
|
-
return !hideColumn.includes(dataName);
|
|
31623
|
-
});
|
|
31624
31620
|
var handleFilterChange = function handleFilterChange(name, value) {
|
|
31625
|
-
|
|
31626
|
-
var updatedFilters = _objectSpread2(_objectSpread2({}, prevFilters), {}, _defineProperty({}, name, value));
|
|
31627
|
-
return updatedFilters;
|
|
31628
|
-
});
|
|
31621
|
+
setFilterValues(_objectSpread2(_objectSpread2({}, filterValues), {}, _defineProperty({}, name, value)));
|
|
31629
31622
|
};
|
|
31630
31623
|
var generateFilterInputs = function generateFilterInputs() {
|
|
31631
31624
|
return COLUMNS.map(function (col) {
|
|
31632
|
-
var _String4,
|
|
31625
|
+
var _String4, _filterValues$filterN;
|
|
31633
31626
|
var Header = col.name,
|
|
31634
31627
|
accessor = col.filter,
|
|
31635
31628
|
options = col.options;
|
|
@@ -31642,17 +31635,16 @@ function DataTable(_ref) {
|
|
|
31642
31635
|
// </th>
|
|
31643
31636
|
// )
|
|
31644
31637
|
// }
|
|
31645
|
-
return /*#__PURE__*/React.createElement(
|
|
31638
|
+
return /*#__PURE__*/React.createElement(Popover.Item, {
|
|
31646
31639
|
style: {
|
|
31647
31640
|
padding: '3px'
|
|
31648
31641
|
},
|
|
31649
31642
|
"data-column": Header,
|
|
31650
31643
|
key: unq_accessor
|
|
31651
|
-
}, accessor === 'fixed' && /*#__PURE__*/React.createElement(Select
|
|
31652
|
-
|
|
31653
|
-
|
|
31654
|
-
|
|
31655
|
-
value: (_filters$filterName = filters[filterName]) !== null && _filters$filterName !== void 0 ? _filters$filterName : 'All',
|
|
31644
|
+
}, accessor === 'fixed' && /*#__PURE__*/React.createElement(Select, {
|
|
31645
|
+
key: filterName,
|
|
31646
|
+
name: filterName,
|
|
31647
|
+
value: (_filterValues$filterN = filterValues[filterName]) !== null && _filterValues$filterN !== void 0 ? _filterValues$filterN : 'All',
|
|
31656
31648
|
onChange: function onChange(newValue) {
|
|
31657
31649
|
return handleFilterChange(filterName, newValue);
|
|
31658
31650
|
}
|
|
@@ -31665,26 +31657,27 @@ function DataTable(_ref) {
|
|
|
31665
31657
|
}) : null), accessor === 'date' && /*#__PURE__*/React.createElement(Input
|
|
31666
31658
|
// id={`filter-date-${filterName}`}
|
|
31667
31659
|
, {
|
|
31668
|
-
|
|
31669
|
-
|
|
31670
|
-
,
|
|
31671
|
-
value:
|
|
31660
|
+
key: filterName,
|
|
31661
|
+
htmlType: "date",
|
|
31662
|
+
name: filterName,
|
|
31663
|
+
value: filterValues[filterName],
|
|
31672
31664
|
onChange: function onChange(e) {
|
|
31673
31665
|
return handleFilterChange(filterName, e.target.value);
|
|
31674
31666
|
}
|
|
31675
31667
|
}), accessor === 'search' && /*#__PURE__*/React.createElement(Input
|
|
31676
31668
|
// id={`filter-search-${filterName}`}
|
|
31677
31669
|
, {
|
|
31670
|
+
key: filterName,
|
|
31678
31671
|
htmlType: "text",
|
|
31679
31672
|
autoComplete: "off"
|
|
31680
31673
|
// ref={filterRefs.current[filterName]} // Dynamically set ref}
|
|
31681
|
-
// name={filterName}
|
|
31682
31674
|
,
|
|
31675
|
+
name: filterName,
|
|
31683
31676
|
style: {
|
|
31684
31677
|
height: 30,
|
|
31685
31678
|
minWidth: 160
|
|
31686
31679
|
},
|
|
31687
|
-
value:
|
|
31680
|
+
value: filterValues[filterName],
|
|
31688
31681
|
onChange: function onChange(e) {
|
|
31689
31682
|
return handleFilterChange(filterName, e.target.value);
|
|
31690
31683
|
},
|
|
@@ -31708,6 +31701,15 @@ function DataTable(_ref) {
|
|
|
31708
31701
|
}, /*#__PURE__*/React.createElement("span", null, option.name));
|
|
31709
31702
|
}));
|
|
31710
31703
|
};
|
|
31704
|
+
var filterContent = function filterContent() {
|
|
31705
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, generateFilterInputs(), /*#__PURE__*/React.createElement(Popover.Item, null, /*#__PURE__*/React.createElement(Button, {
|
|
31706
|
+
onClick: function onClick() {
|
|
31707
|
+
if (onFilters) {
|
|
31708
|
+
onFilters(filterValues);
|
|
31709
|
+
}
|
|
31710
|
+
}
|
|
31711
|
+
}, "Apply")));
|
|
31712
|
+
};
|
|
31711
31713
|
return /*#__PURE__*/React.createElement(GridContainer, {
|
|
31712
31714
|
className: "helpdice-ui-data-table-container",
|
|
31713
31715
|
direction: "column"
|
|
@@ -31799,6 +31801,11 @@ function DataTable(_ref) {
|
|
|
31799
31801
|
px: 0.6,
|
|
31800
31802
|
py: 0.4,
|
|
31801
31803
|
type: "dark"
|
|
31804
|
+
}, /*#__PURE__*/React.createElement(Popover, {
|
|
31805
|
+
hideArrow: true,
|
|
31806
|
+
disableItemsAutoClose: true,
|
|
31807
|
+
placement: "bottomEnd",
|
|
31808
|
+
child: filterContent
|
|
31802
31809
|
}, /*#__PURE__*/React.createElement(Button, {
|
|
31803
31810
|
htmlType: "button",
|
|
31804
31811
|
onClick: handleShowFilter,
|
|
@@ -31806,7 +31813,7 @@ function DataTable(_ref) {
|
|
|
31806
31813
|
scale: 2 / 3,
|
|
31807
31814
|
px: 0.6,
|
|
31808
31815
|
iconRight: /*#__PURE__*/React.createElement(Filters, null)
|
|
31809
|
-
})) : null, !disableViewColumn && /*#__PURE__*/React.createElement(Tooltip, {
|
|
31816
|
+
}))) : null, !disableViewColumn && /*#__PURE__*/React.createElement(Tooltip, {
|
|
31810
31817
|
text: "Columns",
|
|
31811
31818
|
placement: "bottomEnd",
|
|
31812
31819
|
font: 0.8,
|
|
@@ -31834,7 +31841,7 @@ function DataTable(_ref) {
|
|
|
31834
31841
|
display: 'flex',
|
|
31835
31842
|
flexDirection: sideMenu ? 'row' : 'column'
|
|
31836
31843
|
}
|
|
31837
|
-
}, sideMenu
|
|
31844
|
+
}, sideMenu ? /*#__PURE__*/React.createElement(GridContainer, {
|
|
31838
31845
|
direction: "column",
|
|
31839
31846
|
style: {
|
|
31840
31847
|
width: '15rem',
|
|
@@ -31843,13 +31850,7 @@ function DataTable(_ref) {
|
|
|
31843
31850
|
border: '1px solid #cfcfcf',
|
|
31844
31851
|
borderRadius: '5px'
|
|
31845
31852
|
}
|
|
31846
|
-
},
|
|
31847
|
-
onClick: function onClick() {
|
|
31848
|
-
if (onFilters) {
|
|
31849
|
-
onFilters(filters);
|
|
31850
|
-
}
|
|
31851
|
-
}
|
|
31852
|
-
}, "Apply")) : sideMenu) : null, /*#__PURE__*/React.createElement("div", {
|
|
31853
|
+
}, sideMenu) : null, /*#__PURE__*/React.createElement("div", {
|
|
31853
31854
|
onDragOver: onDragOver,
|
|
31854
31855
|
onDragEnter: onDragEnter,
|
|
31855
31856
|
onDragLeave: onDragLeave,
|
package/esm/table/data-table.js
CHANGED
|
@@ -66,28 +66,29 @@ function DataTable(_ref) {
|
|
|
66
66
|
onNextPage = _ref.onNextPage,
|
|
67
67
|
onPreviousPage = _ref.onPreviousPage;
|
|
68
68
|
var TABLE_ID = _.uniqueId('tbl');
|
|
69
|
+
var COLUMNS = cols.filter(function (col) {
|
|
70
|
+
var _String;
|
|
71
|
+
var dataName = (_String = String(col === null || col === void 0 ? void 0 : col.name)) === null || _String === void 0 ? void 0 : _String.replace(' ', '_').toLowerCase();
|
|
72
|
+
return !hideColumn.includes(dataName);
|
|
73
|
+
});
|
|
69
74
|
// const [anchorEl, setAnchorEl] = useState(null);
|
|
70
75
|
var _useState = useState([]),
|
|
71
76
|
_useState2 = _slicedToArray(_useState, 2),
|
|
72
77
|
selected = _useState2[0],
|
|
73
78
|
setSelected = _useState2[1];
|
|
74
|
-
|
|
79
|
+
// State for filter values
|
|
80
|
+
var _useState3 = useState(COLUMNS.reduce(function (acc, col) {
|
|
81
|
+
acc[col.filter] = '';
|
|
82
|
+
return acc;
|
|
83
|
+
}, {})),
|
|
75
84
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
76
|
-
|
|
77
|
-
|
|
85
|
+
filterValues = _useState4[0],
|
|
86
|
+
setFilterValues = _useState4[1];
|
|
78
87
|
// const [table_filters] = useDebounce(filters, 500);
|
|
79
|
-
// const open = Boolean(anchorEl);
|
|
80
|
-
// const handleMenuOpen = (event: any) => {
|
|
81
|
-
// setAnchorEl(event.currentTarget);
|
|
82
|
-
// };
|
|
83
88
|
var _useState5 = useState([]),
|
|
84
89
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
85
90
|
hideColumn = _useState6[0],
|
|
86
91
|
setHideColumn = _useState6[1];
|
|
87
|
-
// const handleMenuClose = () => {
|
|
88
|
-
// setAnchorEl(null);
|
|
89
|
-
// };
|
|
90
|
-
|
|
91
92
|
var _useState7 = useState(false),
|
|
92
93
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
93
94
|
openFilter = _useState8[0],
|
|
@@ -97,8 +98,8 @@ function DataTable(_ref) {
|
|
|
97
98
|
}
|
|
98
99
|
useEffect(function () {
|
|
99
100
|
cols.forEach(function (col) {
|
|
100
|
-
var
|
|
101
|
-
var dataName = (
|
|
101
|
+
var _String2;
|
|
102
|
+
var dataName = (_String2 = String(col === null || col === void 0 ? void 0 : col.name)) === null || _String2 === void 0 ? void 0 : _String2.replace(' ', '_').toLowerCase();
|
|
102
103
|
if (hideColumn.includes(col.name)) {
|
|
103
104
|
document.querySelectorAll("[data-column=\"".concat(dataName, "\"]")).forEach(function (el) {
|
|
104
105
|
el.style.display = 'none !important';
|
|
@@ -111,8 +112,8 @@ function DataTable(_ref) {
|
|
|
111
112
|
});
|
|
112
113
|
}, [hideColumn, cols]);
|
|
113
114
|
function handleHideColumnClick(_event, _id) {
|
|
114
|
-
var
|
|
115
|
-
var id = (
|
|
115
|
+
var _String3;
|
|
116
|
+
var id = (_String3 = String(_id)) === null || _String3 === void 0 ? void 0 : _String3.replace(' ', '_').toLowerCase();
|
|
116
117
|
var selectedIndex = hideColumn.indexOf(id);
|
|
117
118
|
var newSelected = [];
|
|
118
119
|
if (selectedIndex === -1) {
|
|
@@ -161,20 +162,12 @@ function DataTable(_ref) {
|
|
|
161
162
|
// // '& tr': { borderBottom: '1px solid #ccc !important' }
|
|
162
163
|
// };
|
|
163
164
|
|
|
164
|
-
var COLUMNS = cols.filter(function (col) {
|
|
165
|
-
var _String3;
|
|
166
|
-
var dataName = (_String3 = String(col === null || col === void 0 ? void 0 : col.name)) === null || _String3 === void 0 ? void 0 : _String3.replace(' ', '_').toLowerCase();
|
|
167
|
-
return !hideColumn.includes(dataName);
|
|
168
|
-
});
|
|
169
165
|
var handleFilterChange = function handleFilterChange(name, value) {
|
|
170
|
-
|
|
171
|
-
var updatedFilters = _extends({}, prevFilters, _defineProperty({}, name, value));
|
|
172
|
-
return updatedFilters;
|
|
173
|
-
});
|
|
166
|
+
setFilterValues(_extends({}, filterValues, _defineProperty({}, name, value)));
|
|
174
167
|
};
|
|
175
168
|
var generateFilterInputs = function generateFilterInputs() {
|
|
176
169
|
return COLUMNS.map(function (col) {
|
|
177
|
-
var _String4,
|
|
170
|
+
var _String4, _filterValues$filterN;
|
|
178
171
|
var Header = col.name,
|
|
179
172
|
accessor = col.filter,
|
|
180
173
|
options = col.options;
|
|
@@ -187,17 +180,16 @@ function DataTable(_ref) {
|
|
|
187
180
|
// </th>
|
|
188
181
|
// )
|
|
189
182
|
// }
|
|
190
|
-
return /*#__PURE__*/React.createElement(
|
|
183
|
+
return /*#__PURE__*/React.createElement(Popover.Item, {
|
|
191
184
|
style: {
|
|
192
185
|
padding: '3px'
|
|
193
186
|
},
|
|
194
187
|
"data-column": Header,
|
|
195
188
|
key: unq_accessor
|
|
196
|
-
}, accessor === 'fixed' && /*#__PURE__*/React.createElement(Select
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
value: (_filters$filterName = filters[filterName]) !== null && _filters$filterName !== void 0 ? _filters$filterName : 'All',
|
|
189
|
+
}, accessor === 'fixed' && /*#__PURE__*/React.createElement(Select, {
|
|
190
|
+
key: filterName,
|
|
191
|
+
name: filterName,
|
|
192
|
+
value: (_filterValues$filterN = filterValues[filterName]) !== null && _filterValues$filterN !== void 0 ? _filterValues$filterN : 'All',
|
|
201
193
|
onChange: function onChange(newValue) {
|
|
202
194
|
return handleFilterChange(filterName, newValue);
|
|
203
195
|
}
|
|
@@ -210,26 +202,27 @@ function DataTable(_ref) {
|
|
|
210
202
|
}) : null), accessor === 'date' && /*#__PURE__*/React.createElement(Input
|
|
211
203
|
// id={`filter-date-${filterName}`}
|
|
212
204
|
, {
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
,
|
|
216
|
-
value:
|
|
205
|
+
key: filterName,
|
|
206
|
+
htmlType: "date",
|
|
207
|
+
name: filterName,
|
|
208
|
+
value: filterValues[filterName],
|
|
217
209
|
onChange: function onChange(e) {
|
|
218
210
|
return handleFilterChange(filterName, e.target.value);
|
|
219
211
|
}
|
|
220
212
|
}), accessor === 'search' && /*#__PURE__*/React.createElement(Input
|
|
221
213
|
// id={`filter-search-${filterName}`}
|
|
222
214
|
, {
|
|
215
|
+
key: filterName,
|
|
223
216
|
htmlType: "text",
|
|
224
217
|
autoComplete: "off"
|
|
225
218
|
// ref={filterRefs.current[filterName]} // Dynamically set ref}
|
|
226
|
-
// name={filterName}
|
|
227
219
|
,
|
|
220
|
+
name: filterName,
|
|
228
221
|
style: {
|
|
229
222
|
height: 30,
|
|
230
223
|
minWidth: 160
|
|
231
224
|
},
|
|
232
|
-
value:
|
|
225
|
+
value: filterValues[filterName],
|
|
233
226
|
onChange: function onChange(e) {
|
|
234
227
|
return handleFilterChange(filterName, e.target.value);
|
|
235
228
|
},
|
|
@@ -253,6 +246,15 @@ function DataTable(_ref) {
|
|
|
253
246
|
}, /*#__PURE__*/React.createElement("span", null, option.name));
|
|
254
247
|
}));
|
|
255
248
|
};
|
|
249
|
+
var filterContent = function filterContent() {
|
|
250
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, generateFilterInputs(), /*#__PURE__*/React.createElement(Popover.Item, null, /*#__PURE__*/React.createElement(Button, {
|
|
251
|
+
onClick: function onClick() {
|
|
252
|
+
if (onFilters) {
|
|
253
|
+
onFilters(filterValues);
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
}, "Apply")));
|
|
257
|
+
};
|
|
256
258
|
return /*#__PURE__*/React.createElement(Container, {
|
|
257
259
|
className: "helpdice-ui-data-table-container",
|
|
258
260
|
direction: "column"
|
|
@@ -344,6 +346,11 @@ function DataTable(_ref) {
|
|
|
344
346
|
px: 0.6,
|
|
345
347
|
py: 0.4,
|
|
346
348
|
type: "dark"
|
|
349
|
+
}, /*#__PURE__*/React.createElement(Popover, {
|
|
350
|
+
hideArrow: true,
|
|
351
|
+
disableItemsAutoClose: true,
|
|
352
|
+
placement: "bottomEnd",
|
|
353
|
+
child: filterContent
|
|
347
354
|
}, /*#__PURE__*/React.createElement(Button, {
|
|
348
355
|
htmlType: "button",
|
|
349
356
|
onClick: handleShowFilter,
|
|
@@ -351,7 +358,7 @@ function DataTable(_ref) {
|
|
|
351
358
|
scale: 2 / 3,
|
|
352
359
|
px: 0.6,
|
|
353
360
|
iconRight: /*#__PURE__*/React.createElement(Filters, null)
|
|
354
|
-
})) : null, !disableViewColumn && /*#__PURE__*/React.createElement(Tooltip, {
|
|
361
|
+
}))) : null, !disableViewColumn && /*#__PURE__*/React.createElement(Tooltip, {
|
|
355
362
|
text: "Columns",
|
|
356
363
|
placement: "bottomEnd",
|
|
357
364
|
font: 0.8,
|
|
@@ -379,7 +386,7 @@ function DataTable(_ref) {
|
|
|
379
386
|
display: 'flex',
|
|
380
387
|
flexDirection: sideMenu ? 'row' : 'column'
|
|
381
388
|
}
|
|
382
|
-
}, sideMenu
|
|
389
|
+
}, sideMenu ? /*#__PURE__*/React.createElement(Container, {
|
|
383
390
|
direction: "column",
|
|
384
391
|
style: {
|
|
385
392
|
width: '15rem',
|
|
@@ -388,13 +395,7 @@ function DataTable(_ref) {
|
|
|
388
395
|
border: '1px solid #cfcfcf',
|
|
389
396
|
borderRadius: '5px'
|
|
390
397
|
}
|
|
391
|
-
},
|
|
392
|
-
onClick: function onClick() {
|
|
393
|
-
if (onFilters) {
|
|
394
|
-
onFilters(filters);
|
|
395
|
-
}
|
|
396
|
-
}
|
|
397
|
-
}, "Apply")) : sideMenu) : null, /*#__PURE__*/React.createElement("div", {
|
|
398
|
+
}, sideMenu) : null, /*#__PURE__*/React.createElement("div", {
|
|
398
399
|
onDragOver: onDragOver,
|
|
399
400
|
onDragEnter: onDragEnter,
|
|
400
401
|
onDragLeave: onDragLeave,
|