1use leetcode_tui_core::content::MainContent;
2use leetcode_tui_core::help::Help;
3use leetcode_tui_core::input::Input;
4use leetcode_tui_core::popup::{Popup, SelectPopup};
5use leetcode_tui_core::progress;
6
7pub struct Ctx {
8 pub content: MainContent,
9 pub popup: Popup,
10 pub select_popup: SelectPopup<String>,
11 pub input: Input,
12 pub help: Help,
13 pub progress: progress::ProgressCtx,
14}
15
16impl Ctx {
17 pub(super) async fn new() -> Self {
18 let progress = progress::ProgressCtx::default();
19
20 Self {
21 content: MainContent::new().await,
22 popup: Default::default(),
23 select_popup: Default::default(),
24 input: Default::default(),
25 help: Default::default(),
26 progress,
27 }
28 }
29}