wekan_cli/command_result/
custom_fields.rs1use serde::Serialize;
2
3#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
4pub struct CustomFieldSummary {
5 pub custom_field_id: String,
6 pub name: String,
7 pub field_type: String,
8}
9#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
10pub struct CustomFieldDropdownItem {
11 pub item_id: String,
12 pub name: String,
13}
14#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
15pub struct CustomFieldSettings {
16 pub jira_time_field: Option<String>,
17 pub jira_estimate_field_id: Option<String>,
18 pub jira_estimate_unit: Option<String>,
19 pub currency_code: Option<String>,
20 pub dropdown_items: Option<Vec<CustomFieldDropdownItem>>,
21 pub stringtemplate_format: Option<String>,
22 pub stringtemplate_separator: Option<String>,
23}
24#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
25pub struct CustomFieldDetail {
26 pub custom_field_id: String,
27 pub board_ids: Vec<String>,
28 pub name: String,
29 pub field_type: String,
30 pub settings: CustomFieldSettings,
31 pub show_on_card: bool,
32 pub automatically_on_card: bool,
33 pub always_on_card: bool,
34 pub show_label_on_mini_card: bool,
35 pub show_sum_at_top_of_list: bool,
36 pub created_at: Option<String>,
37 pub modified_at: String,
38 pub card_kinds: Option<Vec<String>>,
39 pub read_only: Option<bool>,
40 pub admin_only: Option<bool>,
41 pub sort: Option<serde_json::Number>,
42}
43#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
44pub struct CustomFieldCollectionSuccess {
45 pub board_id: String,
46 pub custom_fields: Vec<CustomFieldSummary>,
47}
48#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
49pub struct CustomFieldCreateSuccess {
50 pub board_id: String,
51 pub custom_field_id: String,
52}
53#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
54pub struct CustomFieldUpdateSuccess {
55 pub board_id: String,
56 pub custom_field_id: String,
57 pub submitted_fields: Vec<CustomFieldSubmittedField>,
58}
59#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
60pub struct CustomFieldDeleteSuccess {
61 pub board_id: String,
62 pub custom_field_id: String,
63 pub delete_mode: CustomFieldDeleteMode,
64}
65#[derive(Clone, Copy, Debug, Eq, PartialEq, Serialize)]
66#[serde(rename_all = "snake_case")]
67pub enum CustomFieldSubmittedField {
68 Name,
69 Type,
70 Settings,
71 ShowOnCard,
72 AutomaticallyOnCard,
73 AlwaysOnCard,
74 ShowLabelOnMiniCard,
75 ShowSumAtTopOfList,
76}
77#[derive(Clone, Copy, Debug, Eq, PartialEq, Serialize)]
78#[serde(rename_all = "snake_case")]
79pub enum CustomFieldDeleteMode {
80 Hard,
81}