Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions book-examples/dioxus/src/icons.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1469,6 +1469,12 @@ pub fn IconsB2() -> Element {
},
"Brick Wall Fire",
),
(
rsx! {
BrickWallShield {}
},
"Brick Wall Shield",
),
(
rsx! {
Briefcase {}
Expand Down
1 change: 1 addition & 0 deletions book-examples/leptos/src/icons.rs
Original file line number Diff line number Diff line change
Expand Up @@ -327,6 +327,7 @@ pub fn IconsB() -> impl IntoView {
(view! { <BrainCog /> }.into_any(), "Brain Cog"),
(view! { <BrickWall /> }.into_any(), "Brick Wall"),
(view! { <BrickWallFire /> }.into_any(), "Brick Wall Fire"),
(view! { <BrickWallShield /> }.into_any(), "Brick Wall Shield"),
(view! { <Briefcase /> }.into_any(), "Briefcase"),
(view! { <BriefcaseBusiness /> }.into_any(), "Briefcase Business"),
(view! { <BriefcaseConveyorBelt /> }.into_any(), "Briefcase Conveyor Belt"),
Expand Down
1 change: 1 addition & 0 deletions book-examples/yew/src/icons.rs
Original file line number Diff line number Diff line change
Expand Up @@ -336,6 +336,7 @@ pub fn IconsB() -> Html {
(html! { <BrainCog /> }, "Brain Cog"),
(html! { <BrickWall /> }, "Brick Wall"),
(html! { <BrickWallFire /> }, "Brick Wall Fire"),
(html! { <BrickWallShield /> }, "Brick Wall Shield"),
(html! { <Briefcase /> }, "Briefcase"),
(html! { <BriefcaseBusiness /> }, "Briefcase Business"),
(
Expand Down
47 changes: 47 additions & 0 deletions packages/dioxus/src/brick_wall_shield.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
use dioxus::prelude::*;
#[derive(Clone, PartialEq, Props)]
pub struct BrickWallShieldProps {
#[props(default = 24)]
pub size: usize,
#[props(default = "currentColor".to_owned())]
pub color: String,
#[props(default = "none".to_owned())]
pub fill: String,
#[props(default = 2)]
pub stroke_width: usize,
#[props(default = false)]
pub absolute_stroke_width: bool,
pub class: Option<String>,
pub style: Option<String>,
}
#[component]
pub fn BrickWallShield(props: BrickWallShieldProps) -> Element {
let stroke_width = if props.absolute_stroke_width {
props.stroke_width * 24 / props.size
} else {
props.stroke_width
};
rsx! {
svg {
"xmlns": "http://www.w3.org/2000/svg",
"class": if let Some(class) = props.class { "{class}" },
"style": if let Some(style) = props.style { "{style}" },
"width": "{props.size}",
"height": "{props.size}",
"viewBox": "0 0 24 24",
"fill": "{props.fill}",
"stroke": "{props.color}",
"stroke-width": "{stroke_width}",
"stroke-linecap": "round",
"stroke-linejoin": "round",
path { "d": "M12 9v1.258" }
path { "d": "M16 3v5.46" }
path { "d": "M21 9.118V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h5.75" }
path { "d": "M22 17.5c0 2.499-1.75 3.749-3.83 4.474a.5.5 0 0 1-.335-.005c-2.085-.72-3.835-1.97-3.835-4.47V14a.5.5 0 0 1 .5-.499c1 0 2.25-.6 3.12-1.36a.6.6 0 0 1 .76-.001c.875.765 2.12 1.36 3.12 1.36a.5.5 0 0 1 .5.5z" }
path { "d": "M3 15h7" }
path { "d": "M3 9h12.142" }
path { "d": "M8 15v6" }
path { "d": "M8 3v6" }
}
}
}
4 changes: 4 additions & 0 deletions packages/dioxus/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -547,6 +547,8 @@ mod brain_cog;
mod brick_wall;
#[cfg(any(feature = "security", feature = "home", feature = "connectivity"))]
mod brick_wall_fire;
#[cfg(any(feature = "security", feature = "home", feature = "connectivity"))]
mod brick_wall_shield;
#[cfg(feature = "transportation")]
mod briefcase;
#[cfg(feature = "transportation")]
Expand Down Expand Up @@ -4686,6 +4688,8 @@ pub use brain_cog::*;
pub use brick_wall::*;
#[cfg(any(feature = "security", feature = "home", feature = "connectivity"))]
pub use brick_wall_fire::*;
#[cfg(any(feature = "security", feature = "home", feature = "connectivity"))]
pub use brick_wall_shield::*;
#[cfg(feature = "transportation")]
pub use briefcase::*;
#[cfg(feature = "transportation")]
Expand Down
42 changes: 42 additions & 0 deletions packages/leptos/src/brick_wall_shield.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
use leptos::{prelude::*, svg::Svg};
#[component]
pub fn BrickWallShield(
#[prop(default = 24.into(), into)] size: Signal<usize>,
#[prop(default = "currentColor".into(), into)] color: Signal<String>,
#[prop(default = "none".into(), into)] fill: Signal<String>,
#[prop(default = 2.into(), into)] stroke_width: Signal<usize>,
#[prop(default = false.into(), into)] absolute_stroke_width: Signal<bool>,
#[prop(optional)] node_ref: NodeRef<Svg>,
) -> impl IntoView {
let stroke_width = Signal::derive(move || {
if absolute_stroke_width.get() {
stroke_width.get() * 24 / size.get()
} else {
stroke_width.get()
}
});
view! {
<svg
node_ref=node_ref
class:lucide=true
xmlns="http://www.w3.org/2000/svg"
width=size
height=size
viewBox="0 0 24 24"
fill=fill
stroke=color
stroke-width=stroke_width
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M12 9v1.258" />
<path d="M16 3v5.46" />
<path d="M21 9.118V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h5.75" />
<path d="M22 17.5c0 2.499-1.75 3.749-3.83 4.474a.5.5 0 0 1-.335-.005c-2.085-.72-3.835-1.97-3.835-4.47V14a.5.5 0 0 1 .5-.499c1 0 2.25-.6 3.12-1.36a.6.6 0 0 1 .76-.001c.875.765 2.12 1.36 3.12 1.36a.5.5 0 0 1 .5.5z" />
<path d="M3 15h7" />
<path d="M3 9h12.142" />
<path d="M8 15v6" />
<path d="M8 3v6" />
</svg>
}
}
4 changes: 4 additions & 0 deletions packages/leptos/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -547,6 +547,8 @@ mod brain_cog;
mod brick_wall;
#[cfg(any(feature = "security", feature = "home", feature = "connectivity"))]
mod brick_wall_fire;
#[cfg(any(feature = "security", feature = "home", feature = "connectivity"))]
mod brick_wall_shield;
#[cfg(feature = "transportation")]
mod briefcase;
#[cfg(feature = "transportation")]
Expand Down Expand Up @@ -4686,6 +4688,8 @@ pub use brain_cog::*;
pub use brick_wall::*;
#[cfg(any(feature = "security", feature = "home", feature = "connectivity"))]
pub use brick_wall_fire::*;
#[cfg(any(feature = "security", feature = "home", feature = "connectivity"))]
pub use brick_wall_shield::*;
#[cfg(feature = "transportation")]
pub use briefcase::*;
#[cfg(feature = "transportation")]
Expand Down
56 changes: 56 additions & 0 deletions packages/yew/src/brick_wall_shield.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
use yew::prelude::*;
#[derive(PartialEq, Properties)]
pub struct BrickWallShieldProps {
#[prop_or(24)]
pub size: usize,
#[prop_or(AttrValue::from("currentColor"))]
pub color: AttrValue,
#[prop_or(AttrValue::from("none"))]
pub fill: AttrValue,
#[prop_or(2)]
pub stroke_width: usize,
#[prop_or(false)]
pub absolute_stroke_width: bool,
#[prop_or_default]
pub class: Classes,
#[prop_or_default]
pub style: std::option::Option<AttrValue>,
#[prop_or_default]
pub node_ref: NodeRef,
}
#[function_component]
pub fn BrickWallShield(props: &BrickWallShieldProps) -> Html {
let stroke_width = if props.absolute_stroke_width {
props.stroke_width * 24 / props.size
} else {
props.stroke_width
};
html! {
<svg
ref={props.node_ref.clone()}
class={classes!("lucide", props.class
.clone())}
style={props.style.clone()}
xmlns="http://www.w3.org/2000/svg"
width={props.size.to_string()}
height={props.size.to_string()}
viewBox="0 0 24 24"
fill={& props.fill}
stroke={& props.color}
stroke-width={stroke_width.to_string()}
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M12 9v1.258" />
<path d="M16 3v5.46" />
<path d="M21 9.118V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h5.75" />
<path
d="M22 17.5c0 2.499-1.75 3.749-3.83 4.474a.5.5 0 0 1-.335-.005c-2.085-.72-3.835-1.97-3.835-4.47V14a.5.5 0 0 1 .5-.499c1 0 2.25-.6 3.12-1.36a.6.6 0 0 1 .76-.001c.875.765 2.12 1.36 3.12 1.36a.5.5 0 0 1 .5.5z"
/>
<path d="M3 15h7" />
<path d="M3 9h12.142" />
<path d="M8 15v6" />
<path d="M8 3v6" />
</svg>
}
}
4 changes: 4 additions & 0 deletions packages/yew/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -549,6 +549,8 @@ mod brain_cog;
mod brick_wall;
#[cfg(any(feature = "security", feature = "home", feature = "connectivity"))]
mod brick_wall_fire;
#[cfg(any(feature = "security", feature = "home", feature = "connectivity"))]
mod brick_wall_shield;
#[cfg(feature = "transportation")]
mod briefcase;
#[cfg(feature = "transportation")]
Expand Down Expand Up @@ -4688,6 +4690,8 @@ pub use brain_cog::*;
pub use brick_wall::*;
#[cfg(any(feature = "security", feature = "home", feature = "connectivity"))]
pub use brick_wall_fire::*;
#[cfg(any(feature = "security", feature = "home", feature = "connectivity"))]
pub use brick_wall_shield::*;
#[cfg(feature = "transportation")]
pub use briefcase::*;
#[cfg(feature = "transportation")]
Expand Down
2 changes: 1 addition & 1 deletion scripts/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,5 @@ pub const GITHUB_OWNER: &str = "RustForWeb";
pub const GITHUB_REPO: &str = "lucide";

pub const UPSTREAM_GIT_URL: &str = "https://github.com/lucide-icons/lucide.git";
pub const UPSTREAM_GIT_REF: &str = "0.538.0";
pub const UPSTREAM_GIT_REF: &str = "0.539.0";
pub const UPSTREAM_GITHUB_URL: &str = "https://github.com/lucide-icons/lucide";