Skip to main content

artifacts/models/
reward_type.rs

1use crate::models;
2use serde::{Deserialize, Serialize};
3
4/// RewardType : Type of season reward.
5/// Type of season reward.
6#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
7#[cfg_attr(feature = "specta", derive(specta::Type))]
8#[derive(Default)]
9pub enum RewardType {
10    #[serde(rename = "badge")]
11    #[default]
12    Badge,
13    #[serde(rename = "skin")]
14    Skin,
15    #[serde(rename = "gold")]
16    Gold,
17    #[serde(rename = "item")]
18    Item,
19}
20
21impl std::fmt::Display for RewardType {
22    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
23        match self {
24            Self::Badge => write!(f, "badge"),
25            Self::Skin => write!(f, "skin"),
26            Self::Gold => write!(f, "gold"),
27            Self::Item => write!(f, "item"),
28        }
29    }
30}