[feat]: show indicator for in progress chats in the sessions list (#5417)

This commit is contained in:
Rhys Sullivan
2025-12-11 18:57:03 -08:00
committed by GitHub
parent a5cb4e41f5
commit 11efda3f5c
2 changed files with 15 additions and 1 deletions

View File

@@ -36,6 +36,7 @@ export interface DialogSelectOption<T = any> {
category?: string
disabled?: boolean
bg?: RGBA
gutter?: JSX.Element
onSelect?: (ctx: DialogContext, trigger?: "prompt") => void
}
@@ -239,7 +240,7 @@ export function DialogSelect<T>(props: DialogSelectProps<T>) {
moveTo(index)
}}
backgroundColor={active() ? (option.bg ?? theme.primary) : RGBA.fromInts(0, 0, 0, 0)}
paddingLeft={current() ? 1 : 3}
paddingLeft={current() || option.gutter ? 1 : 3}
paddingRight={3}
gap={1}
>
@@ -249,6 +250,7 @@ export function DialogSelect<T>(props: DialogSelectProps<T>) {
description={option.description !== category ? option.description : undefined}
active={active()}
current={current()}
gutter={option.gutter}
/>
</box>
)
@@ -282,6 +284,7 @@ function Option(props: {
active?: boolean
current?: boolean
footer?: JSX.Element | string
gutter?: JSX.Element
onMouseOver?: () => void
}) {
const { theme } = useTheme()
@@ -294,6 +297,11 @@ function Option(props: {
</text>
</Show>
<Show when={!props.current && props.gutter}>
<box flexShrink={0} marginRight={0.5}>
{props.gutter}
</box>
</Show>
<text
flexGrow={1}
fg={props.active ? fg : props.current ? theme.primary : theme.text}