app/views/layouts/trestle/admin.html.erb
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<meta content='width=device-width, initial-scale=1' name='viewport'>
<meta content='IE=edge,chrome=1' http-equiv='X-UA-Compatible'>
<% if Trestle.config.turbolinks %>
<meta name='turbolinks-cache-control' content='no-cache'>
<meta name="turbolinks-root" content="<%= Trestle.config.path %>">
<% end %>
<%= csrf_meta_tags %>
<title><%= [title, Trestle.config.site_title].join(' :: ') %></title>
<%= favicon_link_tag Trestle.config.favicon if Trestle.config.favicon %>
<%= stylesheet_link_tag "trestle/admin", 'data-turbolinks-track': 'reload' %>
<%= stylesheet_link_tag "trestle/theme", 'data-turbolinks-track': 'reload' if Trestle.config.theme %>
<%= stylesheet_link_tag "trestle/custom", 'data-turbolinks-track': 'reload' %>
<%= hook :stylesheets %>
<%= javascript_include_tag "turbolinks" if Trestle.config.turbolinks rescue nil %>
<%= javascript_include_tag "trestle/admin", 'data-turbolinks-track': 'reload' %>
<%= javascript_tag nonce: true do %>
<% i18n_javascript_translations.each do |key, value| %>
Trestle.i18n['<%= key %>'] = "<%= escape_javascript(value) %>";
<% end %>
Trestle.localize(<%= Trestle.i18n_fallbacks.map { |l| "'#{l}'" }.join(", ").html_safe %>);
<% end %>
<%= hook :javascripts %>
<%= content_for(:head) %>
<%= hook :head %>
</head>
<%= content_tag :body, body_attributes do %>
<div class="app-wrapper">
<%= render "trestle/shared/sidebar" %>
<div class="app-container">
<%= render "trestle/shared/header" %>
<main class="app-main" data-context="<%= request.fullpath %>">
<%= yield %>
</main>
<%= render "trestle/shared/footer" %>
</div>
</div>
<% end %>
</html>