app/views/service_providers/_logo_upload.html.erb
<div class='json optional service_provider_logo_file'>
<%= form.label :logo_file,
label: 'Upload your logo',
class: 'usa-label' %>
<%= form.file_field :logo_file,
class: 'input-file logo-input-file',
accept: sp_valid_logo_mime_types %>
<% if service_provider.logo_file.attached? && service_provider.logo_file.persisted? %>
<p class="font-mono-xs margin-top-0" name="logo_file">
<%= image_tag url_for(service_provider.logo_file), height: '120px' %>
</p>
<% end %>
<div class='input-file-wrapper'>
<%= form.label :logo_file,
label: 'Choose a file',
class: 'usa-button file-input-button',
id: 'logo-file-button' %>
<%= content_tag :div,
"No file selected",
class: 'input-preview' %>
</div>
<%= form.hint 'Choose a file to upload as your logo. See <a href="https://developers.login.gov/design-guidelines/#agency-logo-guidelines">guidelines</a> for details.'.html_safe %>
<div class='usa-error-message' id='logo-upload-error'>
<% if service_provider.errors[:logo_file].present? %>
ERROR:
<%= service_provider.errors[:logo_file].join('|') %>
<% end %>
</div>
</div>
<%= javascript_include_tag 'validate_logo_size' %>