@react-querybuilder/material
TypeScript icon, indicating that this package has built-in type declarations

7.2.0 • Public • Published

@react-querybuilder/material

Official react-querybuilder components for MUI/Material Design.

To see them in action, check out the react-querybuilder demo or load the example in CodeSandbox.

Full documentation

Installation

npm i react-querybuilder @react-querybuilder/material @mui/icons-material @mui/material
# OR yarn add / pnpm add / bun add

Usage

To render MUI-compatible components in the query builder, wrap the <QueryBuilder /> element in <QueryBuilderMaterial />.

import { createTheme, ThemeProvider } from '@mui/material/styles';
import { QueryBuilderMaterial } from '@react-querybuilder/material';
import { QueryBuilder, RuleGroupType } from 'react-querybuilder';

const muiTheme = createTheme();

const fields = [
  { name: 'firstName', label: 'First Name' },
  { name: 'lastName', label: 'Last Name' },
];

const App = () => {
  const [query, setQuery] = useState<RuleGroupType>({ combinator: 'and', rules: [] });

  return (
    <ThemeProvider theme={muiTheme}>
      <QueryBuilderMaterial>
        <QueryBuilder fields={fields} query={query} onQueryChange={setQuery} />
      </QueryBuilderMaterial>
    </ThemeProvider>
  );
};

Notes

  • This package exports materialControlElements which can be assigned directly to the controlElements prop on <QueryBuilder /> (and also exports each component individually), but wrapping <QueryBuilder /> in <QueryBuilderMaterial /> is the recommended method.
  • In an environment based on React Server Components, preloading the MUI components may be necessary.

Readme

Keywords

none

Package Sidebar

Install

npm i @react-querybuilder/material

Weekly Downloads

5,991

Version

7.2.0

License

MIT

Unpacked Size

327 kB

Total Files

20

Last publish

Collaborators

  • jakeboone02