72 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Twig
		
	
	
	
	
	
			
		
		
	
	
			72 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Twig
		
	
	
	
	
	
{#
 | 
						|
/**
 | 
						|
 * @file
 | 
						|
 * Default theme implementation for a fieldset element and its children.
 | 
						|
 *
 | 
						|
 * Available variables:
 | 
						|
 * - attributes: HTML attributes for the <fieldset> element.
 | 
						|
 * - errors: (optional) Any errors for this <fieldset> element, may not be set.
 | 
						|
 * - required: Boolean indicating whether the <fieldset> element is required.
 | 
						|
 * - legend: The <legend> element containing the following properties:
 | 
						|
 *   - title: Title of the <fieldset>, intended for use as the text
 | 
						|
       of the <legend>.
 | 
						|
 *   - attributes: HTML attributes to apply to the <legend> element.
 | 
						|
 * - description: The description element containing the following properties:
 | 
						|
 *   - content: The description content of the <fieldset>.
 | 
						|
 *   - attributes: HTML attributes to apply to the description container.
 | 
						|
 * - description_display: Description display setting. It can have these values:
 | 
						|
 *   - before: The description is output before the element.
 | 
						|
 *   - after: The description is output after the element (default).
 | 
						|
 *   - invisible: The description is output after the element, hidden visually
 | 
						|
 *     but available to screen readers.
 | 
						|
 * - children: The rendered child elements of the <fieldset>.
 | 
						|
 * - prefix: The content to add before the <fieldset> children.
 | 
						|
 * - suffix: The content to add after the <fieldset> children.
 | 
						|
 *
 | 
						|
 * @see template_preprocess_fieldset()
 | 
						|
 *
 | 
						|
 * @ingroup themeable
 | 
						|
 */
 | 
						|
#}
 | 
						|
{%
 | 
						|
  set classes = [
 | 
						|
    'js-form-item',
 | 
						|
    'form-item',
 | 
						|
    'js-form-wrapper',
 | 
						|
    'form-wrapper',
 | 
						|
  ]
 | 
						|
%}
 | 
						|
<fieldset{{ attributes.addClass(classes) }}>
 | 
						|
  {%
 | 
						|
    set legend_span_classes = [
 | 
						|
      'fieldset-legend',
 | 
						|
      required ? 'js-form-required',
 | 
						|
      required ? 'form-required',
 | 
						|
    ]
 | 
						|
  %}
 | 
						|
  {# Always wrap fieldset legends in a <span> for CSS positioning. #}
 | 
						|
  <legend{{ legend.attributes }}>
 | 
						|
    <span{{ legend_span.attributes.addClass(legend_span_classes) }}>{{ legend.title }}</span>
 | 
						|
  </legend>
 | 
						|
  <div class="fieldset-wrapper">
 | 
						|
    {% if description_display == 'before' and description.content %}
 | 
						|
      <div{{ description.attributes.addClass('description') }}>{{ description.content }}</div>
 | 
						|
    {% endif %}
 | 
						|
    {% if errors %}
 | 
						|
      <div>
 | 
						|
        {{ errors }}
 | 
						|
      </div>
 | 
						|
    {% endif %}
 | 
						|
    {% if prefix %}
 | 
						|
      <span class="field-prefix">{{ prefix }}</span>
 | 
						|
    {% endif %}
 | 
						|
    {{ children }}
 | 
						|
    {% if suffix %}
 | 
						|
      <span class="field-suffix">{{ suffix }}</span>
 | 
						|
    {% endif %}
 | 
						|
    {% if description_display in ['after', 'invisible'] and description.content %}
 | 
						|
      <div{{ description.attributes.addClass('description') }}>{{ description.content }}</div>
 | 
						|
    {% endif %}
 | 
						|
  </div>
 | 
						|
</fieldset>
 |