[x] implement testcase for ChangeNodeType without dimensions
[x] implement testcase for ChangeNodeType with dimensions
[x] implement remaining filters
[x] implement remaining transformations
[x] check we do not use Flow\Inject
[x] on resolving transformations / filters -> mapping "do you mean"? (for the new ones)
Transformations in the old system
[x] AddDimensions -> AddDimensionSpecialization -> global
!! Constraint: Target Dimension Space should be empty.
!! sets new edges - we need a NEW EVENT for this. We can NOT trigger SPECIALIZATION of all nodes using the existing events; because this materializes the nodes.
"de" exists; you want to create a "de_CH" specialization
[x] AddNewProperty
[x] ChangePropertyValue
[x] ChangeNodeType
[x] RemoveNode
with NodeVariantSelectionStrategy internally
[x] RemoveProperty
[x] RenameDimension:
(language:de -> language:de_CH)
MoveToDimensionSpacePoints -> global
needs new Event
{language: de} -> {language: de_DE}
{} -> {language: de}
{language: de} -> {}
!! Constraint: Target Dimension Space should be empty.
[x] RenameNode -> RenameNodeAggregate
[x] RenameProperty
[x] SetDimensions -> use either AddDimensionSpecialization or MoveToDimensionSpacePoints
[x] StripTagsOnProperty
Filters in the old system
[x] DimensionValues -> DimensionSpacePoint
[x] IsRemoved -> obsolete, as gone nodes are gone...
[x] NodeName
[x] NodeType
[x] PropertyNotEmpty
[x] PropertyValue
[x] Workspace -> won't implement, because we are always running only on a single workspace (live by default)
Can be reviewed for the overall architecture.
TODOs:
Transformations in the old system
Filters in the old system
NOTE: DEPENDS ON: https://github.com/neos/content-repository-dimensionspace/pull/1
Resolves: #157