Files
amare/app/Filament/Resources/Services/ServiceResource.php
manoel freitas 8da8d19504 feat: CMS de conteúdo do site (WEB-02/03/04/06)
Implementa gestão Filament de configurações, serviços, portfólio e depoimentos com policies admin-only, upload validado e seed determinístico.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-28 23:16:25 -03:00

63 lines
1.7 KiB
PHP

<?php
declare(strict_types=1);
namespace App\Filament\Resources\Services;
use App\Filament\Resources\Services\Pages\CreateService;
use App\Filament\Resources\Services\Pages\EditService;
use App\Filament\Resources\Services\Pages\ListServices;
use App\Filament\Resources\Services\Schemas\ServiceForm;
use App\Filament\Resources\Services\Tables\ServicesTable;
use App\Models\Service;
use App\Policies\ServicePolicy;
use BackedEnum;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Support\Icons\Heroicon;
use Filament\Tables\Table;
use UnitEnum;
class ServiceResource extends Resource
{
protected static ?string $model = Service::class;
protected static ?string $policy = ServicePolicy::class;
protected static string|BackedEnum|null $navigationIcon = Heroicon::OutlinedBriefcase;
protected static ?string $navigationLabel = 'Serviços';
protected static ?string $modelLabel = 'serviço';
protected static ?string $pluralModelLabel = 'serviços';
protected static string|UnitEnum|null $navigationGroup = 'Conteúdo do site';
protected static ?int $navigationSort = 2;
public static function form(Schema $schema): Schema
{
return ServiceForm::configure($schema);
}
public static function table(Table $table): Table
{
return ServicesTable::configure($table);
}
public static function getRelations(): array
{
return [];
}
public static function getPages(): array
{
return [
'index' => ListServices::route('/'),
'create' => CreateService::route('/create'),
'edit' => EditService::route('/{record}/edit'),
];
}
}