{"en_US": "<t t-name=\"sale.variants\">\n        <t t-set=\"attribute_exclusions\" t-value=\"product._get_attribute_exclusions(parent_combination, parent_name)\"/>\n        <ul t-attf-class=\"list-unstyled js_add_cart_variants mb-0 #{ul_class}\" t-att-data-attribute_exclusions=\"json.dumps(attribute_exclusions)\">\n            <t t-foreach=\"product.valid_product_template_attribute_line_ids\" t-as=\"ptal\">\n                <!-- Attributes selection is hidden if there is only one value available and it's not a custom value -->\n                <li t-att-data-attribute_id=\"ptal.attribute_id.id\" t-att-data-attribute_name=\"ptal.attribute_id.name\" t-att-data-attribute_display_type=\"ptal.attribute_id.display_type\" t-attf-class=\"variant_attribute #{'d-none' if len(ptal.product_template_value_ids._only_active()) == 1 and not ptal.product_template_value_ids._only_active()[0].is_custom else ''}\">\n\n                    <!-- Used to customize layout if the only available attribute value is custom -->\n                    <t t-set=\"single\" t-value=\"len(ptal.product_template_value_ids._only_active()) == 1\"/>\n                    <t t-set=\"single_and_custom\" t-value=\"single and ptal.product_template_value_ids._only_active()[0].is_custom\"/>\n                    <strong t-field=\"ptal.attribute_id.name\" class=\"attribute_name\"/>\n\n                    <t t-if=\"ptal.attribute_id.display_type == 'select'\">\n                        <select t-att-data-attribute_id=\"ptal.attribute_id.id\" t-attf-class=\"form-select css_attribute_select o_wsale_product_attribute js_variant_change #{ptal.attribute_id.create_variant} #{'d-none' if single_and_custom else ''}\" t-att-name=\"'ptal-%s' % ptal.id\">\n                            <t t-foreach=\"ptal.product_template_value_ids._only_active()\" t-as=\"ptav\">\n                                <option t-att-value=\"ptav.id\" t-att-data-value_id=\"ptav.id\" t-att-data-value_name=\"ptav.name\" t-att-data-attribute_name=\"ptav.attribute_id.name\" t-att-data-is_custom=\"ptav.is_custom\" t-att-selected=\"ptav in combination\" t-att-data-is_single=\"single\" t-att-data-is_single_and_custom=\"single_and_custom\">\n                                    <span t-field=\"ptav.name\"/>\n                                    <t t-call=\"sale.badge_extra_price\"/>\n                                </option>\n                            </t>\n                        </select>\n                    </t>\n\n                    <t t-if=\"ptal.attribute_id.display_type == 'radio'\">\n                        <ul t-att-data-attribute_id=\"ptal.attribute_id.id\" t-attf-class=\"list-inline list-unstyled o_wsale_product_attribute #{'d-none' if single_and_custom else ''}\">\n                            <t t-foreach=\"ptal.product_template_value_ids._only_active()\" t-as=\"ptav\">\n                                <li class=\"list-inline-item mb-3 js_attribute_value\" style=\"margin: 0;\">\n                                    <label class=\"col-form-label\">\n                                        <div class=\"form-check\">\n                                            <input type=\"radio\" t-attf-class=\"form-check-input js_variant_change #{ptal.attribute_id.create_variant}\" t-att-checked=\"ptav in combination\" t-att-name=\"'ptal-%s' % ptal.id\" t-att-value=\"ptav.id\" t-att-data-value_id=\"ptav.id\" t-att-data-value_name=\"ptav.name\" t-att-data-attribute_name=\"ptav.attribute_id.name\" t-att-data-is_custom=\"ptav.is_custom\" t-att-data-is_single=\"single\" t-att-data-is_single_and_custom=\"single_and_custom\"/>\n                                            <div class=\"radio_input_value form-check-label\">\n                                                <span t-field=\"ptav.name\"/>\n                                                <t t-call=\"sale.badge_extra_price\"/>\n                                            </div>\n                                        </div>\n                                    </label>\n                                </li>\n                            </t>\n                        </ul>\n                    </t>\n\n                    <t t-if=\"ptal.attribute_id.display_type == 'pills'\">\n                        <ul t-att-data-attribute_id=\"ptal.attribute_id.id\" t-attf-class=\"btn-group-toggle list-inline list-unstyled o_wsale_product_attribute #{'d-none' if single_and_custom else ''}\" data-bs-toggle=\"buttons\">\n                            <t t-foreach=\"ptal.product_template_value_ids._only_active()\" t-as=\"ptav\">\n                                <li t-attf-class=\"o_variant_pills btn btn-primary mb-1 list-inline-item js_attribute_value #{'active' if ptav in combination else ''}\">\n                                    <input type=\"radio\" t-attf-class=\"js_variant_change #{ptal.attribute_id.create_variant}\" t-att-checked=\"ptav in combination\" t-att-name=\"'ptal-%s' % ptal.id\" t-att-value=\"ptav.id\" t-att-data-value_id=\"ptav.id\" t-att-id=\"ptav.id\" t-att-data-value_name=\"ptav.name\" t-att-data-attribute_name=\"ptav.attribute_id.name\" t-att-data-is_custom=\"ptav.is_custom\" t-att-data-is_single_and_custom=\"single_and_custom\" t-att-autocomplete=\"off\"/>\n                                    <label class=\"radio_input_value o_variant_pills_input_value\" t-att-for=\"ptav.id\">\n                                        <span t-field=\"ptav.name\"/>\n                                        <t t-call=\"sale.badge_extra_price\"/>\n                                    </label>\n                                </li>\n                            </t>\n                        </ul>\n                    </t>\n\n                    <t t-if=\"ptal.attribute_id.display_type == 'color'\">\n                        <ul t-att-data-attribute_id=\"ptal.attribute_id.id\" t-attf-class=\"list-inline o_wsale_product_attribute #{'d-none' if single_and_custom else ''}\">\n                            <li t-foreach=\"ptal.product_template_value_ids._only_active()\" t-as=\"ptav\" class=\"list-inline-item me-1\">\n                                <label t-attf-style=\"background-color:#{ptav.html_color or ptav.product_attribute_value_id.name if not ptav.is_custom else ''}\" t-attf-class=\"css_attribute_color #{'active' if ptav in combination else ''} #{'custom_value' if ptav.is_custom else ''} #{'transparent' if (not ptav.is_custom and not ptav.html_color) else ''}\">\n                                    <input type=\"radio\" t-attf-class=\"js_variant_change  #{ptal.attribute_id.create_variant}\" t-att-checked=\"ptav in combination\" t-att-name=\"'ptal-%s' % ptal.id\" t-att-value=\"ptav.id\" t-att-title=\"ptav.name\" t-att-data-value_id=\"ptav.id\" t-att-data-value_name=\"ptav.name\" t-att-data-attribute_name=\"ptav.attribute_id.name\" t-att-data-is_custom=\"ptav.is_custom\" t-att-data-is_single=\"single\" t-att-data-is_single_and_custom=\"single_and_custom\"/>\n                                </label>\n                            </li>\n                        </ul>\n                    </t>\n                </li>\n            </t>\n        </ul>\n    </t>"}