Skip to main content

tauri_plugin_m3/
models.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Default, Deserialize, Serialize)]
4#[serde(rename_all = "camelCase")]
5pub struct ColorScheme {
6    pub primary: Option<String>,
7    pub on_primary: Option<String>,
8    pub primary_container: Option<String>,
9    pub on_primary_container: Option<String>,
10    pub inverse_primary: Option<String>,
11    pub secondary: Option<String>,
12    pub on_secondary: Option<String>,
13    pub secondary_container: Option<String>,
14    pub on_secondary_container: Option<String>,
15    pub tertiary: Option<String>,
16    pub on_tertiary: Option<String>,
17    pub tertiary_container: Option<String>,
18    pub on_tertiary_container: Option<String>,
19    pub background: Option<String>,
20    pub on_background: Option<String>,
21    pub surface: Option<String>,
22    pub on_surface: Option<String>,
23    pub surface_variant: Option<String>,
24    pub on_surface_variant: Option<String>,
25    pub surface_tint: Option<String>,
26    pub inverse_surface: Option<String>,
27    pub inverse_on_surface: Option<String>,
28    pub error: Option<String>,
29    pub on_error: Option<String>,
30    pub error_container: Option<String>,
31    pub on_error_container: Option<String>,
32    pub outline: Option<String>,
33    pub outline_variant: Option<String>,
34    pub scrim: Option<String>,
35    pub surface_bright: Option<String>,
36    pub surface_dim: Option<String>,
37    pub surface_container: Option<String>,
38    pub surface_container_high: Option<String>,
39    pub surface_container_highest: Option<String>,
40    pub surface_container_low: Option<String>,
41    pub surface_container_lowest: Option<String>,
42    pub primary_fixed: Option<String>,
43    pub primary_fixed_dim: Option<String>,
44    pub on_primary_fixed: Option<String>,
45    pub on_primary_fixed_variant: Option<String>,
46    pub secondary_fixed: Option<String>,
47    pub secondary_fixed_dim: Option<String>,
48    pub on_secondary_fixed: Option<String>,
49    pub on_secondary_fixed_variant: Option<String>,
50    pub tertiary_fixed: Option<String>,
51    pub tertiary_fixed_dim: Option<String>,
52    pub on_tertiary_fixed: Option<String>,
53    pub on_tertiary_fixed_variant: Option<String>,
54}
55
56#[derive(Debug, Clone, Default, Deserialize, Serialize)]
57#[serde(rename_all = "camelCase")]
58pub struct InsetsScheme {
59    pub raw_inset_top: Option<u32>,
60    pub raw_inset_bottom: Option<u32>,
61    pub raw_inset_left: Option<u32>,
62    pub raw_inset_right: Option<u32>,
63    pub adjusted_inset_top: Option<u32>,
64    pub adjusted_inset_bottom: Option<u32>,
65    pub adjusted_inset_left: Option<u32>,
66    pub adjusted_inset_right: Option<u32>,
67    pub scale_factor: Option<f64>,
68}
69
70#[derive(Debug, Clone, Default, Deserialize, Serialize)]
71#[serde(rename_all = "camelCase")]
72pub struct BarColorScheme {
73    pub color: Option<String>,
74}
75
76#[derive(Debug, Clone, Default, Deserialize, Serialize)]
77#[serde(rename_all = "camelCase")]
78pub struct M3Error {
79    pub error: Option<String>,
80}
81
82#[derive(Serialize)]
83pub struct ColorSchemePayload {
84    pub theme: String,
85}
86
87#[derive(Serialize)]
88pub struct BarColorPayload {
89    pub color: String,
90}