wasm_css/
extend_from_css.rs1use super::{components::Components, Style};
4use crate::error::WasmCssError;
5
6impl Style {
7 pub fn extend_from_css(&mut self, new_css: &str) -> Result<(), WasmCssError> {
26 let new_components = Components::from_css(new_css);
27
28 if !new_components.fields.is_empty() || !new_components.effects.is_empty() {
29 self.components.fields.extend(new_components.fields);
30
31 'effect_loop: for effect in new_components.effects {
32 for index in 0..self.components.effects.len() {
33 if effect.key == self.components.effects[index].key {
34 self.components.effects[index] = effect;
35 continue 'effect_loop;
36 }
37 }
38
39 self.components.effects.push(effect);
40 }
41
42 self.css = self.components.to_css(&self.css_name);
43 self.render()?;
44 }
45
46 Ok(())
47 }
48}