//! Pages crate - unified page components with client/SSR implementations
//!
//! This crate provides page-level components that automatically delegate to
//! appropriate implementations based on feature flags and compilation context.

// Allow patterns common in Leptos code
#![allow(clippy::redundant_closure)]
#![allow(clippy::iter_cloned_collect)]
#![allow(clippy::bind_instead_of_map)]
#![allow(clippy::clone_on_copy)]
#![allow(clippy::wildcard_in_or_patterns)]
#![allow(clippy::unnecessary_get_then_check)]
#![allow(clippy::needless_lifetimes)]

pub mod about;
pub mod common;
pub mod contact;
pub mod external_link;
pub mod home;
pub mod legal;
pub mod nav_log;
pub mod not_found;
pub mod post_viewer;
pub mod privacy;
pub mod signout;
pub mod user;

// Unified content system
pub mod content;

pub mod admin;

// Re-export all page components for easy access
pub use about::pages::AboutPage;
pub use admin::content::pages::AdminContentPage;
pub use admin::dashboard::pages::AdminDashboardPage;
pub use admin::role::pages::AdminRolePage;
pub use admin::user::pages::AdminUserPage;
pub use contact::pages::ContactPage;
pub use content::category::ContentCategoryPage;
pub use content::index::pages::ContentIndexPage;
pub use external_link::ExternalLinkPage;
pub use home::pages::HomePage;
pub use legal::pages::LegalPage;
pub use nav_log::NavLogProvider;
pub use not_found::pages::NotFoundPage;
pub use post_viewer::pages::PostViewerPage;
pub use privacy::pages::PrivacyPage;
pub use signout::pages::SignoutPage;
pub use user::pages::UserPage;
