diff options
Diffstat (limited to 'src/components')
-rw-r--r-- | src/components/VencordSettings/index.tsx | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/components/VencordSettings/index.tsx b/src/components/VencordSettings/index.tsx index 3701897..028bd5e 100644 --- a/src/components/VencordSettings/index.tsx +++ b/src/components/VencordSettings/index.tsx @@ -39,19 +39,25 @@ interface SettingsProps { tab: string; } -const SettingsTabs = { +interface SettingsTab { + name: string; + component?: React.ComponentType; +} + +const SettingsTabs: Record<string, SettingsTab> = { VencordSettings: { name: "Vencord", component: () => <VencordSettings /> }, VencordPlugins: { name: "Plugins", component: () => <PluginsTab /> }, VencordThemes: { name: "Themes", component: () => <Text variant="text-md/medium">Coming soon to a Vencord near you!</Text> }, - VencordUpdater: { name: "Updater", component: () => Updater ? <Updater /> : null }, + VencordUpdater: { name: "Updater" }, // Only show updater if IS_WEB is false VencordSettingsSync: { name: "Backup & Restore", component: () => <BackupRestoreTab /> }, }; +if (!IS_WEB) SettingsTabs.VencordUpdater.component = () => Updater && <Updater />; function Settings(props: SettingsProps) { const { tab = "VencordSettings" } = props; - const CurrentTab = SettingsTabs[tab]?.component ?? null; + const CurrentTab = SettingsTabs[tab]?.component; return <Forms.FormSection> <Text variant="heading-md/normal" tag="h2">Vencord Settings</Text> @@ -63,7 +69,8 @@ function Settings(props: SettingsProps) { selectedItem={tab} onItemSelect={Router.open} > - {Object.entries(SettingsTabs).map(([key, { name }]) => { + {Object.entries(SettingsTabs).map(([key, { name, component }]) => { + if (!component) return null; return <TabBar.Item id={key} className={st("TabBarItem")} @@ -73,7 +80,7 @@ function Settings(props: SettingsProps) { })} </TabBar> <Forms.FormDivider /> - <CurrentTab /> + {CurrentTab && <CurrentTab />} </Forms.FormSection >; } |