You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

react-querybuilder

Package Overview
Dependencies
Maintainers
2
Versions
211
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-querybuilder - npm Package Versions

1245
22

7.7.1-rc.1

Diff
j
jakeboone02
published 7.7.1-rc.1 •
j
jakeboone02
published 7.7.1-rc.0 •
j
jakeboone02
published 7.7.0 •

Changelog

Source

[v7.7.0] - 2024-10-08

Changed

  • The useValueEditor hook now requires the entire ValueEditorProps object instead of only requiring a subset of the props.

Added

  • [#755] New controlElements properties ruleGroupHeaderElements and ruleGroupBodyElements, enabling customization/replacement/augmentation of the subcomponents within the rule group header and body wrappers without needing to reimplement the entire RuleGroup component.
  • [#785] New prop suppressStandardClassnames. When true, no classes will be added automatically to any elements (custom classes defined in controlClassnames will still be applied). This includes conditional and event-based classes for validation, drag-and-drop, etc.
  • [#785] A "dndCopy" class will be added when drag-and-drop is enabled and the modifier key (<kbd>Alt</kbd>/<kbd>⌥ Option</kbd>) is pressed while the drag phase begins. When using the default styles, the drag-and-drop indicator line will be green (#669933) instead of rebeccapurple (#663399).
  • [#755] New useQueryBuilderNative hook. Works the same as useQueryBuilder, but tailored for React Native implementations.
  • [#769] The parseNumbers prop now accepts an optional "-limited" suffix on existing string config values "enhanced", "strict", and "native". When the "-limited" suffix is used (e.g., parseNumbers="strict-limited"), values will only be parsed for numericity when the inputType is "number".
  • [#769] formatQuery now accepts an optional concatOperator parameter to support non-standard concatenation methods in the various SQL dialects. The default is the ANSI standard "||", which is supported by PostgreSQL, Oracle, SQLite, and various others, while SQL Server uses "+". A value of "CONCAT" will enable MySQL compatibility by using the CONCAT function (do not use this for Oracle as its CONCAT function is limited).
  • [#769] The toArray method now accepts an optional configuration parameter. If the retainEmptyStrings property of that object is true, the function will not filter out string elements that are empty or purely whitespace.
  • [#769] The object returned from useValueEditor now includes a parseNumberMethod property, which is a processed version of the parseNumbers prop.
  • [#769] formatQuery now accepts an optional preset option as a shortcut to configure the output for improved compatibility with different query language dialects. Options include "ansi", "mssql", "mysql", "oracle", "postgres", and "sqlite".
  • [#769] formatQuery now accepts an optional fieldIdentifierSeparator string. When used in conjunction with the quoteFieldNamesWith option, field names will be separated by this string and bracketed individually per the quoteFieldNamesWith configuration (e.g., [table name].[field name] = 'value' instead of [table name.field name] = 'value').
  • [#786] New formatQuery export format "natural_language", similar to the "sql" or "cel" formats but with English-language operators.

Fixed

  • [#769] On rules using a "between"/"notBetween" operator, the second value no longer shifts into the first input when the first value is removed.
  • [#769] Type ParseNumbersMethod renamed to ParseNumberMethod (singular) to better reflect its assocation with the parseNumber method as opposed to the parseNumbers prop.
  • [#769] Internally, the default MongoDB rule processor for formatQuery uses actual JSON objects instead of manually constructing JSON.parse-able strings. This should lead to more reliably valid results.
  • [#769] When generating SQL for a rule where (1) the operator is "between" or "notBetween", (2) the values are numeric, and (3) parseNumbers is true, formatQuery will place the smaller value first and the larger value second, regardless of their order in the rule's value property.
  • [#779] When parseJSONata encounters an expression group where only two conditions exist for the same field, one greater-than and one less-than, a single "between"/"notBetween" rule will be generated. Previously a rule group with two separate rules would be generated.
  • [#783] MantineValueSelector no longer sets the value to "" when clicking the selected option again.
j
jakeboone02
published 7.7.0-alpha.8 •
j
jakeboone02
published 7.7.0-alpha.4 •
j
jakeboone02
published 7.8.0-alpha.0 •
j
jakeboone02
published 7.6.1 •

Changelog

Source

[v7.6.1] - 2024-08-02

Fixed

  • Drag-and-drop hooks (useReactDnD, useRuleDnD, useRuleGroupDnD, and useInlineCombinatorDnD) are now exported from @react-querybuilder/dnd.
  • [#748] formatQuery correctly handles values that are lists of numbers when parseNumbers is true.
j
jakeboone02
published 7.6.0 •

Changelog

Source

[v7.6.0] - 2024-07-11

Added

  • [#734] New callback props onMoveRule and onMoveGroup, called before a rule or group is moved (via drag-and-drop) or shifted. If the result of the callback is false, the move will be cancelled. If true, the move will proceed as normal. Alternatively, a full query object can be returned representing the new state if some other modifications were necessary.
  • [#734] onAddRule and onAddGroup callbacks can now return true instead of the entire rule/group to allow the addition to proceed as normal.

Fixed

  • [#733] parseSpEL was not handling the matches operator correctly when its value was a single character.
  • [#733] Improved formatQuery "elasticsearch" output for "contains" and "doesNotContain" operators.
j
jakeboone02
published 7.5.2 •

Changelog

Source

[v7.5.2] - 2024-06-27

Fixed

  • [#730] parseMongoDB was not handling the $regex operator correctly when its value was a single character.
j
jakeboone02
published 7.5.1 •

Changelog

Source

[v7.5.1] - 2024-06-25

Changed

  • [#727] useMergedContext no longer returns values that are not explicitly typed in UseMergedContextProps.
  • [#727] key is no longer required in the parameter passed to getCompatContextProvider.

Fixed

  • [#727] Overall memoization strategy and implementation is improved.
  • [#727] Option group utility functions are better at identifying what is and isn't an option group list.
  • [#727] The dragging property of the object passed to canDrop is no longer a stale reference to the rule/group being dragged.