59 lines
2.2 KiB
Text
59 lines
2.2 KiB
Text
!!! 5
|
|
%html{ lang: html_lang, class: yield(:root_class) }
|
|
%head
|
|
%meta{ "http-equiv": "Content-Type", content: "text/html; charset=UTF-8" }
|
|
%meta{ "http-equiv": "X-UA-Compatible", content: "IE=edge" }
|
|
%meta{ name: "viewport", content: "width=device-width, initial-scale=1" }
|
|
= csrf_meta_tags
|
|
|
|
%title
|
|
= content_for?(:title) ? "#{yield(:title)} · #{APPLICATION_NAME}" : APPLICATION_NAME
|
|
|
|
= favicon_link_tag(image_url("#{FAVICON_16PX_SRC}"), type: "image/png", sizes: "16x16")
|
|
= favicon_link_tag(image_url("#{FAVICON_32PX_SRC}"), type: "image/png", sizes: "32x32")
|
|
= favicon_link_tag(image_url("#{FAVICON_96PX_SRC}"), type: "image/png", sizes: "96x96")
|
|
|
|
= vite_client_tag
|
|
= vite_react_refresh_tag
|
|
= vite_javascript_tag 'application'
|
|
- if administrateur_signed_in?
|
|
= vite_javascript_tag 'track-admin'
|
|
|
|
= preload_link_tag(asset_url("Muli-Regular.woff2"))
|
|
= preload_link_tag(asset_url("Muli-Bold.woff2"))
|
|
|
|
= stylesheet_link_tag 'application', media: 'all'
|
|
|
|
= Gon::Base.render_data(camel_case: true, init: true, nonce: request.content_security_policy_nonce)
|
|
|
|
%body{ id: content_for(:page_id), class: browser.platform.ios? ? 'ios' : nil }
|
|
.page-wrapper
|
|
= render partial: "layouts/outdated_browser_banner"
|
|
= render partial: 'layouts/pre_maintenance'
|
|
|
|
- if staging?
|
|
#beta
|
|
Env Test
|
|
|
|
= render partial: "layouts/header"
|
|
%main
|
|
= render partial: "layouts/flash_messages"
|
|
= content_for?(:content) ? yield(:content) : yield
|
|
|
|
- if content_for?(:footer)
|
|
= content_for(:footer)
|
|
|
|
- if vite_legacy?
|
|
= vite_legacy_javascript_tag 'application'
|
|
|
|
= yield :charts_js
|
|
|
|
// Container for custom turbo-stream actions
|
|
%turbo-events
|
|
|
|
// We patch `@hotwired/turbo` to attach forms generated from links to this
|
|
// container instead of the body to avoid conflicts with `@rails/ujs`. We also
|
|
// patch `@hotwired/turbo` to add a timeout before removing the form because in
|
|
// order to be accepted as a valid `turbo form`` either global `turbo drive`` should
|
|
// be enabled or the form needs to have a parent with `data-turbo="true"` on it.
|
|
%div{ 'data-turbo': 'true' }
|