artifacts/models/
raid_schedule_schema.rs1use crate::models;
2use serde::{Deserialize, Serialize};
3
4#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
5#[cfg_attr(feature = "specta", derive(specta::Type))]
6pub struct RaidScheduleSchema {
7 #[serde(rename = "weekdays")]
9 pub weekdays: Vec<models::RaidWeekday>,
10 #[serde(rename = "start_hour_utc", skip_serializing_if = "Option::is_none")]
12 pub start_hour_utc: Option<u32>,
13 #[serde(rename = "start_minute_utc", skip_serializing_if = "Option::is_none")]
15 pub start_minute_utc: Option<u32>,
16 #[serde(rename = "duration_hours", skip_serializing_if = "Option::is_none")]
18 pub duration_hours: Option<u32>,
19}
20
21impl RaidScheduleSchema {
22 pub fn new(weekdays: Vec<models::RaidWeekday>) -> RaidScheduleSchema {
23 RaidScheduleSchema {
24 weekdays,
25 start_hour_utc: None,
26 start_minute_utc: None,
27 duration_hours: None,
28 }
29 }
30}