1use chrono::NaiveDate;
2use derive_getters::Getters;
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Getters, PartialEq, Serialize, Deserialize, Clone)]
6pub struct Instance {
7 slug: String,
8 name: String,
9 url: String,
10}
11
12impl Instance {
13 pub fn new(slug: String, name: String, url: String) -> Self {
14 Self { slug, name, url }
15 }
16}
17
18#[derive(Debug, Getters, Default, PartialEq, Serialize, Deserialize)]
19pub struct InstancesList {
20 instances: Vec<Instance>,
21 update_date: Option<NaiveDate>,
22}
23
24impl InstancesList {
25 pub fn new(instances: Vec<Instance>, update_date: Option<NaiveDate>) -> Self {
26 Self {
27 instances,
28 update_date,
29 }
30 }
31}