@helpdice/ui 1.3.5 → 1.3.7

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 CHANGED
@@ -23391,7 +23391,7 @@ var PopoverComponent = function PopoverComponent(_ref) {
23391
23391
  PopoverComponent.displayName = 'Popover';
23392
23392
  var Popover = withScale(PopoverComponent);
23393
23393
 
23394
- var _excluded$n = ["children", "line", "showTitle", "className", "onClick", "disableAutoClose"];
23394
+ var _excluded$n = ["children", "line", "showTitle", "className", "onClick", "selected", "disableAutoClose"];
23395
23395
  var PopoverItemComponent = function PopoverItemComponent(_ref) {
23396
23396
  var children = _ref.children,
23397
23397
  _ref$line = _ref.line,
@@ -23401,6 +23401,8 @@ var PopoverItemComponent = function PopoverItemComponent(_ref) {
23401
23401
  _ref$className = _ref.className,
23402
23402
  className = _ref$className === undefined ? '' : _ref$className,
23403
23403
  onClick = _ref.onClick,
23404
+ _ref$selected = _ref.selected,
23405
+ selected = _ref$selected === undefined ? false : _ref$selected,
23404
23406
  _ref$disableAutoClose = _ref.disableAutoClose,
23405
23407
  disableAutoClose = _ref$disableAutoClose === undefined ? false : _ref$disableAutoClose,
23406
23408
  props = _objectWithoutProperties(_ref, _excluded$n);
@@ -23424,6 +23426,9 @@ var PopoverItemComponent = function PopoverItemComponent(_ref) {
23424
23426
  onItemClick(event);
23425
23427
  };
23426
23428
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", _extends({
23429
+ style: {
23430
+ backgroundColor: selected ? '#efefef' : ''
23431
+ },
23427
23432
  onClick: clickHandler
23428
23433
  }, props, {
23429
23434
  className: _JSXStyle.dynamic([["190621384", [theme.palette.accents_5, SCALES.font(0.875), SCALES.width(1, 'auto'), SCALES.height(1, 'auto'), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), SCALES.pt(0.5), SCALES.pr(0.75), SCALES.pb(0.5), SCALES.pl(0.75), hasHandler ? 'pointer' : 'default', theme.palette.foreground, theme.palette.border, SCALES.height(0.0625), SCALES.mt(0.35), SCALES.mr(0), SCALES.mb(0.35), SCALES.ml(0), SCALES.width(1, '100%'), SCALES.font(0.925), theme.palette.foreground]]]) + " " + (props && props.className != null && props.className || classes || "")
@@ -42260,7 +42265,7 @@ var TableCell = function TableCell(_ref) {
42260
42265
  color: "".concat(column === null || column === undefined ? undefined : column.color),
42261
42266
  whiteSpace: column !== null && column !== undefined && column.noWrap ? 'nowrap' : 'normal'
42262
42267
  }, currentRowValue === null || currentRowValue === undefined ? undefined : currentRowValue.style),
42263
- "data-column": column.label,
42268
+ "data-column": String(column.label).toLowerCase(),
42264
42269
  key: "row-td-".concat(index, "-").concat(column.prop.toString()),
42265
42270
  onClick: function onClick() {
42266
42271
  return onCellClick && onCellClick(currentRowValue, rowIndex, index);
@@ -42836,240 +42841,579 @@ function Placeholder(_ref) {
42836
42841
  }, msg));
42837
42842
  }
42838
42843
 
42839
- var TableBody = function TableBody(_ref) {
42840
- var data = _ref.data,
42841
- emptyText = _ref.emptyText,
42842
- onRow = _ref.onRow,
42843
- onCell = _ref.onCell,
42844
- rowClassName = _ref.rowClassName,
42845
- _ref$rowDraggable = _ref.rowDraggable,
42846
- rowDraggable = _ref$rowDraggable === undefined ? false : _ref$rowDraggable,
42844
+ function DataTable(_ref) {
42845
+ var _ref$cols = _ref.cols,
42846
+ cols = _ref$cols === undefined ? [] : _ref$cols,
42847
+ _ref$rows = _ref.rows,
42848
+ rows = _ref$rows === undefined ? [] : _ref$rows,
42847
42849
  _ref$readOnly = _ref.readOnly,
42848
42850
  readOnly = _ref$readOnly === undefined ? false : _ref$readOnly,
42849
- onSelected = _ref.onSelected;
42850
- var theme = useTheme();
42851
+ _ref$heading = _ref.heading,
42852
+ heading = _ref$heading === undefined ? [] : _ref$heading,
42853
+ _ref$filter = _ref.filter,
42854
+ filter = _ref$filter === undefined ? true : _ref$filter,
42855
+ menu = _ref.menu,
42856
+ _ref$sideMenu = _ref.sideMenu,
42857
+ sideMenu = _ref$sideMenu === undefined ? false : _ref$sideMenu,
42858
+ _ref$style = _ref.style,
42859
+ style = _ref$style === undefined ? {} : _ref$style,
42860
+ children = _ref.children,
42861
+ _ref$onBack = _ref.onBack,
42862
+ onBack = _ref$onBack === undefined ? function () {
42863
+ window.history.back();
42864
+ } : _ref$onBack,
42865
+ onRefresh = _ref.onRefresh,
42866
+ onFilters = _ref.onFilters,
42867
+ onSelectedDelete = _ref.onSelectedDelete,
42868
+ onSelectedEdit = _ref.onSelectedEdit,
42869
+ onSelected = _ref.onSelected,
42870
+ _ref$disableViewColum = _ref.disableViewColumn,
42871
+ disableViewColumn = _ref$disableViewColum === undefined ? false : _ref$disableViewColum,
42872
+ _ref$rowDraggable = _ref.rowDraggable,
42873
+ rowDraggable = _ref$rowDraggable === undefined ? false : _ref$rowDraggable,
42874
+ onDragOver = _ref.onDragOver,
42875
+ onDragEnter = _ref.onDragEnter,
42876
+ onDragLeave = _ref.onDragLeave,
42877
+ onDrop = _ref.onDrop,
42878
+ onRowClick = _ref.onRowClick,
42879
+ dataLength = _ref.dataLength,
42880
+ viewLength = _ref.viewLength,
42881
+ _onPageChange = _ref.onPageChange,
42882
+ _ref$disableMenu = _ref.disableMenu,
42883
+ disableMenu = _ref$disableMenu === undefined ? false : _ref$disableMenu;
42884
+ var TABLE_ID = _.uniqueId('tbl');
42885
+ // const [anchorEl, setAnchorEl] = useState(null);
42851
42886
  var _useState = React.useState([]),
42852
42887
  _useState2 = _slicedToArray(_useState, 2),
42853
42888
  selected = _useState2[0],
42854
42889
  setSelected = _useState2[1];
42855
- var _useTableContext = useTableContext(),
42856
- columns = _useTableContext.columns;
42857
- // const rowClickHandler = (row: TableDataItem, index: number) => {
42858
- // onRow && onRow(row, index)
42859
- // }
42890
+ // const [table_filters] = useDebounce(filters, 500);
42891
+ // const open = Boolean(anchorEl);
42892
+ // const handleMenuOpen = (event: any) => {
42893
+ // setAnchorEl(event.currentTarget);
42894
+ // };
42895
+ var _useState3 = React.useState([]),
42896
+ _useState4 = _slicedToArray(_useState3, 2),
42897
+ hideColumn = _useState4[0],
42898
+ setHideColumn = _useState4[1];
42899
+ // const handleMenuClose = () => {
42900
+ // setAnchorEl(null);
42901
+ // };
42860
42902
 
42861
- var handleClick = function handleClick(_event, id) {
42862
- if (readOnly) {
42863
- return true;
42903
+ var _useState5 = React.useState(false),
42904
+ _useState6 = _slicedToArray(_useState5, 2),
42905
+ openFilter = _useState6[0],
42906
+ setOpenFilter = _useState6[1];
42907
+ var handleShowFilter = function handleShowFilter() {
42908
+ return setOpenFilter(!openFilter);
42909
+ };
42910
+ React.useEffect(function () {
42911
+ if (selected.length > 0 && onSelected) {
42912
+ onSelected(selected);
42864
42913
  }
42865
- var selectedIndex = selected.indexOf(id);
42914
+ }, [selected]);
42915
+ React.useEffect(function () {
42916
+ cols.forEach(function (col) {
42917
+ if (hideColumn.includes(col.name)) {
42918
+ document.querySelectorAll("[data-column=\"".concat(String(col.name).toLowerCase(), "\"]")).forEach(function (el) {
42919
+ el.style.display = 'none !important';
42920
+ });
42921
+ } else {
42922
+ document.querySelectorAll("[data-column=\"".concat(String(col.name).toLowerCase(), "\"]")).forEach(function (el) {
42923
+ el.style.display = '';
42924
+ });
42925
+ }
42926
+ });
42927
+ }, [hideColumn, cols, rows]);
42928
+ var handleHideColumnClick = function handleHideColumnClick(_event, id) {
42929
+ var selectedIndex = hideColumn.indexOf(id);
42866
42930
  var newSelected = [];
42867
42931
  if (selectedIndex === -1) {
42868
- newSelected = newSelected.concat(selected, id);
42932
+ newSelected = newSelected.concat(hideColumn, id);
42869
42933
  } else if (selectedIndex === 0) {
42870
- newSelected = newSelected.concat(selected.slice(1));
42871
- } else if (selectedIndex === selected.length - 1) {
42872
- newSelected = newSelected.concat(selected.slice(0, -1));
42934
+ newSelected = newSelected.concat(hideColumn.slice(1));
42935
+ } else if (selectedIndex === hideColumn.length - 1) {
42936
+ newSelected = newSelected.concat(hideColumn.slice(0, -1));
42873
42937
  } else if (selectedIndex > 0) {
42874
- newSelected = newSelected.concat(selected.slice(0, selectedIndex), selected.slice(selectedIndex + 1));
42938
+ newSelected = newSelected.concat(hideColumn.slice(0, selectedIndex), hideColumn.slice(selectedIndex + 1));
42875
42939
  }
42876
- setSelected(newSelected);
42940
+ setHideColumn(newSelected);
42877
42941
  };
42878
42942
 
42879
- // const handleSelectAllClick = (event: { target: { checked: any } }) => {
42880
- // if (event.target.checked) {
42881
- // const newSelecteds = data.map((n: any) => n._id);
42882
- // setSelected(newSelecteds as never[]);
42883
- // return;
42884
- // }
42885
- // setSelected([]);
42886
- // };
42887
-
42888
- // Push Selected Rows
42943
+ // Children change reset selected
42889
42944
  React.useEffect(function () {
42890
- if (selected.length > 0 && onSelected) {
42891
- onSelected(selected);
42892
- }
42893
- }, [selected]);
42894
- function renderRow(cols, row, index) {
42895
- var _row$style;
42896
- var urid = _.uniqueId();
42897
- var className = rowClassName(row, index);
42898
- var rw = _objectSpread2({}, row);
42899
- var rowStyle = (_row$style = row === null || row === undefined ? undefined : row.style) !== null && _row$style !== undefined ? _row$style : {};
42900
- var onDragStart = row === null || row === undefined ? undefined : row.onDragStart;
42901
- delete rw.table;
42902
- delete rw.style;
42903
- delete rw.onDragStart;
42904
- // console.log(row);
42905
- // const frow = Object.fromEntries(
42906
- // Object.entries(row).filter(([ky, _]) => ky !== '_id' && cols.map((col: any) => col.id).includes(ky))
42907
- // ) as unknown as TableDataItem
42908
- // console.log(frow);
42909
- var isRowSelected = selected.indexOf(row) !== -1;
42910
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("tr", {
42911
- draggable: rowDraggable,
42912
- role: "checkbox",
42913
- onDragStart: onDragStart,
42914
- "aria-checked": selected.indexOf(row) !== -1,
42915
- tabIndex: -1,
42916
- key: urid,
42917
- style: _objectSpread2({
42918
- cursor: 'pointer',
42919
- backgroundColor: isRowSelected ? '#efefef' : ''
42920
- }, rowStyle),
42921
- onClick: function onClick(e) {
42922
- if (!rowDraggable) {
42923
- if (onRow) {
42924
- onRow(row, index);
42925
- } else {
42926
- handleClick(e, row);
42927
- }
42928
- }
42929
- },
42930
- className: _JSXStyle.dynamic([["2019708038", [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]]]) + " " + (useClasses("".concat(rowDraggable ? 'draggable' : 'hover', " ").concat(className)) || "")
42931
- }, /*#__PURE__*/React.createElement(TableCell, {
42932
- columns: cols,
42933
- row: rw,
42934
- rowIndex: index,
42935
- emptyText: emptyText,
42936
- onCellClick: onCell
42937
- })), /*#__PURE__*/React.createElement(_JSXStyle, {
42938
- id: "2019708038",
42939
- dynamic: [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]
42940
- }, "tr.__jsx-style-dynamic-selector{-webkit-transition:background-color 0.25s ease;transition:background-color 0.25s ease;font-size:inherit;}tr.hover.__jsx-style-dynamic-selector:hover{background-color:".concat(theme.palette.accents_1, ";}tr.draggable.__jsx-style-dynamic-selector:hover{border:2px dashed #dfdfdf;margin:3px;}tr.__jsx-style-dynamic-selector td{padding:0 0.5em;border-bottom:1px solid ").concat(theme.palette.border, ";color:").concat(theme.palette.accents_6, ";font-size:calc(0.875 * var(--table-font-size));text-align:left;}tr.__jsx-style-dynamic-selector .cell{min-height:calc(3.125 * var(--table-font-size));display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-flex-flow:row wrap;-ms-flex-flow:row wrap;flex-flow:row wrap;}")));
42941
- }
42942
- if ((data === null || data === undefined ? undefined : data.length) === 0) {
42943
- return /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", {
42944
- colSpan: columns === null || columns === undefined ? undefined : columns.length
42945
- }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Placeholder, {
42946
- empty: true,
42947
- msg: "No Entries Found"
42948
- })))));
42949
- }
42950
- return /*#__PURE__*/React.createElement("tbody", {
42951
- className: _JSXStyle.dynamic([["1422656197", [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]]])
42952
- }, data.map(function (row, index) {
42953
- var qid = _.uniqueId();
42954
- if (row === null || row === undefined) {
42955
- var uid = _.uniqueId();
42956
- return /*#__PURE__*/React.createElement("tr", {
42957
- key: uid,
42958
- className: _JSXStyle.dynamic([["1422656197", [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]]])
42959
- }, /*#__PURE__*/React.createElement("td", {
42960
- colSpan: columns.length,
42961
- className: _JSXStyle.dynamic([["1422656197", [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]]])
42962
- }, "\u2003"));
42963
- }
42964
- return /*#__PURE__*/React.createElement(React.Fragment, null, renderRow(columns, row, index), (row === null || row === undefined ? undefined : row.table) && /*#__PURE__*/React.createElement("tr", {
42965
- key: qid,
42966
- className: _JSXStyle.dynamic([["1422656197", [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]]])
42967
- }, /*#__PURE__*/React.createElement("td", {
42968
- style: {
42969
- padding: '1rem'
42970
- },
42971
- colSpan: columns.length,
42972
- className: _JSXStyle.dynamic([["1422656197", [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]]])
42973
- })));
42945
+ setSelected([]);
42946
+ }, [children]);
42974
42947
 
42975
- // return (
42976
- // <tr
42977
- // key={`tbody-row-${index}`}
42978
- // className={useClasses({ hover }, className)}
42979
- // onClick={() => rowClickHandler(row, index)}>
42980
- // <TableCell<TableDataItem>
42981
- // columns={columns}
42982
- // row={row}
42983
- // rowIndex={index}
42984
- // emptyText={emptyText}
42985
- // onCellClick={onCell}
42986
- // />
42987
- // </tr>
42988
- // )
42989
- }), /*#__PURE__*/React.createElement(_JSXStyle, {
42990
- id: "1422656197",
42991
- dynamic: [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]
42992
- }, "tr.__jsx-style-dynamic-selector{-webkit-transition:background-color 0.25s ease;transition:background-color 0.25s ease;font-size:inherit;}tr.hover.__jsx-style-dynamic-selector:hover{background-color:".concat(theme.palette.accents_1, ";}tr.draggable.__jsx-style-dynamic-selector:hover{border:2px dashed #dfdfdf;margin:3px;}tr.__jsx-style-dynamic-selector td{padding:0 0.5em;border-bottom:1px solid ").concat(theme.palette.border, ";color:").concat(theme.palette.accents_6, ";font-size:calc(0.875 * var(--table-font-size));text-align:left;}tr.__jsx-style-dynamic-selector .cell{min-height:calc(3.125 * var(--table-font-size));display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-flex-flow:row wrap;-ms-flex-flow:row wrap;flex-flow:row wrap;}")));
42993
- };
42994
- TableBody.displayName = 'TableBody';
42948
+ // const tableHeadStyle = {
42949
+ // position: 'sticky',
42950
+ // // backgroundColor: '#fafafb',
42951
+ // // boxShadow: '0 2px 2px -1px rgba(0, 0, 0, 0.4)',
42952
+ // top: 0,
42953
+ // zIndex: 9,
42954
+ // '& .MuiTableCell-root': {
42955
+ // fontSize: '14px !important',
42956
+ // py: 0.2
42957
+ // }
42958
+ // // ...borderStyle
42959
+ // };
42995
42960
 
42996
- /* "use client" */
42961
+ // const borderStyle = {
42962
+ // '& .MuiTableCell-root': {
42963
+ // py: 0.2,
42964
+ // px: 1
42965
+ // // borderLeft: '1px solid #ccc !important',
42966
+ // // borderRight: '1px solid #ccc !important'
42967
+ // },
42968
+ // '& td:first-of-type': {
42969
+ // borderLeft: 'none !important'
42970
+ // },
42971
+ // '& td:last-child': {
42972
+ // borderRight: 'none !important'
42973
+ // }
42974
+ // // '& tr': { borderBottom: '1px solid #ccc !important' }
42975
+ // };
42997
42976
 
42998
- var TableColumn = function TableColumn(columnProps) {
42999
- var _ref = columnProps,
43000
- children = _ref.children,
43001
- prop = _ref.prop,
43002
- label = _ref.label,
43003
- width = _ref.width,
43004
- filter = _ref.filter,
43005
- options = _ref.options,
43006
- noWrap = _ref.noWrap,
43007
- align = _ref.align,
43008
- _ref$fontSize = _ref.fontSize,
43009
- fontSize = _ref$fontSize === undefined ? 'smaller' : _ref$fontSize,
43010
- _ref$className = _ref.className,
43011
- className = _ref$className === undefined ? '' : _ref$className,
43012
- renderHandler = _ref.render;
43013
- var _useTableContext = useTableContext(),
43014
- updateColumn = _useTableContext.updateColumn;
43015
- var safeProp = "".concat(prop.toString()).trim();
43016
- if (!safeProp) {
43017
- useWarning('The props "prop" is required.', 'Table.Column');
43018
- }
43019
- React.useEffect(function () {
43020
- updateColumn({
43021
- label: children || label,
43022
- filter: filter,
43023
- noWrap: noWrap,
43024
- options: options,
43025
- prop: safeProp,
43026
- width: width,
43027
- align: align,
43028
- fontSize: fontSize,
43029
- className: className,
43030
- renderHandler: function renderHandler() {}
42977
+ var COLUMNS = cols.filter(function (col) {
42978
+ return !hideColumn.includes(col.name);
42979
+ });
42980
+ var content = function content() {
42981
+ return /*#__PURE__*/React.createElement(React.Fragment, null, cols.map(function (option, index) {
42982
+ var colunqid = _.uniqueId("".concat(option.name, "-").concat(index));
42983
+ var isSelected = !hideColumn.includes(option.name);
42984
+ return /*#__PURE__*/React.createElement(Popover.Item, {
42985
+ selected: isSelected,
42986
+ key: colunqid,
42987
+ onClick: function onClick(e) {
42988
+ return handleHideColumnClick(e, option.name);
42989
+ }
42990
+ }, /*#__PURE__*/React.createElement("span", null, option.name));
42991
+ }));
42992
+ };
42993
+ return /*#__PURE__*/React.createElement(GridContainer, {
42994
+ className: "helpdice-ui-table-container",
42995
+ direction: "column"
42996
+ }, /*#__PURE__*/React.createElement(Grid.Container, {
42997
+ style: {
42998
+ marginBottom: '0.5rem',
42999
+ marginTop: '0.5rem'
43000
+ }
43001
+ }, heading && /*#__PURE__*/React.createElement(Grid, {
43002
+ sm: disableMenu ? 24 : 12,
43003
+ xs: 24
43004
+ }, /*#__PURE__*/React.createElement("div", {
43005
+ style: {
43006
+ display: 'flex',
43007
+ alignItems: 'center',
43008
+ gap: '1rem'
43009
+ }
43010
+ }, children && /*#__PURE__*/React.createElement(Button, {
43011
+ auto: true,
43012
+ scale: 2 / 3,
43013
+ px: 0.6,
43014
+ iconRight: /*#__PURE__*/React.createElement(ArrowLeft$1, null),
43015
+ onClick: onBack
43016
+ }), heading)), !disableMenu && /*#__PURE__*/React.createElement(Grid, {
43017
+ sm: 12,
43018
+ xs: 24
43019
+ }, /*#__PURE__*/React.createElement(GridContainer, {
43020
+ width: "100%",
43021
+ style: {
43022
+ margin: 0,
43023
+ gap: '0.6rem'
43024
+ },
43025
+ justify: "flex-end",
43026
+ alignContent: "center"
43027
+ }, menu, !children && !readOnly ? /*#__PURE__*/React.createElement(React.Fragment, null, onSelectedEdit && selected.length === 1 ? /*#__PURE__*/React.createElement(Tooltip, {
43028
+ text: "Edit Selected",
43029
+ placement: "bottom",
43030
+ font: 0.8,
43031
+ px: 0.6,
43032
+ py: 0.4,
43033
+ type: "dark"
43034
+ }, /*#__PURE__*/React.createElement(Button, {
43035
+ onClick: function onClick() {
43036
+ return onSelectedEdit(selected[0]);
43037
+ },
43038
+ iconRight: /*#__PURE__*/React.createElement(Edit, null),
43039
+ auto: true,
43040
+ scale: 2 / 3,
43041
+ px: 0.6
43042
+ })) : null, onSelectedDelete && selected.length > 1 ? /*#__PURE__*/React.createElement(Tooltip, {
43043
+ text: "Delete Selected",
43044
+ placement: "bottom",
43045
+ font: 0.8,
43046
+ px: 0.6,
43047
+ py: 0.4,
43048
+ type: "dark"
43049
+ }, /*#__PURE__*/React.createElement(Button, {
43050
+ onClick: function onClick() {
43051
+ return onSelectedDelete(selected);
43052
+ },
43053
+ auto: true,
43054
+ scale: 2 / 3,
43055
+ px: 0.6,
43056
+ iconRight: /*#__PURE__*/React.createElement(Delete$1, null)
43057
+ })) : null, onRefresh ? /*#__PURE__*/React.createElement(Tooltip, {
43058
+ text: "Refresh",
43059
+ placement: "bottom",
43060
+ font: 0.8,
43061
+ px: 0.6,
43062
+ py: 0.4,
43063
+ type: "dark"
43064
+ }, /*#__PURE__*/React.createElement(Button, {
43065
+ onClick: function onClick() {
43066
+ return onRefresh();
43067
+ },
43068
+ auto: true,
43069
+ scale: 2 / 3,
43070
+ px: 0.6,
43071
+ iconRight: /*#__PURE__*/React.createElement(Refresh$1, null)
43072
+ })) : null, onFilters && filter ? /*#__PURE__*/React.createElement(Tooltip, {
43073
+ text: "Filters",
43074
+ placement: "bottomEnd",
43075
+ font: 0.8,
43076
+ px: 0.6,
43077
+ py: 0.4,
43078
+ type: "dark"
43079
+ }, /*#__PURE__*/React.createElement(Button, {
43080
+ onClick: handleShowFilter,
43081
+ auto: true,
43082
+ scale: 2 / 3,
43083
+ px: 0.6,
43084
+ iconRight: /*#__PURE__*/React.createElement(Filters, null)
43085
+ })) : null, !disableViewColumn && /*#__PURE__*/React.createElement(Tooltip, {
43086
+ text: "Columns",
43087
+ placement: "bottomEnd",
43088
+ font: 0.8,
43089
+ px: 0.6,
43090
+ py: 0.4,
43091
+ type: "dark"
43092
+ }, /*#__PURE__*/React.createElement(Popover, {
43093
+ placement: "bottomEnd",
43094
+ child: content
43095
+ }, /*#__PURE__*/React.createElement(Button, {
43096
+ onClick: function onClick() {},
43097
+ auto: true,
43098
+ scale: 2 / 3,
43099
+ px: 0.6,
43100
+ iconRight: /*#__PURE__*/React.createElement(Columns$1, null)
43101
+ })))) : null))), children ? /*#__PURE__*/React.createElement("div", {
43102
+ style: {
43103
+ padding: '1rem'
43104
+ }
43105
+ }, children) : /*#__PURE__*/React.createElement("div", {
43106
+ style: {
43107
+ gap: 5,
43108
+ display: 'flex',
43109
+ flexDirection: sideMenu ? 'row' : 'column'
43110
+ }
43111
+ }, sideMenu && /*#__PURE__*/React.createElement(GridContainer, {
43112
+ direction: "column",
43113
+ style: {
43114
+ width: '15rem',
43115
+ padding: '0.5rem 0.7rem',
43116
+ border: '1px solid #cfcfcf',
43117
+ borderRadius: '5px'
43118
+ }
43119
+ }, sideMenu), /*#__PURE__*/React.createElement("div", {
43120
+ onDragOver: onDragOver,
43121
+ onDragEnter: onDragEnter,
43122
+ onDragLeave: onDragLeave,
43123
+ onDrop: onDrop,
43124
+ id: TABLE_ID,
43125
+ style: _objectSpread2({
43126
+ overflow: 'auto',
43127
+ position: 'relative',
43128
+ height: 'calc(100vh - 8.5rem)',
43129
+ maxWidth: 'calc(100vw - 1rem)',
43130
+ width: sideMenu ? 'calc(100vw - 17.2rem)' : 'inherit !important'
43131
+ }, style)
43132
+ }, /*#__PURE__*/React.createElement(Table, {
43133
+ stickyHeader: true,
43134
+ dataLength: dataLength,
43135
+ viewLength: viewLength,
43136
+ onPageChange: function onPageChange(page, start, end) {
43137
+ if (_onPageChange) {
43138
+ _onPageChange(page, start, end);
43139
+ }
43140
+ },
43141
+ onRow: onRowClick,
43142
+ rowDraggable: rowDraggable,
43143
+ showFilters: openFilter,
43144
+ onSelected: function onSelected(selected) {
43145
+ return setSelected(selected);
43146
+ },
43147
+ onFilters: onFilters,
43148
+ data: rows,
43149
+ style: {
43150
+ borderCollapse: 'collapse',
43151
+ overflow: 'auto'
43152
+ }
43153
+ }, COLUMNS.map(function (column, index) {
43154
+ return /*#__PURE__*/React.createElement(Table.Column, {
43155
+ options: column === null || column === undefined ? undefined : column.options,
43156
+ fontSize: column === null || column === undefined ? undefined : column.fontSize,
43157
+ key: "".concat(column.id, "-").concat(index),
43158
+ prop: column.id,
43159
+ label: column.name,
43160
+ filter: column === null || column === undefined ? undefined : column.filter,
43161
+ noWrap: column === null || column === undefined ? undefined : column.noWrap,
43162
+ align: column === null || column === undefined ? undefined : column.align
43031
43163
  });
43032
- }, [children, noWrap, fontSize, align, filter, options, label, prop, width, className, renderHandler]);
43033
- return null;
43034
- };
43035
- TableColumn.displayName = 'TableColumn';
43164
+ })))));
43165
+ }
43166
+ var DataTable$1 = /*#__PURE__*/React.memo(DataTable);
43036
43167
 
43037
- var _excluded$9 = ["children", "data", "initialData", "hover", "emptyText", "rowDraggable", "readOnly", "onRow", "onCell", "onChange", "onFilters", "onPageChange", "showFilters", "stickyHeader", "onSelected", "dataLength", "viewLength", "className", "rowClassName"];
43038
- function TableComponent(tableProps) {
43039
- /* eslint-disable @typescript-eslint/no-unused-vars */
43040
- var _ref = tableProps,
43041
- children = _ref.children,
43042
- customData = _ref.data,
43043
- _ref$initialData = _ref.initialData,
43044
- initialData = _ref$initialData === undefined ? [] : _ref$initialData,
43045
- _ref$hover = _ref.hover,
43046
- hover = _ref$hover === undefined ? true : _ref$hover,
43047
- _ref$emptyText = _ref.emptyText,
43048
- emptyText = _ref$emptyText === undefined ? '' : _ref$emptyText,
43168
+ var TableBody = function TableBody(_ref) {
43169
+ var data = _ref.data,
43170
+ emptyText = _ref.emptyText,
43171
+ onRow = _ref.onRow,
43172
+ onCell = _ref.onCell,
43173
+ rowClassName = _ref.rowClassName,
43049
43174
  _ref$rowDraggable = _ref.rowDraggable,
43050
43175
  rowDraggable = _ref$rowDraggable === undefined ? false : _ref$rowDraggable,
43051
43176
  _ref$readOnly = _ref.readOnly,
43052
43177
  readOnly = _ref$readOnly === undefined ? false : _ref$readOnly,
43053
- onRow = _ref.onRow,
43054
- onCell = _ref.onCell;
43055
- _ref.onChange;
43056
- var onFilters = _ref.onFilters,
43057
- onPageChange = _ref.onPageChange,
43058
- _ref$showFilters = _ref.showFilters,
43059
- showFilters = _ref$showFilters === undefined ? false : _ref$showFilters,
43060
- _ref$stickyHeader = _ref.stickyHeader,
43061
- stickyHeader = _ref$stickyHeader === undefined ? false : _ref$stickyHeader,
43062
- onSelected = _ref.onSelected,
43063
- dataLength = _ref.dataLength,
43064
- viewLength = _ref.viewLength,
43065
- _ref$className = _ref.className,
43066
- className = _ref$className === undefined ? '' : _ref$className,
43067
- _ref$rowClassName = _ref.rowClassName,
43068
- rowClassName = _ref$rowClassName === undefined ? function () {
43069
- return '';
43070
- } : _ref$rowClassName,
43071
- props = _objectWithoutProperties(_ref, _excluded$9);
43072
- /* eslint-enable @typescript-eslint/no-unused-vars */
43178
+ onSelected = _ref.onSelected;
43179
+ var theme = useTheme();
43180
+ var _useState = React.useState([]),
43181
+ _useState2 = _slicedToArray(_useState, 2),
43182
+ selected = _useState2[0],
43183
+ setSelected = _useState2[1];
43184
+ var _useTableContext = useTableContext(),
43185
+ columns = _useTableContext.columns;
43186
+ // const rowClickHandler = (row: TableDataItem, index: number) => {
43187
+ // onRow && onRow(row, index)
43188
+ // }
43189
+
43190
+ var handleClick = function handleClick(_event, id) {
43191
+ if (readOnly) {
43192
+ return true;
43193
+ }
43194
+ var selectedIndex = selected.indexOf(id);
43195
+ var newSelected = [];
43196
+ if (selectedIndex === -1) {
43197
+ newSelected = newSelected.concat(selected, id);
43198
+ } else if (selectedIndex === 0) {
43199
+ newSelected = newSelected.concat(selected.slice(1));
43200
+ } else if (selectedIndex === selected.length - 1) {
43201
+ newSelected = newSelected.concat(selected.slice(0, -1));
43202
+ } else if (selectedIndex > 0) {
43203
+ newSelected = newSelected.concat(selected.slice(0, selectedIndex), selected.slice(selectedIndex + 1));
43204
+ }
43205
+ setSelected(newSelected);
43206
+ if (newSelected.length > 0 && onSelected) {
43207
+ onSelected(newSelected);
43208
+ }
43209
+ };
43210
+
43211
+ // const handleSelectAllClick = (event: { target: { checked: any } }) => {
43212
+ // if (event.target.checked) {
43213
+ // const newSelecteds = data.map((n: any) => n._id);
43214
+ // setSelected(newSelecteds as never[]);
43215
+ // return;
43216
+ // }
43217
+ // setSelected([]);
43218
+ // };
43219
+
43220
+ // Push Selected Rows
43221
+ // useEffect(() => {
43222
+ // if (selected.length > 0 && onSelected) {
43223
+ // onSelected(selected);
43224
+ // }
43225
+ // }, [selected]);
43226
+
43227
+ function renderRow(cols, row, index) {
43228
+ var _row$style;
43229
+ var urid = _.uniqueId();
43230
+ var className = rowClassName(row, index);
43231
+ var rw = _objectSpread2({}, row);
43232
+ var rowStyle = (_row$style = row === null || row === undefined ? undefined : row.style) !== null && _row$style !== undefined ? _row$style : {};
43233
+ var onDragStart = row === null || row === undefined ? undefined : row.onDragStart;
43234
+ delete rw.table;
43235
+ delete rw.style;
43236
+ delete rw.onDragStart;
43237
+ // console.log(row);
43238
+ // const frow = Object.fromEntries(
43239
+ // Object.entries(row).filter(([ky, _]) => ky !== '_id' && cols.map((col: any) => col.id).includes(ky))
43240
+ // ) as unknown as TableDataItem
43241
+ // console.log(frow);
43242
+ var isRowSelected = selected.indexOf(row) !== -1;
43243
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("tr", {
43244
+ draggable: rowDraggable,
43245
+ role: "checkbox",
43246
+ onDragStart: onDragStart,
43247
+ "aria-checked": selected.indexOf(row) !== -1,
43248
+ tabIndex: -1,
43249
+ key: urid,
43250
+ style: _objectSpread2({
43251
+ cursor: 'pointer',
43252
+ backgroundColor: isRowSelected ? '#efefef' : ''
43253
+ }, rowStyle),
43254
+ onClick: function onClick(e) {
43255
+ if (!rowDraggable) {
43256
+ if (onRow) {
43257
+ onRow(row, index);
43258
+ } else {
43259
+ handleClick(e, row);
43260
+ }
43261
+ }
43262
+ },
43263
+ className: _JSXStyle.dynamic([["2019708038", [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]]]) + " " + (useClasses("".concat(rowDraggable ? 'draggable' : 'hover', " ").concat(className)) || "")
43264
+ }, /*#__PURE__*/React.createElement(TableCell, {
43265
+ columns: cols,
43266
+ row: rw,
43267
+ rowIndex: index,
43268
+ emptyText: emptyText,
43269
+ onCellClick: onCell
43270
+ })), /*#__PURE__*/React.createElement(_JSXStyle, {
43271
+ id: "2019708038",
43272
+ dynamic: [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]
43273
+ }, "tr.__jsx-style-dynamic-selector{-webkit-transition:background-color 0.25s ease;transition:background-color 0.25s ease;font-size:inherit;}tr.hover.__jsx-style-dynamic-selector:hover{background-color:".concat(theme.palette.accents_1, ";}tr.draggable.__jsx-style-dynamic-selector:hover{border:2px dashed #dfdfdf;margin:3px;}tr.__jsx-style-dynamic-selector td{padding:0 0.5em;border-bottom:1px solid ").concat(theme.palette.border, ";color:").concat(theme.palette.accents_6, ";font-size:calc(0.875 * var(--table-font-size));text-align:left;}tr.__jsx-style-dynamic-selector .cell{min-height:calc(3.125 * var(--table-font-size));display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-flex-flow:row wrap;-ms-flex-flow:row wrap;flex-flow:row wrap;}")));
43274
+ }
43275
+ if ((data === null || data === undefined ? undefined : data.length) === 0) {
43276
+ return /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", {
43277
+ colSpan: columns === null || columns === undefined ? undefined : columns.length
43278
+ }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Placeholder, {
43279
+ empty: true,
43280
+ msg: "No Entries Found"
43281
+ })))));
43282
+ }
43283
+ return /*#__PURE__*/React.createElement("tbody", {
43284
+ className: _JSXStyle.dynamic([["1422656197", [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]]])
43285
+ }, data.map(function (row, index) {
43286
+ var _row$table, _row$table2, _row$table3, _row$table4, _row$table5;
43287
+ var qid = _.uniqueId();
43288
+ if (row === null || row === undefined) {
43289
+ var uid = _.uniqueId();
43290
+ return /*#__PURE__*/React.createElement("tr", {
43291
+ key: uid,
43292
+ className: _JSXStyle.dynamic([["1422656197", [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]]])
43293
+ }, /*#__PURE__*/React.createElement("td", {
43294
+ colSpan: columns.length,
43295
+ className: _JSXStyle.dynamic([["1422656197", [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]]])
43296
+ }, "\u2003"));
43297
+ }
43298
+ return /*#__PURE__*/React.createElement(React.Fragment, null, renderRow(columns, row, index), (row === null || row === undefined ? undefined : row.table) && /*#__PURE__*/React.createElement("tr", {
43299
+ key: qid,
43300
+ className: _JSXStyle.dynamic([["1422656197", [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]]])
43301
+ }, /*#__PURE__*/React.createElement("td", {
43302
+ style: {
43303
+ padding: '1rem'
43304
+ },
43305
+ colSpan: columns.length,
43306
+ className: _JSXStyle.dynamic([["1422656197", [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]]])
43307
+ }, /*#__PURE__*/React.createElement(DataTable$1, {
43308
+ readOnly: true,
43309
+ stickyHeader: false,
43310
+ style: _objectSpread2({
43311
+ height: 'auto !important'
43312
+ }, row === null || row === undefined || (_row$table = row.table) === null || _row$table === undefined ? undefined : _row$table.style),
43313
+ menu: (_row$table2 = row.table) === null || _row$table2 === undefined ? undefined : _row$table2.menu,
43314
+ rows: (_row$table3 = row.table) === null || _row$table3 === undefined ? undefined : _row$table3.rows,
43315
+ heading: (_row$table4 = row.table) === null || _row$table4 === undefined ? undefined : _row$table4.heading,
43316
+ cols: (_row$table5 = row.table) === null || _row$table5 === undefined ? undefined : _row$table5.cols
43317
+ }))));
43318
+
43319
+ // return (
43320
+ // <tr
43321
+ // key={`tbody-row-${index}`}
43322
+ // className={useClasses({ hover }, className)}
43323
+ // onClick={() => rowClickHandler(row, index)}>
43324
+ // <TableCell<TableDataItem>
43325
+ // columns={columns}
43326
+ // row={row}
43327
+ // rowIndex={index}
43328
+ // emptyText={emptyText}
43329
+ // onCellClick={onCell}
43330
+ // />
43331
+ // </tr>
43332
+ // )
43333
+ }), /*#__PURE__*/React.createElement(_JSXStyle, {
43334
+ id: "1422656197",
43335
+ dynamic: [theme.palette.accents_1, theme.palette.border, theme.palette.accents_6]
43336
+ }, "tr.__jsx-style-dynamic-selector{-webkit-transition:background-color 0.25s ease;transition:background-color 0.25s ease;font-size:inherit;}tr.hover.__jsx-style-dynamic-selector:hover{background-color:".concat(theme.palette.accents_1, ";}tr.draggable.__jsx-style-dynamic-selector:hover{border:2px dashed #dfdfdf;margin:3px;}tr.__jsx-style-dynamic-selector td{padding:0 0.5em;border-bottom:1px solid ").concat(theme.palette.border, ";color:").concat(theme.palette.accents_6, ";font-size:calc(0.875 * var(--table-font-size));text-align:left;}tr.__jsx-style-dynamic-selector .cell{min-height:calc(3.125 * var(--table-font-size));display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-flex-flow:row wrap;-ms-flex-flow:row wrap;flex-flow:row wrap;}")));
43337
+ };
43338
+ TableBody.displayName = 'TableBody';
43339
+
43340
+ /* "use client" */
43341
+
43342
+ var TableColumn = function TableColumn(columnProps) {
43343
+ var _ref = columnProps,
43344
+ children = _ref.children,
43345
+ prop = _ref.prop,
43346
+ label = _ref.label,
43347
+ width = _ref.width,
43348
+ filter = _ref.filter,
43349
+ options = _ref.options,
43350
+ noWrap = _ref.noWrap,
43351
+ align = _ref.align,
43352
+ _ref$fontSize = _ref.fontSize,
43353
+ fontSize = _ref$fontSize === undefined ? 'smaller' : _ref$fontSize,
43354
+ _ref$className = _ref.className,
43355
+ className = _ref$className === undefined ? '' : _ref$className,
43356
+ renderHandler = _ref.render;
43357
+ var _useTableContext = useTableContext(),
43358
+ updateColumn = _useTableContext.updateColumn;
43359
+ var safeProp = "".concat(prop.toString()).trim();
43360
+ if (!safeProp) {
43361
+ useWarning('The props "prop" is required.', 'Table.Column');
43362
+ }
43363
+ React.useEffect(function () {
43364
+ updateColumn({
43365
+ label: children || label,
43366
+ filter: filter,
43367
+ noWrap: noWrap,
43368
+ options: options,
43369
+ prop: safeProp,
43370
+ width: width,
43371
+ align: align,
43372
+ fontSize: fontSize,
43373
+ className: className,
43374
+ renderHandler: function renderHandler() {}
43375
+ });
43376
+ }, [children, noWrap, fontSize, align, filter, options, label, prop, width, className, renderHandler]);
43377
+ return null;
43378
+ };
43379
+ TableColumn.displayName = 'TableColumn';
43380
+
43381
+ var _excluded$9 = ["children", "data", "initialData", "hover", "emptyText", "rowDraggable", "readOnly", "onRow", "onCell", "onChange", "onFilters", "onPageChange", "showFilters", "stickyHeader", "onSelected", "dataLength", "viewLength", "className", "rowClassName"];
43382
+ function TableComponent(tableProps) {
43383
+ /* eslint-disable @typescript-eslint/no-unused-vars */
43384
+ var _ref = tableProps,
43385
+ children = _ref.children,
43386
+ customData = _ref.data,
43387
+ _ref$initialData = _ref.initialData,
43388
+ initialData = _ref$initialData === undefined ? [] : _ref$initialData,
43389
+ _ref$hover = _ref.hover,
43390
+ hover = _ref$hover === undefined ? true : _ref$hover,
43391
+ _ref$emptyText = _ref.emptyText,
43392
+ emptyText = _ref$emptyText === undefined ? '' : _ref$emptyText,
43393
+ _ref$rowDraggable = _ref.rowDraggable,
43394
+ rowDraggable = _ref$rowDraggable === undefined ? false : _ref$rowDraggable,
43395
+ _ref$readOnly = _ref.readOnly,
43396
+ readOnly = _ref$readOnly === undefined ? false : _ref$readOnly,
43397
+ onRow = _ref.onRow,
43398
+ onCell = _ref.onCell;
43399
+ _ref.onChange;
43400
+ var onFilters = _ref.onFilters,
43401
+ onPageChange = _ref.onPageChange,
43402
+ _ref$showFilters = _ref.showFilters,
43403
+ showFilters = _ref$showFilters === undefined ? false : _ref$showFilters,
43404
+ _ref$stickyHeader = _ref.stickyHeader,
43405
+ stickyHeader = _ref$stickyHeader === undefined ? false : _ref$stickyHeader,
43406
+ onSelected = _ref.onSelected,
43407
+ dataLength = _ref.dataLength,
43408
+ viewLength = _ref.viewLength,
43409
+ _ref$className = _ref.className,
43410
+ className = _ref$className === undefined ? '' : _ref$className,
43411
+ _ref$rowClassName = _ref.rowClassName,
43412
+ rowClassName = _ref$rowClassName === undefined ? function () {
43413
+ return '';
43414
+ } : _ref$rowClassName,
43415
+ props = _objectWithoutProperties(_ref, _excluded$9);
43416
+ /* eslint-enable @typescript-eslint/no-unused-vars */
43073
43417
  var _useScale = useScale(),
43074
43418
  SCALES = _useScale.SCALES;
43075
43419
  var ref = React.useRef(null);
@@ -43164,329 +43508,6 @@ TableComponent.Column = TableColumn;
43164
43508
  var Table = withScale(TableComponent);
43165
43509
  Table.Column = TableColumn;
43166
43510
 
43167
- function DataTable(_ref) {
43168
- var _ref$cols = _ref.cols,
43169
- cols = _ref$cols === undefined ? [] : _ref$cols,
43170
- _ref$rows = _ref.rows,
43171
- rows = _ref$rows === undefined ? [] : _ref$rows,
43172
- _ref$readOnly = _ref.readOnly,
43173
- readOnly = _ref$readOnly === undefined ? false : _ref$readOnly,
43174
- _ref$heading = _ref.heading,
43175
- heading = _ref$heading === undefined ? [] : _ref$heading,
43176
- _ref$filter = _ref.filter,
43177
- filter = _ref$filter === undefined ? true : _ref$filter,
43178
- menu = _ref.menu,
43179
- _ref$sideMenu = _ref.sideMenu,
43180
- sideMenu = _ref$sideMenu === undefined ? false : _ref$sideMenu,
43181
- _ref$style = _ref.style,
43182
- style = _ref$style === undefined ? {} : _ref$style,
43183
- children = _ref.children,
43184
- _ref$onBack = _ref.onBack,
43185
- onBack = _ref$onBack === undefined ? function () {
43186
- window.history.back();
43187
- } : _ref$onBack,
43188
- onRefresh = _ref.onRefresh,
43189
- onFilters = _ref.onFilters,
43190
- onSelectedDelete = _ref.onSelectedDelete,
43191
- onSelectedEdit = _ref.onSelectedEdit,
43192
- onSelected = _ref.onSelected,
43193
- _ref$disableViewColum = _ref.disableViewColumn,
43194
- disableViewColumn = _ref$disableViewColum === undefined ? false : _ref$disableViewColum,
43195
- _ref$rowDraggable = _ref.rowDraggable,
43196
- rowDraggable = _ref$rowDraggable === undefined ? false : _ref$rowDraggable,
43197
- onDragOver = _ref.onDragOver,
43198
- onDragEnter = _ref.onDragEnter,
43199
- onDragLeave = _ref.onDragLeave,
43200
- onDrop = _ref.onDrop,
43201
- onRowClick = _ref.onRowClick,
43202
- dataLength = _ref.dataLength,
43203
- viewLength = _ref.viewLength,
43204
- _onPageChange = _ref.onPageChange,
43205
- _ref$disableMenu = _ref.disableMenu,
43206
- disableMenu = _ref$disableMenu === undefined ? false : _ref$disableMenu;
43207
- var TABLE_ID = _.uniqueId('tbl');
43208
- // const [anchorEl, setAnchorEl] = useState(null);
43209
- var _useState = React.useState([]),
43210
- _useState2 = _slicedToArray(_useState, 2),
43211
- selected = _useState2[0],
43212
- setSelected = _useState2[1];
43213
- // const [table_filters] = useDebounce(filters, 500);
43214
- // const open = Boolean(anchorEl);
43215
- // const handleMenuOpen = (event: any) => {
43216
- // setAnchorEl(event.currentTarget);
43217
- // };
43218
- var _useState3 = React.useState([]),
43219
- _useState4 = _slicedToArray(_useState3, 2),
43220
- hideColumn = _useState4[0],
43221
- setHideColumn = _useState4[1];
43222
- // const handleMenuClose = () => {
43223
- // setAnchorEl(null);
43224
- // };
43225
-
43226
- var _useState5 = React.useState(false),
43227
- _useState6 = _slicedToArray(_useState5, 2),
43228
- openFilter = _useState6[0],
43229
- setOpenFilter = _useState6[1];
43230
- var handleShowFilter = function handleShowFilter() {
43231
- return setOpenFilter(!openFilter);
43232
- };
43233
- React.useEffect(function () {
43234
- if (selected.length > 0 && onSelected) {
43235
- onSelected(selected);
43236
- }
43237
- }, [selected]);
43238
- React.useEffect(function () {
43239
- cols.forEach(function (col) {
43240
- if (hideColumn.includes(col.name)) {
43241
- document.querySelectorAll("[data-column=\"".concat(col.name, "\"]")).forEach(function (el) {
43242
- el.style.display = 'none';
43243
- });
43244
- } else {
43245
- document.querySelectorAll("[data-column=\"".concat(col.name, "\"]")).forEach(function (el) {
43246
- el.style.display = '';
43247
- });
43248
- }
43249
- });
43250
- }, [hideColumn, cols, rows]);
43251
- var handleHideColumnClick = function handleHideColumnClick(_event, id) {
43252
- var selectedIndex = hideColumn.indexOf(id);
43253
- var newSelected = [];
43254
- if (selectedIndex === -1) {
43255
- newSelected = newSelected.concat(hideColumn, id);
43256
- } else if (selectedIndex === 0) {
43257
- newSelected = newSelected.concat(hideColumn.slice(1));
43258
- } else if (selectedIndex === hideColumn.length - 1) {
43259
- newSelected = newSelected.concat(hideColumn.slice(0, -1));
43260
- } else if (selectedIndex > 0) {
43261
- newSelected = newSelected.concat(hideColumn.slice(0, selectedIndex), hideColumn.slice(selectedIndex + 1));
43262
- }
43263
- setHideColumn(newSelected);
43264
- };
43265
-
43266
- // Children change reset selected
43267
- React.useEffect(function () {
43268
- setSelected([]);
43269
- }, [children]);
43270
-
43271
- // const tableHeadStyle = {
43272
- // position: 'sticky',
43273
- // // backgroundColor: '#fafafb',
43274
- // // boxShadow: '0 2px 2px -1px rgba(0, 0, 0, 0.4)',
43275
- // top: 0,
43276
- // zIndex: 9,
43277
- // '& .MuiTableCell-root': {
43278
- // fontSize: '14px !important',
43279
- // py: 0.2
43280
- // }
43281
- // // ...borderStyle
43282
- // };
43283
-
43284
- // const borderStyle = {
43285
- // '& .MuiTableCell-root': {
43286
- // py: 0.2,
43287
- // px: 1
43288
- // // borderLeft: '1px solid #ccc !important',
43289
- // // borderRight: '1px solid #ccc !important'
43290
- // },
43291
- // '& td:first-of-type': {
43292
- // borderLeft: 'none !important'
43293
- // },
43294
- // '& td:last-child': {
43295
- // borderRight: 'none !important'
43296
- // }
43297
- // // '& tr': { borderBottom: '1px solid #ccc !important' }
43298
- // };
43299
-
43300
- var COLUMNS = cols.filter(function (col) {
43301
- return !hideColumn.includes(col.name);
43302
- });
43303
- var content = function content() {
43304
- return /*#__PURE__*/React.createElement(React.Fragment, null, cols.map(function (option, index) {
43305
- var colunqid = _.uniqueId("".concat(option.name, "-").concat(index));
43306
- return /*#__PURE__*/React.createElement(Popover.Item, {
43307
- key: colunqid
43308
- // selected={!hideColumn.includes(option.name as never)}
43309
- ,
43310
- onClick: function onClick(e) {
43311
- return handleHideColumnClick(e, option.name);
43312
- }
43313
- }, /*#__PURE__*/React.createElement("span", null, option.name));
43314
- }));
43315
- };
43316
- return /*#__PURE__*/React.createElement(GridContainer, {
43317
- direction: "column"
43318
- }, /*#__PURE__*/React.createElement(Grid.Container, {
43319
- style: {
43320
- marginBottom: '0.5rem',
43321
- marginTop: '0.5rem'
43322
- }
43323
- }, heading && /*#__PURE__*/React.createElement(Grid, {
43324
- sm: disableMenu ? 24 : 12,
43325
- xs: 24
43326
- }, /*#__PURE__*/React.createElement("div", {
43327
- style: {
43328
- display: 'flex',
43329
- alignItems: 'center',
43330
- gap: '1rem'
43331
- }
43332
- }, children && /*#__PURE__*/React.createElement(Button, {
43333
- auto: true,
43334
- scale: 2 / 3,
43335
- px: 0.6,
43336
- iconRight: /*#__PURE__*/React.createElement(ArrowLeft$1, null),
43337
- onClick: onBack
43338
- }), heading)), !disableMenu && /*#__PURE__*/React.createElement(Grid, {
43339
- sm: 12,
43340
- xs: 24
43341
- }, /*#__PURE__*/React.createElement(GridContainer, {
43342
- width: "100%",
43343
- style: {
43344
- margin: 0,
43345
- gap: '0.6rem'
43346
- },
43347
- justify: "flex-end",
43348
- alignContent: "center"
43349
- }, menu, !children && !readOnly ? /*#__PURE__*/React.createElement(React.Fragment, null, onSelectedEdit && selected.length === 1 ? /*#__PURE__*/React.createElement(Tooltip, {
43350
- text: "Edit Selected",
43351
- placement: "bottom",
43352
- font: 0.8,
43353
- px: 0.6,
43354
- py: 0.4,
43355
- type: "dark"
43356
- }, /*#__PURE__*/React.createElement(Button, {
43357
- onClick: function onClick() {
43358
- return onSelectedEdit(selected[0]);
43359
- },
43360
- iconRight: /*#__PURE__*/React.createElement(Edit, null),
43361
- auto: true,
43362
- scale: 2 / 3,
43363
- px: 0.6
43364
- })) : null, onSelectedDelete && selected.length > 1 ? /*#__PURE__*/React.createElement(Tooltip, {
43365
- text: "Delete Selected",
43366
- placement: "bottom",
43367
- font: 0.8,
43368
- px: 0.6,
43369
- py: 0.4,
43370
- type: "dark"
43371
- }, /*#__PURE__*/React.createElement(Button, {
43372
- onClick: function onClick() {
43373
- return onSelectedDelete(selected);
43374
- },
43375
- auto: true,
43376
- scale: 2 / 3,
43377
- px: 0.6,
43378
- iconRight: /*#__PURE__*/React.createElement(Delete$1, null)
43379
- })) : null, onRefresh ? /*#__PURE__*/React.createElement(Tooltip, {
43380
- text: "Refresh",
43381
- placement: "bottom",
43382
- font: 0.8,
43383
- px: 0.6,
43384
- py: 0.4,
43385
- type: "dark"
43386
- }, /*#__PURE__*/React.createElement(Button, {
43387
- onClick: function onClick() {
43388
- return onRefresh();
43389
- },
43390
- auto: true,
43391
- scale: 2 / 3,
43392
- px: 0.6,
43393
- iconRight: /*#__PURE__*/React.createElement(Refresh$1, null)
43394
- })) : null, onFilters && filter ? /*#__PURE__*/React.createElement(Tooltip, {
43395
- text: "Filters",
43396
- placement: "bottomEnd",
43397
- font: 0.8,
43398
- px: 0.6,
43399
- py: 0.4,
43400
- type: "dark"
43401
- }, /*#__PURE__*/React.createElement(Button, {
43402
- onClick: handleShowFilter,
43403
- auto: true,
43404
- scale: 2 / 3,
43405
- px: 0.6,
43406
- iconRight: /*#__PURE__*/React.createElement(Filters, null)
43407
- })) : null, !disableViewColumn && /*#__PURE__*/React.createElement(Tooltip, {
43408
- text: "Columns",
43409
- placement: "bottomEnd",
43410
- font: 0.8,
43411
- px: 0.6,
43412
- py: 0.4,
43413
- type: "dark"
43414
- }, /*#__PURE__*/React.createElement(Popover, {
43415
- placement: "bottomEnd",
43416
- child: content
43417
- }, /*#__PURE__*/React.createElement(Button, {
43418
- onClick: function onClick() {},
43419
- auto: true,
43420
- scale: 2 / 3,
43421
- px: 0.6,
43422
- iconRight: /*#__PURE__*/React.createElement(Columns$1, null)
43423
- })))) : null))), children ? /*#__PURE__*/React.createElement("div", {
43424
- style: {
43425
- padding: '1rem'
43426
- }
43427
- }, children) : /*#__PURE__*/React.createElement("div", {
43428
- style: {
43429
- gap: 5,
43430
- display: 'flex',
43431
- flexDirection: sideMenu ? 'row' : 'column'
43432
- }
43433
- }, sideMenu && /*#__PURE__*/React.createElement(GridContainer, {
43434
- direction: "column",
43435
- style: {
43436
- width: '15rem',
43437
- padding: '0.5rem 0.7rem',
43438
- border: '1px solid #cfcfcf',
43439
- borderRadius: '5px'
43440
- }
43441
- }, sideMenu), /*#__PURE__*/React.createElement("div", {
43442
- onDragOver: onDragOver,
43443
- onDragEnter: onDragEnter,
43444
- onDragLeave: onDragLeave,
43445
- onDrop: onDrop,
43446
- id: TABLE_ID,
43447
- style: _objectSpread2({
43448
- overflow: 'auto',
43449
- position: 'relative',
43450
- height: 'calc(100vh - 8.5rem)',
43451
- maxWidth: 'calc(100vw - 1rem)',
43452
- width: sideMenu ? 'calc(100vw - 17.2rem)' : 'inherit !important'
43453
- }, style)
43454
- }, /*#__PURE__*/React.createElement(Table, {
43455
- stickyHeader: true,
43456
- dataLength: dataLength,
43457
- viewLength: viewLength,
43458
- onPageChange: function onPageChange(page, start, end) {
43459
- if (_onPageChange) {
43460
- _onPageChange(page, start, end);
43461
- }
43462
- },
43463
- onRow: onRowClick,
43464
- rowDraggable: rowDraggable,
43465
- showFilters: openFilter,
43466
- onSelected: function onSelected(selected) {
43467
- return setSelected(selected);
43468
- },
43469
- onFilters: onFilters,
43470
- data: rows,
43471
- style: {
43472
- borderCollapse: 'collapse',
43473
- overflow: 'auto'
43474
- }
43475
- }, COLUMNS.map(function (column, index) {
43476
- return /*#__PURE__*/React.createElement(Table.Column, {
43477
- options: column === null || column === undefined ? undefined : column.options,
43478
- fontSize: column === null || column === undefined ? undefined : column.fontSize,
43479
- key: "".concat(column.id, "-").concat(index),
43480
- prop: column.id,
43481
- label: column.name,
43482
- filter: column === null || column === undefined ? undefined : column.filter,
43483
- noWrap: column === null || column === undefined ? undefined : column.noWrap,
43484
- align: column === null || column === undefined ? undefined : column.align
43485
- });
43486
- })))));
43487
- }
43488
- var dataTable = /*#__PURE__*/React.memo(DataTable);
43489
-
43490
43511
  /* "use client" */
43491
43512
 
43492
43513
  var defaultContext$1 = {
@@ -46234,7 +46255,7 @@ exports.Code = Code;
46234
46255
  exports.Collapse = Collapse;
46235
46256
  exports.Container = GridContainer;
46236
46257
  exports.CssBaseline = MemoCssBaseline;
46237
- exports.DataTable = dataTable;
46258
+ exports.DataTable = DataTable$1;
46238
46259
  exports.Description = Description;
46239
46260
  exports.Display = Display;
46240
46261
  exports.Divider = Divider;