mirror of
https://github.com/mattermost/focalboard.git
synced 2025-02-07 19:30:18 +02:00
GH-633 - Updating active indicator for boards (#766)
* GH-663 - Updating active indicator for boards * Passed active view ID to sidebar component * Updating view selected state Co-authored-by: Harshil Sharma <harshilsharma63@gmail.com> Co-authored-by: Hossein <hahmadia@users.noreply.github.com>
This commit is contained in:
parent
bafa32108d
commit
4d5c445141
@ -21,6 +21,7 @@ type Props = {
|
|||||||
workspace?: IWorkspace
|
workspace?: IWorkspace
|
||||||
workspaceTree: WorkspaceTree,
|
workspaceTree: WorkspaceTree,
|
||||||
activeBoardId?: string
|
activeBoardId?: string
|
||||||
|
activeViewId?: string
|
||||||
}
|
}
|
||||||
|
|
||||||
const Sidebar = React.memo((props: Props) => {
|
const Sidebar = React.memo((props: Props) => {
|
||||||
@ -96,6 +97,7 @@ const Sidebar = React.memo((props: Props) => {
|
|||||||
views={views}
|
views={views}
|
||||||
board={board}
|
board={board}
|
||||||
activeBoardId={props.activeBoardId}
|
activeBoardId={props.activeBoardId}
|
||||||
|
activeViewId={props.activeViewId}
|
||||||
nextBoardId={nextBoardId}
|
nextBoardId={nextBoardId}
|
||||||
/>
|
/>
|
||||||
)
|
)
|
||||||
|
@ -18,6 +18,28 @@
|
|||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&.active {
|
||||||
|
background: rgba(var(--sidebar-fg), 0.1);
|
||||||
|
position: relative;
|
||||||
|
color: white;
|
||||||
|
|
||||||
|
.Icon {
|
||||||
|
stroke: rgba(var(--sidebar-fg), 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
&:not(.subitem) {
|
||||||
|
&:before {
|
||||||
|
content: '';
|
||||||
|
background: var(--sidebar-text-active-border);
|
||||||
|
width: 2px;
|
||||||
|
height: 100%;
|
||||||
|
position: absolute;
|
||||||
|
left: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
&.no-views {
|
&.no-views {
|
||||||
color: rgba(var(--sidebar-fg), 0.4);
|
color: rgba(var(--sidebar-fg), 0.4);
|
||||||
|
|
||||||
|
@ -24,6 +24,7 @@ type Props = {
|
|||||||
views: readonly BoardView[]
|
views: readonly BoardView[]
|
||||||
board: Board
|
board: Board
|
||||||
activeBoardId?: string
|
activeBoardId?: string
|
||||||
|
activeViewId?: string
|
||||||
nextBoardId?: string
|
nextBoardId?: string
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -95,7 +96,7 @@ const SidebarBoardItem = React.memo((props: Props) => {
|
|||||||
return (
|
return (
|
||||||
<div className='SidebarBoardItem'>
|
<div className='SidebarBoardItem'>
|
||||||
<div
|
<div
|
||||||
className={'octo-sidebar-item ' + (collapsed ? 'collapsed' : 'expanded')}
|
className={`octo-sidebar-item ' ${collapsed ? 'collapsed' : 'expanded'} ${board.id === props.activeBoardId ? 'active' : ''}`}
|
||||||
onClick={() => showBoard(board.id)}
|
onClick={() => showBoard(board.id)}
|
||||||
>
|
>
|
||||||
<IconButton
|
<IconButton
|
||||||
@ -163,7 +164,7 @@ const SidebarBoardItem = React.memo((props: Props) => {
|
|||||||
{!collapsed && boardViews.map((view) => (
|
{!collapsed && boardViews.map((view) => (
|
||||||
<div
|
<div
|
||||||
key={view.id}
|
key={view.id}
|
||||||
className='octo-sidebar-item subitem'
|
className={`octo-sidebar-item subitem ${view.id === props.activeViewId ? 'active' : ''}`}
|
||||||
onClick={() => showView(view.id, board.id)}
|
onClick={() => showView(view.id, board.id)}
|
||||||
>
|
>
|
||||||
{iconForViewType(view.viewType)}
|
{iconForViewType(view.viewType)}
|
||||||
|
@ -52,6 +52,7 @@ const Workspace = React.memo((props: Props) => {
|
|||||||
workspace={workspace}
|
workspace={workspace}
|
||||||
workspaceTree={workspaceTree}
|
workspaceTree={workspaceTree}
|
||||||
activeBoardId={boardTree?.board.id}
|
activeBoardId={boardTree?.board.id}
|
||||||
|
activeViewId={boardTree?.activeView.id}
|
||||||
/>
|
/>
|
||||||
}
|
}
|
||||||
<div className='mainFrame'>
|
<div className='mainFrame'>
|
||||||
|
@ -13,6 +13,7 @@ export type Theme = {
|
|||||||
buttonFg: string,
|
buttonFg: string,
|
||||||
sidebarBg: string,
|
sidebarBg: string,
|
||||||
sidebarFg: string,
|
sidebarFg: string,
|
||||||
|
sidebarTextActiveBorder: string,
|
||||||
sidebarWhiteLogo: string,
|
sidebarWhiteLogo: string,
|
||||||
|
|
||||||
link: string,
|
link: string,
|
||||||
@ -41,6 +42,7 @@ export const defaultTheme = {
|
|||||||
buttonFg: '255, 255, 255',
|
buttonFg: '255, 255, 255',
|
||||||
sidebarBg: '20, 93, 191',
|
sidebarBg: '20, 93, 191',
|
||||||
sidebarFg: '255, 255, 255',
|
sidebarFg: '255, 255, 255',
|
||||||
|
sidebarTextActiveBorder: '#579eff',
|
||||||
sidebarWhiteLogo: 'true',
|
sidebarWhiteLogo: 'true',
|
||||||
|
|
||||||
link: '#0000ee',
|
link: '#0000ee',
|
||||||
@ -69,6 +71,7 @@ export const darkTheme = {
|
|||||||
buttonFg: '255, 255, 255',
|
buttonFg: '255, 255, 255',
|
||||||
sidebarBg: '75, 73, 67',
|
sidebarBg: '75, 73, 67',
|
||||||
sidebarFg: '255, 255, 255',
|
sidebarFg: '255, 255, 255',
|
||||||
|
sidebarTextActiveBorder: '#66b9a7',
|
||||||
sidebarWhiteLogo: 'true',
|
sidebarWhiteLogo: 'true',
|
||||||
|
|
||||||
link: '#0090ff',
|
link: '#0090ff',
|
||||||
@ -97,6 +100,7 @@ export const lightTheme = {
|
|||||||
buttonFg: '255, 255, 255',
|
buttonFg: '255, 255, 255',
|
||||||
sidebarBg: '247, 246, 243',
|
sidebarBg: '247, 246, 243',
|
||||||
sidebarFg: '55, 53, 47',
|
sidebarFg: '55, 53, 47',
|
||||||
|
sidebarTextActiveBorder: '#579eff',
|
||||||
sidebarWhiteLogo: 'false',
|
sidebarWhiteLogo: 'false',
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -122,6 +126,7 @@ export function setTheme(theme: Theme | null): Theme {
|
|||||||
document.documentElement.style.setProperty('--button-fg', consolidatedTheme.buttonFg)
|
document.documentElement.style.setProperty('--button-fg', consolidatedTheme.buttonFg)
|
||||||
document.documentElement.style.setProperty('--sidebar-bg', consolidatedTheme.sidebarBg)
|
document.documentElement.style.setProperty('--sidebar-bg', consolidatedTheme.sidebarBg)
|
||||||
document.documentElement.style.setProperty('--sidebar-fg', consolidatedTheme.sidebarFg)
|
document.documentElement.style.setProperty('--sidebar-fg', consolidatedTheme.sidebarFg)
|
||||||
|
document.documentElement.style.setProperty('--sidebar-text-active-border', consolidatedTheme.sidebarTextActiveBorder)
|
||||||
document.documentElement.style.setProperty('--sidebar-white-logo', consolidatedTheme.sidebarWhiteLogo)
|
document.documentElement.style.setProperty('--sidebar-white-logo', consolidatedTheme.sidebarWhiteLogo)
|
||||||
|
|
||||||
document.documentElement.style.setProperty('--link-color', consolidatedTheme.link)
|
document.documentElement.style.setProperty('--link-color', consolidatedTheme.link)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user