komarovalexander / react-filter-control

The react UI component for building complex filter criteria

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GitHub license Build Status Coverage Status

React Filter Control

The React component for building the composite filter criteria

Demo (JS) | Demo (TS)

Together With Data Table

Overview

Filter Control

Installation

npm

npm install react-filter-control

yarn

yarn add react-filter-control

Usage

A basic example

import React from "react";
import ReactDOM from "react-dom";
import FilterControl from "react-filter-control";
import { fields, filterValue } from "./data.js";

const handleFilterValueChange = filterValue => {
  // ...
};

const App = () => {
  return (
    <FilterControl
      filterValue={filterValue}
      fields={fields}
      onFilterValueChanged={handleFilterValueChange}
    />
  );
};

ReactDOM.render(<App />, document.querySelector("#root"));

Open Example in CodeSandbox

API

FilterControl

Properties

Name Type Description
fields Array.<Field> The fields settings
filterValue FilterValue The filterValue settings
groups Array.<Group> The groups settings
onFilterValueChanged event The filter value changed handler

FilterValue : Object

Properties

Name Type Description
groupName string Group name
items Array.<(FilterValueGroup|FilterValueItem)> Items in group

FilterValueGroup : Object

Properties

Name Type Description
key key Item key
groupName string Group name
items Array.<(FilterValueGroup|FilterValueItem)> Items in group

FilterValueItem : Object

Properties

Name Type Description
key key Item key
field string Field
operator string Operator
value any Value

Field : Object

Properties

Name Type Description
name string Field name
caption string Field caption
operators Array.<Operator> Field operators

Group : Object

Properties

Name Type Description
name string Group name
caption string Group caption

Operator : Object

Properties

Name Type Description
name string Operator name
caption string Operator caption

License

This project is licensed under the terms of the MIT license.

About

The react UI component for building complex filter criteria

License:MIT License


Languages

Language:JavaScript 90.9%Language:CSS 4.8%Language:HTML 4.3%