diff --git a/.env.example b/.env.example index d1c165cd24b..464107ea1a4 100644 --- a/.env.example +++ b/.env.example @@ -60,11 +60,6 @@ NEXT_PUBLIC_POSTHOG_KEY= POSTHOG_API_KEY= POSTHOG_PROJECT_ID= -# ----------------------------------------------------------------------------- -# Outlit Analytics -# ----------------------------------------------------------------------------- -NEXT_PUBLIC_OUTLIT_KEY=local_outlit_placeholder - # ----------------------------------------------------------------------------- # Freestyle # ----------------------------------------------------------------------------- diff --git a/.github/workflows/build-desktop.yml b/.github/workflows/build-desktop.yml index 12c494154a3..18ff1594119 100644 --- a/.github/workflows/build-desktop.yml +++ b/.github/workflows/build-desktop.yml @@ -95,7 +95,6 @@ jobs: env: NEXT_PUBLIC_POSTHOG_KEY: ${{ secrets.NEXT_PUBLIC_POSTHOG_KEY }} NEXT_PUBLIC_POSTHOG_HOST: ${{ secrets.NEXT_PUBLIC_POSTHOG_HOST }} - NEXT_PUBLIC_OUTLIT_KEY: ${{ secrets.NEXT_PUBLIC_OUTLIT_KEY }} GOOGLE_CLIENT_ID: ${{ secrets.GOOGLE_CLIENT_ID }} GH_CLIENT_ID: ${{ secrets.GH_CLIENT_ID }} NEXT_PUBLIC_WEB_URL: ${{ secrets.NEXT_PUBLIC_WEB_URL }} @@ -218,7 +217,6 @@ jobs: env: NEXT_PUBLIC_POSTHOG_KEY: ${{ secrets.NEXT_PUBLIC_POSTHOG_KEY }} NEXT_PUBLIC_POSTHOG_HOST: ${{ secrets.NEXT_PUBLIC_POSTHOG_HOST }} - NEXT_PUBLIC_OUTLIT_KEY: ${{ secrets.NEXT_PUBLIC_OUTLIT_KEY }} GOOGLE_CLIENT_ID: ${{ secrets.GOOGLE_CLIENT_ID }} GH_CLIENT_ID: ${{ secrets.GH_CLIENT_ID }} NEXT_PUBLIC_WEB_URL: ${{ secrets.NEXT_PUBLIC_WEB_URL }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 773f80c0a1f..e49ecd36af7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -84,8 +84,6 @@ jobs: run: bun run install:deps - name: Test - env: - NEXT_PUBLIC_OUTLIT_KEY: ${{ secrets.NEXT_PUBLIC_OUTLIT_KEY || 'ci-outlit-placeholder-key' }} run: bun run test typecheck: @@ -140,6 +138,4 @@ jobs: run: bun run install:deps - name: Build Desktop - env: - NEXT_PUBLIC_OUTLIT_KEY: ${{ secrets.NEXT_PUBLIC_OUTLIT_KEY || 'ci-outlit-placeholder-key' }} run: bun turbo run build --filter=@superset/desktop diff --git a/.github/workflows/deploy-preview.yml b/.github/workflows/deploy-preview.yml index 6051444fae4..1b52e24ce79 100644 --- a/.github/workflows/deploy-preview.yml +++ b/.github/workflows/deploy-preview.yml @@ -344,7 +344,6 @@ jobs: NEXT_PUBLIC_COOKIE_DOMAIN: ${{ secrets.NEXT_PUBLIC_COOKIE_DOMAIN }} NEXT_PUBLIC_POSTHOG_KEY: ${{ secrets.NEXT_PUBLIC_POSTHOG_KEY }} NEXT_PUBLIC_POSTHOG_HOST: ${{ secrets.NEXT_PUBLIC_POSTHOG_HOST }} - NEXT_PUBLIC_OUTLIT_KEY: ${{ secrets.NEXT_PUBLIC_OUTLIT_KEY }} NEXT_PUBLIC_SENTRY_DSN_WEB: ${{ secrets.NEXT_PUBLIC_SENTRY_DSN_WEB }} SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} NEXT_PUBLIC_SENTRY_ENVIRONMENT: ${{ vars.NEXT_PUBLIC_SENTRY_ENVIRONMENT }} @@ -375,7 +374,6 @@ jobs: --env NEXT_PUBLIC_COOKIE_DOMAIN=$NEXT_PUBLIC_COOKIE_DOMAIN \ --env NEXT_PUBLIC_POSTHOG_KEY=$NEXT_PUBLIC_POSTHOG_KEY \ --env NEXT_PUBLIC_POSTHOG_HOST=$NEXT_PUBLIC_POSTHOG_HOST \ - --env NEXT_PUBLIC_OUTLIT_KEY=$NEXT_PUBLIC_OUTLIT_KEY \ --env NEXT_PUBLIC_SENTRY_DSN_WEB=$NEXT_PUBLIC_SENTRY_DSN_WEB \ --env NEXT_PUBLIC_SENTRY_ENVIRONMENT=$NEXT_PUBLIC_SENTRY_ENVIRONMENT \ --env KV_REST_API_URL=$KV_REST_API_URL \ @@ -448,7 +446,6 @@ jobs: NEXT_PUBLIC_COOKIE_DOMAIN: ${{ secrets.NEXT_PUBLIC_COOKIE_DOMAIN }} NEXT_PUBLIC_POSTHOG_KEY: ${{ secrets.NEXT_PUBLIC_POSTHOG_KEY }} NEXT_PUBLIC_POSTHOG_HOST: ${{ secrets.NEXT_PUBLIC_POSTHOG_HOST }} - NEXT_PUBLIC_OUTLIT_KEY: ${{ secrets.NEXT_PUBLIC_OUTLIT_KEY }} NEXT_PUBLIC_SENTRY_DSN_MARKETING: ${{ secrets.NEXT_PUBLIC_SENTRY_DSN_MARKETING }} SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} NEXT_PUBLIC_SENTRY_ENVIRONMENT: ${{ vars.NEXT_PUBLIC_SENTRY_ENVIRONMENT }} @@ -476,7 +473,6 @@ jobs: --env NEXT_PUBLIC_COOKIE_DOMAIN=$NEXT_PUBLIC_COOKIE_DOMAIN \ --env NEXT_PUBLIC_POSTHOG_KEY=$NEXT_PUBLIC_POSTHOG_KEY \ --env NEXT_PUBLIC_POSTHOG_HOST=$NEXT_PUBLIC_POSTHOG_HOST \ - --env NEXT_PUBLIC_OUTLIT_KEY=$NEXT_PUBLIC_OUTLIT_KEY \ --env NEXT_PUBLIC_SENTRY_DSN_MARKETING=$NEXT_PUBLIC_SENTRY_DSN_MARKETING \ --env NEXT_PUBLIC_SENTRY_ENVIRONMENT=$NEXT_PUBLIC_SENTRY_ENVIRONMENT \ --env KV_REST_API_URL=$KV_REST_API_URL \ @@ -562,7 +558,6 @@ jobs: NEXT_PUBLIC_COOKIE_DOMAIN: ${{ secrets.NEXT_PUBLIC_COOKIE_DOMAIN }} NEXT_PUBLIC_POSTHOG_KEY: ${{ secrets.NEXT_PUBLIC_POSTHOG_KEY }} NEXT_PUBLIC_POSTHOG_HOST: ${{ secrets.NEXT_PUBLIC_POSTHOG_HOST }} - NEXT_PUBLIC_OUTLIT_KEY: ${{ secrets.NEXT_PUBLIC_OUTLIT_KEY }} POSTHOG_API_KEY: ${{ secrets.POSTHOG_API_KEY }} POSTHOG_PROJECT_ID: ${{ secrets.POSTHOG_PROJECT_ID }} NEXT_PUBLIC_SENTRY_DSN_ADMIN: ${{ secrets.NEXT_PUBLIC_SENTRY_DSN_ADMIN }} @@ -594,7 +589,6 @@ jobs: --env NEXT_PUBLIC_COOKIE_DOMAIN=$NEXT_PUBLIC_COOKIE_DOMAIN \ --env NEXT_PUBLIC_POSTHOG_KEY=$NEXT_PUBLIC_POSTHOG_KEY \ --env NEXT_PUBLIC_POSTHOG_HOST=$NEXT_PUBLIC_POSTHOG_HOST \ - --env NEXT_PUBLIC_OUTLIT_KEY=$NEXT_PUBLIC_OUTLIT_KEY \ --env POSTHOG_API_KEY=$POSTHOG_API_KEY \ --env POSTHOG_PROJECT_ID=$POSTHOG_PROJECT_ID \ --env NEXT_PUBLIC_SENTRY_DSN_ADMIN=$NEXT_PUBLIC_SENTRY_DSN_ADMIN \ @@ -666,7 +660,6 @@ jobs: NEXT_PUBLIC_MARKETING_URL: https://${{ env.MARKETING_ALIAS }} NEXT_PUBLIC_POSTHOG_KEY: ${{ secrets.NEXT_PUBLIC_POSTHOG_KEY }} NEXT_PUBLIC_POSTHOG_HOST: ${{ secrets.NEXT_PUBLIC_POSTHOG_HOST }} - NEXT_PUBLIC_OUTLIT_KEY: ${{ secrets.NEXT_PUBLIC_OUTLIT_KEY }} NEXT_PUBLIC_SENTRY_DSN_DOCS: ${{ secrets.NEXT_PUBLIC_SENTRY_DSN_DOCS }} SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} NEXT_PUBLIC_SENTRY_ENVIRONMENT: ${{ vars.NEXT_PUBLIC_SENTRY_ENVIRONMENT }} @@ -677,7 +670,6 @@ jobs: VERCEL_URL=$(vercel deploy --prebuilt --archive=tgz --token=$VERCEL_TOKEN \ --env NEXT_PUBLIC_POSTHOG_KEY=$NEXT_PUBLIC_POSTHOG_KEY \ --env NEXT_PUBLIC_POSTHOG_HOST=$NEXT_PUBLIC_POSTHOG_HOST \ - --env NEXT_PUBLIC_OUTLIT_KEY=$NEXT_PUBLIC_OUTLIT_KEY \ --env NEXT_PUBLIC_SENTRY_DSN_DOCS=$NEXT_PUBLIC_SENTRY_DSN_DOCS \ --env NEXT_PUBLIC_SENTRY_ENVIRONMENT=$NEXT_PUBLIC_SENTRY_ENVIRONMENT \ --env SECRETS_ENCRYPTION_KEY=$SECRETS_ENCRYPTION_KEY) diff --git a/.github/workflows/deploy-production.yml b/.github/workflows/deploy-production.yml index 314c0997f5d..685a95164e0 100644 --- a/.github/workflows/deploy-production.yml +++ b/.github/workflows/deploy-production.yml @@ -219,7 +219,6 @@ jobs: NEXT_PUBLIC_COOKIE_DOMAIN: ${{ secrets.NEXT_PUBLIC_COOKIE_DOMAIN }} NEXT_PUBLIC_POSTHOG_KEY: ${{ secrets.NEXT_PUBLIC_POSTHOG_KEY }} NEXT_PUBLIC_POSTHOG_HOST: ${{ secrets.NEXT_PUBLIC_POSTHOG_HOST }} - NEXT_PUBLIC_OUTLIT_KEY: ${{ secrets.NEXT_PUBLIC_OUTLIT_KEY }} NEXT_PUBLIC_SENTRY_DSN_WEB: ${{ secrets.NEXT_PUBLIC_SENTRY_DSN_WEB }} SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} NEXT_PUBLIC_SENTRY_ENVIRONMENT: ${{ vars.NEXT_PUBLIC_SENTRY_ENVIRONMENT }} @@ -250,7 +249,6 @@ jobs: --env NEXT_PUBLIC_COOKIE_DOMAIN=$NEXT_PUBLIC_COOKIE_DOMAIN \ --env NEXT_PUBLIC_POSTHOG_KEY=$NEXT_PUBLIC_POSTHOG_KEY \ --env NEXT_PUBLIC_POSTHOG_HOST=$NEXT_PUBLIC_POSTHOG_HOST \ - --env NEXT_PUBLIC_OUTLIT_KEY=$NEXT_PUBLIC_OUTLIT_KEY \ --env NEXT_PUBLIC_SENTRY_DSN_WEB=$NEXT_PUBLIC_SENTRY_DSN_WEB \ --env NEXT_PUBLIC_SENTRY_ENVIRONMENT=$NEXT_PUBLIC_SENTRY_ENVIRONMENT \ --env KV_REST_API_URL=$KV_REST_API_URL \ @@ -307,7 +305,6 @@ jobs: NEXT_PUBLIC_COOKIE_DOMAIN: ${{ secrets.NEXT_PUBLIC_COOKIE_DOMAIN }} NEXT_PUBLIC_POSTHOG_KEY: ${{ secrets.NEXT_PUBLIC_POSTHOG_KEY }} NEXT_PUBLIC_POSTHOG_HOST: ${{ secrets.NEXT_PUBLIC_POSTHOG_HOST }} - NEXT_PUBLIC_OUTLIT_KEY: ${{ secrets.NEXT_PUBLIC_OUTLIT_KEY }} NEXT_PUBLIC_SENTRY_DSN_MARKETING: ${{ secrets.NEXT_PUBLIC_SENTRY_DSN_MARKETING }} SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} NEXT_PUBLIC_SENTRY_ENVIRONMENT: ${{ vars.NEXT_PUBLIC_SENTRY_ENVIRONMENT }} @@ -335,7 +332,6 @@ jobs: --env NEXT_PUBLIC_COOKIE_DOMAIN=$NEXT_PUBLIC_COOKIE_DOMAIN \ --env NEXT_PUBLIC_POSTHOG_KEY=$NEXT_PUBLIC_POSTHOG_KEY \ --env NEXT_PUBLIC_POSTHOG_HOST=$NEXT_PUBLIC_POSTHOG_HOST \ - --env NEXT_PUBLIC_OUTLIT_KEY=$NEXT_PUBLIC_OUTLIT_KEY \ --env NEXT_PUBLIC_SENTRY_DSN_MARKETING=$NEXT_PUBLIC_SENTRY_DSN_MARKETING \ --env NEXT_PUBLIC_SENTRY_ENVIRONMENT=$NEXT_PUBLIC_SENTRY_ENVIRONMENT \ --env KV_REST_API_URL=$KV_REST_API_URL \ @@ -394,7 +390,6 @@ jobs: NEXT_PUBLIC_COOKIE_DOMAIN: ${{ secrets.NEXT_PUBLIC_COOKIE_DOMAIN }} NEXT_PUBLIC_POSTHOG_KEY: ${{ secrets.NEXT_PUBLIC_POSTHOG_KEY }} NEXT_PUBLIC_POSTHOG_HOST: ${{ secrets.NEXT_PUBLIC_POSTHOG_HOST }} - NEXT_PUBLIC_OUTLIT_KEY: ${{ secrets.NEXT_PUBLIC_OUTLIT_KEY }} POSTHOG_API_KEY: ${{ secrets.POSTHOG_API_KEY }} POSTHOG_PROJECT_ID: ${{ secrets.POSTHOG_PROJECT_ID }} NEXT_PUBLIC_SENTRY_DSN_ADMIN: ${{ secrets.NEXT_PUBLIC_SENTRY_DSN_ADMIN }} @@ -426,7 +421,6 @@ jobs: --env NEXT_PUBLIC_COOKIE_DOMAIN=$NEXT_PUBLIC_COOKIE_DOMAIN \ --env NEXT_PUBLIC_POSTHOG_KEY=$NEXT_PUBLIC_POSTHOG_KEY \ --env NEXT_PUBLIC_POSTHOG_HOST=$NEXT_PUBLIC_POSTHOG_HOST \ - --env NEXT_PUBLIC_OUTLIT_KEY=$NEXT_PUBLIC_OUTLIT_KEY \ --env POSTHOG_API_KEY=$POSTHOG_API_KEY \ --env POSTHOG_PROJECT_ID=$POSTHOG_PROJECT_ID \ --env NEXT_PUBLIC_SENTRY_DSN_ADMIN=$NEXT_PUBLIC_SENTRY_DSN_ADMIN \ @@ -540,7 +534,6 @@ jobs: NEXT_PUBLIC_MARKETING_URL: ${{ secrets.NEXT_PUBLIC_MARKETING_URL }} NEXT_PUBLIC_POSTHOG_KEY: ${{ secrets.NEXT_PUBLIC_POSTHOG_KEY }} NEXT_PUBLIC_POSTHOG_HOST: ${{ secrets.NEXT_PUBLIC_POSTHOG_HOST }} - NEXT_PUBLIC_OUTLIT_KEY: ${{ secrets.NEXT_PUBLIC_OUTLIT_KEY }} NEXT_PUBLIC_SENTRY_DSN_DOCS: ${{ secrets.NEXT_PUBLIC_SENTRY_DSN_DOCS }} SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} NEXT_PUBLIC_SENTRY_ENVIRONMENT: ${{ vars.NEXT_PUBLIC_SENTRY_ENVIRONMENT }} @@ -551,7 +544,6 @@ jobs: vercel deploy --prod --prebuilt --archive=tgz --token=$VERCEL_TOKEN \ --env NEXT_PUBLIC_POSTHOG_KEY=$NEXT_PUBLIC_POSTHOG_KEY \ --env NEXT_PUBLIC_POSTHOG_HOST=$NEXT_PUBLIC_POSTHOG_HOST \ - --env NEXT_PUBLIC_OUTLIT_KEY=$NEXT_PUBLIC_OUTLIT_KEY \ --env NEXT_PUBLIC_SENTRY_DSN_DOCS=$NEXT_PUBLIC_SENTRY_DSN_DOCS \ --env NEXT_PUBLIC_SENTRY_ENVIRONMENT=$NEXT_PUBLIC_SENTRY_ENVIRONMENT \ --env SECRETS_ENCRYPTION_KEY=$SECRETS_ENCRYPTION_KEY diff --git a/apps/desktop/src/main/lib/terminal/index.test.ts b/apps/desktop/src/main/lib/terminal/index.test.ts index 9be80327b9c..afb2e10a198 100644 --- a/apps/desktop/src/main/lib/terminal/index.test.ts +++ b/apps/desktop/src/main/lib/terminal/index.test.ts @@ -60,12 +60,6 @@ mock.module("./daemon", () => ({ }), })); -mock.module("./env", () => ({ - prewarmTerminalEnv: () => {}, - getDefaultShell: () => "/bin/sh", - buildTerminalEnv: () => ({}), -})); - const { restartDaemon, tryListExistingDaemonSessions } = await import( "./index" ); diff --git a/apps/docs/package.json b/apps/docs/package.json index dddca44a425..c892cdeede5 100644 --- a/apps/docs/package.json +++ b/apps/docs/package.json @@ -11,7 +11,6 @@ "postinstall": "fumadocs-mdx" }, "dependencies": { - "@outlit/browser": "^1.4.3", "@radix-ui/react-collapsible": "^1.1.12", "@radix-ui/react-scroll-area": "^1.2.10", "@sentry/nextjs": "^10.36.0", diff --git a/apps/docs/src/app/layout.tsx b/apps/docs/src/app/layout.tsx index 330ab4a4539..ed4f3b8ddf2 100644 --- a/apps/docs/src/app/layout.tsx +++ b/apps/docs/src/app/layout.tsx @@ -5,7 +5,6 @@ import { COMPANY } from "@superset/shared/constants"; import { Inter } from "next/font/google"; import { NavigationBar } from "@/app/components/NavigationBar"; import { NavbarProvider } from "@/app/components/NavigationBar/components/NavigationMobile"; -import { OutlitProviderWrapper } from "@/app/providers"; const inter = Inter({ subsets: ["latin"], @@ -68,14 +67,12 @@ export default function Layout({ children }: LayoutProps<"/">) { suppressHydrationWarning > - - - - - {children} - - - + + + + {children} + + ); diff --git a/apps/docs/src/app/providers.tsx b/apps/docs/src/app/providers.tsx deleted file mode 100644 index f1f28d66150..00000000000 --- a/apps/docs/src/app/providers.tsx +++ /dev/null @@ -1,17 +0,0 @@ -"use client"; - -import { OutlitProvider } from "@outlit/browser/react"; - -import { env } from "@/env"; - -export function OutlitProviderWrapper({ - children, -}: { - children: React.ReactNode; -}) { - return ( - - {children} - - ); -} diff --git a/apps/docs/src/env.ts b/apps/docs/src/env.ts index 594d8c54822..0343e017bba 100644 --- a/apps/docs/src/env.ts +++ b/apps/docs/src/env.ts @@ -16,7 +16,6 @@ export const env = createEnv({ client: { NEXT_PUBLIC_MARKETING_URL: z.string().url().optional(), - NEXT_PUBLIC_OUTLIT_KEY: z.string(), NEXT_PUBLIC_POSTHOG_KEY: z.string().optional(), NEXT_PUBLIC_POSTHOG_HOST: z.string().url().optional(), NEXT_PUBLIC_SENTRY_DSN_DOCS: z.string().optional(), @@ -28,7 +27,6 @@ export const env = createEnv({ experimental__runtimeEnv: { NODE_ENV: process.env.NODE_ENV, NEXT_PUBLIC_MARKETING_URL: process.env.NEXT_PUBLIC_MARKETING_URL, - NEXT_PUBLIC_OUTLIT_KEY: process.env.NEXT_PUBLIC_OUTLIT_KEY, NEXT_PUBLIC_POSTHOG_KEY: process.env.NEXT_PUBLIC_POSTHOG_KEY, NEXT_PUBLIC_POSTHOG_HOST: process.env.NEXT_PUBLIC_POSTHOG_HOST, NEXT_PUBLIC_SENTRY_DSN_DOCS: process.env.NEXT_PUBLIC_SENTRY_DSN_DOCS, diff --git a/apps/marketing/package.json b/apps/marketing/package.json index 2bde1322623..fc4221af181 100644 --- a/apps/marketing/package.json +++ b/apps/marketing/package.json @@ -11,7 +11,6 @@ "typecheck": "tsc --noEmit" }, "dependencies": { - "@outlit/browser": "^1.4.3", "@react-three/drei": "^10.7.6", "@react-three/fiber": "^9.4.0", "@sentry/nextjs": "^10.36.0", diff --git a/apps/marketing/src/app/providers.tsx b/apps/marketing/src/app/providers.tsx index 432249e31aa..5160fa321bf 100644 --- a/apps/marketing/src/app/providers.tsx +++ b/apps/marketing/src/app/providers.tsx @@ -1,35 +1,22 @@ "use client"; -import { OutlitProvider as OutlitBrowserProvider } from "@outlit/browser/react"; import { THEME_STORAGE_KEY } from "@superset/shared/constants"; import { ThemeProvider } from "next-themes"; import posthog from "posthog-js"; import { PostHogProvider } from "posthog-js/react"; -import { getOutlit } from "@/lib/outlit"; - -function OutlitWrapper({ children }: { children: React.ReactNode }) { - const client = getOutlit(); - if (!client) return <>{children}; - return ( - {children} - ); -} - export function Providers({ children }: { children: React.ReactNode }) { return ( - - - {children} - - + + {children} + ); } diff --git a/apps/marketing/src/components/CookieConsent/CookieConsent.tsx b/apps/marketing/src/components/CookieConsent/CookieConsent.tsx index 8b37ecddce7..7bbea34a384 100644 --- a/apps/marketing/src/components/CookieConsent/CookieConsent.tsx +++ b/apps/marketing/src/components/CookieConsent/CookieConsent.tsx @@ -1,6 +1,5 @@ "use client"; -import { useOutlit } from "@outlit/browser/react"; import { Button } from "@superset/ui/button"; import { AnimatePresence, motion } from "framer-motion"; import Link from "next/link"; @@ -10,7 +9,6 @@ import { useEffect, useState } from "react"; import { ANALYTICS_CONSENT_KEY } from "@/lib/constants"; export function CookieConsent() { - const { enableTracking, disableTracking } = useOutlit(); const [showBanner, setShowBanner] = useState(false); useEffect(() => { @@ -24,13 +22,11 @@ export function CookieConsent() { localStorage.setItem(ANALYTICS_CONSENT_KEY, "accepted"); setShowBanner(false); posthog.opt_in_capturing(); - enableTracking(); }; const handleOptOut = () => { localStorage.setItem(ANALYTICS_CONSENT_KEY, "declined"); posthog.opt_out_capturing(); - disableTracking(); setShowBanner(false); }; diff --git a/apps/marketing/src/env.ts b/apps/marketing/src/env.ts index 37fb9b27aa1..c962325f8cc 100644 --- a/apps/marketing/src/env.ts +++ b/apps/marketing/src/env.ts @@ -31,7 +31,6 @@ export const env = createEnv({ NEXT_PUBLIC_SENTRY_ENVIRONMENT: z .enum(["development", "preview", "production"]) .optional(), - NEXT_PUBLIC_OUTLIT_KEY: z.string(), }, experimental__runtimeEnv: { NODE_ENV: process.env.NODE_ENV, @@ -42,7 +41,6 @@ export const env = createEnv({ NEXT_PUBLIC_SENTRY_DSN_MARKETING: process.env.NEXT_PUBLIC_SENTRY_DSN_MARKETING, NEXT_PUBLIC_SENTRY_ENVIRONMENT: process.env.NEXT_PUBLIC_SENTRY_ENVIRONMENT, - NEXT_PUBLIC_OUTLIT_KEY: process.env.NEXT_PUBLIC_OUTLIT_KEY, }, skipValidation: !!process.env.SKIP_ENV_VALIDATION, }); diff --git a/apps/marketing/src/lib/analytics/index.ts b/apps/marketing/src/lib/analytics/index.ts index 34b54c719ef..e6b58ab1bc5 100644 --- a/apps/marketing/src/lib/analytics/index.ts +++ b/apps/marketing/src/lib/analytics/index.ts @@ -1,29 +1,8 @@ import posthog from "posthog-js"; -import { getOutlit } from "@/lib/outlit"; - -function toOutlitProperties( - properties?: Record, -): Record | undefined { - if (!properties) return undefined; - const result: Record = {}; - for (const [key, value] of Object.entries(properties)) { - if ( - value === null || - typeof value === "string" || - typeof value === "number" || - typeof value === "boolean" - ) { - result[key] = value; - } - } - return result; -} - export function track( event: string, properties?: Record, ): void { posthog.capture(event, properties); - getOutlit()?.track(event, toOutlitProperties(properties)); } diff --git a/apps/marketing/src/lib/outlit/index.ts b/apps/marketing/src/lib/outlit/index.ts deleted file mode 100644 index 232f0505338..00000000000 --- a/apps/marketing/src/lib/outlit/index.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { Outlit } from "@outlit/browser"; - -import { env } from "@/env"; -import { ANALYTICS_CONSENT_KEY } from "@/lib/constants"; - -let instance: Outlit | undefined; - -export function getOutlit(): Outlit | undefined { - if (typeof window === "undefined") return undefined; - - if (!instance) { - instance = new Outlit({ - publicKey: env.NEXT_PUBLIC_OUTLIT_KEY, - trackPageviews: true, - trackForms: true, - }); - - // Respect prior consent choice — disable tracking if user previously opted out - if (localStorage.getItem(ANALYTICS_CONSENT_KEY) === "declined") { - instance.disableTracking(); - } - } - return instance; -} diff --git a/apps/web/package.json b/apps/web/package.json index 1df6749a28f..e84e5e5f6e9 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -11,7 +11,6 @@ "typecheck": "tsc --noEmit" }, "dependencies": { - "@outlit/browser": "^1.4.3", "@sentry/nextjs": "^10.36.0", "@superset/auth": "workspace:*", "@superset/db": "workspace:*", diff --git a/apps/web/src/app/providers.tsx b/apps/web/src/app/providers.tsx index e06af68f0e5..5b0348e1382 100644 --- a/apps/web/src/app/providers.tsx +++ b/apps/web/src/app/providers.tsx @@ -6,7 +6,6 @@ import { ThemeProvider } from "next-themes"; import posthog from "posthog-js"; import { PostHogProvider } from "posthog-js/react"; -import { OutlitProvider } from "@/components/OutlitProvider"; import { PostHogUserIdentifier } from "@/components/PostHogUserIdentifier"; import { TRPCReactProvider } from "../trpc/react"; @@ -14,21 +13,19 @@ import { TRPCReactProvider } from "../trpc/react"; export function Providers({ children }: { children: React.ReactNode }) { return ( - - - - - {children} - - - - + + + + {children} + + + ); } diff --git a/apps/web/src/components/OutlitProvider/OutlitProvider.tsx b/apps/web/src/components/OutlitProvider/OutlitProvider.tsx deleted file mode 100644 index f8f43db564b..00000000000 --- a/apps/web/src/components/OutlitProvider/OutlitProvider.tsx +++ /dev/null @@ -1,33 +0,0 @@ -"use client"; - -import { OutlitProvider as OutlitBrowserProvider } from "@outlit/browser/react"; -import { authClient } from "@superset/auth/client"; -import type React from "react"; - -import { env } from "@/env"; - -interface OutlitProviderProps { - children: React.ReactNode; -} - -export function OutlitProvider({ children }: OutlitProviderProps) { - const { data: session } = authClient.useSession(); - const user = session?.user; - return ( - - {children} - - ); -} diff --git a/apps/web/src/components/OutlitProvider/index.ts b/apps/web/src/components/OutlitProvider/index.ts deleted file mode 100644 index aabfc36b4b5..00000000000 --- a/apps/web/src/components/OutlitProvider/index.ts +++ /dev/null @@ -1 +0,0 @@ -export { OutlitProvider } from "./OutlitProvider"; diff --git a/apps/web/src/env.ts b/apps/web/src/env.ts index f360430bb19..00609331de5 100644 --- a/apps/web/src/env.ts +++ b/apps/web/src/env.ts @@ -37,7 +37,6 @@ export const env = createEnv({ NEXT_PUBLIC_SENTRY_ENVIRONMENT: z .enum(["development", "preview", "production"]) .optional(), - NEXT_PUBLIC_OUTLIT_KEY: z.string(), }, experimental__runtimeEnv: { @@ -50,7 +49,6 @@ export const env = createEnv({ NEXT_PUBLIC_POSTHOG_HOST: process.env.NEXT_PUBLIC_POSTHOG_HOST, NEXT_PUBLIC_SENTRY_DSN_WEB: process.env.NEXT_PUBLIC_SENTRY_DSN_WEB, NEXT_PUBLIC_SENTRY_ENVIRONMENT: process.env.NEXT_PUBLIC_SENTRY_ENVIRONMENT, - NEXT_PUBLIC_OUTLIT_KEY: process.env.NEXT_PUBLIC_OUTLIT_KEY, }, skipValidation: !!process.env.SKIP_ENV_VALIDATION, diff --git a/bun.lock b/bun.lock index 5acc865f0f8..11c2b6bb1d2 100644 --- a/bun.lock +++ b/bun.lock @@ -110,7 +110,7 @@ }, "apps/desktop": { "name": "@superset/desktop", - "version": "1.2.3", + "version": "1.2.4", "dependencies": { "@ai-sdk/anthropic": "^3.0.43", "@ai-sdk/openai": "3.0.36", @@ -332,7 +332,6 @@ "name": "@superset/docs", "version": "0.0.0", "dependencies": { - "@outlit/browser": "^1.4.3", "@radix-ui/react-collapsible": "^1.1.12", "@radix-ui/react-scroll-area": "^1.2.10", "@sentry/nextjs": "^10.36.0", @@ -384,7 +383,6 @@ "name": "@superset/marketing", "version": "0.1.0", "dependencies": { - "@outlit/browser": "^1.4.3", "@react-three/drei": "^10.7.6", "@react-three/fiber": "^9.4.0", "@sentry/nextjs": "^10.36.0", @@ -529,7 +527,6 @@ "name": "@superset/web", "version": "0.1.0", "dependencies": { - "@outlit/browser": "^1.4.3", "@sentry/nextjs": "^10.36.0", "@superset/auth": "workspace:*", "@superset/db": "workspace:*", @@ -1804,10 +1801,6 @@ "@orama/orama": ["@orama/orama@3.1.18", "", {}, "sha512-a61ljmRVVyG5MC/698C8/FfFDw5a8LOIvyOLW5fztgUXqUpc1jOfQzOitSCbge657OgXXThmY3Tk8fpiDb4UcA=="], - "@outlit/browser": ["@outlit/browser@1.4.3", "", { "dependencies": { "@outlit/core": "^1.4.3" }, "peerDependencies": { "react": ">=17.0.0", "vue": ">=3.0.0" }, "optionalPeers": ["react", "vue"] }, "sha512-iHr0ZEfpBEaqmZRcn3ADBnugQXHduuLZwxG4YolOU+2iaXSC/mKhBuUgbfxTjPUc13d0TfslLLgPvbLXgkH7Sg=="], - - "@outlit/core": ["@outlit/core@1.4.3", "", {}, "sha512-4DwLrZb2OE938WgpcRKuvSBEQ1WvyBAkXeUpVka2BWtRmDTfsOHOQ/HRFjWpGfF1k6ckjLDGSgvilxmr11DZtQ=="], - "@parcel/watcher": ["@parcel/watcher@2.5.6", "", { "dependencies": { "detect-libc": "^2.0.3", "is-glob": "^4.0.3", "node-addon-api": "^7.0.0", "picomatch": "^4.0.3" }, "optionalDependencies": { "@parcel/watcher-android-arm64": "2.5.6", "@parcel/watcher-darwin-arm64": "2.5.6", "@parcel/watcher-darwin-x64": "2.5.6", "@parcel/watcher-freebsd-x64": "2.5.6", "@parcel/watcher-linux-arm-glibc": "2.5.6", "@parcel/watcher-linux-arm-musl": "2.5.6", "@parcel/watcher-linux-arm64-glibc": "2.5.6", "@parcel/watcher-linux-arm64-musl": "2.5.6", "@parcel/watcher-linux-x64-glibc": "2.5.6", "@parcel/watcher-linux-x64-musl": "2.5.6", "@parcel/watcher-win32-arm64": "2.5.6", "@parcel/watcher-win32-ia32": "2.5.6", "@parcel/watcher-win32-x64": "2.5.6" } }, "sha512-tmmZ3lQxAe/k/+rNnXQRawJ4NjxO2hqiOLTHvWchtGZULp4RyFeh6aU4XdOYBFe2KE1oShQTv4AblOs2iOrNnQ=="], "@parcel/watcher-android-arm64": ["@parcel/watcher-android-arm64@2.5.6", "", { "os": "android", "cpu": "arm64" }, "sha512-YQxSS34tPF/6ZG7r/Ih9xy+kP/WwediEUsqmtf0cuCV5TPPKw/PQHRhueUo6JdeFJaqV3pyjm0GdYjZotbRt/A=="],