diff --git a/Classes/Fusion/Helper/PositionalArraySorterHelper.php b/Classes/Fusion/Helper/PositionalArraySorterHelper.php deleted file mode 100644 index ee9b53fd83..0000000000 --- a/Classes/Fusion/Helper/PositionalArraySorterHelper.php +++ /dev/null @@ -1,40 +0,0 @@ - $array - * @param string $positionPath - * @return array - */ - public function sort(array $array, string $positionPath = 'position'): array - { - return (new PositionalArraySorter($array, $positionPath))->toArray(); - } - - /** - * @param string $methodName - * @return boolean - */ - public function allowsCallOfMethod($methodName) - { - return true; - } -} diff --git a/Classes/Fusion/Helper/RenderingModeHelper.php b/Classes/Fusion/Helper/RenderingModeHelper.php new file mode 100644 index 0000000000..e1b07ddd23 --- /dev/null +++ b/Classes/Fusion/Helper/RenderingModeHelper.php @@ -0,0 +1,41 @@ + + */ + protected $editPreviewModes; + + /** + * Returns the sorted configuration of all rendering modes {@see RenderingMode} + * + * todo: evaluate if this should be part of {@see RenderingModeService} + * @return array + */ + public function findAllSorted(): array + { + // sorting seems expected for the Neos.Ui: https://github.com/neos/neos-ui/issues/1658 + return (new PositionalArraySorter($this->editPreviewModes))->toArray(); + } + + public function allowsCallOfMethod($methodName) + { + return true; + } +} diff --git a/Configuration/Settings.yaml b/Configuration/Settings.yaml index 014a5a60e0..3527f1aada 100644 --- a/Configuration/Settings.yaml +++ b/Configuration/Settings.yaml @@ -51,7 +51,7 @@ Neos: backgroundColor: '#ffffff' frontendConfiguration: - editPreviewModes: '${Neos.Ui.PositionalArraySorter.sort(Configuration.setting(''Neos.Neos.userInterface.editPreviewModes''))}' + editPreviewModes: '${Neos.Ui.RenderingMode.findAllSorted()}' # You may use this place to deliver some configuration to your custom UI components, e.g.: # 'Your.Own:Package': # someKey: someValue @@ -101,9 +101,9 @@ Neos: configurationDefaultEelContext: Neos.Ui.ContentDimensions: Neos\Neos\Ui\Fusion\Helper\ContentDimensionsHelper Neos.Ui.NodeInfo: Neos\Neos\Ui\Fusion\Helper\NodeInfoHelper - Neos.Ui.Workspace: Neos\Neos\Ui\Fusion\Helper\WorkspaceHelper + Neos.Ui.RenderingMode: Neos\Neos\Ui\Fusion\Helper\RenderingModeHelper Neos.Ui.StaticResources: Neos\Neos\Ui\Fusion\Helper\StaticResourcesHelper - Neos.Ui.PositionalArraySorter: Neos\Neos\Ui\Fusion\Helper\PositionalArraySorterHelper + Neos.Ui.Workspace: Neos\Neos\Ui\Fusion\Helper\WorkspaceHelper documentNodeInformation: metaData: documentNode: '${Neos.Ui.NodeInfo.serializedNodeAddress(documentNode)}' @@ -205,4 +205,3 @@ Neos: Fusion: defaultContext: Neos.Ui.StaticResources: Neos\Neos\Ui\Fusion\Helper\StaticResourcesHelper - Neos.Ui.PositionalArraySorter: Neos\Neos\Ui\Fusion\Helper\PositionalArraySorterHelper