From 08a736b21042b73a692aeb70782e4d063a3efeda Mon Sep 17 00:00:00 2001 From: Henry Date: Mon, 24 Feb 2025 21:36:03 +0000 Subject: [PATCH] feat: privacy policy --- apps/web/src/env.ts | 2 + apps/web/src/pages/_app.tsx | 8 + apps/web/src/pages/privacy/index.tsx | 5 + apps/web/src/views/home/components/Header.tsx | 8 +- apps/web/src/views/home/components/Layout.tsx | 44 +++ apps/web/src/views/home/index.tsx | 164 ++++----- apps/web/src/views/privacy/index.tsx | 345 ++++++++++++++++++ 7 files changed, 476 insertions(+), 100 deletions(-) create mode 100644 apps/web/src/pages/privacy/index.tsx create mode 100644 apps/web/src/views/home/components/Layout.tsx create mode 100644 apps/web/src/views/privacy/index.tsx diff --git a/apps/web/src/env.ts b/apps/web/src/env.ts index 66424b01..cf831a88 100644 --- a/apps/web/src/env.ts +++ b/apps/web/src/env.ts @@ -25,6 +25,7 @@ export const env = createEnv({ client: { NEXT_PUBLIC_SUPABASE_AUTH_COOKIE_NAME: z.string(), NEXT_PUBLIC_SUPABASE_STORAGE_URL: z.string(), + NEXT_PUBLIC_UMAMI_ID: z.string().optional(), }, /** * Destructure all variables from `process.env` to make sure they aren't tree-shaken away. @@ -35,6 +36,7 @@ export const env = createEnv({ process.env.NEXT_PUBLIC_SUPABASE_AUTH_COOKIE_NAME, NEXT_PUBLIC_SUPABASE_STORAGE_URL: process.env.NEXT_PUBLIC_SUPABASE_STORAGE_URL, + NEXT_PUBLIC_UMAMI_ID: process.env.NEXT_PUBLIC_UMAMI_ID, }, skipValidation: !!process.env.CI || process.env.npm_lifecycle_event === "lint", diff --git a/apps/web/src/pages/_app.tsx b/apps/web/src/pages/_app.tsx index 35636c06..1fedd09f 100644 --- a/apps/web/src/pages/_app.tsx +++ b/apps/web/src/pages/_app.tsx @@ -3,6 +3,7 @@ import "~/styles/globals.css"; import type { AppType } from "next/app"; import { Plus_Jakarta_Sans } from "next/font/google"; +import { env } from "~/env"; import { ModalProvider } from "~/providers/modal"; import { PopupProvider } from "~/providers/popup"; import { ThemeProvider } from "~/providers/theme"; @@ -30,6 +31,13 @@ const MyApp: AppType = ({ Component, pageProps }) => { position: relative; } `} + {env.NEXT_PUBLIC_UMAMI_ID && ( +