{% load widget_tweaks base %}
{% comment %} 
# Switch component params:
    - form (required): form object
    - errors (required): field errors (form.errors.FIELD_NAME)
    - input (required): field object (form.FIELD_NAME)
    - classes: Classes to add to the main div $element
    - placeholder: Placeholder text
    - input_classes: Classes on input element
    - help_text: Help text to display below input
{% endcomment %}
<div class="form-check form-check-custom form-check-solid row mb-9 {{ classes }}">
{% if input %}
    {% assign_variable "form-check-input" as form_classes %}

    {% if not placeholder %}
        {% assign_variable input.label as placeholder %}
    {% endif %}

    {% if input_classes %}
        {% add_string form_classes " " input_classes as form_classes %}
    {% endif %}

    {% if form.is_bound %}
        {% if errors %}
            {% assign_variable "is-invalid" as validation_class %}
        {% else %}
            {% assign_variable "is-valid" as validation_class %}
        {% endif %}
    {% else %}
        {% assign_variable "" as validation_class %}
    {% endif %}
    {% add_string form_classes " " validation_class as form_classes_with_validation %}

    <label class="form-check form-check-custom form-check-solid">
        {% render_field input class+=form_classes_with_validation placeholder+=placeholder %}
        <span class="form-check-label text-gray-600">
            {{ label|default:input.label }}
        </span>
    </label>
    {% include "backoffice/masters/includes/help_field.html" with form=form form_field=form.have_roles valid_feedback=valid_feedback mutex_text=mutex_text only %}
    
    {% if help_text %}
    <span class="form-text text-muted">{{ help_text }}</span>
    {% endif %}

{% endif %}
</div>