@helpdice/ui 1.2.8 → 1.3.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 +193 -182
- package/dist/table/index.js +7727 -6587
- package/esm/table/table-head.js +92 -2
- package/esm/table/table.js +3 -77
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -2,8 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
4
|
var reactDom = require('react-dom');
|
|
5
|
-
var Select$1 = require('components/select');
|
|
6
|
-
var Input$1 = require('components/input');
|
|
7
5
|
var require$$0 = require('react-is');
|
|
8
6
|
var isEqual = require('react-fast-compare');
|
|
9
7
|
|
|
@@ -24880,113 +24878,6 @@ var SpinnerComponent = function SpinnerComponent(_ref) {
|
|
|
24880
24878
|
SpinnerComponent.displayName = 'Spinner';
|
|
24881
24879
|
var Spinner = withScale(SpinnerComponent);
|
|
24882
24880
|
|
|
24883
|
-
var makeColgroup = function makeColgroup(width, columns) {
|
|
24884
|
-
var unsetWidthCount = columns.filter(function (c) {
|
|
24885
|
-
return !c.width;
|
|
24886
|
-
}).length;
|
|
24887
|
-
var customWidthTotal = columns.reduce(function (pre, current) {
|
|
24888
|
-
return current.width ? pre + current.width : pre;
|
|
24889
|
-
}, 0);
|
|
24890
|
-
var averageWidth = (width - customWidthTotal) / unsetWidthCount;
|
|
24891
|
-
if (averageWidth <= 0) return /*#__PURE__*/React.createElement("colgroup", null);
|
|
24892
|
-
return /*#__PURE__*/React.createElement("colgroup", null, columns.map(function (column, index) {
|
|
24893
|
-
return /*#__PURE__*/React.createElement("col", {
|
|
24894
|
-
key: "colgroup-".concat(index),
|
|
24895
|
-
width: column.width || averageWidth
|
|
24896
|
-
});
|
|
24897
|
-
}));
|
|
24898
|
-
};
|
|
24899
|
-
var TableHead = function TableHead(props) {
|
|
24900
|
-
var theme = useTheme();
|
|
24901
|
-
var _ref = props,
|
|
24902
|
-
columns = _ref.columns,
|
|
24903
|
-
width = _ref.width;
|
|
24904
|
-
var isScalableWidth = React.useMemo(function () {
|
|
24905
|
-
return columns.find(function (item) {
|
|
24906
|
-
return !!item.width;
|
|
24907
|
-
});
|
|
24908
|
-
}, [columns]);
|
|
24909
|
-
var colgroup = React.useMemo(function () {
|
|
24910
|
-
if (!isScalableWidth) return /*#__PURE__*/React.createElement("colgroup", null);
|
|
24911
|
-
return makeColgroup(width, columns);
|
|
24912
|
-
}, [isScalableWidth, width]);
|
|
24913
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, colgroup, /*#__PURE__*/React.createElement("thead", {
|
|
24914
|
-
className: _JSXStyle.dynamic([["134865897", [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]]])
|
|
24915
|
-
}, /*#__PURE__*/React.createElement("tr", {
|
|
24916
|
-
className: _JSXStyle.dynamic([["134865897", [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]]])
|
|
24917
|
-
}, columns.map(function (column, index) {
|
|
24918
|
-
return /*#__PURE__*/React.createElement("th", {
|
|
24919
|
-
style: {
|
|
24920
|
-
// textAlign: `${column?.align} !important`,
|
|
24921
|
-
// paddingLeft: '0.3rem',
|
|
24922
|
-
// paddingRight: '0.3rem',
|
|
24923
|
-
// color: `${column?.color}`,
|
|
24924
|
-
whiteSpace: column !== null && column !== undefined && column.noWrap ? 'nowrap' : 'normal'
|
|
24925
|
-
},
|
|
24926
|
-
key: "table-th-".concat(column.prop.toString(), "-").concat(index),
|
|
24927
|
-
"data-column": column.label,
|
|
24928
|
-
className: _JSXStyle.dynamic([["134865897", [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]]]) + " " + (column.className || "")
|
|
24929
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
24930
|
-
className: _JSXStyle.dynamic([["134865897", [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]]]) + " " + "thead-box"
|
|
24931
|
-
}, column.label, /*#__PURE__*/React.createElement("br", {
|
|
24932
|
-
className: _JSXStyle.dynamic([["134865897", [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]]])
|
|
24933
|
-
}), /*#__PURE__*/React.createElement("span", {
|
|
24934
|
-
style: {
|
|
24935
|
-
textAlign: 'center'
|
|
24936
|
-
},
|
|
24937
|
-
className: _JSXStyle.dynamic([["134865897", [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]]])
|
|
24938
|
-
}, column.text)));
|
|
24939
|
-
}))), /*#__PURE__*/React.createElement(_JSXStyle, {
|
|
24940
|
-
id: "134865897",
|
|
24941
|
-
dynamic: [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]
|
|
24942
|
-
}, "thead.__jsx-style-dynamic-selector{border-collapse:separate;border-spacing:0;font-size:inherit;}th.__jsx-style-dynamic-selector{padding:0 0.5em;font-size:calc(0.75 * var(--table-font-size));font-weight:normal;text-align:left;-webkit-letter-spacing:0;-moz-letter-spacing:0;-ms-letter-spacing:0;letter-spacing:0;vertical-align:middle;min-height:calc(2.5 * var(--table-font-size));color:".concat(theme.palette.accents_5, ";background:").concat(theme.palette.accents_1, ";border-bottom:1px solid ").concat(theme.palette.border, ";border-top:1px solid ").concat(theme.palette.border, ";border-radius:0;}th.__jsx-style-dynamic-selector:nth-child(1){border-bottom:1px solid ").concat(theme.palette.border, ";border-left:1px solid ").concat(theme.palette.border, ";border-top:1px solid ").concat(theme.palette.border, ";border-top-left-radius:").concat(theme.layout.radius, ";border-bottom-left-radius:").concat(theme.layout.radius, ";}th.__jsx-style-dynamic-selector:last-child{border-bottom:1px solid ").concat(theme.palette.border, ";border-right:1px solid ").concat(theme.palette.border, ";border-top:1px solid ").concat(theme.palette.border, ";border-top-right-radius:").concat(theme.layout.radius, ";border-bottom-right-radius:").concat(theme.layout.radius, ";}.thead-box.__jsx-style-dynamic-selector{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-align:center;min-height:calc(2.5 * var(--table-font-size));text-transform:uppercase;}")));
|
|
24943
|
-
};
|
|
24944
|
-
TableHead.displayName = 'TableHead';
|
|
24945
|
-
|
|
24946
|
-
var TableCell = function TableCell(_ref) {
|
|
24947
|
-
var columns = _ref.columns,
|
|
24948
|
-
row = _ref.row,
|
|
24949
|
-
rowIndex = _ref.rowIndex,
|
|
24950
|
-
emptyText = _ref.emptyText,
|
|
24951
|
-
onCellClick = _ref.onCellClick;
|
|
24952
|
-
/* eslint-disable react/jsx-no-useless-fragment */
|
|
24953
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, columns.map(function (column, index) {
|
|
24954
|
-
var currentRowValue = row[column.prop];
|
|
24955
|
-
var cellValue = currentRowValue || emptyText;
|
|
24956
|
-
var shouldBeRenderElement = column.renderHandler(currentRowValue, row, rowIndex);
|
|
24957
|
-
return /*#__PURE__*/React.createElement("td", {
|
|
24958
|
-
style: _objectSpread2({
|
|
24959
|
-
fontSize: "".concat(column === null || column === undefined ? undefined : column.fontSize),
|
|
24960
|
-
textAlign: "".concat(column === null || column === undefined ? undefined : column.align, " !important"),
|
|
24961
|
-
paddingLeft: '0.3rem',
|
|
24962
|
-
paddingRight: '0.3rem',
|
|
24963
|
-
color: "".concat(column === null || column === undefined ? undefined : column.color),
|
|
24964
|
-
whiteSpace: column !== null && column !== undefined && column.noWrap ? 'nowrap' : 'normal'
|
|
24965
|
-
}, currentRowValue === null || currentRowValue === undefined ? undefined : currentRowValue.style),
|
|
24966
|
-
"data-column": column.label,
|
|
24967
|
-
key: "row-td-".concat(index, "-").concat(column.prop.toString()),
|
|
24968
|
-
onClick: function onClick() {
|
|
24969
|
-
return onCellClick && onCellClick(currentRowValue, rowIndex, index);
|
|
24970
|
-
},
|
|
24971
|
-
className: column.className
|
|
24972
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
24973
|
-
className: "cell"
|
|
24974
|
-
}, shouldBeRenderElement ? shouldBeRenderElement : cellValue));
|
|
24975
|
-
}));
|
|
24976
|
-
/* eslint-enable */
|
|
24977
|
-
};
|
|
24978
|
-
|
|
24979
|
-
/* "use client" */
|
|
24980
|
-
|
|
24981
|
-
var defaultContext$2 = {
|
|
24982
|
-
columns: [],
|
|
24983
|
-
updateColumn: function updateColumn() {}
|
|
24984
|
-
};
|
|
24985
|
-
var TableContext = /*#__PURE__*/React.createContext(defaultContext$2);
|
|
24986
|
-
var useTableContext = function useTableContext() {
|
|
24987
|
-
return React.useContext(TableContext);
|
|
24988
|
-
};
|
|
24989
|
-
|
|
24990
24881
|
var lodash$1 = {exports: {}};
|
|
24991
24882
|
|
|
24992
24883
|
/**
|
|
@@ -42199,6 +42090,196 @@ function requireLodash () {
|
|
|
42199
42090
|
var lodashExports = requireLodash();
|
|
42200
42091
|
var _ = /*@__PURE__*/getDefaultExportFromCjs(lodashExports);
|
|
42201
42092
|
|
|
42093
|
+
var makeColgroup = function makeColgroup(width, columns) {
|
|
42094
|
+
var unsetWidthCount = columns.filter(function (c) {
|
|
42095
|
+
return !c.width;
|
|
42096
|
+
}).length;
|
|
42097
|
+
var customWidthTotal = columns.reduce(function (pre, current) {
|
|
42098
|
+
return current.width ? pre + current.width : pre;
|
|
42099
|
+
}, 0);
|
|
42100
|
+
var averageWidth = (width - customWidthTotal) / unsetWidthCount;
|
|
42101
|
+
if (averageWidth <= 0) return /*#__PURE__*/React.createElement("colgroup", null);
|
|
42102
|
+
return /*#__PURE__*/React.createElement("colgroup", null, columns.map(function (column, index) {
|
|
42103
|
+
return /*#__PURE__*/React.createElement("col", {
|
|
42104
|
+
key: "colgroup-".concat(index),
|
|
42105
|
+
width: column.width || averageWidth
|
|
42106
|
+
});
|
|
42107
|
+
}));
|
|
42108
|
+
};
|
|
42109
|
+
var TableHead = function TableHead(props) {
|
|
42110
|
+
var theme = useTheme();
|
|
42111
|
+
var _React$useState = React.useState({}),
|
|
42112
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
42113
|
+
filters = _React$useState2[0],
|
|
42114
|
+
setFilters = _React$useState2[1];
|
|
42115
|
+
var _ref = props,
|
|
42116
|
+
columns = _ref.columns,
|
|
42117
|
+
width = _ref.width,
|
|
42118
|
+
onFilters = _ref.onFilters,
|
|
42119
|
+
showFilters = _ref.showFilters;
|
|
42120
|
+
var isScalableWidth = React.useMemo(function () {
|
|
42121
|
+
return columns.find(function (item) {
|
|
42122
|
+
return !!item.width;
|
|
42123
|
+
});
|
|
42124
|
+
}, [columns]);
|
|
42125
|
+
var colgroup = React.useMemo(function () {
|
|
42126
|
+
if (!isScalableWidth) return /*#__PURE__*/React.createElement("colgroup", null);
|
|
42127
|
+
return makeColgroup(width, columns);
|
|
42128
|
+
}, [isScalableWidth, width]);
|
|
42129
|
+
var handleFilterChange = function handleFilterChange(name, value) {
|
|
42130
|
+
setFilters(function (prevFilters) {
|
|
42131
|
+
var updatedFilters = _objectSpread2(_objectSpread2({}, prevFilters), {}, _defineProperty$1({}, name, value));
|
|
42132
|
+
return updatedFilters;
|
|
42133
|
+
});
|
|
42134
|
+
};
|
|
42135
|
+
var applyFilters = function applyFilters() {
|
|
42136
|
+
if (onFilters) {
|
|
42137
|
+
onFilters(filters);
|
|
42138
|
+
}
|
|
42139
|
+
};
|
|
42140
|
+
var generateFilterInputs = function generateFilterInputs() {
|
|
42141
|
+
return columns.map(function (col) {
|
|
42142
|
+
var _String, _filters$filterName;
|
|
42143
|
+
var Header = col.label,
|
|
42144
|
+
accessor = col.filter,
|
|
42145
|
+
options = col.options;
|
|
42146
|
+
var filterName = (_String = String(col === null || col === undefined ? undefined : col.label)) === null || _String === undefined ? undefined : _String.replace(' ', '_').toLowerCase();
|
|
42147
|
+
var unq_accessor = _.uniqueId(filterName);
|
|
42148
|
+
return /*#__PURE__*/React.createElement("th", {
|
|
42149
|
+
style: {
|
|
42150
|
+
margin: '3px'
|
|
42151
|
+
},
|
|
42152
|
+
"data-column": Header,
|
|
42153
|
+
key: unq_accessor
|
|
42154
|
+
}, accessor === 'fixed' && /*#__PURE__*/React.createElement(Select, {
|
|
42155
|
+
key: unq_accessor,
|
|
42156
|
+
name: filterName,
|
|
42157
|
+
value: (_filters$filterName = filters[filterName]) !== null && _filters$filterName !== undefined ? _filters$filterName : 'All',
|
|
42158
|
+
onChange: function onChange(newValue) {
|
|
42159
|
+
return handleFilterChange(filterName, newValue);
|
|
42160
|
+
}
|
|
42161
|
+
}, /*#__PURE__*/React.createElement(Select.Option, {
|
|
42162
|
+
value: "All"
|
|
42163
|
+
}, "All ", Header), options ? options.map(function (option) {
|
|
42164
|
+
return /*#__PURE__*/React.createElement(Select.Option, {
|
|
42165
|
+
value: option.value
|
|
42166
|
+
}, option.name);
|
|
42167
|
+
}) : null), accessor === 'date' && /*#__PURE__*/React.createElement(Input, {
|
|
42168
|
+
id: "filter-date-".concat(filterName),
|
|
42169
|
+
htmlType: "date",
|
|
42170
|
+
name: filterName,
|
|
42171
|
+
value: filters[filterName],
|
|
42172
|
+
onChange: function onChange(e) {
|
|
42173
|
+
return handleFilterChange(filterName, e.target.value);
|
|
42174
|
+
}
|
|
42175
|
+
}), accessor === 'search' && /*#__PURE__*/React.createElement(Input, {
|
|
42176
|
+
id: "filter-search-".concat(filterName),
|
|
42177
|
+
htmlType: "text",
|
|
42178
|
+
autoComplete: "off"
|
|
42179
|
+
// ref={filterRefs.current[filterName]} // Dynamically set ref}
|
|
42180
|
+
,
|
|
42181
|
+
name: filterName,
|
|
42182
|
+
style: {
|
|
42183
|
+
height: 30,
|
|
42184
|
+
minWidth: 160
|
|
42185
|
+
},
|
|
42186
|
+
value: filters[filterName],
|
|
42187
|
+
onChange: function onChange(e) {
|
|
42188
|
+
return handleFilterChange(filterName, e.target.value);
|
|
42189
|
+
},
|
|
42190
|
+
placeholder: "Search...",
|
|
42191
|
+
fullWidth: true
|
|
42192
|
+
}));
|
|
42193
|
+
});
|
|
42194
|
+
};
|
|
42195
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, colgroup, /*#__PURE__*/React.createElement("thead", {
|
|
42196
|
+
className: _JSXStyle.dynamic([["134865897", [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]]])
|
|
42197
|
+
}, /*#__PURE__*/React.createElement("tr", {
|
|
42198
|
+
className: _JSXStyle.dynamic([["134865897", [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]]])
|
|
42199
|
+
}, columns.map(function (column, index) {
|
|
42200
|
+
return /*#__PURE__*/React.createElement("th", {
|
|
42201
|
+
style: {
|
|
42202
|
+
// textAlign: `${column?.align} !important`,
|
|
42203
|
+
// paddingLeft: '0.3rem',
|
|
42204
|
+
// paddingRight: '0.3rem',
|
|
42205
|
+
// color: `${column?.color}`,
|
|
42206
|
+
whiteSpace: column !== null && column !== undefined && column.noWrap ? 'nowrap' : 'normal'
|
|
42207
|
+
},
|
|
42208
|
+
key: "table-th-".concat(column.prop.toString(), "-").concat(index),
|
|
42209
|
+
"data-column": column.label,
|
|
42210
|
+
className: _JSXStyle.dynamic([["134865897", [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]]]) + " " + (column.className || "")
|
|
42211
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
42212
|
+
className: _JSXStyle.dynamic([["134865897", [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]]]) + " " + "thead-box"
|
|
42213
|
+
}, column.label, /*#__PURE__*/React.createElement("br", {
|
|
42214
|
+
className: _JSXStyle.dynamic([["134865897", [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]]])
|
|
42215
|
+
}), /*#__PURE__*/React.createElement("span", {
|
|
42216
|
+
style: {
|
|
42217
|
+
textAlign: 'center'
|
|
42218
|
+
},
|
|
42219
|
+
className: _JSXStyle.dynamic([["134865897", [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]]])
|
|
42220
|
+
}, column.text)));
|
|
42221
|
+
}), /*#__PURE__*/React.createElement("th", {
|
|
42222
|
+
className: _JSXStyle.dynamic([["134865897", [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]]])
|
|
42223
|
+
})), showFilters && /*#__PURE__*/React.createElement("tr", {
|
|
42224
|
+
className: _JSXStyle.dynamic([["134865897", [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]]])
|
|
42225
|
+
}, generateFilterInputs(), /*#__PURE__*/React.createElement("th", {
|
|
42226
|
+
className: _JSXStyle.dynamic([["134865897", [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]]])
|
|
42227
|
+
}, /*#__PURE__*/React.createElement(Button, {
|
|
42228
|
+
onClick: applyFilters,
|
|
42229
|
+
auto: true,
|
|
42230
|
+
px: 0.6,
|
|
42231
|
+
scale: 2 / 3
|
|
42232
|
+
}, "Apply")))), /*#__PURE__*/React.createElement(_JSXStyle, {
|
|
42233
|
+
id: "134865897",
|
|
42234
|
+
dynamic: [theme.palette.accents_5, theme.palette.accents_1, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius, theme.palette.border, theme.palette.border, theme.palette.border, theme.layout.radius, theme.layout.radius]
|
|
42235
|
+
}, "thead.__jsx-style-dynamic-selector{border-collapse:separate;border-spacing:0;font-size:inherit;}th.__jsx-style-dynamic-selector{padding:0 0.5em;font-size:calc(0.75 * var(--table-font-size));font-weight:normal;text-align:left;-webkit-letter-spacing:0;-moz-letter-spacing:0;-ms-letter-spacing:0;letter-spacing:0;vertical-align:middle;min-height:calc(2.5 * var(--table-font-size));color:".concat(theme.palette.accents_5, ";background:").concat(theme.palette.accents_1, ";border-bottom:1px solid ").concat(theme.palette.border, ";border-top:1px solid ").concat(theme.palette.border, ";border-radius:0;}th.__jsx-style-dynamic-selector:nth-child(1){border-bottom:1px solid ").concat(theme.palette.border, ";border-left:1px solid ").concat(theme.palette.border, ";border-top:1px solid ").concat(theme.palette.border, ";border-top-left-radius:").concat(theme.layout.radius, ";border-bottom-left-radius:").concat(theme.layout.radius, ";}th.__jsx-style-dynamic-selector:last-child{border-bottom:1px solid ").concat(theme.palette.border, ";border-right:1px solid ").concat(theme.palette.border, ";border-top:1px solid ").concat(theme.palette.border, ";border-top-right-radius:").concat(theme.layout.radius, ";border-bottom-right-radius:").concat(theme.layout.radius, ";}.thead-box.__jsx-style-dynamic-selector{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-align:center;min-height:calc(2.5 * var(--table-font-size));text-transform:uppercase;}")));
|
|
42236
|
+
};
|
|
42237
|
+
TableHead.displayName = 'TableHead';
|
|
42238
|
+
|
|
42239
|
+
var TableCell = function TableCell(_ref) {
|
|
42240
|
+
var columns = _ref.columns,
|
|
42241
|
+
row = _ref.row,
|
|
42242
|
+
rowIndex = _ref.rowIndex,
|
|
42243
|
+
emptyText = _ref.emptyText,
|
|
42244
|
+
onCellClick = _ref.onCellClick;
|
|
42245
|
+
/* eslint-disable react/jsx-no-useless-fragment */
|
|
42246
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, columns.map(function (column, index) {
|
|
42247
|
+
var currentRowValue = row[column.prop];
|
|
42248
|
+
var cellValue = currentRowValue || emptyText;
|
|
42249
|
+
var shouldBeRenderElement = column.renderHandler(currentRowValue, row, rowIndex);
|
|
42250
|
+
return /*#__PURE__*/React.createElement("td", {
|
|
42251
|
+
style: _objectSpread2({
|
|
42252
|
+
fontSize: "".concat(column === null || column === undefined ? undefined : column.fontSize),
|
|
42253
|
+
textAlign: "".concat(column === null || column === undefined ? undefined : column.align, " !important"),
|
|
42254
|
+
paddingLeft: '0.3rem',
|
|
42255
|
+
paddingRight: '0.3rem',
|
|
42256
|
+
color: "".concat(column === null || column === undefined ? undefined : column.color),
|
|
42257
|
+
whiteSpace: column !== null && column !== undefined && column.noWrap ? 'nowrap' : 'normal'
|
|
42258
|
+
}, currentRowValue === null || currentRowValue === undefined ? undefined : currentRowValue.style),
|
|
42259
|
+
"data-column": column.label,
|
|
42260
|
+
key: "row-td-".concat(index, "-").concat(column.prop.toString()),
|
|
42261
|
+
onClick: function onClick() {
|
|
42262
|
+
return onCellClick && onCellClick(currentRowValue, rowIndex, index);
|
|
42263
|
+
},
|
|
42264
|
+
className: column.className
|
|
42265
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
42266
|
+
className: "cell"
|
|
42267
|
+
}, shouldBeRenderElement ? shouldBeRenderElement : cellValue));
|
|
42268
|
+
}));
|
|
42269
|
+
/* eslint-enable */
|
|
42270
|
+
};
|
|
42271
|
+
|
|
42272
|
+
/* "use client" */
|
|
42273
|
+
|
|
42274
|
+
var defaultContext$2 = {
|
|
42275
|
+
columns: [],
|
|
42276
|
+
updateColumn: function updateColumn() {}
|
|
42277
|
+
};
|
|
42278
|
+
var TableContext = /*#__PURE__*/React.createContext(defaultContext$2);
|
|
42279
|
+
var useTableContext = function useTableContext() {
|
|
42280
|
+
return React.useContext(TableContext);
|
|
42281
|
+
};
|
|
42282
|
+
|
|
42202
42283
|
var TableBody = function TableBody(_ref) {
|
|
42203
42284
|
var data = _ref.data,
|
|
42204
42285
|
emptyText = _ref.emptyText,
|
|
@@ -42453,10 +42534,6 @@ function TableComponent(tableProps) {
|
|
|
42453
42534
|
updateColumn: updateColumn
|
|
42454
42535
|
};
|
|
42455
42536
|
}, [columns]);
|
|
42456
|
-
var _React$useState = React.useState({}),
|
|
42457
|
-
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
42458
|
-
filters = _React$useState2[0],
|
|
42459
|
-
setFilters = _React$useState2[1];
|
|
42460
42537
|
React.useEffect(function () {
|
|
42461
42538
|
if (typeof customData === 'undefined') return;
|
|
42462
42539
|
setData(customData);
|
|
@@ -42464,82 +42541,16 @@ function TableComponent(tableProps) {
|
|
|
42464
42541
|
useResize(function () {
|
|
42465
42542
|
return updateShape();
|
|
42466
42543
|
});
|
|
42467
|
-
var handleFilterChange = function handleFilterChange(name, value) {
|
|
42468
|
-
setFilters(function (prevFilters) {
|
|
42469
|
-
var updatedFilters = _objectSpread2(_objectSpread2({}, prevFilters), {}, _defineProperty$1({}, name, value));
|
|
42470
|
-
// Call onFiltersChange to propagate filter changes to the parent
|
|
42471
|
-
if (onFilters) {
|
|
42472
|
-
onFilters(updatedFilters);
|
|
42473
|
-
}
|
|
42474
|
-
return updatedFilters;
|
|
42475
|
-
});
|
|
42476
|
-
};
|
|
42477
|
-
var generateFilterInputs = function generateFilterInputs() {
|
|
42478
|
-
return columns.map(function (col) {
|
|
42479
|
-
var _String, _filters$filterName;
|
|
42480
|
-
var Header = col.label,
|
|
42481
|
-
accessor = col.filter,
|
|
42482
|
-
options = col.options;
|
|
42483
|
-
var filterName = (_String = String(col === null || col === undefined ? undefined : col.label)) === null || _String === undefined ? undefined : _String.replace(' ', '_').toLowerCase();
|
|
42484
|
-
var unq_accessor = _.uniqueId(filterName);
|
|
42485
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
42486
|
-
style: {
|
|
42487
|
-
margin: '3px'
|
|
42488
|
-
},
|
|
42489
|
-
"data-column": Header,
|
|
42490
|
-
key: unq_accessor
|
|
42491
|
-
}, accessor === 'fixed' && /*#__PURE__*/React.createElement(Select$1, {
|
|
42492
|
-
key: unq_accessor,
|
|
42493
|
-
name: filterName,
|
|
42494
|
-
value: (_filters$filterName = filters[filterName]) !== null && _filters$filterName !== undefined ? _filters$filterName : 'All',
|
|
42495
|
-
onChange: function onChange(newValue) {
|
|
42496
|
-
return handleFilterChange(filterName, newValue);
|
|
42497
|
-
}
|
|
42498
|
-
}, /*#__PURE__*/React.createElement(Select$1.Option, {
|
|
42499
|
-
value: "All"
|
|
42500
|
-
}, "All ", Header), options ? options.map(function (option) {
|
|
42501
|
-
return /*#__PURE__*/React.createElement(Select$1.Option, {
|
|
42502
|
-
value: option.value
|
|
42503
|
-
}, option.name);
|
|
42504
|
-
}) : null), accessor === 'date' && /*#__PURE__*/React.createElement(Input$1, {
|
|
42505
|
-
id: "filter-date-".concat(filterName),
|
|
42506
|
-
htmlType: "date",
|
|
42507
|
-
name: filterName,
|
|
42508
|
-
value: filters[filterName],
|
|
42509
|
-
onChange: function onChange(e) {
|
|
42510
|
-
return handleFilterChange(filterName, e.target.value);
|
|
42511
|
-
}
|
|
42512
|
-
}), accessor === 'search' && /*#__PURE__*/React.createElement(Input$1, {
|
|
42513
|
-
id: "filter-search-".concat(filterName),
|
|
42514
|
-
htmlType: "text",
|
|
42515
|
-
autoComplete: "off",
|
|
42516
|
-
name: filterName,
|
|
42517
|
-
style: {
|
|
42518
|
-
height: 30,
|
|
42519
|
-
minWidth: 160
|
|
42520
|
-
},
|
|
42521
|
-
value: filters[filterName],
|
|
42522
|
-
onChange: function onChange(e) {
|
|
42523
|
-
return handleFilterChange(filterName, e.target.value);
|
|
42524
|
-
},
|
|
42525
|
-
placeholder: "Search...",
|
|
42526
|
-
fullWidth: true
|
|
42527
|
-
}));
|
|
42528
|
-
});
|
|
42529
|
-
};
|
|
42530
42544
|
return /*#__PURE__*/React.createElement(TableContext.Provider, {
|
|
42531
42545
|
value: contextValue
|
|
42532
|
-
},
|
|
42533
|
-
style: {
|
|
42534
|
-
display: 'flex',
|
|
42535
|
-
gap: 6
|
|
42536
|
-
}
|
|
42537
|
-
}, generateFilterInputs()), /*#__PURE__*/React.createElement("table", _extends({
|
|
42546
|
+
}, /*#__PURE__*/React.createElement("table", _extends({
|
|
42538
42547
|
ref: ref
|
|
42539
42548
|
}, props, {
|
|
42540
42549
|
className: _JSXStyle.dynamic([["2132340556", [SCALES.font(1), SCALES.width(1, '100%'), SCALES.height(1, 'auto'), SCALES.pt(0), SCALES.pr(0), SCALES.pb(0), SCALES.pl(0), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0)]]]) + " " + (props && props.className != null && props.className || className || "")
|
|
42541
42550
|
}), /*#__PURE__*/React.createElement(TableHead, {
|
|
42542
42551
|
columns: columns,
|
|
42552
|
+
onFilters: onFilters,
|
|
42553
|
+
showFilters: showFilters,
|
|
42543
42554
|
width: width
|
|
42544
42555
|
}), /*#__PURE__*/React.createElement(TableBody, {
|
|
42545
42556
|
data: data,
|