{#
/**
 * @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 fieldeset 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.
 * - description: The description element containing the following properties:
 *   - content: The description content of the fieldset.
 *   - attributes: HTML attributes to apply to the description container.
 * - 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 = [
    'fieldset',
    form_group ? 'form-group',
    'js-form-item',
    'form-item',
    'js-form-wrapper',
    'form-wrapper',
  ]
%}

{{ attach_library('socialbase/popover')}}

<fieldset{{ attributes.addClass(classes) }}>
  {%
    set label_classes = [
      form_group ? 'control-label',
      required ? 'js-form-required',
      required ? 'form-required',
      title_display == 'invisible' ? 'sr-only',
    ]
  %}
  {#  Always wrap fieldset legends in a SPAN for CSS positioning. #}
  <legend{{ legend.attributes.addClass(label_classes) }}>
    <span{{ legend_span.attributes }}>{{ legend.title }}</span>

    {%- if required -%}
      <span class="form-required">*</span>
    {%- endif -%}

    {% if popover is not empty %}
      {{ popover }}
    {% endif %}
  </legend>

  {% if description.content %}
    <div{{ description.attributes.addClass('help-block') }}>{{ description.content }}</div>
  {% endif %}

  <div{{content_attributes.addClass('fieldset-wrapper')}}>
    {% if prefix %}
      <span class="field-prefix">{{ prefix }}</span>
    {% endif %}
    {{ children }}
    {% if suffix %}
      <span class="field-suffix">{{ suffix }}</span>
    {% endif %}
  </div>

  {% if errors %}
    <div class="form-item--error-message alert alert-danger alert-sm alert-dismissible form-control-radius">
      {{ errors }}
      <button type="button" class="close" data-dismiss="alert" aria-label="{{ "Close"|t }}">
        <span aria-hidden="true">×</span>
      </button>
    </div>
  {% endif %}

{#  {% if description_display !== 'before' and description.content %}#}
{#    <div{{ description.attributes.addClass('help-block') }}>{{ description.content }}</div>#}
{#  {% endif %}#}

</fieldset>
