1#[derive(Debug, Clone, PartialEq, Eq, Default, serde::Serialize, serde::Deserialize)]
2#[serde(default)]
3#[serde(rename_all = "snake_case")]
4#[cfg_attr(feature = "unstable", serde(deny_unknown_fields))]
5#[cfg_attr(not(feature = "unstable"), non_exhaustive)]
6pub struct Assets {
7 pub sass: Sass,
8}
9
10#[derive(Debug, Clone, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
11#[serde(default)]
12#[serde(rename_all = "snake_case")]
13#[cfg_attr(feature = "unstable", serde(deny_unknown_fields))]
14#[cfg_attr(not(feature = "unstable"), non_exhaustive)]
15pub struct Sass {
16 #[serde(skip)]
17 pub import_dir: &'static str,
18 pub style: SassOutputStyle,
19}
20
21impl Default for Sass {
22 fn default() -> Self {
23 Self {
24 import_dir: "_sass",
25 style: Default::default(),
26 }
27 }
28}
29
30#[derive(Debug, Clone, Copy, Eq, PartialEq, Hash, serde::Serialize, serde::Deserialize)]
31#[cfg_attr(feature = "preview_unstable", serde(rename_all = "snake_case"))]
32#[cfg_attr(feature = "unstable", serde(deny_unknown_fields))]
33#[cfg_attr(not(feature = "unstable"), non_exhaustive)]
34#[derive(Default)]
35pub enum SassOutputStyle {
36 #[default]
37 Nested,
38 Expanded,
39 Compact,
40 Compressed,
41 #[cfg(not(feature = "unstable"))]
42 #[doc(hidden)]
43 #[serde(other)]
44 Unknown,
45}