From 05bcda613984a29acdac35420604f648cc0a87d8 Mon Sep 17 00:00:00 2001 From: Vorflux AI <249966464+vorflux[bot]@users.noreply.github.com> Date: Tue, 21 Jul 2026 14:19:58 +0000 Subject: [PATCH] fix(web): restore organization context settings --- apps/web/components/settings/account.tsx | 3 + apps/web/components/settings/org-context.tsx | 127 +++++++++++++++++++ apps/web/hooks/use-org-settings.ts | 14 +- 3 files changed, 139 insertions(+), 5 deletions(-) create mode 100644 apps/web/components/settings/org-context.tsx diff --git a/apps/web/components/settings/account.tsx b/apps/web/components/settings/account.tsx index ffea566c..57d356fc 100644 --- a/apps/web/components/settings/account.tsx +++ b/apps/web/components/settings/account.tsx @@ -41,6 +41,7 @@ import { toast } from "sonner" import { useContainerTags } from "@/hooks/use-container-tags" import { useHasCompanyBrain } from "@/hooks/use-company-brain" import { PopoverAnchor } from "@ui/components/popover" +import { OrgContext } from "@/components/settings/org-context" import { WorkspacePersona } from "@/components/settings/workspace-persona" import { OrgPlanBadge } from "@/components/org-plan-badge" import { useTokenUsage } from "@/hooks/use-token-usage" @@ -616,6 +617,8 @@ export default function Account() { + {canManageTeam && } + {canManageTeam && isCompanyBrain && } diff --git a/apps/web/components/settings/org-context.tsx b/apps/web/components/settings/org-context.tsx new file mode 100644 index 00000000..0aeb7c9f --- /dev/null +++ b/apps/web/components/settings/org-context.tsx @@ -0,0 +1,127 @@ +"use client" + +import { useEffect, useState } from "react" +import { LoaderIcon } from "lucide-react" +import { dmSans125ClassName, dmSansClassName } from "@/lib/fonts" +import { useOrgSettings, useUpdateOrgSettings } from "@/hooks/use-org-settings" +import { cn } from "@lib/utils" + +function SectionTitle({ children }: { children: React.ReactNode }) { + return ( +

+ {children} +

+ ) +} + +export function OrgContext() { + const { data: settings, isLoading, isError } = useOrgSettings() + const updateSettings = useUpdateOrgSettings() + const [prompt, setPrompt] = useState("") + + const enabled = settings?.shouldLLMFilter ?? false + const savedPrompt = settings?.filterPrompt ?? "" + const dirty = prompt.trim() !== savedPrompt.trim() + const settingsReady = !isLoading && !isError + + useEffect(() => { + setPrompt(settings?.filterPrompt ?? "") + }, [settings?.filterPrompt]) + + const handleToggle = (next: boolean) => { + updateSettings.mutate({ shouldLLMFilter: next }) + } + + const handleSave = () => { + updateSettings.mutate({ + shouldLLMFilter: true, + filterPrompt: prompt.trim() ? prompt.trim() : null, + }) + } + + return ( +
+
+
+ Organization Context +

+ Guide how Supermemory processes and remembers your content. +

+
+ +
+ + {enabled && ( +
+