Skip to main content

fastapi_output/components/
mod.rs

1//! Core output components for fastapi_rust.
2//!
3//! This module contains the primary visual components:
4//! - [`banner`] - Startup banner with ASCII art and server info
5//! - [`logging`] - Request/response logging with colors and timing
6//! - [`errors`] - Error formatters for validation and HTTP errors
7//! - [`routes`] - Route table display with method coloring
8//! - [`middleware_stack`] - Middleware execution flow visualization
9//! - [`dependency_tree`] - Dependency injection tree display
10//! - [`test_results`] - Test results formatter
11//! - [`shutdown_progress`] - Graceful shutdown progress indicator
12//! - [`http_inspector`] - Detailed HTTP request/response inspection (Phase 4)
13//! - [`routing_debug`] - Routing decision debug output (Phase 4)
14//! - [`openapi_display`] - OpenAPI schema visualization (Phase 5)
15//! - [`help_display`] - Help and usage display (Phase 5)
16
17pub mod banner;
18pub mod dependency_tree;
19pub mod errors;
20pub mod help_display;
21pub mod http_inspector;
22pub mod logging;
23pub mod middleware_stack;
24pub mod openapi_display;
25pub mod routes;
26pub mod routing_debug;
27pub mod shutdown_progress;
28pub mod test_results;
29
30// Re-export main types
31pub use banner::{Banner, BannerConfig, ServerInfo};
32pub use dependency_tree::{DependencyNode, DependencyTreeDisplay};
33pub use errors::{ErrorFormatter, FormattedError, ValidationContext};
34pub use help_display::{ArgGroup, ArgInfo, CommandInfo, HelpDisplay, HelpInfo};
35pub use http_inspector::{RequestInfo, RequestInspector, ResponseInfo, ResponseInspector};
36pub use logging::{LogEntry, RequestLogger, ResponseTiming};
37pub use middleware_stack::{MiddlewareInfo, MiddlewareStackDisplay};
38pub use openapi_display::{
39    EndpointInfo, OpenApiDisplay, OpenApiDisplayConfig, OpenApiSummary, PropertyInfo, SchemaType,
40};
41pub use routes::{RouteDisplay, RouteTableConfig};
42pub use routing_debug::{
43    CandidateRoute, ExtractedParams, MatchResult, RoutingDebug, RoutingDebugInfo,
44};
45pub use shutdown_progress::{ShutdownPhase, ShutdownProgress};
46pub use test_results::{
47    TestCaseResult, TestModuleResult, TestReport, TestReportDisplay, TestStatus,
48};