Skip to main content

wekan_cli/command_result/
dependencies.rs

1use serde::Serialize;
2use serde_json::Number;
3
4#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
5pub struct DependencySummary {
6    pub target_card_id: String,
7    pub dependency_type: String,
8    pub color: String,
9    pub icon: String,
10}
11
12#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
13pub struct DependencyLine {
14    pub source_card_id: String,
15    pub source_title: Option<String>,
16    pub source_card_number: Option<Number>,
17    pub target_card_id: String,
18    pub target_title: Option<String>,
19    pub target_card_number: Option<Number>,
20    pub dependency_type: String,
21    pub color: String,
22    pub icon: String,
23}
24
25#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
26pub struct CardDependencyCollectionSuccess {
27    pub board_id: String,
28    pub card_id: String,
29    pub dependencies: Vec<DependencySummary>,
30}
31
32#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
33pub struct BoardDependencyCollectionSuccess {
34    pub board_id: String,
35    pub dependencies: Vec<DependencyLine>,
36}
37
38#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
39pub struct DependencyCreateSuccess {
40    pub board_id: String,
41    pub card_id: String,
42    pub target_card_id: String,
43    pub dependency_type: String,
44    pub color: String,
45    pub icon: String,
46}
47
48#[derive(Clone, Copy, Debug, Eq, PartialEq, Serialize)]
49#[serde(rename_all = "snake_case")]
50pub enum DependencySubmittedField {
51    Type,
52    Color,
53    Icon,
54}
55
56#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
57pub struct DependencyUpdateSuccess {
58    pub board_id: String,
59    pub card_id: String,
60    pub target_card_id: String,
61    pub submitted_fields: Vec<DependencySubmittedField>,
62    pub mutation_confirmed: bool,
63}
64
65#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
66pub struct DependencyDeleteSuccess {
67    pub board_id: String,
68    pub card_id: String,
69    pub target_card_id: String,
70    pub deletion_requested: bool,
71    pub mutation_confirmed: bool,
72}