| 1 | //! Welcome screen content for onboarding. |
| 2 | |
| 3 | use ratatui::style::{Modifier, Style}; |
| 4 | use ratatui::text::{Line, Span}; |
| 5 | |
| 6 | use crate::palette; |
| 7 | |
| 8 | pub fn lines() -> Vec<Line<'static>> { |
| 9 | vec![ |
| 10 | Line::from(Span::styled( |
| 11 | "DeepSeek TUI", |
| 12 | Style::default() |
| 13 | .fg(palette::DEEPSEEK_BLUE) |
| 14 | .add_modifier(Modifier::BOLD), |
| 15 | )), |
| 16 | Line::from(Span::styled( |
| 17 | format!("Version {}", env!("CARGO_PKG_VERSION")), |
| 18 | Style::default().fg(palette::TEXT_MUTED), |
| 19 | )), |
| 20 | Line::from(""), |
| 21 | Line::from(Span::styled( |
| 22 | "A focused terminal workspace for longer model sessions.", |
| 23 | Style::default().fg(palette::TEXT_PRIMARY), |
| 24 | )), |
| 25 | Line::from(Span::styled( |
| 26 | "You'll add an API key, review trust for this directory, and then land in the chat.", |
| 27 | Style::default().fg(palette::TEXT_MUTED), |
| 28 | )), |
| 29 | Line::from(Span::styled( |
| 30 | "The main composer is multi-line, so you can write full prompts instead of squeezing everything into one line.", |
| 31 | Style::default().fg(palette::TEXT_MUTED), |
| 32 | )), |
| 33 | Line::from(""), |
| 34 | Line::from(Span::styled( |
| 35 | "Press Enter to continue.", |
| 36 | Style::default().fg(palette::TEXT_PRIMARY), |
| 37 | )), |
| 38 | Line::from(Span::styled( |
| 39 | "Ctrl+C exits at any point.", |
| 40 | Style::default().fg(palette::TEXT_MUTED), |
| 41 | )), |
| 42 | ] |
| 43 | } |
| 44 |