A Laravel Nova range input filter.
digital-creative/nova-range-input-filter is a Laravel package for a laravel nova range input filter..
It currently has 17 GitHub stars and 221.126 downloads on Packagist (latest version v1.1.0).
Install it with composer require digital-creative/nova-range-input-filter.
Discover more Laravel packages by digital-creative
or browse all Laravel packages to compare alternatives.
Last updated
A Laravel Nova range input filter.
You can install the package via composer:
composer require digital-creative/nova-range-input-filter
Create a filter as usual and extend the DigitalCreative\RangeInputFilter\RangeInputFilter class
use DigitalCreative\RangeInputFilter\RangeInputFilter;
class MyFilter extends RangeInputFilter {
public function apply(NovaRequest $request, $query, $value)
{
$from = data_get($value, 'from');
$to = data_get($value, 'to');
}
}
and use it as usual on the filters methods within your resource class:
class ExampleNovaResource extends Resource {
public function filters(NovaRequest $request): array
{
return [
MyFilter::make()
];
}
}
The available options are straight forward:
class ExampleNovaResource extends Resource {
public function filters(NovaRequest $request): array
{
return [
MyFilter::make()
->dividerLabel('<>') // control the divider label in between the inputs
->inputType('week') // supports any html input type
->placeholder('From', 'To') // control the placeholder of the inputs
->fromAttributes([ 'min' => 0 ]) // some inputs type like number accepts more attributes like min/max/step etc..
->toAttributes([ 'max' => 100 ])
];
}
}
Due to the size limitation of the native nova filter box some input types may not look as expected, for this reason you can use Nova Mega Filter package instead which is a drop-in replacement for the native filter box.
Please give a ⭐️ if this project helped you!
Help card that comes with Nova.The MIT License (MIT). Please see License File for more information.