message: fix(memorize filter in state): memorize filter in state
  memorize filter in state
diff: @@ -40,6 +40,9 @@ type TableState = {
  selectedCells: Set<string>;
  searchKeyword: string;
  filteredRows: ParentRow[];
  + filters: {
  + [key: string]: (string | number)[];
  + };
  };
  function getCellHash(cell: Cell) {
  @@ -55,6 +58,7 @@ class TableVis extends React.PureComponent<InternalTableProps, TableState> {
  selectedCells: new Set(),
  searchKeyword: '',
  filteredRows: [],
  + filters: props.filters,
  };
  }
  @@ -92,7 +96,7 @@ class TableVis extends React.PureComponent<InternalTableProps, TableState> {
  const content = Object.values(row.data)
  .join('|')
  .toLowerCase();
  - return content.indexOf(value) >= 0;
  + return content.indexOf(value.toLowerCase()) >= 0;
  });
  this.setState({
  searchKeyword: value,
  @@ -106,7 +110,8 @@ class TableVis extends React.PureComponent<InternalTableProps, TableState> {
  TableState
  > = (props: InternalTableProps, state: TableState) => {
  const { filters } = props;
  - const { selectedCells } = state;
  + const { selectedCells, filters: prevFilters } = state;
  + if (prevFilters !== filters) {
  const newSelectedCells = new Set(Array.from(selectedCells));
  Object.keys(filters).forEach(key => {
  filters[key].forEach(value => {
  @@ -122,6 +127,8 @@ class TableVis extends React.PureComponent<InternalTableProps, TableState> {
  ...state,
  selectedCells: newSelectedCells,
  };
  + }
  + return state;
  };
  render() {
  