From f2546b5af7d5b417289934d89132e706c1168d5f Mon Sep 17 00:00:00 2001
From: Jure <44338+hoornet@users.noreply.github.com>
Date: Thu, 9 Apr 2026 18:42:03 +0200
Subject: [PATCH] =?UTF-8?q?Polish=20pass=207=20=E2=80=94=20sentence=20case?=
=?UTF-8?q?=20across=20profile,=20thread,=20follows,=20podcasts?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- ProfileView: Cancel/Back, Edit profile, Zap, Follow/Unfollow, Mute/Unmute,
Message, Notes/Articles/Media tab labels
- ThreadView: Back, Retry, Reply/Posting…/Replied ✓; console.error → debug.error
- ThreadNode: Reply/Posting…/Replied ✓
- FollowsView: Follow/Unfollow, Followers/Following tabs, Follows header
- EpisodeList: Back, Loading episodes…, amber → zap theme token on V4V badge
- AccountSwitcher: Login, Add account, Sign out, Remove
- PodcastCard: + Subscribe / Subscribed
---
src/components/follows/FollowsView.tsx | 8 ++++----
src/components/podcast/EpisodeList.tsx | 6 +++---
src/components/podcast/PodcastCard.tsx | 2 +-
src/components/profile/ProfileView.tsx | 14 +++++++-------
src/components/sidebar/AccountSwitcher.tsx | 8 ++++----
src/components/thread/ThreadNode.tsx | 2 +-
src/components/thread/ThreadView.tsx | 11 ++++++-----
7 files changed, 26 insertions(+), 25 deletions(-)
diff --git a/src/components/follows/FollowsView.tsx b/src/components/follows/FollowsView.tsx
index d91f31d..7f7905d 100644
--- a/src/components/follows/FollowsView.tsx
+++ b/src/components/follows/FollowsView.tsx
@@ -77,7 +77,7 @@ function FollowRow({
: "bg-accent hover:bg-accent-hover text-accent-text"
}`}
>
- {isFollowing ? "unfollow" : "follow"}
+ {isFollowing ? "Unfollow" : "Follow"}
)}
@@ -151,15 +151,15 @@ export function FollowsView() {
const followersSet = new Set(followers);
const tabs: Array<{ id: "followers" | "following"; label: string; count?: number }> = [
- { id: "followers", label: "followers", count: followersFetched ? followers.length : undefined },
- { id: "following", label: "following", count: follows.length },
+ { id: "followers", label: "Followers", count: followersFetched ? followers.length : undefined },
+ { id: "following", label: "Following", count: follows.length },
];
return (
{/* Header */}
-
follows
+
Follows
{tabs.map((t) => (
{show.artworkUrl && (
![]()
{loading ? (
-
Loading episodes...
+
Loading episodes…
) : episodes.length === 0 ? (
No episodes found
) : (
@@ -132,7 +132,7 @@ export function EpisodeList({ show, onBack }: EpisodeListProps) {
resumed
)}
{ep.value && ep.value.length > 0 && (
-
+
⚡ V4V
)}
diff --git a/src/components/podcast/PodcastCard.tsx b/src/components/podcast/PodcastCard.tsx
index 774a393..0ff2add 100644
--- a/src/components/podcast/PodcastCard.tsx
+++ b/src/components/podcast/PodcastCard.tsx
@@ -48,7 +48,7 @@ export function PodcastCard({ show, onClick }: PodcastCardProps) {
: "border-border text-text-muted hover:text-accent hover:border-accent/40"
}`}
>
- {subscribed ? "subscribed" : "+ subscribe"}
+ {subscribed ? "Subscribed" : "+ Subscribe"}
);
diff --git a/src/components/profile/ProfileView.tsx b/src/components/profile/ProfileView.tsx
index 769cd3b..1d9e9a8 100644
--- a/src/components/profile/ProfileView.tsx
+++ b/src/components/profile/ProfileView.tsx
@@ -143,7 +143,7 @@ export function ProfileView() {
onClick={editing ? () => setEditing(false) : goBack}
className="text-text-dim hover:text-text text-[11px] transition-colors"
>
- ← {editing ? "cancel" : "back"}
+ ← {editing ? "Cancel" : "Back"}
{isOwn ? "Your Profile" : "Profile"}
{isOwn && !getNDK().signer && (
@@ -157,7 +157,7 @@ export function ProfileView() {
onClick={() => setEditing(true)}
className="text-[11px] px-3 py-1 border border-border text-text-muted hover:text-accent hover:border-accent/40 transition-colors"
>
- edit profile
+ Edit profile
)}
{!isOwn && loggedIn && (
@@ -167,7 +167,7 @@ export function ProfileView() {
onClick={() => setShowZap(true)}
className="text-[11px] px-3 py-1 border border-border text-zap hover:border-zap/40 hover:bg-zap/5 transition-colors"
>
- ⚡ zap
+ ⚡ Zap
)}
)}
@@ -334,7 +334,7 @@ export function ProfileView() {
: "border-transparent text-text-dim hover:text-text"
}`}
>
- {t}
+ {t === "notes" ? "Notes" : t === "articles" ? "Articles" : "Media"}
))}
diff --git a/src/components/sidebar/AccountSwitcher.tsx b/src/components/sidebar/AccountSwitcher.tsx
index 1547c68..1687e59 100644
--- a/src/components/sidebar/AccountSwitcher.tsx
+++ b/src/components/sidebar/AccountSwitcher.tsx
@@ -76,7 +76,7 @@ export function AccountSwitcher() {
onClick={() => setShowAddLogin(true)}
className="w-full px-2 py-1.5 text-[11px] border border-border text-text-muted hover:text-accent hover:border-accent/40 transition-colors"
>
- login
+ Login
{showAddLogin && setShowAddLogin(false)} />}
@@ -116,7 +116,7 @@ export function AccountSwitcher() {
className="w-full flex items-center gap-2 px-3 py-2 text-text-dim hover:text-accent hover:bg-bg-hover text-[11px] transition-colors"
>
+
- add account
+ Add account
@@ -126,13 +126,13 @@ export function AccountSwitcher() {
onClick={() => { setOpen(false); logout(); }}
className="text-text-dim hover:text-danger text-[10px] transition-colors"
>
- sign out
+ Sign out
diff --git a/src/components/thread/ThreadNode.tsx b/src/components/thread/ThreadNode.tsx
index 4103aea..8b2b21e 100644
--- a/src/components/thread/ThreadNode.tsx
+++ b/src/components/thread/ThreadNode.tsx
@@ -100,7 +100,7 @@ function InlineThreadReply({ replyTo, rootEvent, onPublished }: {
disabled={!text.trim() || replying}
className="px-3 py-1 text-[11px] bg-accent hover:bg-accent-hover text-accent-text rounded-sm transition-colors disabled:opacity-30 disabled:cursor-not-allowed"
>
- {sent ? "replied ✓" : replying ? "posting…" : "reply"}
+ {sent ? "Replied ✓" : replying ? "Posting…" : "Reply"}
diff --git a/src/components/thread/ThreadView.tsx b/src/components/thread/ThreadView.tsx
index a36ddac..8814fb2 100644
--- a/src/components/thread/ThreadView.tsx
+++ b/src/components/thread/ThreadView.tsx
@@ -7,6 +7,7 @@ import { useMuteStore } from "../../stores/mute";
import { fetchNoteById, fetchThreadEvents, fetchAncestors, publishReply, getNDK, ensureConnected } from "../../lib/nostr";
import { buildThreadTree, getRootEventId } from "../../lib/threadTree";
import type { ThreadNode } from "../../lib/threadTree";
+import { debug } from "../../lib/debug";
import { AncestorChain } from "./AncestorChain";
import { ThreadNodeComponent } from "./ThreadNode";
import { NoteCard } from "../feed/NoteCard";
@@ -99,7 +100,7 @@ export function ThreadView() {
const built = buildThreadTree(root.id, allEvents);
setTree(built);
} catch (err) {
- console.error("Failed to load thread:", err);
+ debug.error("Failed to load thread:", err);
if (!cancelled) setLoadError(`Failed to load: ${err}`);
}
}
@@ -160,7 +161,7 @@ export function ThreadView() {
onClick={goBack}
className="text-text-dim hover:text-text text-[11px] transition-colors"
>
- ← back
+ ← Back
Thread
@@ -174,7 +175,7 @@ export function ThreadView() {
onClick={() => setRetryCount((c) => c + 1)}
className="text-[11px] text-accent hover:text-accent-hover transition-colors px-2 py-0.5 border border-accent/30 hover:border-accent"
>
- retry
+ Retry
)}
@@ -250,7 +251,7 @@ export function ThreadView() {
disabled={!replyText.trim() || replying}
className="px-3 py-1 text-[11px] bg-accent hover:bg-accent-hover text-accent-text rounded-sm transition-colors disabled:opacity-30 disabled:cursor-not-allowed"
>
- {replySent ? "replied ✓" : replying ? "posting…" : "reply"}
+ {replySent ? "Replied ✓" : replying ? "Posting…" : "Reply"}
@@ -286,7 +287,7 @@ export function ThreadView() {
onClick={() => setRetryCount((c) => c + 1)}
className="text-[11px] text-accent hover:text-accent-hover transition-colors px-3 py-1 border border-accent/30 hover:border-accent"
>
- retry
+ Retry
)}