{% import '_includes/forms' as forms %} {% set pretendTabName = pretendTabName ?? 'Content'|t('app') %} {% set fieldLayout = fieldLayout ?? create('craft\\models\\FieldLayout') %} {% set groups = craft.app.fields.getAllGroups() %} {% do view.registerTranslations('app', [ 'Apply', 'Delete', 'Give your tab a name.', 'Move to the left', 'Move to the right', 'Remove', 'Rename', 'Required', '{pct} width', ]) %} {% macro tab(tabName, selectedBlockTypes) %}
{{ tabName }}
{% for blockType in selectedBlockTypes %}

{{ blockType.getBlockType().name|t('site') }}

{{ blockType.getBlockType().handle }}
{% endfor %}
{% endmacro %} {% macro elementSelector(element, forLibrary, attr) %} {% if element is instance of('craft\\fieldlayoutelements\\BaseField') %} {% set attr = { class: [ not forLibrary and element.required ? 'fld-required', ]|filter, data: { keywords: forLibrary ? element.keywords()|join(' ')|lower : false, }, }|merge(attr ?? {}, recursive=true) %} {% endif %} {% set settingsHtml = element.settingsHtml() %} {{ element.selectorHtml()|attr({ class: [ 'fld-element', forLibrary ? 'unused', ]|filter, data: { type: className(element), config: element.toArray(), 'has-custom-width': element.hasCustomWidth(), 'settings-html': settingsHtml ? settingsHtml|namespaceAttributes("element-#{random()}") ?: false, }, }|merge(attr ?? {}, recursive=true)) }} {% endmacro %}

{{ "Group your block types"|t('spoon') }}

{% if spoonedBlockTypes and spoonedBlockTypes|length %} {% for groupName, selectedBlockTypes in spoonedBlockTypes %} {{ _self.tab(groupName, selectedBlockTypes) }} {% endfor %} {% endif %}
{{ "New Tab"|t('app') }}
{% set unGroupedSelectedBlockTypeIds = [] %} {% if spoonedBlockTypes and spoonedBlockTypes|length %} {% for groupName,selectedBlockTypes in spoonedBlockTypes %} {% for selectedBlockType in selectedBlockTypes %} {% set unGroupedSelectedBlockTypeIds = unGroupedSelectedBlockTypeIds|merge([selectedBlockType.matrixBlockTypeId]) %} {% endfor %} {% endfor %} {% endif %}
{{ "Blocks"|t('app') }}
{% for blockType in blockTypes %} {% set selected = blockType.id in unGroupedSelectedBlockTypeIds %}

{{ blockType.name|t('site') }}

{{ blockType.handle }}
{% endfor %}