Files
amare/app/Filament/Resources/Testimonials/TestimonialResource.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.8 KiB
PHP

<?php
declare(strict_types=1);
namespace App\Filament\Resources\Testimonials;
use App\Filament\Resources\Testimonials\Pages\CreateTestimonial;
use App\Filament\Resources\Testimonials\Pages\EditTestimonial;
use App\Filament\Resources\Testimonials\Pages\ListTestimonials;
use App\Filament\Resources\Testimonials\Schemas\TestimonialForm;
use App\Filament\Resources\Testimonials\Tables\TestimonialsTable;
use App\Models\Testimonial;
use App\Policies\TestimonialPolicy;
use BackedEnum;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Support\Icons\Heroicon;
use Filament\Tables\Table;
use UnitEnum;
class TestimonialResource extends Resource
{
protected static ?string $model = Testimonial::class;
protected static ?string $policy = TestimonialPolicy::class;
protected static string|BackedEnum|null $navigationIcon = Heroicon::OutlinedChatBubbleLeftRight;
protected static ?string $navigationLabel = 'Depoimentos';
protected static ?string $modelLabel = 'depoimento';
protected static ?string $pluralModelLabel = 'depoimentos';
protected static string|UnitEnum|null $navigationGroup = 'Conteúdo do site';
protected static ?int $navigationSort = 4;
public static function form(Schema $schema): Schema
{
return TestimonialForm::configure($schema);
}
public static function table(Table $table): Table
{
return TestimonialsTable::configure($table);
}
public static function getRelations(): array
{
return [];
}
public static function getPages(): array
{
return [
'index' => ListTestimonials::route('/'),
'create' => CreateTestimonial::route('/create'),
'edit' => EditTestimonial::route('/{record}/edit'),
];
}
}