18F/identity-idp

View on GitHub
app/views/layouts/base.html.erb

Summary

Maintainability
Test Coverage
<!DOCTYPE html>
<html class="no-js" lang="<%= I18n.locale %>">

<head>
  <meta charset="utf-8" />
  <meta name="description" content="<%= APP_NAME %>" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <meta name="format-detection" content="telephone=no" />
  <meta name="theme-color" content="#ffffff" />
  <meta name="og:site_name" content="<%= APP_NAME %>" />

  <% if content_for?(:meta_refresh) %>
  <meta content="<%= yield(:meta_refresh) %>" http-equiv="refresh" />
  <% end %>

  <title><%= title %> | <%= APP_NAME %></title>

  <%= javascript_tag(nonce: true) do %>
    document.documentElement.classList.replace('no-js', 'js');
  <% end %>
  <%= preload_link_tag font_path('public-sans/PublicSans-Bold.woff2') %>
  <%= preload_link_tag font_path('public-sans/PublicSans-Regular.woff2') %>
  <%= stylesheet_link_tag 'application', nopush: false %>
  <%= render_stylesheet_once_tags %>
  <%= stylesheet_link_tag 'utilities', nopush: false %>
  <%= stylesheet_link_tag 'print', media: :print, preload_links_header: false %>
  <%= csrf_meta_tags %>

  <%= favicon_link_tag(
        asset_path('favicons/apple-touch-icon.png'),
        rel: 'apple-touch-icon',
        sizes: '180x180',
        type: 'image/png',
      ) %>
  <%= favicon_link_tag(
        asset_path('favicons/favicon-40.png'),
        rel: 'icon',
        sizes: '40x40',
        type: 'image/png',
      ) %>
  <%= favicon_link_tag(
        asset_path('favicons/favicon-16.png'),
        rel: 'icon',
        sizes: '16x16',
        type: 'image/png',
      ) %>
  <%= favicon_link_tag(
        asset_path('favicons/safari-pinned-tab.svg'),
        rel: 'mask-icon',
        color: '#e21c3d',
        type: nil,
      ) %>

  <%# Prelude script for error tracking (see `track-errors`) %>
  <%= javascript_tag(nonce: true) do %>
    _e=[],addEventListener("error",(e)=>_e.push(e));
  <% end %>

  <%= yield(:head) if content_for?(:head) %>
</head>

<%= content_tag(:body, class: local_assigns[:body_class]) do %>
  <%= yield %>

  <%= content_tag(
        :script,
        {
          'appName' => APP_NAME,
          'analyticsEndpoint' => api_logger_path,
        }.to_json,
        { type: 'application/json', data: { config: '' } },
        false,
      ) %>
  <%= javascript_packs_tag_once('track-errors', defer: true, preload_links_header: false) if BrowserSupport.supported?(request.user_agent) %>
  <%= render_javascript_pack_once_tags %>
<% end %>

</html>