aboutsummaryrefslogtreecommitdiff
path: root/common/src/user.rs
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2024-01-20 00:50:20 +0100
committermetamuffin <metamuffin@disroot.org>2024-01-20 00:50:20 +0100
commit46c251655db7bb3d9aa814b1a5dde85336b0b9b1 (patch)
treeab0696f2c92e8854ce6aa0737877cc15184bd8b6 /common/src/user.rs
parent1c37d32a0985ff7390313833345b9299f9f0b196 (diff)
downloadjellything-46c251655db7bb3d9aa814b1a5dde85336b0b9b1.tar
jellything-46c251655db7bb3d9aa814b1a5dde85336b0b9b1.tar.bz2
jellything-46c251655db7bb3d9aa814b1a5dde85336b0b9b1.tar.zst
replace sled with redb
Diffstat (limited to 'common/src/user.rs')
-rw-r--r--common/src/user.rs13
1 files changed, 7 insertions, 6 deletions
diff --git a/common/src/user.rs b/common/src/user.rs
index 5f012dd..b3360c2 100644
--- a/common/src/user.rs
+++ b/common/src/user.rs
@@ -4,6 +4,7 @@
Copyright (C) 2023 metamuffin <metamuffin.org>
*/
use crate::{stream::StreamFormat, user};
+use bincode::{Decode, Encode};
#[cfg(feature = "rocket")]
use rocket::{FromFormField, UriDisplayQuery};
use serde::{Deserialize, Serialize};
@@ -12,7 +13,7 @@ use std::{
fmt::Display,
};
-#[derive(Debug, Clone, Serialize, Deserialize)]
+#[derive(Debug, Clone, Serialize, Deserialize, Encode, Decode)]
pub struct User {
pub name: String,
pub display_name: String,
@@ -22,12 +23,12 @@ pub struct User {
pub permissions: PermissionSet,
}
-#[derive(Debug, Clone, Serialize, Deserialize)]
+#[derive(Debug, Clone, Serialize, Deserialize, Encode, Decode)]
pub struct NodeUserData {
pub watched: WatchedState,
}
-#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
+#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Encode, Decode)]
#[serde(rename_all = "snake_case")]
pub enum WatchedState {
None,
@@ -44,7 +45,7 @@ pub struct CreateSessionParams {
pub drop_permissions: Option<HashSet<UserPermission>>,
}
-#[derive(Debug, Clone, Copy, Serialize, Deserialize, PartialEq)]
+#[derive(Debug, Clone, Copy, Serialize, Deserialize, PartialEq, Encode, Decode)]
#[cfg_attr(feature = "rocket", derive(FromFormField, UriDisplayQuery))]
#[serde(rename_all = "snake_case")]
pub enum Theme {
@@ -61,10 +62,10 @@ impl Theme {
];
}
-#[derive(Debug, Clone, Serialize, Deserialize, Default)]
+#[derive(Debug, Clone, Serialize, Deserialize, Default, Encode, Decode)]
pub struct PermissionSet(pub HashMap<UserPermission, bool>);
-#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq, Hash)]
+#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq, Hash, Encode, Decode)]
#[serde(rename_all = "snake_case")]
pub enum UserPermission {
Admin,