class BulkUploadErrorRowComponent < ViewComponent::Base attr_reader :bulk_upload_errors def initialize(bulk_upload_errors:) @bulk_upload_errors = bulk_upload_errors super end def row bulk_upload_errors.first.row end def tenant_code bulk_upload_errors.first.tenant_code end def tenant_code_html return if tenant_code.blank? content_tag :span, class: "govuk-!-margin-left-3" do "Tenant code: #{tenant_code}" end end def purchaser_code bulk_upload_errors.first.purchaser_code end def purchaser_code_html return if purchaser_code.blank? content_tag :span, class: "govuk-!-margin-left-3" do "Purchaser code: #{purchaser_code}" end end def property_ref bulk_upload_errors.first.property_ref end def property_ref_html return if property_ref.blank? content_tag :span, class: "govuk-!-margin-left-3" do "Property reference: #{property_ref}" end end def question_for_field(field) bulk_upload.prefix_namespace::RowParser.question_for_field(field.to_sym) end def bulk_upload bulk_upload_errors.first.bulk_upload end def lettings? bulk_upload.log_type == "lettings" end def sales? bulk_upload.log_type == "sales" end def row_classes(index, errors_size) row_class = "grouped-rows" row_class += " first-row" if index.zero? row_class += " last-row" if index == errors_size - 1 row_class end def cell_classes(group_index, total_groups) cell_class = "govuk-!-font-weight-bold govuk-!-width-one-half" cell_class += " grouped-multirow-cell" unless group_index == total_groups - 1 cell_class end end