1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
pub fn add_button(map: &mut serde_json::Map<String, serde_json::Value>) {
    map.insert(
        "Button".to_owned(),
        serde_json::json!(
            {
                "params": [
                    {
                        "title": {
                            "required": true,
                            "type": "String"
                        }
                    },
                    {
                        "payload": {
                            "required": false,
                            "type": "String",
                            "default_value": [
                                {"$_get": "title"}
                            ]
                        }
                    },
                    {
                        "accepts": {
                            "required": false,
                            "type": "Array",
                            "default_value": [
                            ],
                            "add_value": [
                                {"$_get": "title" },
                                {"$_get": "payload" }
                            ]
                        }
                    }
                ]
            }
        ),
    );
}