feat(ui): sticky board list header

This commit is contained in:
psychedelicious 2024-07-10 18:38:01 +10:00 committed by Kent Keirsey
parent b70e87f25b
commit 7db767b7c3

View File

@ -43,14 +43,24 @@ const BoardsList = () => {
<Flex flexDir="column" gap={2} borderRadius="base" maxHeight="100%"> <Flex flexDir="column" gap={2} borderRadius="base" maxHeight="100%">
<OverlayScrollbarsComponent defer style={overlayScrollbarsStyles} options={overlayScrollbarsParams.options}> <OverlayScrollbarsComponent defer style={overlayScrollbarsStyles} options={overlayScrollbarsParams.options}>
{allowPrivateBoards && ( {allowPrivateBoards && (
<> <Flex direction="column" gap={1}>
<Flex w="full" justifyContent="space-between" alignItems="center" ps={2} py={1}> <Flex
<Text fontSize="md" fontWeight="medium" userSelect="none"> position="sticky"
w="full"
justifyContent="space-between"
alignItems="center"
ps={2}
py={1}
zIndex={1}
top={0}
bg="base.900"
>
<Text fontSize="md" fontWeight="semibold" userSelect="none">
{t('boards.private')} {t('boards.private')}
</Text> </Text>
<AddBoardButton isPrivateBoard={true} /> <AddBoardButton isPrivateBoard={true} />
</Flex> </Flex>
<Flex direction="column" maxH={100} gap={1}> <Flex direction="column" gap={1}>
<NoBoardBoard isSelected={selectedBoardId === 'none'} /> <NoBoardBoard isSelected={selectedBoardId === 'none'} />
{filteredPrivateBoards.map((board) => ( {filteredPrivateBoards.map((board) => (
<GalleryBoard <GalleryBoard
@ -61,10 +71,21 @@ const BoardsList = () => {
/> />
))} ))}
</Flex> </Flex>
</> </Flex>
)} )}
<Flex w="full" justifyContent="space-between" alignItems="center" ps={2} py={1}> <Flex direction="column" gap={1}>
<Text fontSize="md" fontWeight="medium" userSelect="none"> <Flex
position="sticky"
w="full"
justifyContent="space-between"
alignItems="center"
ps={2}
py={1}
zIndex={1}
top={0}
bg="base.900"
>
<Text fontSize="md" fontWeight="semibold" userSelect="none">
{allowPrivateBoards ? t('boards.shared') : t('boards.boards')} {allowPrivateBoards ? t('boards.shared') : t('boards.boards')}
</Text> </Text>
<AddBoardButton isPrivateBoard={false} /> <AddBoardButton isPrivateBoard={false} />
@ -80,6 +101,7 @@ const BoardsList = () => {
/> />
))} ))}
</Flex> </Flex>
</Flex>
</OverlayScrollbarsComponent> </OverlayScrollbarsComponent>
</Flex> </Flex>
<DeleteBoardModal boardToDelete={boardToDelete} setBoardToDelete={setBoardToDelete} /> <DeleteBoardModal boardToDelete={boardToDelete} setBoardToDelete={setBoardToDelete} />