The Filter (jig-filter) pairs an operator select with a value editor so users
can build filter conditions over a dataset. The dataType input (string,
number, date, dateTime, boolean, list, or custom) drives which
operators and editor UI appear. With filterLocally on (the default) it filters
data and emits the result via filterResultChange; otherwise it emits only
the JigFilterConfig via filterChange for server-side filtering.
In the default input mode the control renders an input-like trigger that opens
the filter editor in a popover; the trigger summary reflects the active
condition.
The filter plugs into the shared jigErrors + jig-hint validation flow like
any other control — here a custom error requires at least one filter rule.
mode="inline" renders the condition rows directly on the page instead of
behind a popover trigger.
mode="headless" renders only the popover, opened programmatically via show()
and positioned against the element passed to anchor — here the "Open filter"
button.
Each dataType exposes its own operators and editor UI: list (multi-select),
string, number, date, dateTime, and boolean.
dataType="custom" offers a single free-form condition. Combined with
filterLocally="false", the component emits only the config and you run
executeFilter yourself against a chosen field.
allowMultiple lets the user add several conditions and pick a match mode —
whether a row must satisfy all conditions or any of them.
When autoApply is false, changes are not applied until the user clicks "Apply". The "Cancel" button restores the previous filter state.
jig