Skip to main content

add-group

Description

Fires when adding a nested group with a filtering rule in it

Usage

"add-group": ({
rule: {
field: string,
$temp: boolean,
type?: string,
filter?: string,
includes?: any[],
value?: any,
};
edit?: boolean,
after: string | number
}) => void;

Parameters

The callback of the action takes an object with the following parameters:

  • rule - a filtering rule with the following parameters:
    • $temp - (optional) set to true by default, which means that a group is added only temporarily before changes are saved
    • field - (required) the id of a field
    • type - (optional) the type of a value: "text" (default, for string values), "number", "date", "tuple"
    • filter - (optional) the filter operator
    • includes - (optional) an array of the included values (strings, numbers or dates)
    • value - (optional) the value passed to the field
  • edit - (optional) by default, opens the filter rule editor when a group is added; if it's set to false, a group with an empty filter is added.
  • after - (required) the id of a field after which a new group will be added

Example

The example below shows how to add a group with an empty filter and do not open the editor form when adding a group.

<script>
import { getData } from "./common/data";
import { FilterBuilder } from "wx-svelte-filter";

const { value, fields, options } = getData();

const init = (api) => {
api.intercept("add-group", ev => {
ev.edit = false;
});
}
</script>

<FilterBuilder {value} {options} {fields} {init} />

Related articles: