wip Expectations

This commit is contained in:
salam committed 2026-08-14 19:02:58 +02:00
1 parent 3db428899c
commit 1dbdbcf586
26 files changed
+704 -268

No files matched your search

@@ -26,7 +26,7 @@ class SofaScoreRosaResource extends Resource
protected static ?string $modelLabel = 'Teams';
protected static string|UnitEnum|null $navigationGroup = 'SofaScore';
protected static string|UnitEnum|null $navigationGroup = 'Statistiko';
public static function form(Schema $schema): Schema
{
@@ -26,7 +26,7 @@ class SofaScoreTaskResource extends Resource
protected static ?int $navigationSort = 2;
protected static string|UnitEnum|null $navigationGroup = 'SofaScore';
protected static string|UnitEnum|null $navigationGroup = 'Statistiko';
protected function isReadOnly(): bool
{
@@ -17,7 +17,7 @@ class SofaScoreTournamentResource extends Resource
{
protected static ?string $model = SofaScoreTournament::class;
protected static string|UnitEnum|null $navigationGroup = 'SofaScore';
protected static string|UnitEnum|null $navigationGroup = 'Statistiko';
protected static ?string $cluster = StaticDataCluster::class;
@@ -20,7 +20,7 @@ class StatisticFixturesResource extends Resource
protected static ?string $modelLabel = 'Fixtures';
protected static string|UnitEnum|null $navigationGroup = 'SofaScore';
protected static string|UnitEnum|null $navigationGroup = 'Statistiko';
protected static ?int $navigationSort = 5;
@@ -0,0 +1,11 @@
<?php
namespace App\Filament\Clusters\StaticData\Resources\StatistikoConfigs\Pages;
use App\Filament\Clusters\StaticData\Resources\StatistikoConfigs\StatistikoConfigResource;
use Filament\Resources\Pages\CreateRecord;
class CreateStatistikoConfig extends CreateRecord
{
protected static string $resource = StatistikoConfigResource::class;
}
@@ -0,0 +1,19 @@
<?php
namespace App\Filament\Clusters\StaticData\Resources\StatistikoConfigs\Pages;
use App\Filament\Clusters\StaticData\Resources\StatistikoConfigs\StatistikoConfigResource;
use Filament\Actions\DeleteAction;
use Filament\Resources\Pages\EditRecord;
class EditStatistikoConfig extends EditRecord
{
protected static string $resource = StatistikoConfigResource::class;
protected function getHeaderActions(): array
{
return [
DeleteAction::make(),
];
}
}
@@ -0,0 +1,12 @@
<?php
namespace App\Filament\Clusters\StaticData\Resources\StatistikoConfigs\Pages;
use App\Filament\Clusters\StaticData\Resources\StatistikoConfigs\StatistikoConfigResource;
use Filament\Actions\CreateAction;
use Filament\Resources\Pages\ListRecords;
class ListStatistikoConfigs extends ListRecords
{
protected static string $resource = StatistikoConfigResource::class;
}
@@ -0,0 +1,26 @@
<?php
namespace App\Filament\Clusters\StaticData\Resources\StatistikoConfigs\Schemas;
use Filament\Forms\Components\TextInput;
use Filament\Schemas\Schema;
class StatistikoConfigForm
{
public static function configure(Schema $schema): Schema
{
return $schema
->components([
TextInput::make('group')
->required(),
TextInput::make('varname')
->required(),
TextInput::make('team')
->required(),
TextInput::make('name')
->required(),
TextInput::make('value')
->required(),
]);
}
}
@@ -0,0 +1,49 @@
<?php
namespace App\Filament\Clusters\StaticData\Resources\StatistikoConfigs;
use App\Filament\Clusters\StaticData\Resources\StatistikoConfigs\Pages\ListStatistikoConfigs;
use App\Filament\Clusters\StaticData\Resources\StatistikoConfigs\Schemas\StatistikoConfigForm;
use App\Filament\Clusters\StaticData\Resources\StatistikoConfigs\Tables\StatistikoConfigsTable;
use App\Filament\Clusters\StaticData\StaticDataCluster;
use App\Models\StatistikoConfig;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables\Table;
use UnitEnum;
class StatistikoConfigResource extends Resource
{
protected static ?string $model = StatistikoConfig::class;
protected static string|UnitEnum|null $navigationGroup = 'Statistiko';
protected static ?string $cluster = StaticDataCluster::class;
protected static ?string $navigationLabel = 'Configurations';
protected static ?string $modelLabel = 'Configurations';
protected static ?int $navigationSort = 15;
public static function form(Schema $schema): Schema
{
return StatistikoConfigForm::configure($schema);
}
public static function table(Table $table): Table
{
return StatistikoConfigsTable::configure($table);
}
public static function getPages(): array
{
return [
'index' => ListStatistikoConfigs::route('/'),
];
}
public static function getNavigationBadge(): ?string
{
return parent::getEloquentQuery()->count();
}
}
@@ -0,0 +1,57 @@
<?php
namespace App\Filament\Clusters\StaticData\Resources\StatistikoConfigs\Tables;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Columns\TextInputColumn;
use Filament\Tables\Enums\FiltersLayout;
use Filament\Tables\Filters\SelectFilter;
use Filament\Tables\Table;
class StatistikoConfigsTable
{
public static function configure(Table $table): Table
{
return $table
->columns([
TextColumn::make('group')->formatStateUsing(fn(string $state): string => match ($state) {
'gls' => 'Goals',
'crn' => 'Corner',
'fls' => 'Fouls',
'ofs' => 'Offside',
'crd' => 'Cards',
'snt' => 'Shots On Target',
'tsh' => 'Total Shots',
}),
TextColumn::make('team')->badge()
->color(fn(string $state): string => match ($state) {
'home' => 'info',
'away' => 'warning',
}),
TextColumn::make('varname')
->formatStateUsing(fn(string $state): string => strtoupper($state)),
TextInputColumn::make('value')
->prefix('xx.x')
->type('number')
->rules(['required', 'decimal:0.1,10']),
])
->filters([
SelectFilter::make('group')
->options([
'gls' => 'Goals',
'crn' => 'Corner',
'fls' => 'Fouls Commited',
'ofs' => 'Offside',
'crd' => 'Cards',
'snt' => 'Shots On Target',
'tsh' => 'Total Shots',
]),
SelectFilter::make('team')
->options([
'home' => 'Home',
'away' => 'Away',
])
], layout: FiltersLayout::AboveContent)
->deferFilters(false);
}
}
@@ -20,7 +20,7 @@ class StatistikoDetailResource extends Resource
protected static ?string $modelLabel = 'Details';
protected static string|UnitEnum|null $navigationGroup = 'SofaScore';
protected static string|UnitEnum|null $navigationGroup = 'Statistiko';
protected static ?string $cluster = StaticDataCluster::class;
@@ -20,7 +20,7 @@ class StatistikoEventsResource extends Resource
protected static ?string $modelLabel = 'Events';
protected static string|UnitEnum|null $navigationGroup = 'SofaScore';
protected static string|UnitEnum|null $navigationGroup = 'Statistiko';
protected static ?int $navigationSort = 6;
@@ -20,7 +20,7 @@ class StatistikaImportResource extends Resource
protected static ?string $modelLabel = 'File Uploads';
protected static string|UnitEnum|null $navigationGroup = 'SofaScore';
protected static string|UnitEnum|null $navigationGroup = 'Statistiko';
protected static ?int $navigationSort = 1;
@@ -20,7 +20,7 @@ class StatistikoPlayerResource extends Resource
protected static ?string $modelLabel = 'Player';
protected static string|UnitEnum|null $navigationGroup = 'SofaScore';
protected static string|UnitEnum|null $navigationGroup = 'Statistiko';
protected static ?string $cluster = StaticDataCluster::class;