Skip to content

fh32000/nova-filterable-metrics

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nova Filterable Metrics

This package inspired by nova-filterable-cards

Add custom filters to your Laravel Nova metrics.

screenshot screenshot

Installation

You can install the package in to a Laravel app that uses Nova via composer:

composer require nemrutco/nova-filterable-metrics 

Usage

To add the filter ability to your Laravel Nova metric cards, you need to add one of the Filterable traits to your metrics.

Depending on your metric type, these are the available traits:

  • FilterableValue
  • FilterableTrend
  • FilterablePartition

For example, within your custom Nova value metric card:

// in your Nova value metric card class:
use Nemrutco\Filterable\FilterableValue;

use FilterableValue;

Defining Filters

The available filters for your cards can be defined, by adding filters method which returns array of Nova Filters to your metrics. You can use any Nova Filters you defined in your application.

Example:

// in your filterable Nova metric:
use App\Nova\Filters\Date;
use App\Nova\Filters\Store;

public function filters()
{
	return [
		new Store,
		new Date,
	];
}

Available filter types

By default, this package supports all of the Nova Filter types. For Date type filters it uses flatpicker.

if you want to enable date range, simply add

public function range()
{
	return $this->withMeta(['mode' => 'range']);
}

in your DateFilter filter, and make sure to call it in your use case as:

public function filters(Request $request)
{
	return [
		(new Date)->range(),
	]
}

In that case you don't need to use Nova's default ranges. Instead you can use a date filter. If you use ranges and a date filter, your date filter will be applied only within the selected Nova's range. So try to not use ranges and a date filter at same time.

Credits

License

The MIT License (MIT). Please see License File for more information.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Vue 76.1%
  • PHP 19.2%
  • JavaScript 4.6%
  • CSS 0.1%