<!DOCTYPE html> <html lang={Map.get(assigns, :locale, "en")} dir={language_direction(assigns)}> <head> <meta charset="utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <link rel="apple-touch-icon" href="/img/icons/apple-touch-icon-152x152.png" sizes="152x152" /> <link rel="mask-icon" href="/img/icons/safari-pinned-tab.svg" color={theme_color()} /> <link rel="manifest" href="/manifest.webmanifest" /> <meta name="theme-color" content={theme_color()} /> <script> if (localStorage.theme === 'dark' || (!('theme' in localStorage) && window.matchMedia('(prefers-color-scheme: dark)').matches)) { document.documentElement.classList.add('dark') } else { document.documentElement.classList.remove('dark') } </script> <%= if is_root(assigns) do %> <link rel="preload" href="/img/shape-1.svg" as="image" /> <link rel="preload" href="/img/shape-2.svg" as="image" /> <link rel="preload" href="/img/shape-3.svg" as="image" /> <% end %> <%= tags(assigns) || assigns.tags %> <%= Vite.vite_client() %> <%= Vite.vite_snippet("src/main.ts") %> </head> <body> <noscript> <strong> We're sorry but Mobilizon doesn't work properly without JavaScript enabled. Please enable it to continue. </strong> </noscript> <div id="app"></div> <!-- built files will be auto injected --> </body> </html>