From f8dee7eb7fb39da9143fac01c39a4cc94334b4a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20J=C3=A4derberg?= Date: Fri, 14 Nov 2025 12:27:30 +0000 Subject: [PATCH] Merged in chore/watermark-environments (pull request #3159) feat: display environment watermark * feat: display environment watermark * Merge branch 'master' of bitbucket.org:scandic-swap/web into chore/watermark-environments * remove unused function Approved-by: Linus Flood --- apps/scandic-web/app/[lang]/(live)/layout.tsx | 2 + .../EnvironmentWatermark/index.module.css | 36 +++++++++ .../components/EnvironmentWatermark/index.tsx | 74 +++++++++++++++++++ 3 files changed, 112 insertions(+) create mode 100644 apps/scandic-web/components/EnvironmentWatermark/index.module.css create mode 100644 apps/scandic-web/components/EnvironmentWatermark/index.tsx diff --git a/apps/scandic-web/app/[lang]/(live)/layout.tsx b/apps/scandic-web/app/[lang]/(live)/layout.tsx index e6c27bb60..48ae4d6bc 100644 --- a/apps/scandic-web/app/[lang]/(live)/layout.tsx +++ b/apps/scandic-web/app/[lang]/(live)/layout.tsx @@ -22,6 +22,7 @@ import { BookingFlowProviders } from "@/components/BookingFlowProviders" import CampaignBanner from "@/components/CampaignBanner" import ChatbotScript from "@/components/ChatbotScript" import CookieBotConsent from "@/components/CookieBot" +import { EnvironmentWatermark } from "@/components/EnvironmentWatermark" import Footer from "@/components/Footer" import Header from "@/components/Header" import { RACRouterProvider } from "@/components/RACRouterProvider" @@ -58,6 +59,7 @@ export default async function RootLayout(props: LayoutProps<"/[lang]">) {
+ + {displayValue} +
+ ) +} + +function getEnvironmentName(): { + name: string + environment: (typeof namedEnvironments)[number] +} { + const environment = getEnvironmentType() + const hostname = + typeof window !== "undefined" ? window.location.hostname : undefined + + if (hostname === "localhost") { + return { name: "development", environment } + } + + if (hostname?.endsWith("netlify.app")) { + const featureBranch = hostname.includes("--") + ? hostname.split("--").at(0) + : null + + if (featureBranch) { + return { + name: `${featureBranch.slice(0, 10)}`, + environment, + } + } + } + + return { name: environment, environment } +} + +function getEnvironmentType() { + const environment = + namedEnvironments.find( + (e) => e.localeCompare(env.NEXT_PUBLIC_SENTRY_ENVIRONMENT) === 0 + ) ?? "test" + + return environment +}