[FEATURE] EXT:form - introduce YAML "imports" 10/54210/32
authorRalf Zimmermann <ralf.zimmermann@tritum.de>
Fri, 22 Sep 2017 13:44:44 +0000 (15:44 +0200)
committerJigal van Hemert <jigal.van.hemert@typo3.org>
Tue, 9 Jan 2018 18:11:32 +0000 (19:11 +0100)
commita52a99220ca24251186ea88d11b3db43436a8156
tree32eb10173d304540574ffaa8df54639f9f4edd7c
parent9bbdc7680c011dadbdb5d7c063a29e47ac284ecc
[FEATURE] EXT:form - introduce YAML "imports"

The form extension now features imports in YAML configuration files via
the special toplevel "imports" option. With the help of this feature,
form setup and especially form definitions can be reused without copying.

Furthermore, the YAML loading has been centralized and slightly extended
to meet the requirements of the form framework.

The configuration of the form framework has been merged into one file. A
follow up patch will rearrange the configuration to improve clarity and
understandability. This task heavily depends on the "imports"
functionality.

Resolves: #82089
Releases: master
Change-Id: I44f52572ab2d516949dd017ef1face351b448d65
Reviewed-on: https://review.typo3.org/54210
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: Mathias Brodala <mbrodala@pagemachine.de>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Jigal van Hemert <jigal.van.hemert@typo3.org>
Tested-by: Jigal van Hemert <jigal.van.hemert@typo3.org>
41 files changed:
typo3/sysext/core/Classes/Configuration/Loader/FalYamlFileLoader.php [new file with mode: 0644]
typo3/sysext/core/Classes/Configuration/Loader/YamlFileLoader.php
typo3/sysext/core/Classes/Configuration/Loader/YamlFileLoader/Configuration.php [new file with mode: 0644]
typo3/sysext/core/Classes/Configuration/Loader/YamlFileLoaderInterface.php [new file with mode: 0644]
typo3/sysext/core/Classes/Configuration/Writer/Exception/FileWriteException.php [new file with mode: 0644]
typo3/sysext/core/Classes/Configuration/Writer/YamlFileWriter.php [new file with mode: 0644]
typo3/sysext/core/Classes/Resource/ResourceFactory.php
typo3/sysext/core/Documentation/Changelog/master/Deprecation-82089-ExtFormYamlConfigurationsTyposcriptOption.rst [new file with mode: 0644]
typo3/sysext/core/Documentation/Changelog/master/Feature-82089-ExtFormSupportsYamlImports.rst [new file with mode: 0644]
typo3/sysext/core/Tests/Unit/Configuration/Loader/YamlFileLoaderTest.php
typo3/sysext/form/Classes/Controller/FormEditorController.php
typo3/sysext/form/Classes/Controller/FormFrontendController.php
typo3/sysext/form/Classes/Controller/FormManagerController.php
typo3/sysext/form/Classes/Domain/Exception/FormDefinitionNotValidException.php [new file with mode: 0644]
typo3/sysext/form/Classes/Domain/Factory/ArrayFormFactory.php
typo3/sysext/form/Classes/Mvc/Configuration/ConfigurationManager.php
typo3/sysext/form/Classes/Mvc/Configuration/Exception/NoConfigurationFoundException.php [new file with mode: 0644]
typo3/sysext/form/Classes/Mvc/Configuration/YamlSource.php [deleted file]
typo3/sysext/form/Classes/Mvc/Persistence/FormPersistenceManager.php
typo3/sysext/form/Classes/Property/TypeConverter/FormDefinitionArrayConverter.php
typo3/sysext/form/Classes/ViewHelpers/RenderViewHelper.php
typo3/sysext/form/Configuration/TypoScript/setup.txt
typo3/sysext/form/Configuration/Yaml/BaseSetup.yaml [deleted file]
typo3/sysext/form/Configuration/Yaml/FormEditorSetup.yaml [deleted file]
typo3/sysext/form/Configuration/Yaml/FormEngineSetup.yaml [deleted file]
typo3/sysext/form/Configuration/Yaml/FormSetup.yaml [new file with mode: 0644]
typo3/sysext/form/Resources/Private/Backend/Partials/FormEditor/Inspector/EmailSelectEditor.html [new file with mode: 0644]
typo3/sysext/form/Tests/Unit/Mvc/Configuration/ConfigurationManagerTest.php [new file with mode: 0644]
typo3/sysext/form/Tests/Unit/Mvc/Configuration/Fixtures/File1.yaml [new file with mode: 0644]
typo3/sysext/form/Tests/Unit/Mvc/Configuration/Fixtures/File2.yaml [new file with mode: 0644]
typo3/sysext/form/Tests/Unit/Mvc/Configuration/Fixtures/File3.yaml [new file with mode: 0644]
typo3/sysext/form/Tests/Unit/Mvc/Configuration/Fixtures/File4.yaml [new file with mode: 0644]
typo3/sysext/form/Tests/Unit/Mvc/Configuration/YamlSourceTest.php [deleted file]
typo3/sysext/form/Tests/Unit_Deprecated/Mvc/Configuration/ConfigurationManagerTest.php [new file with mode: 0644]
typo3/sysext/form/Tests/Unit_Deprecated/Mvc/Configuration/Fixtures/File1.yaml [new file with mode: 0644]
typo3/sysext/form/Tests/Unit_Deprecated/Mvc/Configuration/Fixtures/File2.yaml [new file with mode: 0644]
typo3/sysext/form/Tests/Unit_Deprecated/Mvc/Configuration/Fixtures/File3.yaml [new file with mode: 0644]
typo3/sysext/form/Tests/Unit_Deprecated/Mvc/Configuration/Fixtures/File4.yaml [new file with mode: 0644]
typo3/sysext/form/Tests/Unit_Deprecated/Mvc/Configuration/Fixtures/Header.yaml [new file with mode: 0644]
typo3/sysext/form/ext_localconf.php
typo3/sysext/form/ext_typoscript_setup.txt [deleted file]