<?php
 namespace App\PageBuilder\Components\Content; use App\PageBuilder\PageComponent; class QuoteComponent extends PageComponent { public function key(): string { return 'quote'; } public function category(): string { return 'content'; } public function label(): string { return 'Quote / Pullquote'; } public function icon(): string { return 'fas fa-quote-left'; } public function schema(): array { return [ 'quote' => ['type' => 'textarea', 'label' => 'Alıntı', 'required' => true], 'author' => ['type' => 'text', 'label' => 'Yazar'], 'role' => ['type' => 'text', 'label' => 'Rol/Şirket'], 'avatar' => ['type' => 'image', 'label' => 'Yazar görseli (opsiyonel)'], 'options' => [ 'color' => ['type' => 'color_token', 'default' => 'light'], 'padding' => ['type' => 'padding_token', 'default' => 'lg'], 'alignment' => ['type' => 'alignment_token', 'default' => 'center'], 'style' => ['type' => 'select', 'label' => 'Stil', 'options' => ['plain', 'bordered', 'card', 'large'], 'default' => 'large'], 'show_quote_mark' => ['type' => 'boolean', 'label' => 'Tırnak işareti göster', 'default' => true], ], ]; } public function defaults(): array { return [ 'quote' => 'Bu hizmet beklentilerimi katlayarak aştı.', 'author' => 'Adınız Soyadınız', 'role' => 'CEO, Şirket Adı', 'avatar' => null, 'options' => ['color' => 'light', 'padding' => 'lg', 'alignment' => 'center', 'style' => 'large', 'show_quote_mark' => true], ]; } public function render(array $data, array $options): string { return view('page-builder.components.quote', compact('data', 'options'))->render(); } } 