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

7.2.0 • Public • Published

@react-querybuilder/chakra

Official react-querybuilder components for Chakra UI.

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/chakra @chakra-ui/icons @chakra-ui/react @chakra-ui/system @emotion/react @emotion/styled framer-motion
# OR yarn add / pnpm add / bun add

Usage

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

import { ChakraProvider, extendTheme } from '@chakra-ui/react';
import { QueryBuilderChakra } from '@react-querybuilder/chakra';
import { QueryBuilder, RuleGroupType } from 'react-querybuilder';

const chakraTheme = extendTheme();

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

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

  return (
    <ChakraProvider theme={chakraTheme}>
      <QueryBuilderChakra>
        <QueryBuilder fields={fields} query={query} onQueryChange={setQuery} />
      </QueryBuilderChakra>
    </ChakraProvider>
  );
};

Notes

  • Some additional styling may be necessary, e.g.:

    .queryBuilder .chakra-select__wrapper {
      width: fit-content;
      display: inline-block;
    }
    
    .queryBuilder .chakra-input {
      width: auto;
      display: inline-block;
    }
    
    .queryBuilder .chakra-radio-group {
      display: inline-block;
    }
  • This package exports chakraControlElements which can be assigned directly to the controlElements prop on <QueryBuilder /> (and also exports each component individually), but this method does not support customized Chakra themes like <QueryBuilderChakra />.

Dependencies (0)

    Dev Dependencies (15)

    Package Sidebar

    Install

    npm i @react-querybuilder/chakra

    Weekly Downloads

    2,856

    Version

    7.2.0

    License

    MIT

    Unpacked Size

    167 kB

    Total Files

    20

    Last publish

    Collaborators

    • jakeboone02