+1
-2
crates/atproto-oauth-aip/src/lib.rs
+1
-2
crates/atproto-oauth-aip/src/lib.rs
+1
-2
crates/atproto-oauth-aip/src/workflow.rs
+1
-2
crates/atproto-oauth-aip/src/workflow.rs
+4
-1
crates/atproto-oauth-axum/src/bin/atproto-oauth-tool.rs
+4
-1
crates/atproto-oauth-axum/src/bin/atproto-oauth-tool.rs
···
545
545
println!("\nOAuth Token Refresh Response:");
546
546
println!("Access Token: {}", token_response.access_token);
547
547
println!("Token Type: {}", token_response.token_type);
548
-
println!("Refresh Token: {}", &token_response.refresh_token);
548
+
println!(
549
+
"Refresh Token: {}",
550
+
token_response.refresh_token.as_deref().unwrap_or("N/A")
551
+
);
549
552
println!("Scope: {}", token_response.scope);
550
553
println!("Expires In: {} seconds", token_response.expires_in);
551
554
println!(
+4
-1
crates/atproto-oauth-axum/src/handle_complete.rs
+4
-1
crates/atproto-oauth-axum/src/handle_complete.rs
···
133
133
document.id,
134
134
oauth_request.issuer,
135
135
token_response.access_token,
136
-
token_response.refresh_token,
136
+
token_response
137
+
.refresh_token
138
+
.clone()
139
+
.unwrap_or_else(|| "N/A".to_string()),
137
140
token_response.token_type,
138
141
token_response.expires_in,
139
142
token_response.scope,
+2
-1
crates/atproto-oauth/src/workflow.rs
+2
-1
crates/atproto-oauth/src/workflow.rs
···
210
210
pub token_type: String,
211
211
212
212
/// The refresh token that can be used to obtain new access tokens.
213
-
pub refresh_token: String,
213
+
/// Not all token responses include a refresh token.
214
+
pub refresh_token: Option<String>,
214
215
215
216
/// The scope of access granted by the access token.
216
217
#[cfg_attr(feature = "zeroize", zeroize(skip))]