feat: Implement lesson generation feature and update status display
- Added functionality to generate lessons based on code reviews, including prompts and instructions for the reviewer. - Updated the `.gitignore` to exclude lesson documentation files. - Removed the `/lesson` command from the help menu and command parsing. - Enhanced the status bar to display a message when a lesson is being generated. - Introduced a new `lesson_running` state to track lesson generation progress. - Updated various components to handle the new lesson generation workflow, including subagent events and token usage tracking.
This commit is contained in:
+20
-2
@@ -93,12 +93,24 @@ pub fn draw_status_bar(frame: &mut Frame, area: Rect, state: &crate::app::state:
|
||||
Style::default().fg(Theme::TEXT_MUTED),
|
||||
));
|
||||
|
||||
// Render the bar using two columns
|
||||
let center_line = if state.misc.lesson_running {
|
||||
Line::from(vec![
|
||||
Span::styled(
|
||||
" 📘 Generating Lesson... ",
|
||||
Style::default().fg(Theme::MODE_YOLO).add_modifier(Modifier::BOLD),
|
||||
)
|
||||
])
|
||||
} else {
|
||||
Line::from("")
|
||||
};
|
||||
|
||||
// Render the bar using three columns
|
||||
let chunks = Layout::default()
|
||||
.direction(Direction::Horizontal)
|
||||
.constraints([
|
||||
Constraint::Length(25),
|
||||
Constraint::Min(10),
|
||||
Constraint::Length(60),
|
||||
])
|
||||
.split(area);
|
||||
|
||||
@@ -113,9 +125,15 @@ pub fn draw_status_bar(frame: &mut Frame, area: Rect, state: &crate::app::state:
|
||||
let left_para = ratatui::widgets::Paragraph::new(left_line).block(block.clone());
|
||||
frame.render_widget(left_para, chunks[0]);
|
||||
|
||||
// Center part
|
||||
let center_para = ratatui::widgets::Paragraph::new(center_line)
|
||||
.block(block.clone())
|
||||
.alignment(ratatui::layout::Alignment::Center);
|
||||
frame.render_widget(center_para, chunks[1]);
|
||||
|
||||
// Right part
|
||||
let right_para = ratatui::widgets::Paragraph::new(right_line)
|
||||
.block(block)
|
||||
.alignment(ratatui::layout::Alignment::Right);
|
||||
frame.render_widget(right_para, chunks[1]);
|
||||
frame.render_widget(right_para, chunks[2]);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user