| ... | @@ -204,6 +204,8 @@ export const ThreadListV2PendingRow = memo(function ThreadListV2PendingRow(props | ... | @@ -204,6 +204,8 @@ export const ThreadListV2PendingRow = memo(function ThreadListV2PendingRow(props |
| 204 | readonly pane?: "screen" | "sidebar"; | 204 | readonly pane?: "screen" | "sidebar"; |
| 205 | /** Draws the "Pending" divider above the first queued row. */ | 205 | /** Draws the "Pending" divider above the first queued row. */ |
| 206 | readonly showPendingDivider: boolean; | 206 | readonly showPendingDivider: boolean; |
| | 207 | /** Keeps row hairlines inside a section; section headers draw their own rule. */ |
| | 208 | readonly showTrailingDivider?: boolean; |
| 207 | readonly onSelectPendingTask: (pendingTask: PendingNewTask) => void; | 209 | readonly onSelectPendingTask: (pendingTask: PendingNewTask) => void; |
| 208 | readonly onDeletePendingTask: (pendingTask: PendingNewTask) => void; | 210 | readonly onDeletePendingTask: (pendingTask: PendingNewTask) => void; |
| 209 | }) { | 211 | }) { |
| ... | @@ -291,7 +293,9 @@ export const ThreadListV2PendingRow = memo(function ThreadListV2PendingRow(props | ... | @@ -291,7 +293,9 @@ export const ThreadListV2PendingRow = memo(function ThreadListV2PendingRow(props |
| 291 | ) : ( | 293 | ) : ( |
| 292 | <View className="bg-screen"> | 294 | <View className="bg-screen"> |
| 293 | <View className="px-5 py-2.5">{rowContent}</View> | 295 | <View className="px-5 py-2.5">{rowContent}</View> |
| 294 | <View className="ml-5 h-px bg-border-subtle" /> | 296 | {props.showTrailingDivider !== false ? ( |
| | 297 | <View className="ml-5 h-px bg-border-subtle" /> |
| | 298 | ) : null} |
| 295 | </View> | 299 | </View> |
| 296 | )} | 300 | )} |
| 297 | </Pressable> | 301 | </Pressable> |
| ... | @@ -327,6 +331,8 @@ export const ThreadListV2Row = memo(function ThreadListV2Row(props: { | ... | @@ -327,6 +331,8 @@ export const ThreadListV2Row = memo(function ThreadListV2Row(props: { |
| 327 | into the drawer surface, selection filled with the accent color — | 331 | into the drawer surface, selection filled with the accent color — |
| 328 | matching the v1 sidebar rows. */ | 332 | matching the v1 sidebar rows. */ |
| 329 | readonly pane?: "screen" | "sidebar"; | 333 | readonly pane?: "screen" | "sidebar"; |
| | 334 | /** Keeps row hairlines inside a section; section headers draw their own rule. */ |
| | 335 | readonly showTrailingDivider?: boolean; |
| 330 | /** Highlights the thread open in the detail pane (iPad split view). The | 336 | /** Highlights the thread open in the detail pane (iPad split view). The |
| 331 | compact Home list never sets it — phones navigate away on select. */ | 337 | compact Home list never sets it — phones navigate away on select. */ |
| 332 | readonly selected?: boolean; | 338 | readonly selected?: boolean; |
| ... | @@ -728,7 +734,9 @@ export const ThreadListV2Row = memo(function ThreadListV2Row(props: { | ... | @@ -728,7 +734,9 @@ export const ThreadListV2Row = memo(function ThreadListV2Row(props: { |
| 728 | actions reveal behind the row. */ | 734 | actions reveal behind the row. */ |
| 729 | <View className="bg-screen"> | 735 | <View className="bg-screen"> |
| 730 | <View className="px-5 py-2.5">{cardContent}</View> | 736 | <View className="px-5 py-2.5">{cardContent}</View> |
| 731 | <View className="ml-5 h-px bg-border-subtle" /> | 737 | {props.showTrailingDivider !== false ? ( |
| | 738 | <View className="ml-5 h-px bg-border-subtle" /> |
| | 739 | ) : null} |
| 732 | </View> | 740 | </View> |
| 733 | )} | 741 | )} |
| 734 | </Pressable> | 742 | </Pressable> |