From 275dd0a1ebf3766c72ed07228325f0a8aa4bdf4e Mon Sep 17 00:00:00 2001 From: trisua Date: Sat, 10 May 2025 21:58:02 -0400 Subject: [PATCH] add: custom emojis fix: don't show reposts of posts from blocked users fix: don't show questions when they're from users you've blocked --- Cargo.lock | 8 +- crates/app/Cargo.toml | 2 +- crates/app/src/langs/en-US.toml | 3 + crates/app/src/public/css/style.css | 6 + crates/app/src/public/html/chats/app.html | 2 +- .../src/public/html/communities/settings.html | 166 +++++++++++++ crates/app/src/public/html/components.html | 36 ++- crates/app/src/public/html/profile/base.html | 4 + crates/app/src/public/html/root.html | 1 + crates/app/src/public/html/stacks/manage.html | 2 +- crates/app/src/public/js/atto.js | 22 ++ crates/app/src/public/js/me.js | 23 ++ .../routes/api/v1/auth/connections/stripe.rs | 57 ++++- crates/app/src/routes/api/v1/auth/mod.rs | 2 +- .../src/routes/api/v1/communities/emojis.rs | 223 +++++++++++++++++- crates/app/src/routes/api/v1/mod.rs | 22 ++ crates/app/src/routes/pages/communities.rs | 31 ++- crates/core/Cargo.toml | 2 +- crates/core/src/database/emojis.rs | 31 ++- crates/core/src/database/posts.rs | 37 ++- crates/core/src/database/uploads.rs | 18 +- crates/core/src/model/uploads.rs | 51 +++- crates/l10n/Cargo.toml | 2 +- crates/shared/Cargo.toml | 2 +- crates/shared/src/markdown.rs | 5 +- 25 files changed, 697 insertions(+), 61 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 987204c..c7ed121 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3599,7 +3599,7 @@ dependencies = [ [[package]] name = "tetratto" -version = "2.3.0" +version = "3.0.0" dependencies = [ "ammonia", "async-stripe", @@ -3629,7 +3629,7 @@ dependencies = [ [[package]] name = "tetratto-core" -version = "2.3.0" +version = "3.0.0" dependencies = [ "async-recursion", "base16ct", @@ -3653,7 +3653,7 @@ dependencies = [ [[package]] name = "tetratto-l10n" -version = "2.3.0" +version = "3.0.0" dependencies = [ "pathbufd", "serde", @@ -3662,7 +3662,7 @@ dependencies = [ [[package]] name = "tetratto-shared" -version = "2.3.0" +version = "3.0.0" dependencies = [ "ammonia", "chrono", diff --git a/crates/app/Cargo.toml b/crates/app/Cargo.toml index 9c92d8c..92158a2 100644 --- a/crates/app/Cargo.toml +++ b/crates/app/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tetratto" -version = "2.3.0" +version = "3.0.0" edition = "2024" [features] diff --git a/crates/app/src/langs/en-US.toml b/crates/app/src/langs/en-US.toml index f043a73..a65c0cb 100644 --- a/crates/app/src/langs/en-US.toml +++ b/crates/app/src/langs/en-US.toml @@ -112,6 +112,9 @@ version = "1.0.0" "communities:action.create_channel" = "Create channel" "communities:label.chats" = "Chats" "communities:label.show_community" = "Show community" +"communities:tab.emojis" = "Emojis" +"communities:label.upload" = "Upload" +"communities:label.file" = "File" "notifs:action.mark_as_read" = "Mark as read" "notifs:action.mark_as_unread" = "Mark as unread" diff --git a/crates/app/src/public/css/style.css b/crates/app/src/public/css/style.css index 4d26a28..a5ea29d 100644 --- a/crates/app/src/public/css/style.css +++ b/crates/app/src/public/css/style.css @@ -311,6 +311,12 @@ img.contain { object-fit: contain; } +img.emoji { + width: 1em; + height: 1em; + aspect-ratio: 1 / 1; +} + /* avatar/banner */ .avatar { --size: 50px; diff --git a/crates/app/src/public/html/chats/app.html b/crates/app/src/public/html/chats/app.html index 440bc0e..39449b2 100644 --- a/crates/app/src/public/html/chats/app.html +++ b/crates/app/src/public/html/chats/app.html @@ -327,7 +327,7 @@ hide_user_menu=true) }} } .message.grouped { - padding: 0.25rem 1rem 0.25rem calc(1rem + 0.5rem + 39px); + padding: 0.25rem 1rem 0.25rem calc(1rem + 0.5rem + 31px); } body:not(.sidebars_shown) .sidebar { diff --git a/crates/app/src/public/html/communities/settings.html b/crates/app/src/public/html/communities/settings.html index 820e4c0..74f4edf 100644 --- a/crates/app/src/public/html/communities/settings.html +++ b/crates/app/src/public/html/communities/settings.html @@ -23,6 +23,11 @@ {{ icon "rss" }} {{ text "communities:tab.channels" }} + {% endif %} {% if can_manage_emojis %} + + {{ icon "smile" }} + {{ text "communities:tab.emojis" }} + {% endif %} @@ -436,6 +441,167 @@ }); } + {% endif %} {% if can_manage_emojis %} + + + {% endif %} diff --git a/crates/app/src/public/html/components.html b/crates/app/src/public/html/components.html index 0663a7b..1cd4281 100644 --- a/crates/app/src/public/html/components.html +++ b/crates/app/src/public/html/components.html @@ -179,6 +179,9 @@ and show_community and community.id != config.town_square or question %}
@@ -1202,6 +1205,17 @@ show_kick=false, secondary=false) -%} >