* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0) */ declare(strict_types=1); namespace PrestaShopBundle\Form\Admin\Extension; use Symfony\Component\Form\AbstractTypeExtension; use Symfony\Component\Form\Extension\Core\Type\FileType; use Symfony\Component\Form\FormInterface; use Symfony\Component\Form\FormView; use Symfony\Component\OptionsResolver\OptionsResolver; class DownloadFileExtension extends AbstractTypeExtension { /** * {@inheritdoc} */ public function configureOptions(OptionsResolver $resolver): void { $resolver ->setDefaults([ 'download_url' => null, ]) ->setAllowedTypes('download_url', ['null', 'string']) ; } /** * {@inheritdoc} */ public function buildView(FormView $view, FormInterface $form, array $options): void { $view->vars['download_url'] = $options['download_url']; } /** * {@inheritdoc} */ public static function getExtendedTypes(): iterable { return [FileType::class]; } }