1pub mod app_state;
7pub mod main_vertical_pane;
8pub mod modal;
9pub mod types;
10
11pub use app_state::AppState;
13pub use main_vertical_pane::{
14 DEFAULT_MAIN_PANE_ORDER, MainVerticalPane, VerticalLayoutLimits, format_main_pane_order,
15 parse_main_pane_order,
16};
17pub use modal::{Modal, PreflightAction, PreflightTab, SshSetupStep};
18pub use types::{
19 ArchStatusColor, Focus, InstalledPackagesMode, NewsItem, PackageDetails, PackageItem,
20 PkgbuildCheckRequest, PkgbuildCheckResponse, QueryInput, RightPaneFocus, SearchResults,
21 SecureString, SortMode, Source,
22};
23
24#[cfg(test)]
25static TEST_MUTEX: std::sync::OnceLock<std::sync::Mutex<()>> = std::sync::OnceLock::new();
26
27#[cfg(test)]
28pub(crate) fn test_mutex() -> &'static std::sync::Mutex<()> {
37 TEST_MUTEX.get_or_init(|| std::sync::Mutex::new(()))
38}