grafana_dashboard/templating/
mod.rs1use options::Item as OptionItem;
2use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Clone, Serialize, Deserialize)]
5pub struct Templating {
6 #[serde(skip_serializing_if = "Option::is_none")]
7 pub enable: Option<bool>,
8 pub list: Vec<Item>,
9}
10
11#[derive(Debug, Clone, Serialize, Deserialize)]
12pub struct Item {
13 #[serde(skip_serializing_if = "Option::is_none")]
14 #[serde(rename = "allFormat")]
15 pub all_format: Option<String>,
16 #[serde(skip_serializing_if = "Option::is_none")]
17 pub current: Option<Current>,
18 #[serde(skip_serializing_if = "Option::is_none")]
19 pub datasource: Option<String>,
20 #[serde(skip_serializing_if = "Option::is_none")]
21 #[serde(rename = "includeAll")]
22 pub include_all: Option<bool>,
23 #[serde(skip_serializing_if = "Option::is_none")]
24 pub multi: Option<bool>,
25 #[serde(skip_serializing_if = "Option::is_none")]
26 #[serde(rename = "multiFormat")]
27 pub multi_format: Option<String>,
28 #[serde(skip_serializing_if = "Option::is_none")]
29 pub name: Option<String>,
30 #[serde(skip_serializing_if = "Option::is_none")]
31 pub options: Option<Vec<OptionItem>>,
32 #[serde(skip_serializing_if = "Option::is_none")]
33 pub query: Option<String>,
34 #[serde(skip_serializing_if = "Option::is_none")]
35 pub refresh: Option<bool>,
36 #[serde(skip_serializing_if = "Option::is_none")]
37 pub regex: Option<String>,
38 #[serde(skip_serializing_if = "Option::is_none")]
39 pub r#type: Option<String>,
40}
41
42#[derive(Debug, Clone, Serialize, Deserialize)]
43pub struct Current {
44 #[serde(skip_serializing_if = "Option::is_none")]
45 pub tags: Option<Vec<String>>,
46 #[serde(skip_serializing_if = "Option::is_none")]
47 pub text: Option<String>,
48 #[serde(skip_serializing_if = "Option::is_none")]
49 pub value: Option<String>,
50}
51
52pub mod options {
53 use serde::{Deserialize, Serialize};
54 #[derive(Debug, Clone, Serialize, Deserialize)]
55 pub struct Item {
56 #[serde(skip_serializing_if = "Option::is_none")]
57 pub selected: Option<bool>,
58 #[serde(skip_serializing_if = "Option::is_none")]
59 pub text: Option<String>,
60 #[serde(skip_serializing_if = "Option::is_none")]
61 pub value: Option<String>,
62 }
63}