strava_wrapper/filters/
activities.rs

1use crate::models::Activity;
2use crate::query::{
3    get_with_query_and_path, Endpoint, ErrorWrapper, IncludeAllEfforts, PathQuery, Query, Sendable,
4    ID,
5};
6use async_trait::async_trait;
7use std::collections::HashMap;
8use strava_wrapper_macros::{Endpoint, IncludeAllEfforts, PathQuery, Query, ID};
9
10#[derive(Debug, Clone, Endpoint, Query, PathQuery, ID, IncludeAllEfforts)]
11pub struct GetActivity {
12    url: String,
13    token: String,
14    path: String,
15    query: Vec<(String, String)>,
16    path_params: Vec<(String, String)>,
17}
18
19#[async_trait]
20impl Sendable<Activity> for GetActivity {
21    async fn send(mut self) -> Result<Activity, ErrorWrapper> {
22        get_with_query_and_path(self.clone(), &self.token).await
23    }
24}