From cfcf8fc0331287f3a4fe518b2a93dda5bb181ae3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Loi=CC=88c=20Correnson?= <loic.correnson@cea.fr> Date: Mon, 13 Nov 2023 09:54:14 +0100 Subject: [PATCH] [ivette/sidebar] beautify code for selector --- ivette/src/renderer/Sidebar.tsx | 32 ++++++++------------------------ 1 file changed, 8 insertions(+), 24 deletions(-) diff --git a/ivette/src/renderer/Sidebar.tsx b/ivette/src/renderer/Sidebar.tsx index f27b3383a53..c7b33a3bdff 100644 --- a/ivette/src/renderer/Sidebar.tsx +++ b/ivette/src/renderer/Sidebar.tsx @@ -46,32 +46,16 @@ function Selector(props: SelectorProps): JSX.Element { const className = classes( 'sidebar-selector', 'dome-color-frame', - selected === id ? 'sidebar-selector-selected' : '' + selected === id && 'sidebar-selector-selected', ); - + const onClick = React.useCallback(() => setSelected(id), [setSelected, id]); + const component = + iconPath + ? <img className="sidebar-selector-icon" src={iconPath} alt={label} /> + : <label className="sidebar-selector-label">{label}</label>; return ( - <div className={className}> - {iconPath ? - <img - className="sidebar-selector-icon" - src={iconPath} - alt={label} - title={title} - onClick={ - () => setSelected(id) - } - /> - : - <label - className="sidebar-selector-label" - onClick={ - () => setSelected(id) - } - > - {label.slice(0, 4).toLocaleUpperCase()} - </label> - } - <br/> + <div className={className} title={title} onClick={onClick}> + {component} </div> ); } -- GitLab