Files
nuhodds_fi4/app/Filament/Widgets/ChartEventPerf.php
T
2026-05-28 14:19:53 +02:00

68 lines
1.9 KiB
PHP

<?php
namespace App\Filament\Widgets;
use App\Filament\Widgets\Data\LoadPerformance;
use Filament\Support\RawJs;
use Filament\Widgets\ChartWidget;
use Filament\Widgets\Concerns\InteractsWithPageFilters;
class ChartEventPerf extends ChartWidget
{
use InteractsWithPageFilters;
protected ?string $heading = 'Events';
protected ?string $description = 'Performance';
protected ?string $pollingInterval = null;
protected bool $isCollapsible = true;
protected function getData(): array
{
return LoadPerformance::load($this->filters);
}
protected function getType(): string
{
return 'line';
}
protected function getOptions(): RawJs
{
return RawJs::make(<<<'JS'
{
interaction: {
intersect: false,
},
// plugins: {
// tooltip: {
// callbacks: {
// label: (context) => {
// return [' '+context.parsed.y, ' '+context.dataset.playing_date[context.dataIndex], ' '+context.dataset.events[context.dataIndex], ' '+context.dataset.results_per_event[context.dataIndex]];
// },
// }
// }
// },
scales: {
x: {
title: {
display: true,
text: 'Days since today'
}
},
y: {
beginAtZero:false,
ticks: {
callback: function(value, index, ticks) {
return value % 1 === 0 ? value : '';
}
}
},
},
}
JS);
}
}