aboutsummaryrefslogtreecommitdiffstats
path: root/warden/src/server/api/pagination.rs
blob: 7341d2f525844cfb9824439b3a53576d9323ed9a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
use api_config::schema::TransactionSchema;
use serde::{Deserialize, Serialize};
use utoipa::{IntoParams, ToSchema};

#[derive(Deserialize, Debug, IntoParams, ToSchema)]
pub struct PaginationParams {
    pub first: Option<i64>,
    pub after: Option<String>, // This is our Base64 cursor
}

#[derive(Serialize, ToSchema)]
pub struct PageInfo {
    pub has_next_page: bool,
    pub end_cursor: Option<String>,
}

#[derive(Serialize, ToSchema)]
pub struct RelayResponse {
    pub nodes: Vec<TransactionSchema>,
    pub page_info: PageInfo,
}