From 70fd872848ecef420dce2ee5957d57ed46d779c1 Mon Sep 17 00:00:00 2001 From: Kieran Date: Fri, 10 Nov 2023 09:54:08 +0000 Subject: [PATCH] feat: lang specific trending --- packages/app/src/Element/TrendingPosts.tsx | 4 +++- packages/app/src/External/NostrBand.ts | 6 +++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/app/src/Element/TrendingPosts.tsx b/packages/app/src/Element/TrendingPosts.tsx index e6048180..b2af5588 100644 --- a/packages/app/src/Element/TrendingPosts.tsx +++ b/packages/app/src/Element/TrendingPosts.tsx @@ -6,15 +6,17 @@ import PageSpinner from "Element/PageSpinner"; import Note from "Element/Event/Note"; import NostrBandApi from "External/NostrBand"; import { ErrorOrOffline } from "Element/ErrorOrOffline"; +import { useLocale } from "IntlProvider"; export default function TrendingNotes() { const [posts, setPosts] = useState>(); const [error, setError] = useState(); + const { lang } = useLocale(); const related = useReactions("trending", posts?.map(a => NostrLink.fromEvent(a)) ?? [], undefined, true); async function loadTrendingNotes() { const api = new NostrBandApi(); - const trending = await api.trendingNotes(); + const trending = await api.trendingNotes(lang); setPosts(trending.notes.map(a => a.event)); } diff --git a/packages/app/src/External/NostrBand.ts b/packages/app/src/External/NostrBand.ts index 335b7cac..694e4cc5 100644 --- a/packages/app/src/External/NostrBand.ts +++ b/packages/app/src/External/NostrBand.ts @@ -44,7 +44,11 @@ export default class NostrBandApi { return await this.#json("GET", "/v0/trending/profiles"); } - async trendingNotes() { + async trendingNotes(lang?: string) { + const supportedLangs = ["en", "de", "ja", "zh", "th", "pt", "es", "fr"]; + if (lang && supportedLangs.includes(lang)) { + return await this.#json("GET", `/v0/trending/notes?lang=${lang}`); + } return await this.#json("GET", "/v0/trending/notes"); }