import { HTMLAttributes } from "react" import { useAppTranslation } from "@/i18n/TranslationContext" import { Trans } from "react-i18next" import { Download, Upload, TriangleAlert, Bug, Lightbulb, Shield, MessageCircle, MessagesSquare } from "lucide-react" import { VSCodeCheckbox, VSCodeLink } from "@vscode/webview-ui-toolkit/react" import type { TelemetrySetting } from "@roo-code/types" import { Package } from "@roo/package" import { vscode } from "@/utils/vscode" import { cn } from "@/lib/utils" import { Button } from "@/components/ui" import { SectionHeader } from "./SectionHeader" import { Section } from "./Section" import { SearchableSetting } from "./SearchableSetting" type AboutProps = HTMLAttributes & { telemetrySetting: TelemetrySetting setTelemetrySetting: (setting: TelemetrySetting) => void debug?: boolean setDebug?: (debug: boolean) => void } export const About = ({ telemetrySetting, setTelemetrySetting, debug, setDebug, className, ...props }: AboutProps) => { const { t } = useAppTranslation() return ( {t("settings:sections.about")} {Package.sha ? `Version: ${Package.version} (${Package.sha.slice(0, 8)})` : `Version: ${Package.version}`} { const checked = e.target.checked === true setTelemetrySetting(checked ? "enabled" : "disabled") }}> {t("settings:footer.telemetry.label")} , }} /> {t("settings:about.contactAndCommunity")} {t("settings:about.bugReport.label")}{" "} {t("settings:about.bugReport.link")} {t("settings:about.featureRequest.label")}{" "} {t("settings:about.featureRequest.link")} {t("settings:about.securityIssue.label")}{" "} {t("settings:about.securityIssue.link")} {t("settings:about.contact.label")}{" "} support@roocode.com , discordLink: , }} /> {setDebug && ( { const checked = e.target.checked === true setDebug(checked) }}> {t("settings:about.debugMode.label")} {t("settings:about.debugMode.description")} )} {t("settings:about.manageSettings")} vscode.postMessage({ type: "exportSettings" })} className="w-28"> {t("settings:footer.settings.export")} vscode.postMessage({ type: "importSettings" })} className="w-28"> {t("settings:footer.settings.import")} vscode.postMessage({ type: "resetState" })} className="w-28"> {t("settings:footer.settings.reset")} ) }
{Package.sha ? `Version: ${Package.version} (${Package.sha.slice(0, 8)})` : `Version: ${Package.version}`}
, }} />
{t("settings:about.debugMode.description")}