Compare commits

...

2 Commits

Author SHA1 Message Date
416d82042f Bumping version to 0.0.59 2024-12-10 09:13:22 -08:00
a0eb291371 web: most post favicon more cachable 2024-12-10 09:13:11 -08:00
7 changed files with 19 additions and 12 deletions

10
Cargo.lock generated
View File

@ -2469,7 +2469,7 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
[[package]] [[package]]
name = "letterbox" name = "letterbox"
version = "0.0.58" version = "0.0.59"
dependencies = [ dependencies = [
"build-info", "build-info",
"build-info-build", "build-info-build",
@ -2988,7 +2988,7 @@ dependencies = [
[[package]] [[package]]
name = "notmuch" name = "notmuch"
version = "0.0.58" version = "0.0.59"
dependencies = [ dependencies = [
"itertools 0.10.5", "itertools 0.10.5",
"log", "log",
@ -3625,7 +3625,7 @@ dependencies = [
[[package]] [[package]]
name = "procmail2notmuch" name = "procmail2notmuch"
version = "0.0.58" version = "0.0.59"
dependencies = [ dependencies = [
"anyhow", "anyhow",
] ]
@ -4547,7 +4547,7 @@ dependencies = [
[[package]] [[package]]
name = "server" name = "server"
version = "0.0.58" version = "0.0.59"
dependencies = [ dependencies = [
"ammonia", "ammonia",
"anyhow", "anyhow",
@ -4646,7 +4646,7 @@ dependencies = [
[[package]] [[package]]
name = "shared" name = "shared"
version = "0.0.58" version = "0.0.59"
dependencies = [ dependencies = [
"build-info", "build-info",
"notmuch", "notmuch",

View File

@ -1,6 +1,6 @@
[package] [package]
name = "notmuch" name = "notmuch"
version = "0.0.58" version = "0.0.59"
edition = "2021" edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

View File

@ -1,6 +1,6 @@
[package] [package]
name = "procmail2notmuch" name = "procmail2notmuch"
version = "0.0.58" version = "0.0.59"
edition = "2021" edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

View File

@ -1,6 +1,6 @@
[package] [package]
name = "server" name = "server"
version = "0.0.58" version = "0.0.59"
edition = "2021" edition = "2021"
default-run = "server" default-run = "server"

View File

@ -1,6 +1,6 @@
[package] [package]
name = "shared" name = "shared"
version = "0.0.58" version = "0.0.59"
edition = "2021" edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

View File

@ -1,5 +1,5 @@
[package] [package]
version = "0.0.58" version = "0.0.59"
name = "letterbox" name = "letterbox"
repository = "https://github.com/seed-rs/seed-quickstart" repository = "https://github.com/seed-rs/seed-quickstart"
authors = ["Bill Thiede <git@xinu.tv>"] authors = ["Bill Thiede <git@xinu.tv>"]

View File

@ -1095,13 +1095,20 @@ fn news_post(
} }
fn render_news_post_header(post: &ShowThreadQueryThreadOnNewsPost) -> Node<Msg> { fn render_news_post_header(post: &ShowThreadQueryThreadOnNewsPost) -> Node<Msg> {
let from = &post.site; let from = &post.site;
// TODO: move avatar/favicon stuff to the server side and and come up with a solution for emails
let avatar: Option<String> = None; let avatar: Option<String> = None;
//let avatar: Option<String> = Some(String::from("https://bulma.io/images/placeholders/64x64.png")); //let avatar: Option<String> = Some(String::from("https://bulma.io/images/placeholders/64x64.png"));
let id = post.thread_id.clone(); let id = post.thread_id.clone();
let is_unread = !post.is_read; let is_unread = !post.is_read;
// TODO: use https://www.google.com/s2/favicons?domain={domain} // TODO: use https://www.google.com/s2/favicons?domain={domain}
let avatar = render_avatar(avatar, &from, true); let avatar = render_avatar(avatar, &from, true);
let domain = &post.url; let url = &post.url;
let idx = url
.match_indices('/')
.nth(2)
.map(|(idx, _)| idx)
.unwrap_or(url.len());
let domain = &url[..idx];
let favicon = div![ let favicon = div![
C![ C![
"w-16", "w-16",
@ -1114,7 +1121,7 @@ fn render_news_post_header(post: &ShowThreadQueryThreadOnNewsPost) -> Node<Msg>
"uppercase" "uppercase"
], ],
img![ img![
C!["object-cover", "w-16", "h-16",], C!["object-cover", "w-16", "h-16"],
attrs! {At::Src=>format!("https://www.google.com/s2/favicons?sz=64&domain={domain}")} attrs! {At::Src=>format!("https://www.google.com/s2/favicons?sz=64&domain={domain}")}
], ],
]; ];