tawasuyu/llimphi
Sovereign retained-mode GPU UI framework in Rust (wgpu+vello+taffy+parley), Elm loop, 40+ widgets.
1// Copyright 2024 the Velato Authors
2// SPDX-License-Identifier: Apache-2.0 OR MIT
3
4use super::layer_style::LayerStyle;
5use crate::schema::animated_properties::color_value::ColorValue;
6use crate::schema::animated_properties::value::FloatValue;
7use serde::{Deserialize, Serialize};
8
9///
10#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
11pub struct OuterGlowStyle {
12 #[serde(flatten)]
13 pub layer_style: LayerStyle,
14 ///
15 #[serde(rename = "bm")]
16 #[serde(skip_serializing_if = "Option::is_none")]
17 pub blend_mode: Option<FloatValue>,
18 ///
19 #[serde(rename = "c")]
20 #[serde(skip_serializing_if = "Option::is_none")]
21 pub color: Option<ColorValue>,
22 ///
23 #[serde(rename = "o")]
24 #[serde(skip_serializing_if = "Option::is_none")]
25 pub opacity: Option<FloatValue>,
26 ///
27 #[serde(rename = "r")]
28 #[serde(skip_serializing_if = "Option::is_none")]
29 pub range: Option<FloatValue>,
30 ///
31 #[serde(rename = "ch")]
32 #[serde(skip_serializing_if = "Option::is_none")]
33 pub choke_spread: Option<FloatValue>,
34 ///
35 #[serde(rename = "no")]
36 #[serde(skip_serializing_if = "Option::is_none")]
37 pub noise: Option<FloatValue>,
38 ///
39 #[serde(rename = "j")]
40 #[serde(skip_serializing_if = "Option::is_none")]
41 pub jitter: Option<FloatValue>,
42}