diff --git a/src/pages/repo/issues.tsx b/src/pages/repo/issues.tsx index 8283059..079e33f 100644 --- a/src/pages/repo/issues.tsx +++ b/src/pages/repo/issues.tsx @@ -4,7 +4,7 @@ import { A, useNavigate, useParams, useSearchParams } from '@solidjs/router'; import { createQuery, useQueryClient } from '@tanstack/solid-query'; import type { ResourceUri } from '@atcute/lexicons/syntax'; import { For, Match, Show, Switch, createMemo, createSignal, type Component } from 'solid-js'; -import { createIssue, createIssueComment, getIssue, listIssuesPage, parseAtUri, setIssueState, type IssueComment, type RepoContext } from '../../lib/api'; +import { createIssue, createIssueComment, getIssue, listIssuesPage, parseAtUri, resolveActor, setIssueState, type IssueComment, type RepoContext } from '../../lib/api'; import { useAuth } from '../../lib/auth'; import { Avatar, ErrorState, StateBadge, ToggleButton, buttonStyles, cardStyles, inputStyles, textareaStyles } from '../../components/common'; import { MarkdownBlock, PaginationControls, RepoListSkeleton, RepoThreadSkeleton } from '../../components/repo'; @@ -385,8 +385,17 @@ export const IssuePage: Component = () => { return true; }); }); - const currentDid = createMemo(() => auth.currentDid()); - const commentThreads = createMemo(() => buildIssueCommentThreads(detail().comments)); + const currentDid = createMemo(() => auth.currentDid()); + const currentHandleQuery = createQuery(() => { + const did = currentDid(); + return { + queryKey: ['actor-handle', did ?? ''], + enabled: Boolean(did), + queryFn: async () => (await resolveActor(did!)).handle, + }; + }); + const currentHandle = createMemo(() => currentHandleQuery.data ?? currentDid()); + const commentThreads = createMemo(() => buildIssueCommentThreads(detail().comments)); return (