{% macro radios(
  field,
  hint=None,
  disable=[],
  option_hints={}
) %}
  <div class="form-group {% if field.errors %} error{% endif %}">
    <fieldset>
      <legend class="form-label">
        {{ field.label.text|safe }}
        {% if field.errors %}
          <span class="error-message">
            {{ field.errors[0] }}
          </span>
        {% endif %}
      </legend>
      {% for option in field %}
        <label class="block-label" for="{{ option.id }}">
          <input
            id="{{ option.id }}" name="{{ option.name }}" type="radio" value="{{ option.data }}"
            {% if option.data in disable %}
              disabled
            {% endif %}
            {% if option.checked %}
              checked
            {% endif %}
          >
          {{ option.label.text }}
          {% if option_hints[option.data] %}
            <div class="block-label-hint">
              {{ option_hints[option.data] }}
            </div>
          {% endif %}
        </label>
      {% endfor %}
    </fieldset>
  </div>
{% endmacro %}


{% macro radio_select(
 field,
 hint=None,
 wrapping_class='form-group'
) %}
 <div class="{{ wrapping_class }} {% if field.errors %} error{% endif %}">
   <fieldset>
     <legend class="form-label">
       {{ field.label.text }}
       {% if field.errors %}
         <span class="error-message">
           {{ field.errors[0] }}
         </span>
       {% endif %}
     </legend>
     <div class="radio-select" data-module="radio-select" data-categories="{{ field.categories|join(',') }}">
       <div class="radio-select-column">
       {% for option in field %}
         <label class="block-label" for="{{ option.id }}">
           {{ option }}
           {{ option.label.text }}
         </label>
         {% if loop.first %}
       </div>
       <div class="radio-select-column">
         {% endif %}
       {% endfor %}
       </div>
     </div>
   </fieldset>
 </div>
{% endmacro %}


{% macro branding_radios(
  field,
  hint=None,
  branding_dict={}
) %}
  <div class="form-group {% if field.errors %} error{% endif %}">
    <fieldset>
      <legend class="form-label">
        {{ field.label.text }}
        {% if field.errors %}
          <span class="error-message">
            {{ field.errors[0] }}
          </span>
        {% endif %}
      </legend>
      {% for value, option, checked in field.iter_choices() %}
        <label class="block-label" for="{{ field.name }}-{{ loop.index }}">
          <input
            type="radio"
            name="{{ field.name }}"
            id="{{ field.name }}-{{ loop.index }}"
            value="{{ value }}"
            {% if checked %}checked="checked"{% endif %}
          />
          {% if branding_dict.get(value, {}).get('colour') %}
            <span style="background: {{ branding_dict[value].colour }}; display: inline-block; width: 3px; height: 27px"></span>
          {% endif %}
          {% if branding_dict.get(value, {}).get('logo') %}
            <img
              src="{{ branding_dict[value].logo }}"
              height="27"
            />
          {% endif %}
          {{option}}
        </label>
      {% endfor %}
    </fieldset>
  </div>
{% endmacro %}
