dioxus_maplibre/options/
sources.rs1use serde::{Deserialize, Serialize};
4#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, Default)]
6#[serde(rename_all = "camelCase")]
7pub struct GeoJsonSourceOptions {
8 pub data: serde_json::Value,
10
11 #[serde(skip_serializing_if = "Option::is_none")]
13 pub cluster: Option<bool>,
14
15 #[serde(skip_serializing_if = "Option::is_none")]
17 pub cluster_radius: Option<u32>,
18
19 #[serde(skip_serializing_if = "Option::is_none")]
21 pub cluster_max_zoom: Option<u32>,
22
23 #[serde(skip_serializing_if = "Option::is_none")]
25 pub cluster_properties: Option<serde_json::Value>,
26
27 #[serde(skip_serializing_if = "Option::is_none")]
29 pub generate_id: Option<bool>,
30
31 #[serde(skip_serializing_if = "Option::is_none")]
33 pub promote_id: Option<String>,
34}
35
36#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, Default)]
38#[serde(rename_all = "camelCase")]
39pub struct VectorSourceOptions {
40 #[serde(skip_serializing_if = "Option::is_none")]
42 pub url: Option<String>,
43
44 #[serde(skip_serializing_if = "Option::is_none")]
46 pub tiles: Option<Vec<String>>,
47
48 #[serde(skip_serializing_if = "Option::is_none")]
50 pub min_zoom: Option<u32>,
51
52 #[serde(skip_serializing_if = "Option::is_none")]
54 pub max_zoom: Option<u32>,
55
56 #[serde(skip_serializing_if = "Option::is_none")]
58 pub bounds: Option<[f64; 4]>,
59
60 #[serde(skip_serializing_if = "Option::is_none")]
62 pub attribution: Option<String>,
63}
64
65#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, Default)]
67#[serde(rename_all = "camelCase")]
68pub struct RasterSourceOptions {
69 #[serde(skip_serializing_if = "Option::is_none")]
71 pub url: Option<String>,
72
73 #[serde(skip_serializing_if = "Option::is_none")]
75 pub tiles: Option<Vec<String>>,
76
77 #[serde(skip_serializing_if = "Option::is_none")]
79 pub tile_size: Option<u32>,
80
81 #[serde(skip_serializing_if = "Option::is_none")]
83 pub min_zoom: Option<u32>,
84
85 #[serde(skip_serializing_if = "Option::is_none")]
87 pub max_zoom: Option<u32>,
88}
89
90#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, Default)]
92#[serde(rename_all = "camelCase")]
93pub struct RasterDemSourceOptions {
94 #[serde(skip_serializing_if = "Option::is_none")]
96 pub url: Option<String>,
97
98 #[serde(skip_serializing_if = "Option::is_none")]
100 pub tiles: Option<Vec<String>>,
101
102 #[serde(skip_serializing_if = "Option::is_none")]
104 pub tile_size: Option<u32>,
105
106 #[serde(skip_serializing_if = "Option::is_none")]
108 pub encoding: Option<String>,
109}
110
111#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
113#[serde(rename_all = "camelCase")]
114pub struct ImageSourceOptions {
115 pub url: String,
117
118 pub coordinates: [[f64; 2]; 4],
121}