Sha256: dfe3a98470b07adb8418ce9450ead387a16ab5de1744620bc5acc5eb55e7c844
Contents?: true
Size: 1.92 KB
Versions: 1
Compression:
Stored size: 1.92 KB
Contents
<% id_prefix ||= "radio-#{SecureRandom.hex(4)}" items ||= [] # check if any item is set as being conditional has_conditional = items.any? { |item| item["conditional"] } %> <%= content_tag :div, class: "govuk-form-group" do %> <%= content_tag :div, class: "govuk-radios", data: { module: ('radios' if has_conditional) } do %> <% items.each_with_index do |item, index| %> <% if item === :or %> <div class="govuk-radios__divider"> <%= t('components.radio.or') %> </div> <% else %> <% item_next = items[index + 1] unless index === items.size - 1 label_id = item[:id] ? item[:id] : "#{id_prefix}-#{index}" label_hint_id = "label-hint-#{SecureRandom.hex(4)}" if item[:hint_text].present? conditional_id = "conditional-#{SecureRandom.hex(4)}" if item[:conditional].present? %> <%= tag.div class: %w( gem-c-radio govuk-radios__item ) do %> <%= check_box_tag name, item[:value], item[:checked], { class: "govuk-radios__input", id: label_id, type: "radio", aria: { describedby: label_hint_id }, data: { "aria-controls": conditional_id } } %> <%= render "govuk_publishing_components/components/label", { hint_id: label_hint_id, html_for: label_id, classes: "govuk-radios__label", hint_text_classes: "govuk-radios__hint", hint_text: item[:hint_text], text: item[:text], bold: item[:bold] } %> <% end %> <% if item[:conditional] %> <div class="govuk-radios__conditional" id="<%= conditional_id %>"> <%= item[:conditional] %> </div> <% end %> <% end %> <% end %> <% end %> <% end %>
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
govuk_publishing_components-9.7.0 | app/views/govuk_publishing_components/components/_radio.html.erb |