1. Go to this page and download the library: Download shllghst/nova-pill-filter library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
shllghst / nova-pill-filter example snippets
php
namespace App\Nova\Filters;
use Illuminate\Http\Request;
use Eolica\NovaPillFilter\PillFilter;
final class MyPillFilter extends PillFilter
{
public function apply(Request $request, $query, $value)
{
return $query;
}
public function options(Request $request)
{
return [];
}
}
bash
php artisan nova:pill-filter MyPillFilter
bash
php artisan nova:pill-filter-stubs
php
final class MyNovaResource extends Resource {
public function filters(Request $request)
{
return [
Filters\MyPillFilter::make(),
];
}
}
php
final class MyNovaResource extends Resource {
public function filters(Request $request)
{
return [
Filters\MyPillFilter::make()->single(),
];
}
}
php
final class MyNovaResource extends Resource {
public function filters(Request $request)
{
return [
Filters\MyPillFilter::make()->hideClearButton(),
];
}
}
php
final class MyNovaResource extends Resource {
public function filters(Request $request)
{
return [
Filters\MyPillFilter::make()->clearLabel('Custom label'),
];
}
}
php
final class MyNovaResource extends Resource {
public function filters(Request $request)
{
return [
Filters\MyPillFilter::make()->draggable(),
];
}
}
php
final class MyPillFilter extends PillFilter
{
public function options(Request $request)
{
return [
'Family' => 'family',
'Sea' => 'sea',
'Sports' => 'sports',
'City' => 'city',
'Eco' => 'eco',
'Countryside' => 'countryside',
];
}
}
php
final class MyPillFilter extends PillFilter
{
public function apply(Request $request, $query, $values)
{
return $query->whereIn('lifestyle', $values); // $values is an array
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.