#![deny(unsafe_code)]
#![warn(missing_docs)]
pub mod components;
pub mod detection;
pub mod facade;
pub mod mode;
pub mod testing;
pub mod themes;
pub use detection::{
DetectionResult, OutputPreference, OverrideMode, detect_environment, detected_preference,
detection_diagnostics, is_agent_environment,
};
pub use facade::{RichOutput, RichOutputBuilder, StatusKind, get_global, set_global};
pub use mode::{OutputMode, feature_info, has_rich_support};
pub use testing::{
OutputEntry, OutputLevel, TestOutput, assert_contains, assert_contains_in_order,
assert_has_ansi, assert_max_width, assert_no_ansi, assert_not_contains, capture, capture_both,
capture_with_width, debug_output, is_verbose, strip_ansi_codes,
};
pub use themes::{FastApiTheme, ThemePreset};
pub use components::banner::{Banner, BannerConfig, ServerInfo};
pub use components::dependency_tree::{DependencyNode, DependencyTreeDisplay};
pub use components::errors::{
ErrorFormatter, FormattedError, HttpErrorInfo, LocItem, ValidationContext,
ValidationErrorDetail,
};
pub use components::help_display::{ArgGroup, ArgInfo, CommandInfo, HelpDisplay, HelpInfo};
pub use components::http_inspector::{
RequestInfo, RequestInspector, ResponseInfo, ResponseInspector,
};
pub use components::logging::{HttpMethod, LogEntry, RequestLogger, ResponseTiming};
pub use components::middleware_stack::{MiddlewareInfo, MiddlewareStackDisplay};
pub use components::openapi_display::{
EndpointInfo, OpenApiDisplay, OpenApiDisplayConfig, OpenApiSummary, PropertyInfo, SchemaType,
};
pub use components::routes::{RouteDisplay, RouteEntry, RouteTableConfig};
pub use components::routing_debug::{
CandidateRoute, ExtractedParams, MatchResult, RoutingDebug, RoutingDebugInfo,
};
pub use components::shutdown_progress::{ShutdownPhase, ShutdownProgress, ShutdownProgressDisplay};
pub use components::test_results::{
TestCaseResult, TestModuleResult, TestReport, TestReportDisplay, TestStatus,
};
pub mod prelude {
pub use crate::components::banner::{Banner, BannerConfig, ServerInfo};
pub use crate::components::dependency_tree::{DependencyNode, DependencyTreeDisplay};
pub use crate::components::errors::{
ErrorFormatter, FormattedError, HttpErrorInfo, LocItem, ValidationContext,
ValidationErrorDetail,
};
pub use crate::components::help_display::{
ArgGroup, ArgInfo, CommandInfo, HelpDisplay, HelpInfo,
};
pub use crate::components::http_inspector::{
RequestInfo, RequestInspector, ResponseInfo, ResponseInspector,
};
pub use crate::components::logging::{HttpMethod, LogEntry, RequestLogger, ResponseTiming};
pub use crate::components::middleware_stack::{MiddlewareInfo, MiddlewareStackDisplay};
pub use crate::components::openapi_display::{
EndpointInfo, OpenApiDisplay, OpenApiDisplayConfig, OpenApiSummary, PropertyInfo,
SchemaType,
};
pub use crate::components::routes::{RouteDisplay, RouteEntry, RouteTableConfig};
pub use crate::components::routing_debug::{
CandidateRoute, ExtractedParams, MatchResult, RoutingDebug, RoutingDebugInfo,
};
pub use crate::components::shutdown_progress::{
ShutdownPhase, ShutdownProgress, ShutdownProgressDisplay,
};
pub use crate::components::test_results::{
TestCaseResult, TestModuleResult, TestReport, TestReportDisplay, TestStatus,
};
pub use crate::detection::{
DetectionResult, OutputPreference, OverrideMode, detect_environment, detected_preference,
is_agent_environment,
};
pub use crate::facade::{RichOutput, RichOutputBuilder, StatusKind, get_global, set_global};
pub use crate::mode::{OutputMode, feature_info, has_rich_support};
pub use crate::testing::{
OutputEntry, OutputLevel, TestOutput, assert_contains, assert_contains_in_order,
assert_has_ansi, assert_max_width, assert_no_ansi, assert_not_contains, capture,
capture_both, capture_with_width, debug_output, is_verbose, strip_ansi_codes,
};
pub use crate::themes::{FastApiTheme, ThemePreset};
}