33namespace EasyCorp \Bundle \EasyAdminBundle \Factory ;
44
55use EasyCorp \Bundle \EasyAdminBundle \Collection \FilterCollection ;
6+ use EasyCorp \Bundle \EasyAdminBundle \Config \KeyValueStore ;
67use EasyCorp \Bundle \EasyAdminBundle \Dto \EntityDto ;
78use EasyCorp \Bundle \EasyAdminBundle \Form \Type \CrudBatchActionFormType ;
89use EasyCorp \Bundle \EasyAdminBundle \Form \Type \CrudFormType ;
@@ -26,24 +27,20 @@ public function __construct(FormFactoryInterface $symfonyFormFactory, CrudUrlGen
2627 $ this ->crudUrlGenerator = $ crudUrlGenerator ;
2728 }
2829
29- public function createEditForm (EntityDto $ entityDto ): FormInterface
30+ public function createEditForm (EntityDto $ entityDto, KeyValueStore $ formOptions ): FormInterface
3031 {
31- $ formTypeOptions = [
32- 'entityDto ' => $ entityDto ,
33- 'attr ' => ['id ' => sprintf ('edit-%s-form ' , $ entityDto ->getName ())],
34- ];
32+ $ formOptions ->set ('entityDto ' , $ entityDto );
33+ $ formOptions ->set ('attr.id ' , sprintf ('edit-%s-form ' , $ entityDto ->getName ()));
3534
36- return $ this ->symfonyFormFactory ->createNamedBuilder ($ entityDto ->getName (), CrudFormType::class, $ entityDto ->getInstance (), $ formTypeOptions )->getForm ();
35+ return $ this ->symfonyFormFactory ->createNamedBuilder ($ entityDto ->getName (), CrudFormType::class, $ entityDto ->getInstance (), $ formOptions -> all () )->getForm ();
3736 }
3837
39- public function createNewForm (EntityDto $ entityDto ): FormInterface
38+ public function createNewForm (EntityDto $ entityDto, KeyValueStore $ formOptions ): FormInterface
4039 {
41- $ formTypeOptions = [
42- 'entityDto ' => $ entityDto ,
43- 'attr ' => ['id ' => sprintf ('new-%s-form ' , $ entityDto ->getName ())],
44- ];
40+ $ formOptions ->set ('entityDto ' , $ entityDto );
41+ $ formOptions ->set ('attr.id ' , sprintf ('new-%s-form ' , $ entityDto ->getName ()));
4542
46- return $ this ->symfonyFormFactory ->createNamedBuilder ($ entityDto ->getName (), CrudFormType::class, $ entityDto ->getInstance (), $ formTypeOptions )->getForm ();
43+ return $ this ->symfonyFormFactory ->createNamedBuilder ($ entityDto ->getName (), CrudFormType::class, $ entityDto ->getInstance (), $ formOptions -> all () )->getForm ();
4744 }
4845
4946 public function createBatchActionsForm (): FormInterface
0 commit comments