import { ChangelogSettingsCard } from "@agent-native/core/client/changelog"; import { LanguagePicker, useT } from "@agent-native/core/client/i18n"; import { TeamPage } from "@agent-native/core/client/org"; import { AccountSettingsCard, SettingsTabsPage, useAgentSettingsTabs, type SettingsTabItem, } from "@agent-native/core/client/settings"; import { IconBell } from "@tabler/icons-react"; import { useMemo } from "react"; import { Link } from "react-router"; import { Button } from "@/components/ui/button"; import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from "@/components/ui/card"; import { Label } from "@/components/ui/label"; import changelog from "../../CHANGELOG.md?raw"; import { useReplayStorageStatus } from "../hooks/use-replay-storage-status"; import { ReplayStorageHint } from "./sessions/SessionsPage"; import { AlertRulesSettingsCard } from "./settings/AlertRulesSettingsCard"; import { buildAnalyticsGeneralSettingsSearchEntries } from "./settings/settings-search"; export default function Settings() { const t = useT(); const agentSettingsTabs = useAgentSettingsTabs(); const replayStorageStatus = useReplayStorageStatus(); const extraTabs = useMemo( () => [ { id: "alerts", label: t("settings.alertsTitle"), icon: IconBell, keywords: "alerts rules notifications thresholds triggers monitoring", content: (
), }, ...agentSettingsTabs, ], [agentSettingsTabs, t], ); const generalSearchEntries = useMemo( () => buildAnalyticsGeneralSettingsSearchEntries( t, !!replayStorageStatus.data?.configured, ), [replayStorageStatus.data?.configured, t], ); return ( } teamLabel={t("navigation.team")} whatsNewLabel={t("root.whatsNew")} extraTabs={extraTabs} generalSearchEntries={generalSearchEntries} general={
{t("settings.credentials")}

{t("settings.credentialsDescription")}

{t("settings.dashboardTemplates")} {t("settings.dashboardTemplatesDescription")} {replayStorageStatus.data?.configured ? ( {t("sessions.storageSetupTitle")} {t("sessions.storageSetupDescription")} ) : null} {t("settings.languageTitle")} {t("settings.about")}

{t("settings.aboutDescription")}

{t("settings.aboutUsage")}

} team={
} whatsNew={
} /> ); }