npm.io
8.20.2 • Published 3d ago

@react-querybuilder/bulma

Licence
MIT
Version
8.20.2
Deps
0
Size
71 kB
Vulns
0
Weekly
1.2K

@react-querybuilder/bulma

Official react-querybuilder compatibility package for Bulma.

Screenshot

Installation

npm i react-querybuilder @react-querybuilder/bulma bulma
# OR yarn add / pnpm add / bun add

Usage

To configure the query builder to use Bulma-compatible components, place QueryBuilderBulma above QueryBuilder in the component hierarchy.

import { QueryBuilderBulma } from '@react-querybuilder/bulma';
import { useState } from 'react';
import { type Field, QueryBuilder, type RuleGroupType } from 'react-querybuilder';

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

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

  return (
    <QueryBuilderBulma>
      <QueryBuilder fields={fields} defaultQuery={query} onQueryChange={setQuery} />
    </QueryBuilderBulma>
  );
}

Some additional styling may be necessary. We recommend the following:

.queryBuilder .input {
  width: auto;
}

QueryBuilderBulma is a React context provider that assigns the following props to all descendant QueryBuilder elements. The props can be overridden on the QueryBuilder or used directly without the context provider.

Export QueryBuilder prop
bulmaControlClassnames controlClassnames
bulmaControlElements controlElements
BulmaNotToggle controlElements.notToggle
BulmaValueEditor controlElements.valueEditor
BulmaValueSelector controlElements.valueSelector

Keywords