# `Cinder.Filters.MultiCheckboxes`
[🔗](https://github.com/sevenseacat/cinder/blob/v0.12.1/lib/cinder/filters/multi_checkboxes.ex#L1)

Multi-checkbox filter implementation for Cinder tables.

Provides multiple selection filtering with checkbox inputs for each option.
This is the traditional checkbox-based interface for selecting multiple values.

## Match Mode Options

The `match_mode` option controls how multiple selections are combined:

- `:any` (default) - Shows records containing ANY of the selected values (OR logic)
- `:all` - Shows records containing ALL of the selected values (AND logic)

## Examples

    # ANY logic - show records with at least one selected value
    <:col field="tags" filter={:multi_checkboxes}
          filter_options={[
            options: [{"Fiction", "fiction"}, {"Romance", "romance"}],
            match_mode: :any
          ]} />

    # ALL logic - show records that have all selected values
    <:col field="tags" filter={:multi_checkboxes}
          filter_options={[
            options: [{"Fiction", "fiction"}, {"Bestseller", "bestseller"}],
            match_mode: :all
          ]} />

## Array Field Support

This filter automatically detects array fields and uses containment logic:
- For array fields: `"selected_value" in array_field`
- For non-array fields: `field in [selected_values]`

The `match_mode` option only affects array fields. For non-array fields,
standard IN operator logic is always used regardless of match_mode.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
