browsertrix/frontend/src/index.ejs
sua yoo 9d69001c23
fix: Prevent ReplayWeb.Page shoelace components from impacting browsertrix (#1861)
Resolves https://github.com/webrecorder/browsertrix/issues/1836
Related to https://github.com/webrecorder/replayweb.page/pull/329

<!-- Fixes #issue_number -->

### Changes

Loads `replay/ui.js` after the browsertrix-app component is defined to
prevent browsertrix from using buttons defined by replayweb.page
shoelace imports. This was the most evident in button group styles not
being applied.
2024-06-12 09:20:49 -07:00

52 lines
1.6 KiB
Plaintext

<!doctype html>
<html data-theme="light" class="snap-proximity">
<head>
<meta charset="utf-8" />
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, viewport-fit=cover"
/>
<title>Browsertrix</title>
<base href="/" />
<script
src="https://browser.sentry-cdn.com/5.5.0/bundle.min.js"
crossorigin="anonymous"
></script>
<meta name="theme-color" content="#ffffff" />
<link rel="icon" href="/favicon.ico" sizes="32x32" />
<link rel="icon" href="/favicon.svg" type="image/svg+xml" />
<link rel="apple-touch-icon" href="/apple-touch-icon.png" />
<link rel="manifest" href="/manifest.webmanifest" />
</head>
<body>
<browsertrix-app
version="v<%= version %>-<%= commitHash %>"
></browsertrix-app>
<script>
const isDev = "<%= environment %>" === "development";
const dsn = "<%= glitchtip_dsn %>";
if (isDev && dsn) {
Sentry.init({
dsn: dsn,
release: "<%= gitBranch %> (<%= commitHash %>) v<%= version %>",
environment: "<%= environment %>",
debug: isDev,
autoSessionTracking: false, // Turn off unsupported page/session tracking
});
}
</script>
<script>
customElements.whenDefined("browsertrix-app").then(() => {
// Load replay UI after browsertrix app is defined to prevent issues
// with re-defining shoelace components
const script = document.createElement("script");
script.src = "/replay/ui.js";
document.body.appendChild(script);
});
</script>
</body>
</html>