'permit_empty|string', ]; protected string $defaultValue = ''; public function __construct(string $pluginKey) { $this->injectRules(); parent::__construct($pluginKey); } #[Override] public function loadData(array $data): void { $data = $this->transformData($data); parent::loadData($data); } public function render(string $name, mixed $value, string $class = ''): string { $isRequired = $this->optional ? 'false' : 'true'; $options = esc(json_encode($this->getOptionsArray())); return << HTML; } }