Создание
Метрика ValueMetric
предназначена для отображения значения. Например, сколько записей в таблице.
Вы можете создать ValueMetric
, используя статический метод make()
.
make(Closure|string $label)
Метод value()
позволяет указать значение для метрики.
value(int|string|float|Closure $value)
use MoonShine\Metrics\ValueMetric; //... public function components(): array{ return [ ValueMetric::make('Выполненные заказы') ->value(Order::completed()->count()) ];} //...
Прогресс
Метод progress()
позволяет отобразить индикатор прогресса достижения цели в метрике.
progress(int|float|Closure $target)
use MoonShine\Metrics\ValueMetric; //... public function components(): array{ return [ ValueMetric::make('Открытые задачи') ->value(Task::opened()->count()) ->progress(Task::count()) ];} //...
При использовании прогресс-бара в метод value()
необходимо передавать числовое значение или замыкание, которое вернет число.
Формат значения
Метод valueFormat()
позволяет отформатировать значение метрики и добавить префикс и суффикс.
valueFormat(string|Closure $value)
use MoonShine\Metrics\ValueMetric; //... public function components(): array{ return [ ValueMetric::make('Прибыль') ->value(Order::completed()->sum('price')) ->valueFormat(fn($value) => \Illuminate\Support\Number::forHumans($value)) ];} //...
Иконка
Метод icon()
позволяет добавить иконку к метрике.
use MoonShine\Metrics\ValueMetric; //... public function components(): array{ return [ ValueMetric::make('Заказы') ->value(Order::count()) ->icon('heroicons.shopping-bag') ];} //...
Для более подробной информации обратитесь к разделу Иконки.
Ширина блока
Метод columnSpan()
позволяет установить ширину блока в сетке Grid.
columnSpan( int $columnSpan, int $adaptiveColumnSpan = 12)
$columnSpan
- актуально для десктопной версии,$adaptiveColumnSpan
- актуально для мобильной версии.
use App\Models\Article;use MoonShine\Decorations\Grid;use MoonShine\Metrics\ValueMetric; //... public function components(): array{ return [ Grid::make([ ValueMetric::make('Статьи') ->value(Article::count()) ->columnSpan(6), ValueMetric::make('Комментарии') ->value(Comment::count()) ->columnSpan(6) ]) ];} //...
Подробнее смотрите в разделе Decoration Layout.