@inject ('datagrid', 'App\Renderers\DatagridRenderer') {!! $datagrid->filters($filters) ->render( $filterService, // Columns [ // Avatar [ 'type' => 'avatar' ], // Name 'name', 'type', [ 'label' => __('calendars.fields.colour'), 'field' => 'tag.colour', 'render' => function ($model) { /** @var \App\Models\Tag $model */ if (!$model->hasColour()) { return ''; } return '' . __('colours.' . $model->colour) . ''; } ], [ 'label' => trans('tags.fields.tag'), 'render' => function($model) { if ($model->tag) { return '' . e($model->tag->name) . ''; } }, 'field' => 'tag.name', ], [ 'label' => trans('tags.fields.tags'), 'render' => function($model) { return $model->tags->count(); }, 'disableSort' => true, ], [ 'label' => trans('tags.fields.children'), 'render' => function($model) { $total = $model->allChildren()->count(); return $total; }, 'disableSort' => true, ], [ 'type' => 'is_private', ] ], // Data $models, // Options [ 'route' => 'tags.tree', 'baseRoute' => 'tags', 'trans' => 'tags.fields.', 'row' => [ 'data' => [ 'data-children' => function($model) { return $model->tags->count(); } ] ] ] ) !!}