Group actions:
Id Name Status
21 Ebony Bass Temple inactive
22 Uptight Unicorn deleted
23 Inbred Blood Conspiracy active
24 Real Thunder Saga deleted
25 Hungry Hummingbird deleted
26 Good Goose inactive
27 Unusual Unicorn active
28 Aggressive Angelfish active
29 Beautiful Boar deleted
30 Go Go Pogo All-Stars deleted
31 Rock 'n' Roll Metal Assassins deleted
32 Dr. Spelunking Kingdom active
33 Amused Alpaca active
34 World of Bubble Gone Wild deleted
35 Delightful Dove deleted
36 Anxious Ant deleted
37 Big-Time Chef Blast active
38 Rural Chocobo Journey deleted
39 Dynamite Go-Kart Superstar deleted
40 Sonic Monster of Magic active
( Items: 21 - 40 from 1000 )
  See the code below 👇 or see GitHub
public function createComponentGrid(): DataGrid
{
	$grid = new DataGrid();

	$grid->setDataSource($this->dibiConnection->select('*')->from('users'));

	$grid->setItemsPerPageList([20, 50, 100]);

	$grid->addColumnNumber('id', 'Id')
		->setAlign('left')
		->setSortable();

	$grid->addColumnText('name', 'Name')
		->setSortable();

	$grid->addColumnText('email', 'E-mail')
		->setSortable();

	$grid->addColumnDateTime('status', 'Status');

	$grid->addGroupAction(
		'Change user status',
		[
			'active' => 'Active',
			'inactive' => 'Inactive',
			'deleted' => 'Deleted',
		]
	)->onSelect[] = [$this, 'groupChangeStatus'];

	$grid->addGroupAction('Send', [
		'john'  => 'John',
		'joe'   => 'Joe',
		'frank' => 'Frank',
	])->onSelect[] = [$this, 'groupSend'];

	$grid->addGroupTextAction('Add note')->onSelect[] = [$this, 'groupAddNote'];

	$grid->addGroupAction('Delete')->onSelect[] = [$this, 'groupDelete'];

	$grid->addGroupButtonAction('Say hello')->onClick[] = [$this, 'sayHello'];

	return $grid;
}