- {threads.map((thread) => {
- const isActive = routeThreadId === thread.id;
- const threadStatus = threadStatusPill(
- thread,
- pendingApprovalByThreadId.get(thread.id) === true,
- );
- const terminalStatus = terminalStatusIndicator(thread);
- return (
-
- );
- })}
+ onClick={() => {
+ void navigate({
+ to: "/$threadId",
+ params: { threadId: thread.id },
+ });
+ }}
+ onContextMenu={(event) => {
+ event.preventDefault();
+ void handleThreadContextMenu(thread.id, {
+ x: event.clientX,
+ y: event.clientY,
+ });
+ }}
+ >
+
+ {threadStatus && (
+
+
+ {threadStatus.label}
+
+ )}
+
+ {thread.title}
+
+
+
+ {terminalStatus && (
+
+
+
+ )}
+
+ {formatRelativeTime(thread.createdAt)}
+
+
+
+
+ );
+ })}
- {/* New thread within project */}
-
-
- )}
+