1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
//! OAuth2 client integration for RustAPI
//!
//! This module provides OAuth2 authentication support with built-in
//! provider presets for common identity providers.
//!
//! # Example
//!
//! ```rust,no_run
//! use rustapi_extras::oauth2::{OAuth2Client, OAuth2Config, Provider};
//!
//! // Using a preset provider
//! let config = OAuth2Config::google(
//! "client_id",
//! "client_secret",
//! "https://myapp.com/auth/callback",
//! );
//!
//! let client = OAuth2Client::new(config);
//!
//! // Generate authorization URL
//! let auth_request = client.authorization_url();
//! let auth_url = auth_request.url();
//! let csrf_state = &auth_request.csrf_state;
//! let pkce_verifier = &auth_request.pkce_verifier;
//!
//! // After user authorization, exchange the code
//! // let tokens = client.exchange_code("auth_code", pkce_verifier.as_ref()).await?;
//! ```
pub use ;
pub use OAuth2Config;
pub use Provider;
pub use ;