sinan 0.1.0

A Boilerplate for Rapid Axum Web Service Deployment.
Documentation
use sea_orm::ItemsAndPagesNumber;
use serde::{Deserialize, Serialize};
use serde_json::Value;

#[derive(Serialize, Deserialize, Debug)]
pub struct Paginator {
    pub count: u64,
    pub items: Vec<Value>,
    pub per_page: u64,
    pub current_page: u64,
    pub total: u64,
    pub total_pages: u64,
}

impl Paginator {
    pub fn new(
        items: Vec<Value>,
        per_page: u64,
        current_page: u64,
        items_and_pages_number: ItemsAndPagesNumber,
    ) -> Self {
        Self {
            count: items.len() as u64,
            items,
            per_page,
            current_page,
            total: items_and_pages_number.number_of_items,
            total_pages: items_and_pages_number.number_of_pages,
        }
    }
}