Add button to view quote tweets
Some checks failed
Docker / tests (push) Has been cancelled
Docker / build-docker-amd64 (push) Has been cancelled
Docker / build-docker-arm64 (push) Has been cancelled

This commit is contained in:
IRUZZ
2025-08-22 23:45:02 +01:00
committed by Kuu7o
parent 1e1e9e265a
commit c3e818f5bd
2 changed files with 8 additions and 4 deletions

View File

@@ -201,6 +201,10 @@
.tweet-stats {
margin-bottom: -3px;
-webkit-user-select: none;
a {
pointer-events: all;
}
}
.tweet-stat {

View File

@@ -1,5 +1,5 @@
# SPDX-License-Identifier: AGPL-3.0-only
import strutils, sequtils, strformat, options, algorithm
import strutils, sequtils, strformat, options, algorithm, uri
import karax/[karaxdsl, vdom, vstyles]
from jester import Request
@@ -178,11 +178,11 @@ func formatStat(stat: int): string =
if stat > 0: insertSep($stat, ',')
else: ""
proc renderStats(stats: TweetStats; views: string): VNode =
proc renderStats(tweet_id: int64; stats: TweetStats; views: string): VNode =
buildHtml(tdiv(class="tweet-stats")):
span(class="tweet-stat"): icon "comment", formatStat(stats.replies)
span(class="tweet-stat"): icon "retweet", formatStat(stats.retweets)
span(class="tweet-stat"): icon "quote", formatStat(stats.quotes)
a(class="tweet-stat", href=("/search?q=" & encodeUrl(&"-from:quotedreplies url:{tweet_id}") & "&e-nativeretweets=on")): icon "quote", formatStat(stats.quotes)
span(class="tweet-stat"): icon "heart", formatStat(stats.likes)
if views.len > 0:
span(class="tweet-stat"): icon "play", insertSep(views, ',')
@@ -343,7 +343,7 @@ proc renderTweet*(tweet: Tweet; prefs: Prefs; path: string; class=""; index=0;
renderMediaTags(tweet.mediaTags)
if not prefs.hideTweetStats:
renderStats(tweet.stats, views)
renderStats(tweet.id, tweet.stats, views)
if showThread:
a(class="show-thread", href=("/i/status/" & $tweet.threadId)):