* @license https://www.gnu.org/licenses/agpl-3.0.en.html/ GNU Affero General Public License v3.0 */ namespace App\Http\Livewire; use Livewire\Component; class BbcodeInput extends Component { public string $label = ''; public string $name = ''; public bool $isPreviewEnabled = false; public bool $isRequired = false; public string $contentBbcode = ''; public string $contentHtml = ''; final public function mount(string $name, string $label, bool $required = false, ?string $content = null): void { $this->name = $name; $this->label = $label; $this->isRequired = $required; $this->contentBbcode = $content ?? old($name) ?? ''; } final public function render(): \Illuminate\Contracts\View\Factory|\Illuminate\Contracts\View\View|\Illuminate\Contracts\Foundation\Application { return view('livewire.bbcode-input', [ 'contentBbcode' => $this->contentBbcode, 'label' => $this->label, ]); } }