## Summary - standardize Filament table defaults across resources, relation managers, widgets, custom pages, and picker tables - add shared pagination profiles, calm default column visibility, explicit empty states, and session persistence on designated critical resource lists - complete Spec 125 artifacts, regression tests, and dashboard widget follow-up for lazy loading, sortable columns, and toggleable detail columns ## Verification - `docker exec tenantatlas-laravel.test-1 php artisan test --compact --filter=BaselineCompareNow` - `docker exec tenantatlas-laravel.test-1 php artisan test --compact --filter=TableStandardsBaseline` - `docker exec tenantatlas-laravel.test-1 php artisan test --compact --filter=TableDetailVisibility` - `docker exec tenantatlas-laravel.test-1 php artisan test --compact --filter=FilamentTableRiskExceptions` - full suite run completed: `2017 passed, 10 failed, 8 skipped` - manual browser QA completed on the tenant dashboard for lazy loading, sortable widget columns, toggleable hidden status columns, badges, and pagination ## Known Failures The full suite still has 10 pre-existing failures unrelated to this branch: - `Tests\\Unit\\OpsUx\\SummaryCountsNormalizerTest` - `Tests\\Feature\\BackupWithAssignmentsConsistencyTest` (2 tests) - `Tests\\Feature\\BaselineDriftEngine\\CaptureBaselineContentTest` - `Tests\\Feature\\BaselineDriftEngine\\CompareContentEvidenceTest` - `Tests\\Feature\\BaselineDriftEngine\\ResolverTest` - `Tests\\Feature\\Filament\\TenantDashboardDbOnlyTest` - `Tests\\Feature\\Operations\\ReconcileAdapterRunsJobTrackingTest` - `Tests\\Feature\\ReviewPack\\ReviewPackRbacTest` - `Tests\\Feature\\Verification\\VerificationReportRedactionTest` Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de> Reviewed-on: #152
49 lines
759 B
PHP
49 lines
759 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Support\Filament;
|
|
|
|
final class TablePaginationProfiles
|
|
{
|
|
/**
|
|
* @return array<int>
|
|
*/
|
|
public static function resource(): array
|
|
{
|
|
return [25, 50, 100];
|
|
}
|
|
|
|
/**
|
|
* @return array<int>
|
|
*/
|
|
public static function relationManager(): array
|
|
{
|
|
return [10, 25, 50];
|
|
}
|
|
|
|
/**
|
|
* @return array<int>
|
|
*/
|
|
public static function widget(): array
|
|
{
|
|
return [10];
|
|
}
|
|
|
|
/**
|
|
* @return array<int>
|
|
*/
|
|
public static function picker(): array
|
|
{
|
|
return [25, 50, 100];
|
|
}
|
|
|
|
/**
|
|
* @return array<int|string>
|
|
*/
|
|
public static function customPage(): array
|
|
{
|
|
return [25, 50, 'all'];
|
|
}
|
|
}
|