diff --git a/app/views/layouts/_theme_preference.html.erb b/app/views/layouts/_theme_preference.html.erb new file mode 100644 index 000000000..0c33750bd --- /dev/null +++ b/app/views/layouts/_theme_preference.html.erb @@ -0,0 +1,6 @@ +<%= javascript_tag nonce: true do %> + const theme = localStorage.getItem("theme") + if (theme && theme !== "auto") { + document.documentElement.dataset.theme = theme + } +<% end %> diff --git a/app/views/layouts/shared/_head.html.erb b/app/views/layouts/shared/_head.html.erb index ecee1abc0..9ef153df2 100644 --- a/app/views/layouts/shared/_head.html.erb +++ b/app/views/layouts/shared/_head.html.erb @@ -15,6 +15,7 @@ <% turbo_refreshes_with method: :morph, scroll: :preserve %> + <%= render "layouts/theme_preference" %> <%= stylesheet_link_tag :app, "data-turbo-track": "reload" %> <%= javascript_importmap_tags %>