prototype(Neos.Neos:DimensionsMenu) {
    @context.config = GesagtGetan.Basic:Config
    templatePath = 'resource://GesagtGetan.Basic/Private/Fusion/Menu/DimensionsMenu.html'

    attributes.class = 'dimensions-menu'
    renderCurrent = true
    itemLabel = ${item.label}
    itemClass = 'dimensions-entry'

    active.attributes.class = GesagtGetan.Basic:DimensionsMenu.Class
    current.attributes.class = GesagtGetan.Basic:DimensionsMenu.Class
    normal.attributes.class = GesagtGetan.Basic:DimensionsMenu.Class
    absent.attributes.class = GesagtGetan.Basic:DimensionsMenu.Class
}

prototype(GesagtGetan.Basic:DimensionsMenu.Class) < prototype(Neos.Fusion:RawArray) {
    dimension = Neos.Fusion:Collection {
        collection = ${item.targetDimensions}
        itemRenderer = ${'dimension-' + itemKey + ' ' + itemKey + '-' + item.value}
    }
    state = ${'-' + item.state}
    absent = ${item.state == 'absent' ? '-normal' : false}
}
