diff --git a/Resources/Private/Fusion/Prototypes/IncludeCase.fusion b/Resources/Private/Fusion/Prototypes/IncludeCase.fusion index 819f3ab..c17a1e8 100644 --- a/Resources/Private/Fusion/Prototypes/IncludeCase.fusion +++ b/Resources/Private/Fusion/Prototypes/IncludeCase.fusion @@ -1,18 +1,28 @@ -prototype(Jonnitto.PhotoSwipe:IncludeCase) < prototype(Neos.Fusion:Component) { +prototype(Jonnitto.PhotoSwipe:IncludeCase) < prototype(Neos.Fusion:Component) { alwaysInclude = ${Configuration.setting('Jonnitto.PhotoSwipe.alwaysInclude')} selectorCollection = ${Configuration.setting('Jonnitto.PhotoSwipe.selector.collection')} selectorContent = ${Configuration.setting('Jonnitto.PhotoSwipe.selector.content')} selectorOnDocument = ${Configuration.setting('Jonnitto.PhotoSwipe.selector.onDocument')} - renderer = Carbon.Condition:Case { - enabled = ${node.context.live ? true : false} - context.live = ${props.alwaysInclude} + includeInBackend = false + node = ${documentNode} - content { - collection = ${props.selectorCollection} - filter = ${props.selectorContent} + renderer = Neos.Fusion:Case { + inBackend { + condition = ${node.context.inBackend} + renderer = ${props.includeInBackend} + } + onDocument { + condition = ${props.selectorOnDocument && q(props.node).is(props.selectorOnDocument)} + renderer = true + } + inContent { + condition = ${props.selectorContent && q(props.node).children(props.selectorCollection).find(props.selectorContent).is()} + renderer = true + } + default { + condition = true + renderer = ${props.alwaysInclude} } - - document.filter = ${props.selectorOnDocument} } } diff --git a/composer.json b/composer.json index 431fe30..86b7bb6 100644 --- a/composer.json +++ b/composer.json @@ -20,10 +20,9 @@ } ], "require": { - "neos/neos": "~3.3 || ~4.0", + "neos/neos": "^3.3 || ^4.0", "neos/fusion-afx": "^1.0", - "carbon/condition": "^1.1", - "carbon/includeassets": "^3.1" + "carbon/includeassets": "^3.5" }, "autoload": { "psr-4": {