<?php
 namespace App\PageBuilder\Components\Marketing; use App\PageBuilder\PageComponent; class TestimonialsComponent extends PageComponent { public function key(): string { return 'testimonials'; } public function category(): string { return 'marketing'; } public function label(): string { return 'Testimonials'; } public function icon(): string { return 'fas fa-quote-right'; } public function schema(): array { return [ 'title' => ['type' => 'text'], 'items' => [ 'type' => 'repeater', 'item_schema' => [ 'quote' => ['type' => 'textarea', 'required' => true], 'author' => ['type' => 'text', 'required' => true], 'role' => ['type' => 'text'], 'avatar' => ['type' => 'image'], 'rating' => ['type' => 'select', 'label' => 'Yıldız', 'options' => [0, 1, 2, 3, 4, 5], 'default' => 5], ], 'min' => 1, 'max' => 6, ], 'options' => [ 'columns' => ['type' => 'select', 'options' => [1,2,3], 'default' => 3], 'color' => ['type' => 'color_token', 'default' => 'light'], 'padding' => ['type' => 'padding_token', 'default' => 'lg'], 'style' => ['type' => 'select', 'label' => 'Stil', 'options' => ['cards', 'minimal', 'quote'], 'default' => 'cards'], 'show_avatar' => ['type' => 'boolean', 'label' => 'Avatar göster', 'default' => true], 'show_rating' => ['type' => 'boolean', 'label' => 'Yıldız göster', 'default' => true], ], ]; } public function defaults(): array { return [ 'title' => 'Müşterilerimiz Diyor ki', 'items' => [ ['quote' => 'Harika hizmet!', 'author' => 'Ahmet Y.', 'role' => 'CEO', 'avatar' => null, 'rating' => 5], ], 'options' => ['columns' => 3, 'color' => 'light', 'padding' => 'lg'], ]; } public function render(array $data, array $options): string { return view('page-builder.components.testimonials', compact('data', 'options'))->render(); } } 