@@ -62,42 +62,42 @@ program.action(async (opt: GitmBuildOption): Promise<void> => {
6262 echo ( yellow ( t ( 'No merge request record found, process has exited' ) ) )
6363 process . exit ( 0 )
6464 }
65+ const choices = [ ]
66+ for await ( const mr of mrList ) {
67+ const { iid, author, source_branch, target_branch, merge_status, created_at } = mr
68+ mr . notes = (
69+ ( await getMergeRequestNotesList ( {
70+ iid
71+ } ) ) || [ ]
72+ ) . filter ( ( note : any ) => ! note . system )
73+ const disabled = merge_status !== 'can_be_merged'
74+ const _time = dayjs ( created_at ) . format ( 'YYYY/MM/DD HH:mm' )
75+ choices . push ( {
76+ name : t (
77+ '{id} request merge {source} to {target} {disabled} | {name} | {comments} | {time}' ,
78+ {
79+ id : green ( iid + ': ' ) ,
80+ source : green ( source_branch ) ,
81+ target : green ( target_branch ) ,
82+ disabled : disabled ? red ( `[ ${ t ( 'Conflict or no need to merge' ) } ]` ) : '' ,
83+ name : yellow ( author . name ) ,
84+ comments : green (
85+ t ( '{length} comments' , {
86+ length : String ( mr . notes . length )
87+ } )
88+ ) ,
89+ time : blue ( _time )
90+ }
91+ ) ,
92+ value : iid ,
93+ // disabled,
94+ checked : false
95+ } )
96+ }
6597 const [ , iids = [ ] ] = await to (
6698 checkbox < number > ( {
6799 message : t ( 'Please select the merge request to be operated' ) ,
68- choices : mrList . map ( async ( mr : any ) => {
69- const { iid, author, source_branch, target_branch, merge_status, created_at } = mr
70- mr . notes = (
71- ( await getMergeRequestNotesList ( {
72- iid
73- } ) ) || [ ]
74- ) . filter ( ( note : any ) => ! note . system )
75- const disabled = merge_status !== 'can_be_merged'
76- const _time = dayjs ( created_at ) . format ( 'YYYY/MM/DD HH:mm' )
77- return {
78- name : t (
79- '{id} request merge {source} to {target} {disabled} | {name} | {comments} | {time}' ,
80- {
81- id : green ( iid + ': ' ) ,
82- source : green ( source_branch ) ,
83- target : green ( target_branch ) ,
84- disabled : disabled
85- ? red ( `[ ${ t ( 'Conflict or no need to merge' ) } ]` )
86- : '' ,
87- name : yellow ( author . name ) ,
88- comments : green (
89- t ( '{length} comments' , {
90- length : String ( mr . notes . length )
91- } )
92- ) ,
93- time : blue ( _time )
94- }
95- ) ,
96- value : iid ,
97- // disabled,
98- checked : false
99- }
100- } )
100+ choices
101101 } )
102102 )
103103 // no records
0 commit comments