messaging_api_line/models/
datetime_picker_action.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct DatetimePickerAction {
16 #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
18 pub r#type: Option<String>,
19 #[serde(rename = "label", skip_serializing_if = "Option::is_none")]
21 pub label: Option<String>,
22 #[serde(rename = "data", skip_serializing_if = "Option::is_none")]
23 pub data: Option<String>,
24 #[serde(rename = "mode", skip_serializing_if = "Option::is_none")]
25 pub mode: Option<Mode>,
26 #[serde(rename = "initial", skip_serializing_if = "Option::is_none")]
27 pub initial: Option<String>,
28 #[serde(rename = "max", skip_serializing_if = "Option::is_none")]
29 pub max: Option<String>,
30 #[serde(rename = "min", skip_serializing_if = "Option::is_none")]
31 pub min: Option<String>,
32}
33
34impl DatetimePickerAction {
35 pub fn new() -> DatetimePickerAction {
36 DatetimePickerAction {
37 r#type: None,
38 label: None,
39 data: None,
40 mode: None,
41 initial: None,
42 max: None,
43 min: None,
44 }
45 }
46}
47#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
49pub enum Mode {
50 #[serde(rename = "date")]
51 Date,
52 #[serde(rename = "time")]
53 Time,
54 #[serde(rename = "datetime")]
55 Datetime,
56}
57
58impl Default for Mode {
59 fn default() -> Mode {
60 Self::Date
61 }
62}
63