feat: Introduce custom dashboard page with date range filters.

This commit is contained in:
Yoga Pangestu 2026-01-29 10:36:26 +07:00
parent 9fdba64499
commit 8f1cb16dc9
2 changed files with 37 additions and 7 deletions

View File

@ -0,0 +1,35 @@
<?php
namespace App\Filament\Pages;
use Filament\Forms\Components\DatePicker;
use Filament\Pages\Dashboard as BaseDashboard;
use Filament\Pages\Dashboard\Concerns\HasFiltersForm;
use Filament\Schemas\Components\Fieldset;
use Filament\Schemas\Schema;
class Dashboard extends BaseDashboard
{
use HasFiltersForm;
public function filtersForm(Schema $schema): Schema
{
return $schema
->schema([
Fieldset::make('Filter')
->schema([
DatePicker::make('startDate')
->label('Tanggal Mulai')
->native(false)
->placeholder('Pilih tanggal mulai'),
DatePicker::make('endDate')
->label('Tanggal Selesai')
->native(false)
->placeholder('Pilih tanggal selesai'),
])
->columnSpanFull(),
])
->columns(2);
}
}

View File

@ -5,19 +5,17 @@
use App\Filament\Pages\Auth\EmailVerification;
use App\Filament\Pages\Auth\Login;
use App\Filament\Pages\Auth\Registration;
use App\Filament\Pages\Dashboard;
use App\Settings\GeneralSettings;
use BezhanSalleh\FilamentShield\FilamentShieldPlugin;
use Filament\Http\Middleware\Authenticate;
use Filament\Http\Middleware\AuthenticateSession;
use Filament\Http\Middleware\DisableBladeIconComponents;
use Filament\Http\Middleware\DispatchServingFilamentEvent;
use Filament\Pages\Dashboard;
use Filament\Panel;
use Filament\PanelProvider;
use Filament\Support\Colors\Color;
use Filament\Support\Enums\Width;
use Filament\Widgets\AccountWidget;
use Filament\Widgets\FilamentInfoWidget;
use Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse;
use Illuminate\Cookie\Middleware\EncryptCookies;
use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken;
@ -69,10 +67,7 @@ public function panel(Panel $panel): Panel
Dashboard::class,
])
->discoverWidgets(in: app_path('Filament/Widgets'), for: 'App\Filament\Widgets')
->widgets([
AccountWidget::class,
FilamentInfoWidget::class,
])
->widgets([])
->middleware([
EncryptCookies::class,
AddQueuedCookiesToResponse::class,