@@ -39,7 +39,6 @@ type PushCmdStep int
39
39
40
40
const (
41
41
SelectBaseBranch PushCmdStep = iota
42
- ConfirmPR
43
42
EditPRTitle
44
43
EditPRBody
45
44
SubmitPR
@@ -78,11 +77,16 @@ func (m *pushModel) submitPRCmd() tea.Cmd {
78
77
func (m * pushModel ) Update (msg tea.Msg ) (tea.Model , tea.Cmd ) {
79
78
var cmd tea.Cmd
80
79
switch msg := msg .(type ) {
80
+ case spinner.TickMsg :
81
+ var cmd tea.Cmd
82
+ m .spinner , cmd = m .spinner .Update (msg )
83
+ return m , cmd
81
84
case tea.KeyMsg :
82
85
switch msg .Type {
83
86
case tea .KeyCtrlC , tea .KeyEsc :
84
87
return m , tea .Quit
85
-
88
+ case tea .KeyCtrlE :
89
+ m .step --
86
90
}
87
91
switch m .step {
88
92
case SelectBaseBranch :
@@ -99,17 +103,6 @@ func (m *pushModel) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
99
103
m .loadMsg = "PRを生成中..."
100
104
return m , m .generatePRCmd ()
101
105
}
102
- case ConfirmPR :
103
- switch msg .Type {
104
- case tea .KeyTab :
105
- m .step = EditPRTitle
106
- m .focusInPRTitle ()
107
- return m , cmd
108
- case tea .KeyEnter :
109
- m .step = SubmitPR
110
- m .loadMsg = "PRを提出中..."
111
- return m , m .submitPRCmd ()
112
- }
113
106
case EditPRTitle :
114
107
cmd = m .updateTitleInput (msg )
115
108
switch msg .Type {
@@ -134,7 +127,8 @@ func (m *pushModel) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
134
127
m .errMsg = fmt .Sprintf ("🚨PR生成中にエラーが発生: %v" , msg .err )
135
128
} else {
136
129
m .pr = msg .pr
137
- m .step = ConfirmPR
130
+ m .step = EditPRTitle
131
+ m .focusInPRTitle ()
138
132
}
139
133
m .finishLoading ()
140
134
case submitPRMsg :
@@ -158,12 +152,10 @@ func (m *pushModel) View() string {
158
152
switch m .step {
159
153
case SelectBaseBranch :
160
154
return m .buildSelectBaseBranchText ()
161
- case ConfirmPR :
162
- return color .HiWhiteString ("<生成されたPRの確認: TabKeyで編集, EnterでPush>" ) + fmt .Sprintf ("\n \n Title:\n %s\n \n Body:\n %s" , m .pr .Title , m .pr .Body )
163
155
case EditPRTitle :
164
- return color .HiWhiteString ("<Titleの編集: Enterで確定>" ) + fmt .Sprintf ("\n \n Title :\n %s\n \n Body: \n %s " , m .prInput .titleInput .View (), m . pr . Body )
156
+ return color .HiWhiteString ("<Titleの編集: Enterで確定>\n \n " ) + fmt .Sprintf ("Title :\n %s" , m .prInput .titleInput .View ())
165
157
case EditPRBody :
166
- return color .HiWhiteString ("<Bodyの編集: EnterでPush> " ) + fmt .Sprintf ("\n \n Title :\n %s\n \n Body: \n %s" , m . pr . Title , m .prInput .bodyInput .View ())
158
+ return color .HiWhiteString ("<Bodyの編集: EnterでPush&PR提出, Ctrl+Eで戻る> \n \n " ) + fmt .Sprintf ("Body :\n %s" , m .prInput .bodyInput .View ())
167
159
case SubmitPR :
168
160
return fmt .Sprintf ("**🎉PRの作成に成功**" )
169
161
}
@@ -255,9 +247,8 @@ func (m *pushModel) focusInPRBody() {
255
247
input := m .prInput .bodyInput
256
248
input .Focus ()
257
249
input .SetValue (m .pr .Body )
258
- input .CharLimit = 1000
259
- input .SetWidth (100 )
260
- input .SetHeight (len (m .pr .Body ) / 100 )
250
+ input .CharLimit = 5000
251
+ input .SetWidth (200 )
261
252
m .prInput .bodyInput = input
262
253
}
263
254
0 commit comments