wekan_cli/command_result/
users.rs1mod profile;
2use super::UserBoardSummary;
3pub use profile::{
4 UserProfileDetail, UserProfileNotificationDetail, UserProfileStarredPageDetail,
5 UserWorkspaceNodeDetail,
6};
7use serde::Serialize;
8
9#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
10pub struct UserDetail {
11 pub profile: Box<UserProfileDetail>,
12 pub created_through_api: Option<bool>,
13 pub heartbeat: Option<String>,
14 pub session_data: Option<UserSessionData>,
15 pub import_usernames: Vec<String>,
16 pub user_id: String,
17 pub username: Option<String>,
18 pub full_name: Option<String>,
19 pub emails: Vec<UserEmail>,
20 pub is_admin: Option<bool>,
21 pub login_disabled: Option<bool>,
22 pub authentication_method: Option<String>,
23 pub created_at: Option<String>,
24 pub modified_at: Option<String>,
25 pub last_connection_date: Option<String>,
26 pub organizations: Vec<UserOrganization>,
27 pub teams: Vec<UserTeam>,
28 pub boards: Vec<UserBoardMembership>,
29}
30
31#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
32pub struct UserEmail {
33 pub address: Option<String>,
34 pub verified: Option<bool>,
35}
36
37#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
38pub struct UserOrganization {
39 pub organization_id: Option<String>,
40 pub display_name: Option<String>,
41 pub is_admin: Option<bool>,
42}
43
44#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
45pub struct UserTeam {
46 pub team_id: Option<String>,
47 pub display_name: Option<String>,
48}
49
50#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
51pub struct UserBoardMembership {
52 pub board_id: String,
53 pub is_active: Option<bool>,
54 pub is_admin: Option<bool>,
55 pub is_no_comments: Option<bool>,
56 pub is_comment_only: Option<bool>,
57 pub is_worker: Option<bool>,
58 pub is_normal_assigned_only: Option<bool>,
59 pub is_comment_assigned_only: Option<bool>,
60 pub is_read_only: Option<bool>,
61 pub is_read_assigned_only: Option<bool>,
62}
63
64#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
65pub struct UserSummary {
66 pub user_id: String,
67 pub username: Option<String>,
68}
69
70#[derive(Debug, Eq, PartialEq, Serialize)]
71pub struct UserListSuccess {
72 pub users: Vec<UserSummary>,
73}
74
75#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
76pub struct UserCard {
77 pub card_id: String,
78 pub title: Option<String>,
79 pub board_id: Option<String>,
80 pub swimlane_id: Option<String>,
81 pub list_id: Option<String>,
82 pub due_at: Option<String>,
83 pub start_at: Option<String>,
84 pub end_at: Option<String>,
85 pub members: Vec<String>,
86 pub assignees: Vec<String>,
87}
88
89#[derive(Debug, Eq, PartialEq, Serialize)]
90pub struct UserCardsSuccess {
91 pub cards: Vec<UserCard>,
92}
93
94#[derive(Debug, Eq, PartialEq, Serialize)]
95pub struct UserBoardsSuccess {
96 pub user_id: String,
97 pub boards: Vec<UserBoardSummary>,
98}
99
100#[derive(Clone, Copy, Debug, Eq, PartialEq, Serialize)]
101#[serde(rename_all = "snake_case")]
102pub enum UserCreateWarning {
103 #[serde(rename = "user_id_unavailable_in_wekan_v11_06")]
104 UserIdUnavailableInWekanV1106,
105}
106
107#[derive(Debug, Eq, PartialEq, Serialize)]
108pub struct UserCreateSuccess {
109 pub created: bool,
110 pub username: String,
111 pub email: String,
112 pub user_id: Option<String>,
113 pub warning: Option<UserCreateWarning>,
114}
115
116#[derive(Debug, Eq, PartialEq, Serialize)]
117pub struct UserOwnershipSuccess {
118 pub from_user_id: String,
119 pub to_user_id: String,
120 pub boards: Vec<UserBoardSummary>,
121}
122
123#[derive(Clone, Copy, Debug, Eq, PartialEq, Serialize)]
124#[serde(rename_all = "snake_case")]
125pub enum UserLoginAction {
126 Disabled,
127 Enabled,
128}
129
130#[derive(Debug, Eq, PartialEq, Serialize)]
131pub struct UserLoginChangeSuccess {
132 pub action: UserLoginAction,
133 pub user: UserDetail,
134}
135
136#[derive(Debug, Eq, PartialEq, Serialize)]
137pub struct UserDeleteSuccess {
138 pub user_id: String,
139 pub deleted: bool,
140 pub deleted_current_user: bool,
141 pub credential_stored: bool,
142 pub local_credential_removed: bool,
143}
144
145#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
146pub struct UserSessionData {
147 pub total_hits: Option<serde_json::Number>,
148}