drops_messages/user_role.rs
1use serde::{Deserialize, Serialize};
2use strum::{AsRefStr, EnumIter, EnumString, IntoEnumIterator};
3
4#[derive(PartialEq, EnumIter, EnumString, AsRefStr, Deserialize, Serialize, Debug, Clone)]
5pub enum UserRole {
6 Viewer,
7 Admin,
8}
9
10pub fn all() -> Vec<UserRole> {
11 UserRole::iter().collect()
12}
13
14impl From<String> for UserRole {
15 fn from(value: String) -> Self {
16 value.parse().unwrap()
17 }
18}