@popmenu/table 0.73.0 → 0.74.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.
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ export declare const ToggleFilter: (props: {
3
+ columnId: string;
4
+ }) => JSX.Element;
@@ -0,0 +1 @@
1
+ export { ToggleFilter } from './ToggleFilter';
package/build/index.es.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import React__default, { createElement, forwardRef, createContext, useContext, useState, useRef, isValidElement } from 'react';
3
- import { makeStyles, Typography as Typography$2, Link as Link$2, Paper as Paper$2, Box, FormControl, InputLabel, Select, TextField, Popover, ButtonBase, InputAdornment, useTheme as useTheme$1 } from '@material-ui/core';
3
+ import { makeStyles, Typography as Typography$2, Link as Link$2, Paper as Paper$2, Box, FormControl, InputLabel, Select, FormControlLabel as FormControlLabel$1, Switch as Switch$2, TextField, Popover, ButtonBase, InputAdornment, useTheme as useTheme$1 } from '@material-ui/core';
4
4
  import { Pagination } from '@material-ui/lab';
5
5
  import { useReactTable, getCoreRowModel, getSortedRowModel, getFilteredRowModel, getPaginationRowModel, flexRender } from '@tanstack/react-table';
6
6
  import CommonAlert from '@material-ui/lab/Alert';
@@ -1296,12 +1296,27 @@ var SelectFilter = function (props) {
1296
1296
  })))));
1297
1297
  };
1298
1298
 
1299
+ var ToggleFilter = function (props) {
1300
+ var table = useContext(TableContext);
1301
+ var columnId = props.columnId;
1302
+ var column = table.getColumn(columnId);
1303
+ var meta = column.columnDef.meta;
1304
+ var filterName = meta.filter.name;
1305
+ var value = column.getFilterValue();
1306
+ var handleChange = function (event, checked) {
1307
+ event.stopPropagation();
1308
+ column.setFilterValue(checked);
1309
+ };
1310
+ return React__default.createElement(FormControlLabel$1, { control: React__default.createElement(Switch$2, { checked: value, onChange: handleChange }), label: filterName });
1311
+ };
1312
+
1299
1313
  var FilterControl = function (props) {
1300
1314
  var input = props.input, columnFilter = __rest$3(props, ["input"]);
1301
1315
  var inputDictionary = {
1302
1316
  text: TextField,
1303
1317
  select: SelectFilter,
1304
1318
  'multi-select': SelectFilter,
1319
+ toggle: ToggleFilter,
1305
1320
  };
1306
1321
  var propsDictionary = {
1307
1322
  select: { multiple: false },