forked from a64f7bb4-7358-4778-9fbe-3b882c34cc1d/v1
49 lines
1.4 KiB
Twig
49 lines
1.4 KiB
Twig
{% extends "input.html.twig" %}
|
|
{#
|
|
/**
|
|
* @file
|
|
* Theme suggestion for "button" input form element.
|
|
*
|
|
* Available variables:
|
|
* - attributes: A list of HTML attributes for the input element.
|
|
* - children: Optional additional rendered elements.
|
|
* - icon: An icon.
|
|
* - icon_only: Flag to display only the icon and not the label.
|
|
* - icon_position: Where an icon should be displayed.
|
|
* - label: button label.
|
|
* - prefix: Markup to display before the input element.
|
|
* - suffix: Markup to display after the input element.
|
|
* - type: The type of input.
|
|
*
|
|
* @ingroup templates
|
|
*
|
|
* @see \Drupal\bootstrap\Plugin\Preprocess\InputButton
|
|
* @see \Drupal\bootstrap\Plugin\Preprocess\Input
|
|
* @see template_preprocess_input()
|
|
*/
|
|
#}
|
|
{% apply spaceless %}
|
|
{%
|
|
set classes = [
|
|
'btn',
|
|
type == 'submit' ? 'js-form-submit',
|
|
icon and icon_position and not icon_only ? 'icon-' ~ icon_position,
|
|
]
|
|
%}
|
|
{% block input %}
|
|
{% if icon and icon_only %}
|
|
<button{{ attributes.addClass(classes, 'icon-only') }}>
|
|
<span class="sr-only">{{ label }}</span>
|
|
{{ icon }}
|
|
</button>
|
|
{% else %}
|
|
{% if icon_position == 'after' %}
|
|
<button{{ attributes.addClass(classes) }}>{{ label }}{{ icon }}</button>{{ children }}
|
|
{% else %}
|
|
<button{{ attributes.addClass(classes) }}>{{ icon }}{{ label }}</button>{{ children }}
|
|
{% endif %}
|
|
{% endif %}
|
|
{{ children }}
|
|
{% endblock %}
|
|
{% endapply %}
|