setProperty($propertyName) ->setLabel($label) ->addWebpackEncoreEntries( Asset::new('ranky_media') ->webpackEntrypointName('ranky_media') ) ->setFormType(RankyMediaFileManagerType::class) ->setFormTypeOptions([ self::OPTION_SAVE_PATH => false, self::OPTION_MULTIPLE_SELECTION => false, self::OPTION_ASSOCIATION => false, self::OPTION_MODAL_TITLE => 'Media File Manager', self::OPTION_PREVIEW_JUSTIFICATION => 'center', self::OPTION_BUTTON_JUSTIFICATION => 'flex-end', ]) ->addFormTheme('@RankyMedia/form.html.twig') ->setTemplatePath('@RankyMedia/preview/easyadmin.html.twig') ->setSortable(false); } public function previewJustification(string $justification): self { $this->setFormTypeOption(self::OPTION_PREVIEW_JUSTIFICATION, $justification); return $this; } public function buttonJustification(string $justification): self { $this->setFormTypeOption(self::OPTION_BUTTON_JUSTIFICATION, $justification); return $this; } public function multipleSelection(bool $isMultiple = true): self { $this->setFormTypeOption(self::OPTION_MULTIPLE_SELECTION, $isMultiple); return $this; } public function association(bool $isAssociation = true): self { $this->setFormTypeOption(self::OPTION_ASSOCIATION, $isAssociation); return $this; } public function modalTitle(string $modalTitle): self { $this->setFormTypeOption(self::OPTION_MODAL_TITLE, $modalTitle); return $this; } public function savePath(bool $savePath = true): self { $this->setFormTypeOption(self::OPTION_SAVE_PATH, $savePath); return $this; } } }