Filters

What / When

Filters add a popover next to the search box. Use them on Doctrine server-side tables when users need structured criteria (status, date range, free text) beyond global search.

They do not apply to client-side inline datasets in this version.

Minimal Example

Declare filters on your AbstractDataTable:

use Pentiminax\UX\DataTables\Filter\ChoiceFilter;
use Pentiminax\UX\DataTables\Filter\TextFilter;
use Pentiminax\UX\DataTables\Model\Filters;

public function configureFilters(Filters $filters): Filters
{
    return $filters
        ->add(TextFilter::new('email')->label('Email'))
        ->add(
            ChoiceFilter::new('status')
                ->label('Status')
                ->options(['Draft' => 'draft', 'Published' => 'published'])
        );
}

Pitfalls