diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index afd8312..9a00da6 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -34,7 +34,7 @@ Set the following variables in the .env.local file: # Clerk NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY="pk_..." CLERK_SECRET_KEY="sk_..." -IS_AUTH="true" +NEXT_PUBLIC_IS_AUTH="true" ``` ## MongoDB diff --git a/src/app/(embeds)/layout.tsx b/src/app/(embeds)/layout.tsx index b33f346..7469149 100644 --- a/src/app/(embeds)/layout.tsx +++ b/src/app/(embeds)/layout.tsx @@ -29,12 +29,10 @@ */ "use client"; - import { TooltipProvider } from "@/components/ui/tooltip"; import "../globals.css"; import { ThemeProvider } from "@/components/ThemeProvider"; import { useSearchParams } from "next/navigation"; -import { ClerkThemeProvider } from "@/components/clerk/ClerkThemeProvider"; export default function RootLayout({ children, @@ -44,14 +42,16 @@ export default function RootLayout({ const searchParams = useSearchParams(); const search = searchParams?.get("theme") || "light"; return ( - - - {children} - - + + + + {children} + + + ); } diff --git a/src/components/clerk/ClerkThemeProvider.tsx b/src/components/clerk/ClerkThemeProvider.tsx index 7dbdcdd..5b8d20d 100644 --- a/src/components/clerk/ClerkThemeProvider.tsx +++ b/src/components/clerk/ClerkThemeProvider.tsx @@ -44,6 +44,15 @@ export function ClerkThemeProvider({ }) { const [theme, setTheme] = useState(""); + if (process.env.NEXT_PUBLIC_IS_AUTH !== "true") + return ( + + + Non-authenticated environments are disallowed on this origin. + + + ); + return ( { setEmbedStatic(c == "indeterminate" ? true : c); setURL( - `https://mhsf.app/embed/${server}?${c ? "&static=true" : ""}${ + `https://embeds.mhsf.app/embed/${server}?${c ? "&static=true" : ""}${ noMinehutBranding ? "&branding=false" : "" }&theme=${embedTheme}` ); @@ -182,7 +182,7 @@ export default function EmbedSelector({ server }: { server: string }) { onCheckedChange={(c) => { setNoMinehutBranding(c == "indeterminate" ? true : c); setURL( - `https://mhsf.app/embed/${server}?${embedStatic ? "&static=true" : ""}${ + `https://embeds.mhsf.app/embed/${server}?${embedStatic ? "&static=true" : ""}${ c ? "&branding=false" : "" }&theme=${embedTheme}` ); @@ -214,7 +214,7 @@ export default function EmbedSelector({ server }: { server: string }) { onValueChange={(c) => { setEmbedTheme(c); setURL( - `https://mhsf.app/embed/${server}?${embedStatic ? "&static=true" : ""}${ + `https://embeds.mhsf.app/embed/${server}?${embedStatic ? "&static=true" : ""}${ noMinehutBranding ? "&branding=false" : "" }&theme=${c}` ); diff --git a/src/middleware.ts b/src/middleware.ts index e233341..532d72a 100644 --- a/src/middleware.ts +++ b/src/middleware.ts @@ -32,8 +32,9 @@ import { clerkMiddleware, createRouteMatcher } from "@clerk/nextjs/server"; import { NextRequest } from "next/server"; const isProtectedRoute = createRouteMatcher(["/account(.*)"]); +const isEmbed = createRouteMatcher(["/emebed(.*)"]); -export default process.env.IS_AUTH == "true" +export default process.env.NEXT_PUBLIC_IS_AUTH === "true" ? clerkMiddleware((auth, req) => { if (isProtectedRoute(req)) auth.protect(); })