Commit 18305b9 1 parent e372a2d commit 18305b9 Copy full SHA for 18305b9
File tree 4 files changed +17
-8
lines changed
4 files changed +17
-8
lines changed Original file line number Diff line number Diff line change @@ -15,7 +15,7 @@ import { checkDependencies } from './steps/check-dependencies.ts';
15
15
import { ColorScheme } from '../../lib/colors.ts' ;
16
16
import { formatObjectForLog } from '../../lib/pr-cli/debug.ts' ;
17
17
import { chooseMultipleFormatted } from '../../lib/pr-cli/choose.ts' ;
18
- import { assertValidTitle , writeTitle } from '../../lib/pr-cli/pr-title.ts' ;
18
+ import { assertValidTitle , selectTitle } from '../../lib/pr-cli/pr-title.ts' ;
19
19
import { generatePullRequestBody , replacePRCLIPartOfBody } from '../../lib/pr-cli/pr-body.ts' ;
20
20
import { Command } from '@cliffy/command' ;
21
21
import { colors } from '@cliffy/ansi/colors' ;
@@ -102,7 +102,7 @@ export const pickCommand = new Command()
102
102
throw new Error ( 'No commits chosen' ) ;
103
103
}
104
104
105
- const title = options . title ?? await writeTitle ( {
105
+ const title = options . title ?? await selectTitle ( {
106
106
branchName : options . branch , // This option is only shown if branch was pre-provided
107
107
commits : pickedCommits ,
108
108
} ) ;
Original file line number Diff line number Diff line change @@ -5,7 +5,7 @@ import { getKeySequence } from '../../../lib/keypress.ts';
5
5
import { Git } from '../../../lib/git/git.ts' ;
6
6
import type { GumStyleOptions } from '../../../lib/gum/style/style.ts' ;
7
7
import { chooseOne } from '../../../lib/pr-cli/choose.ts' ;
8
- import { writeTitle } from '../../../lib/pr-cli/pr-title.ts' ;
8
+ import { editTitle , selectTitle } from '../../../lib/pr-cli/pr-title.ts' ;
9
9
import { writePullRequestBody } from '../../../lib/pr-cli/pr-body.ts' ;
10
10
import { CommandExecutionError } from '../../../lib/shell/command-execution-error.ts' ;
11
11
import { colors } from '@cliffy/ansi/colors' ;
@@ -263,7 +263,12 @@ async function listenForKeySequence(
263
263
// Title
264
264
't' : async ( settings : GitPickSettings ) => ( {
265
265
...settings ,
266
- title : await writeTitle ( {
266
+ title : await editTitle ( settings . title ) ,
267
+ } ) ,
268
+ // Title
269
+ 'ctrl+t' : async ( settings : GitPickSettings ) => ( {
270
+ ...settings ,
271
+ title : await selectTitle ( {
267
272
commits : settings . commits ,
268
273
branchName : settings . branchName ,
269
274
currentTitle : settings . title ,
Original file line number Diff line number Diff line change @@ -3,7 +3,7 @@ import * as log from '@std/log';
3
3
import { Git } from '../../lib/git/git.ts' ;
4
4
import { getPullRemote , getPushRemote } from '../../lib/pr-cli/remotes.ts' ;
5
5
import { checkDependencies } from '../pick/steps/check-dependencies.ts' ;
6
- import { writeTitle } from '../../lib/pr-cli/pr-title.ts' ;
6
+ import { selectTitle } from '../../lib/pr-cli/pr-title.ts' ;
7
7
import { generatePullRequestBody } from '../../lib/pr-cli/pr-body.ts' ;
8
8
import { getDefaultBranch } from '../../lib/pr-cli/branch.ts' ;
9
9
import { Command } from '@cliffy/command' ;
@@ -50,7 +50,7 @@ export const pullRequestCommand = new Command()
50
50
throw new Error ( 'No new commit on this branch' ) ;
51
51
}
52
52
53
- options . title ??= await writeTitle ( { commits : newCommits , branchName } ) ;
53
+ options . title ??= await selectTitle ( { commits : newCommits , branchName } ) ;
54
54
if ( ! options . title ) {
55
55
throw new Error ( 'Pull request title is empty' ) ;
56
56
}
Original file line number Diff line number Diff line change @@ -15,7 +15,7 @@ type TitleStrategy = {
15
15
execute : ( ) => Promise < string > | string ;
16
16
} ;
17
17
18
- export async function writeTitle ( context : TitleContext ) : Promise < string > {
18
+ export async function selectTitle ( context : TitleContext ) : Promise < string > {
19
19
const manualStrategy = getManualStrategy ( context . currentTitle ) ;
20
20
const options : readonly TitleStrategy [ ] = [
21
21
context . commits ? getCommitStrategy ( context . commits ) : null ,
@@ -32,7 +32,11 @@ export async function writeTitle(context: TitleContext): Promise<string> {
32
32
} ,
33
33
) ;
34
34
35
- return chosenOption . execute ( ) ;
35
+ return await chosenOption . execute ( ) ;
36
+ }
37
+
38
+ export async function editTitle ( currentTitle : string ) : Promise < string > {
39
+ return await getManualStrategy ( currentTitle ) . execute ( ) ;
36
40
}
37
41
38
42
function getCommitStrategy ( commits : Commit [ ] ) : TitleStrategy {
You can’t perform that action at this time.
0 commit comments