@@ -11,15 +11,7 @@ import { useState } from "react";
1111import { useAtomCommand } from "~/state/use-atom-command" ;
1212import { pullRequestEnvironment } from "~/state/pullRequests" ;
1313import { Button } from "../ui/button" ;
14- import {
15- Menu ,
16- MenuPopup ,
17- MenuTrigger ,
18- MenuItem ,
19- MenuGroup ,
20- MenuGroupLabel ,
21- MenuSeparator ,
22- } from "../ui/menu" ;
14+ import { Menu , MenuPopup , MenuTrigger , MenuItem , MenuGroup , MenuSeparator } from "../ui/menu" ;
2315import {
2416 Dialog ,
2517 DialogPopup ,
@@ -31,6 +23,8 @@ import {
3123} from "../ui/dialog" ;
3224import { toastManager } from "../ui/toast" ;
3325import { PullRequestStackLayers } from "./PullRequestStackLayers" ;
26+ import { PullRequestStackHeader } from "./PullRequestStackHeader" ;
27+ import { PullRequestStackLayerContent } from "./PullRequestStackLayerContent" ;
3428
3529export function PullRequestStackMenu ( {
3630 stack,
@@ -151,12 +145,7 @@ export function PullRequestStackMenu({
151145 </ Tooltip >
152146 < MenuPopup align = "start" className = "w-96 max-w-[calc(100vw-2rem)]" >
153147 < MenuGroup >
154- < MenuGroupLabel > Stack #{ stack . number } </ MenuGroupLabel >
155- { notice ? (
156- < p role = "status" className = "px-2 py-1 text-xs text-muted-foreground" >
157- { notice }
158- </ p >
159- ) : null }
148+ < PullRequestStackHeader number = { stack . number } notice = { notice } stale = { ! ! onRetry } />
160149 { onRetry ? < MenuItem onClick = { onRetry } > Retry stack refresh</ MenuItem > : null }
161150 < PullRequestStackLayers
162151 stack = { stack }
@@ -205,7 +194,7 @@ export function PullRequestStackMenu({
205194 render = {
206195 < span className = "inline-flex" >
207196 < Button
208- variant = "ghost "
197+ variant = "default "
209198 size = "xs"
210199 disabled = { mergeDisabled }
211200 onClick = { ( ) => setConfirmation ( "merge" ) }
@@ -242,13 +231,16 @@ export function PullRequestStackMenu({
242231 </ DialogDescription >
243232 </ DialogHeader >
244233 < DialogPanel >
245- < div className = "max-h-48 overflow-y-auto text-sm" >
234+ < ul className = "max-h-48 space-y-1 overflow-y-auto text-sm" >
246235 { confirmationLayers . map ( ( layer ) => (
247- < div key = { layer . number } >
248- #{ layer . number } { layer . title || layer . headBranch }
249- </ div >
236+ < li
237+ key = { layer . number }
238+ className = "flex items-center gap-2 rounded-md bg-muted/50 px-3 py-2"
239+ >
240+ < PullRequestStackLayerContent layer = { layer } compact />
241+ </ li >
250242 ) ) }
251- </ div >
243+ </ ul >
252244 </ DialogPanel >
253245 < DialogFooter >
254246 < Button variant = "outline" disabled = { pending } onClick = { ( ) => setConfirmation ( null ) } >
0 commit comments