| ... | ... | @@ -1098,6 +1098,7 @@ export default function Sidebar() { |
| 1098 | 1098 | const renderedThreads = pinnedCollapsedThread |
| 1099 | 1099 | ? [pinnedCollapsedThread] |
| 1100 | 1100 | : visibleProjectThreads; |
| 1101 | const showEmptyThreadState = project.expanded && projectThreads.length === 0; |
| 1101 | 1102 | |
| 1102 | 1103 | return { |
| 1103 | 1104 | hasHiddenThreads, |
| ... | ... | @@ -1108,6 +1109,7 @@ export default function Sidebar() { |
| 1108 | 1109 | projectThreads, |
| 1109 | 1110 | threadStatuses, |
| 1110 | 1111 | renderedThreads, |
| 1112 | showEmptyThreadState, |
| 1111 | 1113 | shouldShowThreadPanel, |
| 1112 | 1114 | isThreadListExpanded, |
| 1113 | 1115 | }; |
| ... | ... | @@ -1255,6 +1257,7 @@ export default function Sidebar() { |
| 1255 | 1257 | projectThreads, |
| 1256 | 1258 | threadStatuses, |
| 1257 | 1259 | renderedThreads, |
| 1260 | showEmptyThreadState, |
| 1258 | 1261 | shouldShowThreadPanel, |
| 1259 | 1262 | isThreadListExpanded, |
| 1260 | 1263 | } = renderedProject; |
| ... | ... | @@ -1572,6 +1575,16 @@ export default function Sidebar() { |
| 1572 | 1575 | ref={attachThreadListAutoAnimateRef} |
| 1573 | 1576 | className="mx-1 my-0 w-full translate-x-0 gap-0.5 overflow-hidden px-1.5 py-0" |
| 1574 | 1577 | > |
| 1578 | {shouldShowThreadPanel && showEmptyThreadState ? ( |
| 1579 | <SidebarMenuSubItem className="w-full" data-thread-selection-safe> |
| 1580 | <div |
| 1581 | data-thread-selection-safe |
| 1582 | className="flex h-6 w-full translate-x-0 items-center px-2 text-left text-[10px] text-muted-foreground/60" |
| 1583 | > |
| 1584 | <span>No threads yet</span> |
| 1585 | </div> |
| 1586 | </SidebarMenuSubItem> |
| 1587 | ) : null} |
| 1575 | 1588 | {shouldShowThreadPanel && renderedThreads.map((thread) => renderThreadRow(thread))} |
| 1576 | 1589 | |
| 1577 | 1590 | {project.expanded && hasHiddenThreads && !isThreadListExpanded && ( |