codercms / filament-value-range-filter
Filament country code field.
Fund package maintenance!
TappNetwork
Requires
- php: ^8.1
- filament/filament: ^3.0-stable
Requires (Dev)
- larastan/larastan: ^2.9
- laravel/pint: ^1.14
- nunomaduro/collision: ^8.1.1||^7.10.0
- orchestra/testbench: ^9.0.0||^8.22.0
- pestphp/pest: ^2.34
- pestphp/pest-plugin-arch: ^2.7
- pestphp/pest-plugin-laravel: ^2.3
- phpstan/extension-installer: ^1.3
- phpstan/phpstan-deprecation-rules: ^1.1
- phpstan/phpstan-phpunit: ^1.3
- spatie/laravel-ray: ^1.35
README
A value range filter for Filament table builder.
Installation
composer require tapp/filament-value-range-filter
Optionally, you can publish the translations files with:
php artisan vendor:publish --tag="filament-value-range-filter-translations"
Appareance
Filter Indicators
Usage
Filter
Add to your Filament resource:
use Tapp\FilamentValueRangeFilter\Filters\ValueRangeFilter; public static function table(Table $table): Table { return $table //... ->filters([ ValueRangeFilter::make('project_value') ->currency(), ValueRangeFilter::make('estimated_hours'), // ... ]) }
Options
Currency
You may use the ->currency()
method to format the values on placeholder and filter indicator as currency. The default currency format is USD
.
ValueRangeFilter::make('project_value') ->currency(),
Change the currency format
The ->currencyCode()
and ->locale()
methods can be used to change the currency format.
You can pass one of the ISO 4217 currency codes to the ->currencyCode()
method.
ValueRangeFilter::make('project_value') ->currency() ->currencyCode('EUR') ->locale('fr'),
Currency value
When using currency values, the filter assumes that the value stored on database that will be compared with the provided value on filter is in the smallest unit of the currency (e.g., cents for USD). Therefore, the value provided in the filter is by default multiplied by 100 to be compared with the value stored in the database.
If the values stored in your database are not in the currency's smallest unit and you do not need the value provided in the filter to be multiplied by 100, pass 'false' to the ->currencyInSmallestUnit()
method:
ValueRangeFilter::make('project_value') ->currency() ->currencyInSmallestUnit(false),
Testing
composer test
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security Vulnerabilities
If you discover any security-related issues, please email security@tappnetwork.com
.
Credits
License
The MIT License (MIT). Please see License File for more information.