{%- set options = options ?? [] %} {%- set value = value ?? null %} {%- set class = (class ?? [])|explodeClass|merge([ 'radio-group', (toggle ?? false) ? 'fieldtoggle' : null, (disabled ?? false) ? 'disabled' : null, ]|filter) %} {%- set containerAttributes = { class: class, data: { 'target-prefix': (toggle ?? false) ? (targetPrefix ?? '#') : false, }, }|merge(containerAttributes ?? [], recursive=true) %} {%- if block('attr') is defined %} {%- set containerAttributes = containerAttributes|merge(('
')|parseAttr, recursive=true) %} {% endif %} {% tag 'div' with containerAttributes %} {%- for key, option in options %} {%- if option is not iterable %} {%- set option = {label: option, value: key} %} {%- endif %}
{# Change from `_includes/forms/radioGroup` to handle integers for option values #} {% set optionValue = option.value is defined ? option.value : key %} {% include "_includes/forms/radio" with { describedBy: describedBy ?? null, name: name ?? null, checked: (optionValue~'') is same as (value~''), autofocus: loop.first and (autofocus ?? false) and not craft.app.request.isMobileBrowser(true), }|merge(option) only %}
{% endfor %} {% endtag %}