diff --git a/src/lib/components/Navbar.svelte b/src/lib/components/Navbar.svelte
index 0fcdcdaa..f173a9a6 100644
--- a/src/lib/components/Navbar.svelte
+++ b/src/lib/components/Navbar.svelte
@@ -10,6 +10,7 @@
import { env } from '$lib/util/env';
import { dismissPromotion, getActivePromotion } from '$lib/util/promos/promo';
import { stateStore } from '$lib/util/state';
+ import { MCBaseURL } from '$lib/util/util';
import type { ComponentProps } from 'svelte';
import DropdownNavMenu from './DropdownNavMenu.svelte';
import Privacy from './Privacy.svelte';
@@ -18,7 +19,7 @@
const { isEnabledMermaidChartLinks } = env;
let isMenuOpen = $state(false);
-
+ const isReferral = document.referrer.includes(MCBaseURL);
function toggleMenu() {
isMenuOpen = !isMenuOpen;
}
@@ -83,23 +84,30 @@
{/if}
-
-
+
+

+
Mermaid Live Editor
{#if isEnabledMermaidChartLinks}
{
- logEvent('playgroundToggle');
- window.location.href = `https://mermaidchart.com/play#${$stateStore.serialized}`;
+ logEvent('playgroundToggle', { isReferred: isReferral });
+ window.open(
+ `${MCBaseURL}/play#${$stateStore.serialized}`,
+ '_self',
+ // Do not send referrer header, if the user already came from playground
+ isReferral ? 'noreferrer' : ''
+ );
}} />
-
- Mermaid Chart Playground
-
+
Mermaid Chart Playground
{/if}
-
+