@helpdice/ui 1.2.9 → 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 CHANGED
@@ -24878,113 +24878,6 @@ var SpinnerComponent = function SpinnerComponent(_ref) {
24878
24878
  SpinnerComponent.displayName = 'Spinner';
24879
24879
  var Spinner = withScale(SpinnerComponent);
24880
24880
 
24881
- var makeColgroup = function makeColgroup(width, columns) {
24882
- var unsetWidthCount = columns.filter(function (c) {
24883
- return !c.width;
24884
- }).length;
24885
- var customWidthTotal = columns.reduce(function (pre, current) {
24886
- return current.width ? pre + current.width : pre;
24887
- }, 0);
24888
- var averageWidth = (width - customWidthTotal) / unsetWidthCount;
24889
- if (averageWidth <= 0) return /*#__PURE__*/React.createElement("colgroup", null);
24890
- return /*#__PURE__*/React.createElement("colgroup", null, columns.map(function (column, index) {
24891
- return /*#__PURE__*/React.createElement("col", {
24892
- key: "colgroup-".concat(index),
24893
- width: column.width || averageWidth
24894
- });
24895
- }));
24896
- };
24897
- var TableHead = function TableHead(props) {
24898
- var theme = useTheme();
24899
- var _ref = props,
24900
- columns = _ref.columns,
24901
- width = _ref.width;
24902
- var isScalableWidth = React.useMemo(function () {
24903
- return columns.find(function (item) {
24904
- return !!item.width;
24905
- });
24906
- }, [columns]);
24907
- var colgroup = React.useMemo(function () {
24908
- if (!isScalableWidth) return /*#__PURE__*/React.createElement("colgroup", null);
24909
- return makeColgroup(width, columns);
24910
- }, [isScalableWidth, width]);
24911
- return /*#__PURE__*/React.createElement(React.Fragment, null, colgroup, /*#__PURE__*/React.createElement("thead", {
24912
- 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]]])
24913
- }, /*#__PURE__*/React.createElement("tr", {
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
- }, columns.map(function (column, index) {
24916
- return /*#__PURE__*/React.createElement("th", {
24917
- style: {
24918
- // textAlign: `${column?.align} !important`,
24919
- // paddingLeft: '0.3rem',
24920
- // paddingRight: '0.3rem',
24921
- // color: `${column?.color}`,
24922
- whiteSpace: column !== null && column !== undefined && column.noWrap ? 'nowrap' : 'normal'
24923
- },
24924
- key: "table-th-".concat(column.prop.toString(), "-").concat(index),
24925
- "data-column": column.label,
24926
- 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 || "")
24927
- }, /*#__PURE__*/React.createElement("div", {
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]]]) + " " + "thead-box"
24929
- }, column.label, /*#__PURE__*/React.createElement("br", {
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]]])
24931
- }), /*#__PURE__*/React.createElement("span", {
24932
- style: {
24933
- textAlign: 'center'
24934
- },
24935
- 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]]])
24936
- }, column.text)));
24937
- }))), /*#__PURE__*/React.createElement(_JSXStyle, {
24938
- id: "134865897",
24939
- 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]
24940
- }, "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;}")));
24941
- };
24942
- TableHead.displayName = 'TableHead';
24943
-
24944
- var TableCell = function TableCell(_ref) {
24945
- var columns = _ref.columns,
24946
- row = _ref.row,
24947
- rowIndex = _ref.rowIndex,
24948
- emptyText = _ref.emptyText,
24949
- onCellClick = _ref.onCellClick;
24950
- /* eslint-disable react/jsx-no-useless-fragment */
24951
- return /*#__PURE__*/React.createElement(React.Fragment, null, columns.map(function (column, index) {
24952
- var currentRowValue = row[column.prop];
24953
- var cellValue = currentRowValue || emptyText;
24954
- var shouldBeRenderElement = column.renderHandler(currentRowValue, row, rowIndex);
24955
- return /*#__PURE__*/React.createElement("td", {
24956
- style: _objectSpread2({
24957
- fontSize: "".concat(column === null || column === undefined ? undefined : column.fontSize),
24958
- textAlign: "".concat(column === null || column === undefined ? undefined : column.align, " !important"),
24959
- paddingLeft: '0.3rem',
24960
- paddingRight: '0.3rem',
24961
- color: "".concat(column === null || column === undefined ? undefined : column.color),
24962
- whiteSpace: column !== null && column !== undefined && column.noWrap ? 'nowrap' : 'normal'
24963
- }, currentRowValue === null || currentRowValue === undefined ? undefined : currentRowValue.style),
24964
- "data-column": column.label,
24965
- key: "row-td-".concat(index, "-").concat(column.prop.toString()),
24966
- onClick: function onClick() {
24967
- return onCellClick && onCellClick(currentRowValue, rowIndex, index);
24968
- },
24969
- className: column.className
24970
- }, /*#__PURE__*/React.createElement("div", {
24971
- className: "cell"
24972
- }, shouldBeRenderElement ? shouldBeRenderElement : cellValue));
24973
- }));
24974
- /* eslint-enable */
24975
- };
24976
-
24977
- /* "use client" */
24978
-
24979
- var defaultContext$2 = {
24980
- columns: [],
24981
- updateColumn: function updateColumn() {}
24982
- };
24983
- var TableContext = /*#__PURE__*/React.createContext(defaultContext$2);
24984
- var useTableContext = function useTableContext() {
24985
- return React.useContext(TableContext);
24986
- };
24987
-
24988
24881
  var lodash$1 = {exports: {}};
24989
24882
 
24990
24883
  /**
@@ -42197,6 +42090,196 @@ function requireLodash () {
42197
42090
  var lodashExports = requireLodash();
42198
42091
  var _ = /*@__PURE__*/getDefaultExportFromCjs(lodashExports);
42199
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
+
42200
42283
  var TableBody = function TableBody(_ref) {
42201
42284
  var data = _ref.data,
42202
42285
  emptyText = _ref.emptyText,
@@ -42451,10 +42534,6 @@ function TableComponent(tableProps) {
42451
42534
  updateColumn: updateColumn
42452
42535
  };
42453
42536
  }, [columns]);
42454
- var _React$useState = React.useState({}),
42455
- _React$useState2 = _slicedToArray(_React$useState, 2),
42456
- filters = _React$useState2[0],
42457
- setFilters = _React$useState2[1];
42458
42537
  React.useEffect(function () {
42459
42538
  if (typeof customData === 'undefined') return;
42460
42539
  setData(customData);
@@ -42462,75 +42541,7 @@ function TableComponent(tableProps) {
42462
42541
  useResize(function () {
42463
42542
  return updateShape();
42464
42543
  });
42465
- var handleFilterChange = function handleFilterChange(name, value) {
42466
- setFilters(function (prevFilters) {
42467
- var updatedFilters = _objectSpread2(_objectSpread2({}, prevFilters), {}, _defineProperty$1({}, name, value));
42468
- // Call onFiltersChange to propagate filter changes to the parent
42469
- if (onFilters) {
42470
- onFilters(updatedFilters);
42471
- }
42472
- return updatedFilters;
42473
- });
42474
- };
42475
- var generateFilterInputs = function generateFilterInputs() {
42476
- return columns.map(function (col) {
42477
- var _String, _filters$filterName;
42478
- var Header = col.label,
42479
- accessor = col.filter,
42480
- options = col.options;
42481
- var filterName = (_String = String(col === null || col === undefined ? undefined : col.label)) === null || _String === undefined ? undefined : _String.replace(' ', '_').toLowerCase();
42482
- var unq_accessor = _.uniqueId(filterName);
42483
- return /*#__PURE__*/React.createElement("div", {
42484
- style: {
42485
- margin: '3px'
42486
- },
42487
- "data-column": Header,
42488
- key: unq_accessor
42489
- }, accessor === 'fixed' && /*#__PURE__*/React.createElement(Select, {
42490
- key: unq_accessor,
42491
- name: filterName,
42492
- value: (_filters$filterName = filters[filterName]) !== null && _filters$filterName !== undefined ? _filters$filterName : 'All',
42493
- onChange: function onChange(newValue) {
42494
- return handleFilterChange(filterName, newValue);
42495
- }
42496
- }, /*#__PURE__*/React.createElement(Select.Option, {
42497
- value: "All"
42498
- }, "All ", Header), options ? options.map(function (option) {
42499
- return /*#__PURE__*/React.createElement(Select.Option, {
42500
- value: option.value
42501
- }, option.name);
42502
- }) : null), accessor === 'date' && /*#__PURE__*/React.createElement(Input, {
42503
- id: "filter-date-".concat(filterName),
42504
- htmlType: "date",
42505
- name: filterName,
42506
- value: filters[filterName],
42507
- onChange: function onChange(e) {
42508
- return handleFilterChange(filterName, e.target.value);
42509
- }
42510
- }), accessor === 'search' && /*#__PURE__*/React.createElement(Input, {
42511
- id: "filter-search-".concat(filterName),
42512
- htmlType: "text",
42513
- autoComplete: "off",
42514
- name: filterName,
42515
- style: {
42516
- height: 30,
42517
- minWidth: 160
42518
- },
42519
- value: filters[filterName],
42520
- onChange: function onChange(e) {
42521
- return handleFilterChange(filterName, e.target.value);
42522
- },
42523
- placeholder: "Search...",
42524
- fullWidth: true
42525
- }));
42526
- });
42527
- };
42528
- return /*#__PURE__*/React.createElement("div", null, showFilters && /*#__PURE__*/React.createElement("div", {
42529
- style: {
42530
- display: 'flex',
42531
- gap: 6
42532
- }
42533
- }, generateFilterInputs()), /*#__PURE__*/React.createElement(TableContext.Provider, {
42544
+ return /*#__PURE__*/React.createElement(TableContext.Provider, {
42534
42545
  value: contextValue
42535
42546
  }, /*#__PURE__*/React.createElement("table", _extends({
42536
42547
  ref: ref
@@ -42538,6 +42549,8 @@ function TableComponent(tableProps) {
42538
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 || "")
42539
42550
  }), /*#__PURE__*/React.createElement(TableHead, {
42540
42551
  columns: columns,
42552
+ onFilters: onFilters,
42553
+ showFilters: showFilters,
42541
42554
  width: width
42542
42555
  }), /*#__PURE__*/React.createElement(TableBody, {
42543
42556
  data: data,
@@ -42552,7 +42565,7 @@ function TableComponent(tableProps) {
42552
42565
  }), children, /*#__PURE__*/React.createElement(_JSXStyle, {
42553
42566
  id: "2132340556",
42554
42567
  dynamic: [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)]
42555
- }, "table.__jsx-style-dynamic-selector{border-collapse:separate;border-spacing:0;--table-font-size:".concat(SCALES.font(1), ";font-size:var(--table-font-size);width:").concat(SCALES.width(1, '100%'), ";height:").concat(SCALES.height(1, 'auto'), ";padding:").concat(SCALES.pt(0), " ").concat(SCALES.pr(0), " ").concat(SCALES.pb(0), " ").concat(SCALES.pl(0), ";margin:").concat(SCALES.mt(0), " ").concat(SCALES.mr(0), " ").concat(SCALES.mb(0), " ").concat(SCALES.ml(0), ";}")))));
42568
+ }, "table.__jsx-style-dynamic-selector{border-collapse:separate;border-spacing:0;--table-font-size:".concat(SCALES.font(1), ";font-size:var(--table-font-size);width:").concat(SCALES.width(1, '100%'), ";height:").concat(SCALES.height(1, 'auto'), ";padding:").concat(SCALES.pt(0), " ").concat(SCALES.pr(0), " ").concat(SCALES.pb(0), " ").concat(SCALES.pl(0), ";margin:").concat(SCALES.mt(0), " ").concat(SCALES.mr(0), " ").concat(SCALES.mb(0), " ").concat(SCALES.ml(0), ";}"))));
42556
42569
  }
42557
42570
  TableComponent.displayName = 'Table';
42558
42571
  TableComponent.Column = TableColumn;