Skip to main content

wp_mini_html/
auth.rs

1use anyhow::{Context, Result};
2use tracing::info;
3use wp_mini::WattpadClient;
4use crate::error::AppError;
5
6pub async fn login(
7    wp_client: &WattpadClient,
8    username: &str,
9    password: &str
10) -> Result<(), AppError> {
11    info!(username, "Attempting to login via core::auth");
12    wp_client
13        .authenticate(username, password)
14        .await
15        .context("Wattpad login request failed")
16        .map_err(|_e| AppError::AuthenticationFailed)?;
17
18    Ok(())
19}
20
21pub async fn logout(wp_client: &WattpadClient) -> Result<()> {
22    info!("Attempting to logout via core::auth");
23    wp_client
24        .deauthenticate()
25        .await
26        .context("Wattpad logout request failed")
27        .map_err(|_| AppError::LogoutFailed)?;
28    Ok(())
29}