From a36622478692a28be4d356b03765137c252e7779 Mon Sep 17 00:00:00 2001 From: Ignacio Dominguez Date: Sun, 13 Oct 2024 11:42:12 +0200 Subject: [PATCH] Add disable option for directories section in dashboard (#319) * Add disable option for directories section in dashboard * Fix linting and typo --------- Co-authored-by: Jas Singh --- modules/menus/dashboard/index.ts | 24 +++++++++++++------ options.ts | 1 + .../settings/pages/config/menus/dashboard.ts | 1 + 3 files changed, 19 insertions(+), 7 deletions(-) diff --git a/modules/menus/dashboard/index.ts b/modules/menus/dashboard/index.ts index 6aee225..0569109 100644 --- a/modules/menus/dashboard/index.ts +++ b/modules/menus/dashboard/index.ts @@ -8,6 +8,8 @@ import Window from 'types/widgets/window.js'; import { Attribute, Child } from 'lib/types/widget.js'; import options from 'options.js'; +const { enabled: directoriesEnabled } = options.menus.dashboard.directories; + export default (): Window => { return DropdownMenu({ name: 'dashboardmenu', @@ -20,13 +22,21 @@ export default (): Window => { Widget.Box({ class_name: 'dashboard-content-container', vertical: true, - children: [ - Widget.Box({ - class_name: 'dashboard-content-items', - vertical: true, - children: [Profile(), Shortcuts(), Controls(), Directories(), Stats()], - }), - ], + children: directoriesEnabled.bind('value').as((isDirectoriesEnabled) => { + return [ + Widget.Box({ + class_name: 'dashboard-content-items', + vertical: true, + children: [ + Profile(), + Shortcuts(), + Controls(), + ...(isDirectoriesEnabled ? [Directories()] : []), + Stats(), + ], + }), + ]; + }), }), ], }), diff --git a/options.ts b/options.ts index ba950df..805a180 100644 --- a/options.ts +++ b/options.ts @@ -1103,6 +1103,7 @@ const options = mkOptions(OPTIONS, { }, }, directories: { + enabled: opt(true), left: { directory1: { label: opt('󰉍 Downloads'), diff --git a/widget/settings/pages/config/menus/dashboard.ts b/widget/settings/pages/config/menus/dashboard.ts index 8a56e22..e6ef528 100644 --- a/widget/settings/pages/config/menus/dashboard.ts +++ b/widget/settings/pages/config/menus/dashboard.ts @@ -145,6 +145,7 @@ export const DashboardMenuSettings = (): Scrollable => { }), Header('Directories'), + Option({ opt: options.menus.dashboard.directories.enabled, title: 'Enabled', type: 'boolean' }), Option({ opt: options.menus.dashboard.directories.left.directory1.label, title: 'Left - Directory 1 (Label)',