logo.rs
⎇
Raw
1//! The dovenest mark, a dove in a woven nest. Same artwork as
2//! `web/favicon.svg`; keep the two in sync.
3
4use leptos::prelude::*;
5
6#[component]
7pub fn Logo(#[prop(optional)] class: Option<String>) -> impl IntoView {
8 let mut cls = String::from("logo");
9 if let Some(extra) = class {
10 cls.push(' ');
11 cls.push_str(&extra);
12 }
13 view! {
14 <svg class=cls viewBox="0 0 32 32" aria-hidden="true">
15 <rect width="32" height="32" fill="#2563eb"/>
16 <path
17 d="M4 12.5l6 3.2c1.2-2.6 3.6-4 6.5-4 1.2 0 2.2.2 3 .6.4-2.2 2.1-3.6 4-3.6 1.6 0 2.8.9 3.3 2.2l2.2.9-2.1.7c-.2 1.2-.8 2.3-1.8 3.1 0 3.6-3.2 6.4-8 6.4H11c-3 0-5.5-2.9-7-9.5z"
18 fill="#fff"
19 />
20 <path d="M11.5 16.5c3 2.2 7 2.3 10 .2" fill="none" stroke="#2563eb" stroke-width="1.4"/>
21 <circle cx="24" cy="11.2" r=".9" fill="#2563eb"/>
22 <path d="M3 20h26c-1 4.8-6.2 7.6-13 7.6S4 24.8 3 20z" fill="#fff"/>
23 <path
24 d="M6 22.9l3.4 2.3 3.4-2.3 3.2 2.3 3.2-2.3 3.4 2.3 3.4-2.3"
25 fill="none"
26 stroke="#2563eb"
27 stroke-width="1.5"
28 />
29 </svg>
30 }
31}
32