From a548441a8e563ea76f4cb2f19192184014d009a3 Mon Sep 17 00:00:00 2001 From: Alan Daniel Date: Fri, 10 Apr 2026 13:27:07 -0700 Subject: [PATCH 1/8] Misc UI improvements across dashboard (#55) - Simplify OG titles to use PR title only (drop "PR #xxx" prefix) - Extract dynamic tabs into dedicated DashboardTabs component with useScrollShadows hook - Auto-scroll active tab into view on navigation and keyboard shortcuts - Prefetch labels/reviewers/teams data on popover trigger hover - Use icon-to-spinner swap pattern for all action CTAs (merge, update branch, save, submit review) - Hide description dropdown when no actions are available --- .../src/components/issues/labels-section.tsx | 13 +- .../src/components/layouts/dashboard-tabs.tsx | 200 ++++++++++++++++++ .../components/layouts/dashboard-topbar.tsx | 162 +------------- .../pulls/detail/pull-body-section.tsx | 60 +++--- .../pulls/detail/pull-detail-activity.tsx | 21 +- .../pulls/detail/pull-detail-sidebar.tsx | 20 +- .../pulls/review/review-submit-popover.tsx | 18 +- .../_protected/$owner/$repo/pull.$pullId.tsx | 2 +- .../$owner/$repo/review.$pullId.tsx | 2 +- 9 files changed, 299 insertions(+), 199 deletions(-) create mode 100644 apps/dashboard/src/components/layouts/dashboard-tabs.tsx diff --git a/apps/dashboard/src/components/issues/labels-section.tsx b/apps/dashboard/src/components/issues/labels-section.tsx index 9c2b20f..e19a5a6 100644 --- a/apps/dashboard/src/components/issues/labels-section.tsx +++ b/apps/dashboard/src/components/issues/labels-section.tsx @@ -4,7 +4,7 @@ import { PopoverContent, PopoverTrigger, } from "@diffkit/ui/components/popover"; -import { useQuery } from "@tanstack/react-query"; +import { useQuery, useQueryClient } from "@tanstack/react-query"; import { useCallback, useMemo, useRef, useState } from "react"; import { createRepoLabel, setIssueLabels } from "#/lib/github.functions"; import { @@ -52,16 +52,23 @@ export function LabelsSection({ pageQueryKey: readonly unknown[]; }) { const { mutate } = useOptimisticMutation(); + const queryClient = useQueryClient(); const [pickerOpen, setPickerOpen] = useState(false); const [search, setSearch] = useState(""); const [pending, setPending] = useState(false); const [focusedIndex, setFocusedIndex] = useState(-1); const listRef = useRef(null); + const labelsOptions = githubRepoLabelsQueryOptions(scope, { owner, repo }); + const repoLabelsQuery = useQuery({ - ...githubRepoLabelsQueryOptions(scope, { owner, repo }), + ...labelsOptions, enabled: pickerOpen, }); + + const prefetchLabels = useCallback(() => { + void queryClient.prefetchQuery(labelsOptions); + }, [queryClient, labelsOptions]); const repoLabels = repoLabelsQuery.data ?? []; const activeNames = useMemo( @@ -201,6 +208,8 @@ export function LabelsSection({ + + ); +}); diff --git a/apps/dashboard/src/components/layouts/dashboard-topbar.tsx b/apps/dashboard/src/components/layouts/dashboard-topbar.tsx index d50ed96..23dd79c 100644 --- a/apps/dashboard/src/components/layouts/dashboard-topbar.tsx +++ b/apps/dashboard/src/components/layouts/dashboard-topbar.tsx @@ -1,5 +1,4 @@ import { - CloseIcon, GitPullRequestIcon, HomeIcon, IssuesIcon, @@ -21,13 +20,13 @@ import { DropdownMenuShortcut, DropdownMenuTrigger, } from "@diffkit/ui/components/dropdown-menu"; -import { Link, useRouter, useRouterState } from "@tanstack/react-router"; +import { Link, useRouter } from "@tanstack/react-router"; import { useTheme } from "next-themes"; -import { memo, useCallback, useEffect, useMemo, useRef, useState } from "react"; +import { useEffect, useMemo, useRef, useState } from "react"; +import { DashboardTabs } from "#/components/layouts/dashboard-tabs"; import { signOutToLogin } from "#/lib/auth-actions"; -import { preloadRouteOnce } from "#/lib/route-preload"; import { useGlobalShortcuts } from "#/lib/shortcuts"; -import { removeTab, type Tab, useTabs } from "#/lib/tab-store"; +import { type Tab, useTabs } from "#/lib/tab-store"; interface DashboardTopbarProps { user: { @@ -56,12 +55,6 @@ const themeOptions = [ { value: "system", icon: SystemIcon, label: "System" }, ] as const; -const tabIconMap = { - pull: GitPullRequestIcon, - issue: IssuesIcon, - review: ReviewsIcon, -} as const; - const primaryNavRoutes = ["/", "/pulls", "/issues", "/reviews"] as const; const MAX_TAB_SHORTCUTS = 9; @@ -78,32 +71,6 @@ export function DashboardTopbar({ const router = useRouter(); const routerRef = useRef(router); routerRef.current = router; - const pathname = useRouterState({ select: (s) => s.location.pathname }); - const scrollRef = useRef(null); - const [canScrollLeft, setCanScrollLeft] = useState(false); - const [canScrollRight, setCanScrollRight] = useState(false); - - const updateScrollState = useCallback(() => { - const el = scrollRef.current; - if (!el) return; - setCanScrollLeft(el.scrollLeft > 0); - setCanScrollRight(el.scrollLeft + el.clientWidth < el.scrollWidth - 1); - }, []); - - useEffect(() => { - const el = scrollRef.current; - if (!el) return; - const ro = new ResizeObserver(updateScrollState); - ro.observe(el); - return () => ro.disconnect(); - }, [updateScrollState]); - - useEffect(() => { - const el = scrollRef.current; - if (!el || openTabs.length === 0) return; - el.scrollLeft = el.scrollWidth; - updateScrollState(); - }, [openTabs.length, updateScrollState]); const displayName = user.name ?? user.email; const initials = displayName @@ -146,30 +113,11 @@ export function DashboardTopbar({ ); }, [tabsReady]); - useEffect(() => { - if (!tabsReady || openTabs.length === 0) return; - - void Promise.allSettled( - openTabs.map((tab) => preloadRouteOnce(routerRef.current, tab.url)), - ); - }, [tabsReady, openTabs]); - function navigateToTab(tab: Tab | undefined) { if (!tab) return; void routerRef.current.navigate({ to: tab.url }); } - const handleCloseTab = useCallback( - (id: string, tabUrl: string) => { - const isActive = pathname === tabUrl; - removeTab(id); - if (isActive) { - void routerRef.current.navigate({ to: "/" }); - } - }, - [pathname], - ); - useGlobalShortcuts([ ...Array.from( { length: Math.min(openTabs.length, MAX_TAB_SHORTCUTS) }, @@ -319,46 +267,7 @@ export function DashboardTopbar({
- {openTabs.length > 0 && ( -
-
-
-
-
- {/* biome-ignore lint/a11y/noStaticElementInteractions: scroll container needs onScroll for gradient visibility */} -
- {openTabs.map((tab) => { - const Icon = tabIconMap[tab.type]; - return ( - - ); - })} -
-
-
- )} +
@@ -373,64 +282,3 @@ export function DashboardTopbar({ ); } - -const DetailTab = memo(function DetailTab({ - tab, - icon: Icon, - onClose, - routerRef, -}: { - tab: Tab; - icon: typeof GitPullRequestIcon; - onClose: (id: string, tabUrl: string) => void; - routerRef: React.RefObject>; -}) { - const preloadTab = () => { - void preloadRouteOnce(routerRef.current, tab.url); - }; - - return ( - - - {tab.title} - {tab.type === "review" ? ( - - {tab.additions != null && ( - +{tab.additions} - )} - {tab.deletions != null && ( - -{tab.deletions} - )} - - ) : ( - - #{tab.number} - - )} - - - ); -}); diff --git a/apps/dashboard/src/components/pulls/detail/pull-body-section.tsx b/apps/dashboard/src/components/pulls/detail/pull-body-section.tsx index 0b2e03e..d82697c 100644 --- a/apps/dashboard/src/components/pulls/detail/pull-body-section.tsx +++ b/apps/dashboard/src/components/pulls/detail/pull-body-section.tsx @@ -297,43 +297,47 @@ export function PullBodySection({ ) : ( )} - {isSaving ? "Saving..." : "Save"} + Save
); } + const hasDropdownOptions = !!pr.body || isAuthor; + return (
- - - - - - {pr.body && ( - { - void navigator.clipboard.writeText(pr.body); - }} + {hasDropdownOptions && ( + + + + + + {pr.body && ( + { + void navigator.clipboard.writeText(pr.body); + }} + > + + Copy as Markdown + + )} + {isAuthor && ( + + + Edit + + )} + + + )} {pr.body ? ( {pr.body} ) : ( diff --git a/apps/dashboard/src/components/pulls/detail/pull-detail-activity.tsx b/apps/dashboard/src/components/pulls/detail/pull-detail-activity.tsx index 00b3448..d4de677 100644 --- a/apps/dashboard/src/components/pulls/detail/pull-detail-activity.tsx +++ b/apps/dashboard/src/components/pulls/detail/pull-detail-activity.tsx @@ -5,6 +5,7 @@ import { GitCommitIcon, GitMergeIcon, MoreHorizontalIcon, + RefreshCwIcon, XIcon, } from "@diffkit/icons"; import { Button } from "@diffkit/ui/components/button"; @@ -23,6 +24,7 @@ import { import { Markdown } from "@diffkit/ui/components/markdown"; import { Skeleton } from "@diffkit/ui/components/skeleton"; import { toast } from "@diffkit/ui/components/sonner"; +import { Spinner } from "@diffkit/ui/components/spinner"; import { cn } from "@diffkit/ui/lib/utils"; import { useQuery, useQueryClient } from "@tanstack/react-query"; import { useState } from "react"; @@ -622,11 +624,18 @@ function UpdateBranchButton({ size="xs" disabled={isUpdating} className="rounded-r-none" + iconLeft={ + isUpdating ? ( + + ) : ( + + ) + } onClick={() => { void handleUpdate(); }} > - {isUpdating ? "Updating…" : "Update branch"} + Update branch @@ -739,9 +748,15 @@ function MergeFooter({ void handleMerge(); }} className="rounded-r-none" - iconLeft={} + iconLeft={ + isMerging ? ( + + ) : ( + + ) + } > - {isMerging ? "Merging…" : currentStrategy.label} + {currentStrategy.label} diff --git a/apps/dashboard/src/components/pulls/detail/pull-detail-sidebar.tsx b/apps/dashboard/src/components/pulls/detail/pull-detail-sidebar.tsx index ae20de9..eabc0c8 100644 --- a/apps/dashboard/src/components/pulls/detail/pull-detail-sidebar.tsx +++ b/apps/dashboard/src/components/pulls/detail/pull-detail-sidebar.tsx @@ -14,7 +14,7 @@ import { PopoverContent, PopoverTrigger, } from "@diffkit/ui/components/popover"; -import { useQuery } from "@tanstack/react-query"; +import { useQuery, useQueryClient } from "@tanstack/react-query"; import { useCallback, useMemo, useRef, useState } from "react"; import { DetailParticipantAvatars, @@ -131,20 +131,32 @@ function ReviewersSection({ scope: GitHubQueryScope; }) { const { mutate } = useOptimisticMutation(); + const queryClient = useQueryClient(); const [pickerOpen, setPickerOpen] = useState(false); const [search, setSearch] = useState(""); const [focusedIndex, setFocusedIndex] = useState(-1); const listRef = useRef(null); + const collaboratorsOptions = githubRepoCollaboratorsQueryOptions(scope, { + owner, + repo, + }); + const teamsOptions = githubOrgTeamsQueryOptions(scope, owner); + const collaboratorsQuery = useQuery({ - ...githubRepoCollaboratorsQueryOptions(scope, { owner, repo }), + ...collaboratorsOptions, enabled: pickerOpen, }); const teamsQuery = useQuery({ - ...githubOrgTeamsQueryOptions(scope, owner), + ...teamsOptions, enabled: pickerOpen, }); + const prefetchReviewers = useCallback(() => { + void queryClient.prefetchQuery(collaboratorsOptions); + void queryClient.prefetchQuery(teamsOptions); + }, [queryClient, collaboratorsOptions, teamsOptions]); + const collaborators = collaboratorsQuery.data ?? []; const teams = teamsQuery.data ?? []; const isLoading = collaboratorsQuery.isLoading || teamsQuery.isLoading; @@ -346,6 +358,8 @@ function ReviewersSection({
diff --git a/apps/dashboard/src/routes/_protected/$owner/$repo/pull.$pullId.tsx b/apps/dashboard/src/routes/_protected/$owner/$repo/pull.$pullId.tsx index 6566f16..a4ff290 100644 --- a/apps/dashboard/src/routes/_protected/$owner/$repo/pull.$pullId.tsx +++ b/apps/dashboard/src/routes/_protected/$owner/$repo/pull.$pullId.tsx @@ -31,7 +31,7 @@ export const Route = createFileRoute("/_protected/$owner/$repo/pull/$pullId")({ head: ({ loaderData, match, params }) => { const pull = loaderData?.detail; const title = pull - ? formatPageTitle(`PR #${pull.number}: ${pull.title}`) + ? formatPageTitle(pull.title) : formatPageTitle(`PR #${params.pullId}`); return buildSeo({ diff --git a/apps/dashboard/src/routes/_protected/$owner/$repo/review.$pullId.tsx b/apps/dashboard/src/routes/_protected/$owner/$repo/review.$pullId.tsx index d95bd50..f3ff7b8 100644 --- a/apps/dashboard/src/routes/_protected/$owner/$repo/review.$pullId.tsx +++ b/apps/dashboard/src/routes/_protected/$owner/$repo/review.$pullId.tsx @@ -53,7 +53,7 @@ export const Route = createFileRoute("/_protected/$owner/$repo/review/$pullId")( head: ({ loaderData, match, params }) => { const pull = loaderData?.pageData?.detail; const title = pull - ? formatPageTitle(`Review PR #${pull.number}: ${pull.title}`) + ? formatPageTitle(pull.title) : formatPageTitle(`Review PR #${params.pullId}`); return buildSeo({ From e9266e01a131165bd74f4209bdded7a78e6dcd18 Mon Sep 17 00:00:00 2001 From: Alan Daniel Date: Fri, 10 Apr 2026 15:46:03 -0700 Subject: [PATCH 2/8] Fix login redirect callback (#56) --- apps/dashboard/src/lib/auth-actions.ts | 14 +++++++--- apps/dashboard/src/lib/auth-redirect.test.ts | 25 ++++++++++++++++++ apps/dashboard/src/lib/auth-redirect.ts | 27 ++++++++++++++++++++ apps/dashboard/src/routes/login.tsx | 12 ++++++--- 4 files changed, 71 insertions(+), 7 deletions(-) create mode 100644 apps/dashboard/src/lib/auth-redirect.test.ts create mode 100644 apps/dashboard/src/lib/auth-redirect.ts diff --git a/apps/dashboard/src/lib/auth-actions.ts b/apps/dashboard/src/lib/auth-actions.ts index 055ad5f..69e1b05 100644 --- a/apps/dashboard/src/lib/auth-actions.ts +++ b/apps/dashboard/src/lib/auth-actions.ts @@ -1,9 +1,15 @@ import { createClientOnlyFn } from "@tanstack/react-start"; +import { normalizeAuthRedirect } from "./auth-redirect"; -export const signInWithGitHub = createClientOnlyFn(async () => { - const { signIn } = await import("./auth.client"); - return signIn.social({ provider: "github" }); -}); +export const signInWithGitHub = createClientOnlyFn( + async ({ redirect }: { redirect?: string } = {}) => { + const { signIn } = await import("./auth.client"); + return signIn.social({ + provider: "github", + callbackURL: normalizeAuthRedirect(redirect), + }); + }, +); export const signOutToLogin = createClientOnlyFn(async () => { const { signOut } = await import("./auth.client"); diff --git a/apps/dashboard/src/lib/auth-redirect.test.ts b/apps/dashboard/src/lib/auth-redirect.test.ts new file mode 100644 index 0000000..7b1a53c --- /dev/null +++ b/apps/dashboard/src/lib/auth-redirect.test.ts @@ -0,0 +1,25 @@ +import { describe, expect, it } from "vitest"; +import { normalizeAuthRedirect } from "./auth-redirect"; + +describe("normalizeAuthRedirect", () => { + it("keeps relative app paths with search and hash", () => { + expect( + normalizeAuthRedirect("/stylessh/quickhub/pull.12?tab=files#comment-1"), + ).toBe("/stylessh/quickhub/pull.12?tab=files#comment-1"); + }); + + it("falls back for missing or non-string values", () => { + expect(normalizeAuthRedirect(undefined)).toBe("/"); + expect(normalizeAuthRedirect(123)).toBe("/"); + }); + + it("rejects absolute and protocol-relative URLs", () => { + expect(normalizeAuthRedirect("https://example.com/pulls")).toBe("/"); + expect(normalizeAuthRedirect("//example.com/pulls")).toBe("/"); + }); + + it("rejects redirects back to login", () => { + expect(normalizeAuthRedirect("/login")).toBe("/"); + expect(normalizeAuthRedirect("/login?redirect=/pulls")).toBe("/"); + }); +}); diff --git a/apps/dashboard/src/lib/auth-redirect.ts b/apps/dashboard/src/lib/auth-redirect.ts new file mode 100644 index 0000000..8a7220e --- /dev/null +++ b/apps/dashboard/src/lib/auth-redirect.ts @@ -0,0 +1,27 @@ +export const DEFAULT_AUTH_REDIRECT = "/"; + +const AUTH_REDIRECT_BASE_URL = "https://diffkit.local"; + +export function normalizeAuthRedirect(value: unknown) { + if (typeof value !== "string") { + return DEFAULT_AUTH_REDIRECT; + } + + const redirect = value.trim(); + if (!redirect.startsWith("/") || redirect.startsWith("//")) { + return DEFAULT_AUTH_REDIRECT; + } + + let url: URL; + try { + url = new URL(redirect, AUTH_REDIRECT_BASE_URL); + } catch { + return DEFAULT_AUTH_REDIRECT; + } + + if (url.origin !== AUTH_REDIRECT_BASE_URL || url.pathname === "/login") { + return DEFAULT_AUTH_REDIRECT; + } + + return `${url.pathname}${url.search}${url.hash}`; +} diff --git a/apps/dashboard/src/routes/login.tsx b/apps/dashboard/src/routes/login.tsx index 99a7b2c..bcd2746 100644 --- a/apps/dashboard/src/routes/login.tsx +++ b/apps/dashboard/src/routes/login.tsx @@ -4,6 +4,7 @@ import { Logo } from "@diffkit/ui/components/logo"; import { createFileRoute, redirect } from "@tanstack/react-router"; import { getSession } from "#/lib/auth.functions"; import { signInWithGitHub } from "#/lib/auth-actions"; +import { normalizeAuthRedirect } from "#/lib/auth-redirect"; import { buildSeo, buildSoftwareApplicationSchema, @@ -12,9 +13,12 @@ import { import { siteConfig } from "#/lib/site-config"; export const Route = createFileRoute("/login")({ - beforeLoad: async () => { + validateSearch: (search) => ({ + redirect: normalizeAuthRedirect(search.redirect), + }), + beforeLoad: async ({ search }) => { const session = await getSession(); - if (session) throw redirect({ to: "/" }); + if (session) throw redirect({ href: search.redirect }); }, head: () => { const seo = buildSeo({ @@ -43,6 +47,8 @@ export const Route = createFileRoute("/login")({ }); function LoginPage() { + const { redirect } = Route.useSearch(); + return (
@@ -79,7 +85,7 @@ function LoginPage() { className="space-y-3" onSubmit={(event) => { event.preventDefault(); - void signInWithGitHub(); + void signInWithGitHub({ redirect }); }} > +
+
+ ); +} + +// ── Event rendering helpers ───────────────────────────────────────── + +function getIssueEventIcon(event: TimelineEvent) { + switch (event.event) { + case "labeled": + case "unlabeled": + return ( + + ); + case "assigned": + case "unassigned": + return ( + + ); + case "renamed": + return ( + + ); + case "closed": + return ( + + ); + case "reopened": + return ( + + ); + case "cross-referenced": + case "referenced": + return ( + + ); + case "milestoned": + case "demilestoned": + return ( + + ); + case "review_requested": + case "review_request_removed": + return ( + + ); + default: + return ( + + ); + } +} + +function ActorMention({ + actor, + hideAvatar, +}: { + actor: { login: string; avatarUrl?: string } | null | undefined; + hideAvatar?: boolean; +}) { + const login = actor?.login ?? "someone"; + return ( + + {!hideAvatar && actor?.avatarUrl && ( + {login} + )} + {login} + + ); +} + +function getIssueEventDescription(event: TimelineEvent): React.ReactNode { + const reviewer = + event.requestedReviewer ?? + (event.requestedTeam ? { login: event.requestedTeam.name } : null); + + switch (event.event) { + case "labeled": + return ( + + + {" added "} + {event.label && ( + + )} + + ); + case "unlabeled": + return ( + + + {" removed "} + {event.label && ( + + )} + + ); + case "assigned": + return ( + + + {" assigned "} + + + ); + case "unassigned": + return ( + + + {" unassigned "} + + + ); + case "renamed": + return ( + + + {" changed the title from "} + {event.rename?.from} + {" to "} + + {event.rename?.to} + + + ); + case "closed": + return ( + + + {" closed this"} + + ); + case "reopened": + return ( + + + {" reopened this"} + + ); + case "cross-referenced": + case "referenced": { + if (!event.source) return null; + const prefix = event.source.type === "pull_request" ? "PR" : "Issue"; + return ( + + + {" mentioned this in "} + + {event.source.repository + ? `${event.source.repository}#${event.source.number}` + : `${prefix} #${event.source.number}`} + + {event.source.title} + + ); + } + case "milestoned": + return ( + + + {" added this to the "} + + {event.milestone?.title} + + {" milestone"} + + ); + case "demilestoned": + return ( + + + {" removed this from the "} + + {event.milestone?.title} + + {" milestone"} + + ); + case "review_requested": + return ( + + + {" requested review from "} + + + ); + case "review_request_removed": + return ( + + + {" removed review request for "} + + + ); + default: + return null; + } +} diff --git a/apps/dashboard/src/components/issues/detail/issue-detail-page.tsx b/apps/dashboard/src/components/issues/detail/issue-detail-page.tsx index 43684ed..1979bb2 100644 --- a/apps/dashboard/src/components/issues/detail/issue-detail-page.tsx +++ b/apps/dashboard/src/components/issues/detail/issue-detail-page.tsx @@ -5,7 +5,10 @@ import { DetailPageLayout, DetailPageSkeletonLayout, } from "#/components/details/detail-page"; -import { githubIssuePageQueryOptions } from "#/lib/github.query"; +import { + githubIssuePageQueryOptions, + githubQueryKeys, +} from "#/lib/github.query"; import { useHasMounted } from "#/lib/use-has-mounted"; import { useRegisterTab } from "#/lib/use-register-tab"; import { IssueDetailActivitySection } from "./issue-detail-activity"; @@ -28,6 +31,9 @@ export function IssueDetailPage() { const issue = pageQuery.data?.detail; const comments = pageQuery.data?.comments; + const events = pageQuery.data?.events; + const commentPagination = pageQuery.data?.commentPagination; + const eventPagination = pageQuery.data?.eventPagination; useRegisterTab( issue @@ -52,7 +58,18 @@ export function IssueDetailPage() { } diff --git a/apps/dashboard/src/components/layouts/github-access-dialog.tsx b/apps/dashboard/src/components/layouts/github-access-dialog.tsx index 03c68d8..6e50bd0 100644 --- a/apps/dashboard/src/components/layouts/github-access-dialog.tsx +++ b/apps/dashboard/src/components/layouts/github-access-dialog.tsx @@ -149,7 +149,7 @@ export function GitHubAccessDialog({ userId }: { userId: string }) { type AccessTarget = { login: string; type: "personal" | "org"; - installed: boolean; + status: "installed" | "not-installed" | "unknown"; scope: "all" | "selected" | null; href: string | null; isHighlighted: boolean; @@ -160,11 +160,16 @@ function buildTargets( highlightedOwner: string | null, ): AccessTarget[] { const targets: AccessTarget[] = []; + const canDetect = state.installationsAvailable; targets.push({ login: state.viewerLogin, type: "personal", - installed: !!state.personalInstallation, + status: canDetect + ? state.personalInstallation + ? "installed" + : "not-installed" + : "unknown", scope: state.personalInstallation ? state.personalInstallation.repositorySelection === "selected" ? "selected" @@ -180,7 +185,11 @@ function buildTargets( targets.push({ login: org.login, type: "org", - installed: !!installation, + status: canDetect + ? installation + ? "installed" + : "not-installed" + : "unknown", scope: installation ? installation.repositorySelection === "selected" ? "selected" @@ -215,7 +224,7 @@ function AccessList({ target.isHighlighted && "bg-accent/55", )} > - +
@@ -230,11 +239,13 @@ function AccessList({ ) : null}

- {target.installed + {target.status === "installed" ? target.scope === "selected" ? "Installed · selected repositories" : "Installed" - : "Not installed"} + : target.status === "not-installed" + ? "Not installed" + : "Check installation status on GitHub"} {target.type === "personal" ? " · personal" : " · org"}

@@ -242,12 +253,12 @@ function AccessList({ {target.href ? ( ) : null} @@ -265,12 +276,20 @@ function AccessList({ ); } -function StatusDot({ installed }: { installed: boolean }) { +function StatusDot({ + status, +}: { + status: "installed" | "not-installed" | "unknown"; +}) { return (
); diff --git a/apps/dashboard/src/components/pulls/detail/pull-detail-activity.tsx b/apps/dashboard/src/components/pulls/detail/pull-detail-activity.tsx index d4de677..127a6d7 100644 --- a/apps/dashboard/src/components/pulls/detail/pull-detail-activity.tsx +++ b/apps/dashboard/src/components/pulls/detail/pull-detail-activity.tsx @@ -2,10 +2,15 @@ import { CheckIcon, ChevronDownIcon, ChevronUpIcon, + CircleIcon, + EditIcon, GitCommitIcon, GitMergeIcon, + GitPullRequestIcon, MoreHorizontalIcon, RefreshCwIcon, + ReviewsIcon, + UserAddIcon, XIcon, } from "@diffkit/icons"; import { Button } from "@diffkit/ui/components/button"; @@ -27,14 +32,17 @@ import { toast } from "@diffkit/ui/components/sonner"; import { Spinner } from "@diffkit/ui/components/spinner"; import { cn } from "@diffkit/ui/lib/utils"; import { useQuery, useQueryClient } from "@tanstack/react-query"; -import { useState } from "react"; +import { useCallback, useRef, useState } from "react"; import { DetailActivityHeader, DetailCommentBox, } from "#/components/details/detail-activity"; +import { LabelPill } from "#/components/details/label-pill"; import { formatRelativeTime } from "#/lib/format-relative-time"; import { dismissPullReview, + getCommentPage, + getTimelineEventPage, mergePullRequest, requestPullReviewers, updatePullBranch, @@ -44,17 +52,25 @@ import { githubPullStatusQueryOptions, } from "#/lib/github.query"; import type { + CommentPagination, + EventPagination, PullCheckRun, PullComment, PullCommit, PullDetail, + PullPageData, PullStatus, + TimelineEvent, } from "#/lib/github.types"; import { checkPermissionWarning } from "#/lib/warning-store"; export function PullDetailActivitySection({ comments, commits, + events, + commentPagination, + eventPagination, + pageQueryKey, isFetching, pr, owner, @@ -64,6 +80,10 @@ export function PullDetailActivitySection({ }: { comments?: PullComment[]; commits?: PullCommit[]; + events?: TimelineEvent[]; + commentPagination?: CommentPagination; + eventPagination?: EventPagination; + pageQueryKey: readonly unknown[]; isFetching: boolean; pr: PullDetail; owner: string; @@ -76,7 +96,9 @@ export function PullDetailActivitySection({ @@ -106,14 +128,25 @@ export function PullDetailActivitySection({
)} - {comments && commits && comments.length === 0 && commits.length === 0 && ( -

No activity yet.

- )} + {comments && + commits && + comments.length === 0 && + commits.length === 0 && + (!events || events.length === 0) && ( +

No activity yet.

+ )} {!pr.isMerged && pr.state !== "closed" && ( @@ -949,18 +982,228 @@ function MergeStatusSkeleton() { type TimelineItem = | { type: "comment"; date: string; data: PullComment } - | { type: "commit"; date: string; data: PullCommit }; + | { type: "commit"; date: string; data: PullCommit } + | { type: "event"; date: string; data: TimelineEvent }; + +const WINDOW_THRESHOLD = 25; +const EDGE_SIZE = 10; +const LOAD_MORE_CHUNK = 20; + +function useWindowedTimeline( + items: T[], + pagination?: { + commentPagination?: CommentPagination; + eventPagination?: EventPagination; + pageQueryKey: readonly unknown[]; + owner: string; + repo: string; + issueNumber: number; + }, +) { + const queryClient = useQueryClient(); + const [revealedCount, setRevealedCount] = useState(0); + const [isFetchingPage, setIsFetchingPage] = useState(false); + const loadedCommentPagesRef = useRef>(new Set()); + const loadedEventPagesRef = useRef>(new Set()); + const hasMoreEventsRef = useRef( + pagination?.eventPagination?.hasMore ?? false, + ); + + const totalCommentPages = pagination?.commentPagination + ? Math.max( + 1, + Math.ceil( + pagination.commentPagination.totalCount / + pagination.commentPagination.perPage, + ), + ) + : 1; + + // Sync loaded pages from pagination data + if (pagination?.commentPagination) { + for (const p of pagination.commentPagination.loadedPages) { + loadedCommentPagesRef.current.add(p); + } + } + if (pagination?.eventPagination) { + for (const p of pagination.eventPagination.loadedPages) { + loadedEventPagesRef.current.add(p); + } + hasMoreEventsRef.current = pagination.eventPagination.hasMore; + } + + const hasUnfetchedCommentPages = + totalCommentPages > 1 && + loadedCommentPagesRef.current.size < totalCommentPages; + const hasUnfetchedEventPages = hasMoreEventsRef.current; + const hasUnfetchedPages = hasUnfetchedCommentPages || hasUnfetchedEventPages; + + const needsWindowing = items.length > WINDOW_THRESHOLD || hasUnfetchedPages; + + const clientHiddenCount = needsWindowing + ? Math.max(0, items.length - EDGE_SIZE * 2 - revealedCount) + : 0; + + const hiddenCount = clientHiddenCount; + + const visibleItems = + needsWindowing && clientHiddenCount > 0 + ? [ + ...items.slice(0, EDGE_SIZE + revealedCount), + ...items.slice(items.length - EDGE_SIZE), + ] + : items; + + const showLoadMore = needsWindowing && (hiddenCount > 0 || hasUnfetchedPages); + const loadMoreIndex = showLoadMore ? EDGE_SIZE + revealedCount : -1; + + const loadMore = useCallback(() => { + // If we have client-side hidden items, reveal a chunk first + if (clientHiddenCount > 0) { + setRevealedCount((prev) => prev + LOAD_MORE_CHUNK); + return; + } + + if (!pagination) return; + + // Fetch next comment page or event page + const hasMoreComments = hasUnfetchedCommentPages; + const hasMoreEvents = hasUnfetchedEventPages; + + if (!hasMoreComments && !hasMoreEvents) return; + + setIsFetchingPage(true); + + const fetches: Promise[] = []; + + // Fetch next comment page + if (hasMoreComments) { + let nextPage = -1; + for (let p = 2; p < totalCommentPages; p++) { + if (!loadedCommentPagesRef.current.has(p)) { + nextPage = p; + break; + } + } + if (nextPage !== -1) { + fetches.push( + getCommentPage({ + data: { + owner: pagination.owner, + repo: pagination.repo, + issueNumber: pagination.issueNumber, + page: nextPage, + }, + }).then((result) => { + const newComments = result.comments; + loadedCommentPagesRef.current.add(nextPage); + queryClient.setQueryData( + pagination.pageQueryKey, + (prev: PullPageData | undefined) => { + if (!prev) return prev; + const existingIds = new Set(prev.comments.map((c) => c.id)); + const uniqueNew = newComments.filter( + (c) => !existingIds.has(c.id), + ); + return { + ...prev, + comments: [...prev.comments, ...uniqueNew], + commentPagination: { + ...prev.commentPagination, + loadedPages: [...loadedCommentPagesRef.current], + }, + }; + }, + ); + }), + ); + } + } + + // Fetch next event page + if (hasMoreEvents) { + const nextEventPage = Math.max(...loadedEventPagesRef.current, 0) + 1; + fetches.push( + getTimelineEventPage({ + data: { + owner: pagination.owner, + repo: pagination.repo, + issueNumber: pagination.issueNumber, + page: nextEventPage, + }, + }).then((result) => { + loadedEventPagesRef.current.add(nextEventPage); + hasMoreEventsRef.current = result.hasMore; + queryClient.setQueryData( + pagination.pageQueryKey, + (prev: PullPageData | undefined) => { + if (!prev) return prev; + const existingKeys = new Set( + prev.events.map((e) => `${e.event}-${e.id}-${e.createdAt}`), + ); + const uniqueNew = result.events.filter( + (e) => !existingKeys.has(`${e.event}-${e.id}-${e.createdAt}`), + ); + return { + ...prev, + events: [...prev.events, ...uniqueNew], + eventPagination: { + loadedPages: [...loadedEventPagesRef.current], + hasMore: result.hasMore, + }, + }; + }, + ); + }), + ); + } + + Promise.all(fetches).finally(() => { + setIsFetchingPage(false); + }); + }, [ + clientHiddenCount, + pagination, + hasUnfetchedCommentPages, + hasUnfetchedEventPages, + totalCommentPages, + queryClient, + ]); + + return { + visibleItems, + hiddenCount, + hasMorePages: hasUnfetchedPages, + loadMoreIndex, + loadMore, + isFetchingPage, + }; +} function ActivityTimeline({ comments, commits, + events, pr, + commentPagination, + eventPagination, + pageQueryKey, + owner, + repo, + pullNumber, }: { comments: PullComment[]; commits: PullCommit[]; + events: TimelineEvent[]; pr: PullDetail; + commentPagination?: CommentPagination; + eventPagination?: EventPagination; + pageQueryKey: readonly unknown[]; + owner: string; + repo: string; + pullNumber: number; }) { - const items: TimelineItem[] = [ + const allItems: TimelineItem[] = [ ...comments.map((comment) => ({ type: "comment" as const, date: comment.createdAt, @@ -971,87 +1214,148 @@ function ActivityTimeline({ date: commit.createdAt, data: commit, })), + ...events + .filter((event) => !(event.event === "closed" && pr.isMerged)) + .map((event) => ({ + type: "event" as const, + date: event.createdAt, + data: event, + })), ].sort((a, b) => new Date(a.date).getTime() - new Date(b.date).getTime()); - if (items.length === 0 && !pr.isMerged) return null; + const { + visibleItems, + hiddenCount, + hasMorePages, + loadMoreIndex, + loadMore, + isFetchingPage, + } = useWindowedTimeline(allItems, { + commentPagination, + eventPagination, + pageQueryKey, + owner, + repo, + issueNumber: pullNumber, + }); + + if (visibleItems.length === 0 && !pr.isMerged) return null; return (
- {items.map((item, index) => { - const previousType = index > 0 ? items[index - 1].type : null; + {visibleItems.map((item, index) => { + const previousType = index > 0 ? visibleItems[index - 1].type : null; const nextType = - index < items.length - 1 ? items[index + 1].type : null; + index < visibleItems.length - 1 ? visibleItems[index + 1].type : null; const isConsecutiveCommit = item.type === "commit" && previousType === "commit"; const isLastInCommitRun = item.type === "commit" && nextType !== "commit"; + const isConsecutiveEvent = + item.type === "event" && previousType === "event"; + const isLastInEventRun = item.type === "event" && nextType !== "event"; - if (item.type === "comment") { - const comment = item.data; - return ( -
-
- {comment.author ? ( + const row = (() => { + if (item.type === "comment") { + const comment = item.data; + return ( +
+
+ {comment.author ? ( + {comment.author.login} + ) : ( +
+ )} + + {comment.author?.login ?? "Unknown"} + + + {formatRelativeTime(comment.createdAt)} + +
+ + {comment.body} + +
+ ); + } + + if (item.type === "commit") { + const commit = item.data; + const firstLine = commit.message.split("\n")[0]; + return ( +
+
+ +
+ {commit.author ? ( {comment.author.login} ) : ( -
+
)} - - {comment.author?.login ?? "Unknown"} + + {firstLine} - - {formatRelativeTime(comment.createdAt)} + + {commit.sha.slice(0, 7)} + + + {formatRelativeTime(commit.createdAt)}
- - {comment.body} - -
+ ); + } + + const event = item.data; + return ( + ); - } + })(); - const commit = item.data; - const firstLine = commit.message.split("\n")[0]; return ( -
-
- -
- {commit.author ? ( - {commit.author.login} + {index === loadMoreIndex && ( + - ) : ( -
)} - {firstLine} - - {commit.sha.slice(0, 7)} - - - {formatRelativeTime(commit.createdAt)} - -
+ {row} + ); })} {pr.isMerged && pr.mergedAt && ( @@ -1068,7 +1372,7 @@ function ActivityTimeline({ ) : (
)} - + {pr.mergedBy?.login ?? "Unknown"} @@ -1083,7 +1387,7 @@ function ActivityTimeline({ {pr.baseRefName} - + {formatRelativeTime(pr.mergedAt)}
@@ -1091,3 +1395,414 @@ function ActivityTimeline({
); } + +function LoadMoreDivider({ + hiddenCount, + hasMorePages, + isPending, + onLoadMore, +}: { + hiddenCount: number; + hasMorePages?: boolean; + isPending?: boolean; + onLoadMore: () => void; +}) { + const label = + hiddenCount > 0 + ? `${hiddenCount}${hasMorePages ? "+" : ""} more ${hiddenCount === 1 && !hasMorePages ? "item" : "items"}` + : "Load more"; + + return ( +
+
+ +
+
+ ); +} + +// ── Timeline event row ────────────────────────────────────────────── + +function TimelineEventRow({ + event, + isFirst, + isConsecutive, + isLastInRun, +}: { + event: TimelineEvent; + isFirst: boolean; + isConsecutive: boolean; + isLastInRun: boolean; +}) { + const icon = getEventIcon(event); + const description = getEventDescription(event); + const isCrossRef = + event.event === "cross-referenced" || event.event === "referenced"; + const hasActorAvatar = !isCrossRef && event.actor?.avatarUrl; + + if (!description) return null; + + return ( +
+ {hasActorAvatar ? ( + {event.actor?.login} + ) : ( +
+ {icon} +
+ )} + + {description} + + {event.createdAt && ( + + {formatRelativeTime(event.createdAt)} + + )} +
+ ); +} + +function getEventIcon(event: TimelineEvent) { + switch (event.event) { + case "labeled": + case "unlabeled": + return ( + + ); + case "assigned": + case "unassigned": + return ( + + ); + case "review_requested": + case "review_request_removed": + return ( + + ); + case "reviewed": + return ( + + ); + case "renamed": + return ( + + ); + case "closed": + return ( + + ); + case "reopened": + return ( + + ); + case "cross-referenced": + case "referenced": + return ( + + ); + case "milestoned": + case "demilestoned": + return ( + + ); + case "convert_to_draft": + return ( + + ); + case "ready_for_review": + return ( + + ); + default: + return ( + + ); + } +} + +function ActorMention({ + actor, + hideAvatar, +}: { + actor: { login: string; avatarUrl?: string } | null | undefined; + hideAvatar?: boolean; +}) { + const login = actor?.login ?? "someone"; + return ( + + {!hideAvatar && actor?.avatarUrl && ( + {login} + )} + {login} + + ); +} + +function getEventDescription(event: TimelineEvent): React.ReactNode { + const reviewer = + event.requestedReviewer ?? + (event.requestedTeam ? { login: event.requestedTeam.name } : null); + + switch (event.event) { + case "labeled": + return ( + + + {" added "} + {event.label && ( + + )} + + ); + case "unlabeled": + return ( + + + {" removed "} + {event.label && ( + + )} + + ); + case "assigned": + return ( + + + {" assigned "} + + + ); + case "unassigned": + return ( + + + {" unassigned "} + + + ); + case "review_requested": + return ( + + + {" requested review from "} + + + ); + case "review_request_removed": + return ( + + + {" removed review request for "} + + + ); + case "reviewed": { + const state = event.reviewState?.toLowerCase(); + const stateLabel = + state === "approved" + ? "approved" + : state === "changes_requested" + ? "requested changes" + : "reviewed"; + return ( + + + {` ${stateLabel}`} + + ); + } + case "renamed": + return ( + + + {" changed the title from "} + {event.rename?.from} + {" to "} + + {event.rename?.to} + + + ); + case "closed": + return ( + + + {" closed this"} + + ); + case "reopened": + return ( + + + {" reopened this"} + + ); + case "cross-referenced": + case "referenced": { + if (!event.source) return null; + const prefix = event.source.type === "pull_request" ? "PR" : "Issue"; + return ( + + + {" mentioned this in "} + + {event.source.repository + ? `${event.source.repository}#${event.source.number}` + : `${prefix} #${event.source.number}`} + + {event.source.title} + + ); + } + case "milestoned": + return ( + + + {" added this to the "} + + {event.milestone?.title} + + {" milestone"} + + ); + case "demilestoned": + return ( + + + {" removed this from the "} + + {event.milestone?.title} + + {" milestone"} + + ); + case "convert_to_draft": + return ( + + + {" marked this as a draft"} + + ); + case "ready_for_review": + return ( + + + {" marked this as ready for review"} + + ); + default: + return null; + } +} diff --git a/apps/dashboard/src/components/pulls/detail/pull-detail-page.tsx b/apps/dashboard/src/components/pulls/detail/pull-detail-page.tsx index c6f7251..d779a75 100644 --- a/apps/dashboard/src/components/pulls/detail/pull-detail-page.tsx +++ b/apps/dashboard/src/components/pulls/detail/pull-detail-page.tsx @@ -7,6 +7,7 @@ import { } from "#/components/details/detail-page"; import { githubPullPageQueryOptions, + githubQueryKeys, githubViewerQueryOptions, } from "#/lib/github.query"; import { useHasMounted } from "#/lib/use-has-mounted"; @@ -37,6 +38,9 @@ export function PullDetailPage() { const pr = pageQuery.data?.detail; const comments = pageQuery.data?.comments; const commits = pageQuery.data?.commits; + const events = pageQuery.data?.events; + const commentPagination = pageQuery.data?.commentPagination; + const eventPagination = pageQuery.data?.eventPagination; const viewer = viewerQuery.data ?? null; useRegisterTab( @@ -79,6 +83,14 @@ export function PullDetailPage() { >(); - type WorkerEnvRecord = typeof env & Record; -type GitHubAccountRecord = typeof account.$inferSelect; - -type GitHubTokenRefreshSuccess = { - access_token: string; - expires_in?: number; - refresh_token?: string; - refresh_token_expires_in?: number; - scope?: string; -}; - -type GitHubTokenRefreshFailure = { - error: string; - error_description?: string; -}; function getWorkerEnv() { return env as WorkerEnvRecord; @@ -33,114 +14,53 @@ function pickFirstNonEmpty(...values: Array) { return values.find((value) => typeof value === "string" && value.length > 0); } -function toFutureDate(seconds?: number) { - if ( - typeof seconds !== "number" || - !Number.isFinite(seconds) || - seconds <= 0 - ) { - return null; - } - - return new Date(Date.now() + seconds * 1_000); -} - -function needsGitHubAccessTokenRefresh(githubAccount: GitHubAccountRecord) { - if (!githubAccount.accessTokenExpiresAt) { - return false; - } - - return ( - githubAccount.accessTokenExpiresAt.getTime() <= - Date.now() + GITHUB_TOKEN_REFRESH_BUFFER_MS - ); -} - -export function getGitHubAppAuthConfig() { +/** + * Returns the classic OAuth App credentials used for user authentication. + * OAuth App tokens support scopes (e.g. `repo`) and don't expire. + */ +export function getGitHubOAuthConfig() { const workerEnv = getWorkerEnv(); const clientId = pickFirstNonEmpty( - workerEnv.GITHUB_APP_CLIENT_ID, + workerEnv.GITHUB_OAUTH_CLIENT_ID, workerEnv.GITHUB_CLIENT_ID, ); const clientSecret = pickFirstNonEmpty( - workerEnv.GITHUB_APP_CLIENT_SECRET, + workerEnv.GITHUB_OAUTH_CLIENT_SECRET, workerEnv.GITHUB_CLIENT_SECRET, ); if (!clientId || !clientSecret) { throw new Error( - "Missing GitHub app credentials. Set GITHUB_APP_CLIENT_ID and GITHUB_APP_CLIENT_SECRET.", + "Missing GitHub OAuth credentials. Set GITHUB_OAUTH_CLIENT_ID and GITHUB_OAUTH_CLIENT_SECRET.", ); } - return { - clientId, - clientSecret, - }; + return { clientId, clientSecret }; } -export function getGitHubAppSlug(): string | null { - return pickFirstNonEmpty(getWorkerEnv().GITHUB_APP_SLUG) ?? null; -} - -export function getGitHubWebhookSecret() { - return pickFirstNonEmpty(getWorkerEnv().GITHUB_WEBHOOK_SECRET) ?? null; -} - -async function refreshGitHubAccessToken(githubAccount: GitHubAccountRecord) { - const { clientId, clientSecret } = getGitHubAppAuthConfig(); +/** + * Returns the GitHub App credentials used for webhooks and installation management. + */ +export function getGitHubAppAuthConfig() { + const workerEnv = getWorkerEnv(); + const clientId = pickFirstNonEmpty(workerEnv.GITHUB_APP_CLIENT_ID); + const clientSecret = pickFirstNonEmpty(workerEnv.GITHUB_APP_CLIENT_SECRET); - if (!githubAccount.refreshToken) { + if (!clientId || !clientSecret) { throw new Error( - "GitHub access token expired and no refresh token is available.", + "Missing GitHub App credentials. Set GITHUB_APP_CLIENT_ID and GITHUB_APP_CLIENT_SECRET.", ); } - const body = new URLSearchParams({ - client_id: clientId, - client_secret: clientSecret, - grant_type: "refresh_token", - refresh_token: githubAccount.refreshToken, - }); - - const response = await fetch(GITHUB_ACCESS_TOKEN_ENDPOINT, { - method: "POST", - headers: { - accept: "application/json", - "content-type": "application/x-www-form-urlencoded", - }, - body: body.toString(), - }); - - const payload = (await response.json()) as - | GitHubTokenRefreshSuccess - | GitHubTokenRefreshFailure; - - if (!response.ok || "error" in payload || !payload.access_token) { - throw new Error( - "error" in payload - ? `GitHub token refresh failed: ${payload.error}` - : "GitHub token refresh failed.", - ); - } + return { clientId, clientSecret }; +} - const db = getDb(); - await db - .update(account) - .set({ - accessToken: payload.access_token, - refreshToken: payload.refresh_token ?? githubAccount.refreshToken, - accessTokenExpiresAt: - toFutureDate(payload.expires_in) ?? githubAccount.accessTokenExpiresAt, - refreshTokenExpiresAt: - toFutureDate(payload.refresh_token_expires_in) ?? - githubAccount.refreshTokenExpiresAt, - scope: payload.scope ?? githubAccount.scope, - updatedAt: new Date(), - }) - .where(eq(account.id, githubAccount.id)); - - return payload.access_token; +export function getGitHubAppSlug(): string | null { + return pickFirstNonEmpty(getWorkerEnv().GITHUB_APP_SLUG) ?? null; +} + +export function getGitHubWebhookSecret() { + return pickFirstNonEmpty(getWorkerEnv().GITHUB_WEBHOOK_SECRET) ?? null; } export async function getGitHubAccessTokenByUserId(userId: string) { @@ -155,22 +75,7 @@ export async function getGitHubAccessTokenByUserId(userId: string) { throw new Error("No GitHub account linked"); } - if (!needsGitHubAccessTokenRefresh(githubAccount)) { - return githubAccount.accessToken; - } - - const existingRefresh = githubTokenRefreshes.get(githubAccount.id); - if (existingRefresh) { - return existingRefresh; - } - - const refreshTask = refreshGitHubAccessToken(githubAccount).finally(() => { - githubTokenRefreshes.delete(githubAccount.id); - }); - - githubTokenRefreshes.set(githubAccount.id, refreshTask); - - return refreshTask; + return githubAccount.accessToken; } function fromHex(hex: string) { diff --git a/apps/dashboard/src/lib/github.functions.ts b/apps/dashboard/src/lib/github.functions.ts index 2918708..91ad1ce 100644 --- a/apps/dashboard/src/lib/github.functions.ts +++ b/apps/dashboard/src/lib/github.functions.ts @@ -28,6 +28,7 @@ import type { RequestReviewersInput, SetLabelsInput, SubmitReviewInput, + TimelineEvent, UserRepoSummary, } from "./github.types"; import { @@ -882,6 +883,370 @@ async function getPullCommitsResult( }); } +const COMMENTS_PER_PAGE = 30; + +type CommentPageInput = { + owner: string; + repo: string; + issueNumber: number; + page: number; +}; + +async function getCommentsPageResult( + context: GitHubContext, + data: CommentPageInput, +): Promise<{ + comments: Array<{ + id: number; + body: string; + createdAt: string; + author: GitHubActor | null; + }>; + total: number; +}> { + const response = await context.octokit.rest.issues.listComments({ + owner: data.owner, + repo: data.repo, + issue_number: data.issueNumber, + per_page: COMMENTS_PER_PAGE, + page: data.page, + }); + + const linkHeader = response.headers.link ?? ""; + let total = response.data.length + (data.page - 1) * COMMENTS_PER_PAGE; + const lastMatch = linkHeader.match(/[&?]page=(\d+)[^>]*>;\s*rel="last"/); + if (lastMatch) { + total = Number(lastMatch[1]) * COMMENTS_PER_PAGE; + } + + return { + comments: response.data.map((c) => ({ + id: c.id, + body: c.body ?? "", + createdAt: c.created_at, + author: c.user + ? { + login: c.user.login, + avatarUrl: c.user.avatar_url, + url: c.user.html_url, + type: c.user.type ?? "User", + } + : null, + })), + total, + }; +} + +const TIMELINE_EVENT_TYPES = new Set([ + "labeled", + "unlabeled", + "assigned", + "unassigned", + "review_requested", + "review_request_removed", + "renamed", + "closed", + "reopened", + "milestoned", + "demilestoned", + "cross-referenced", + "referenced", + "reviewed", + "convert_to_draft", + "ready_for_review", +]); + +function mapTimelineEvents(rawEvents: unknown[]): TimelineEvent[] { + return rawEvents + .filter((e) => { + const event = (e as Record).event as string | undefined; + return event && TIMELINE_EVENT_TYPES.has(event); + }) + .map((e) => { + const raw = e as Record; + const actor = raw.actor as Record | null | undefined; + const label = raw.label as Record | null | undefined; + const assignee = raw.assignee as + | Record + | null + | undefined; + const reviewer = raw.requested_reviewer as + | Record + | null + | undefined; + const team = raw.requested_team as + | Record + | null + | undefined; + const rename = raw.rename as Record | null | undefined; + const milestone = raw.milestone as + | Record + | null + | undefined; + const source = raw.source as Record | null | undefined; + + let mappedSource: TimelineEvent["source"] = null; + if (source) { + const issue = source.issue as Record | undefined; + if (issue) { + const repo = issue.repository as Record | undefined; + mappedSource = { + type: issue.pull_request ? "pull_request" : "issue", + number: issue.number as number, + title: (issue.title as string) ?? "", + state: (issue.state as string) ?? "", + url: (issue.html_url as string) ?? "", + repository: (repo?.full_name as string) ?? null, + }; + } + } + + return { + id: (raw.id as number) ?? 0, + event: raw.event as string, + createdAt: (raw.created_at as string) ?? "", + actor: actor + ? { + login: (actor.login as string) ?? "", + avatarUrl: (actor.avatar_url as string) ?? "", + url: (actor.html_url as string) ?? "", + type: (actor.type as string) ?? "User", + } + : null, + label: label + ? { + name: (label.name as string) ?? "", + color: (label.color as string) ?? "", + } + : undefined, + assignee: assignee + ? { + login: (assignee.login as string) ?? "", + avatarUrl: (assignee.avatar_url as string) ?? "", + url: (assignee.html_url as string) ?? "", + type: (assignee.type as string) ?? "User", + } + : undefined, + requestedReviewer: reviewer + ? { + login: (reviewer.login as string) ?? "", + avatarUrl: (reviewer.avatar_url as string) ?? "", + url: (reviewer.html_url as string) ?? "", + type: (reviewer.type as string) ?? "User", + } + : undefined, + requestedTeam: team + ? { + name: (team.name as string) ?? "", + slug: (team.slug as string) ?? "", + } + : undefined, + rename: rename + ? { + from: (rename.from as string) ?? "", + to: (rename.to as string) ?? "", + } + : undefined, + milestone: milestone + ? { title: (milestone.title as string) ?? "" } + : undefined, + source: mappedSource, + reviewState: (raw.state as string) ?? undefined, + body: (raw.body as string) ?? undefined, + }; + }); +} + +type GraphQLCrossRefResponse = { + repository: { + issueOrPullRequest: { + timelineItems: { + nodes: Array<{ + actor: { login: string; avatarUrl: string; url: string } | null; + createdAt: string; + source: { + __typename: string; + number: number; + title: string; + state: string; + url: string; + repository: { nameWithOwner: string }; + }; + }>; + }; + } | null; + }; +}; + +async function getCrossReferencesViaGraphQL( + context: GitHubContext, + data: { owner: string; repo: string; issueNumber: number }, +): Promise { + try { + const response = await context.octokit.graphql( + `query ($owner: String!, $repo: String!, $number: Int!) { + repository(owner: $owner, name: $repo) { + issueOrPullRequest(number: $number) { + ... on Issue { + timelineItems(first: 100, itemTypes: [CROSS_REFERENCED_EVENT]) { + nodes { + ... on CrossReferencedEvent { + actor { login avatarUrl url } + createdAt + source { + __typename + ... on Issue { + number title state url + repository { nameWithOwner } + } + ... on PullRequest { + number title state url + repository { nameWithOwner } + } + } + } + } + } + } + ... on PullRequest { + timelineItems(first: 100, itemTypes: [CROSS_REFERENCED_EVENT]) { + nodes { + ... on CrossReferencedEvent { + actor { login avatarUrl url } + createdAt + source { + __typename + ... on Issue { + number title state url + repository { nameWithOwner } + } + ... on PullRequest { + number title state url + repository { nameWithOwner } + } + } + } + } + } + } + } + } + }`, + { + owner: data.owner, + repo: data.repo, + number: data.issueNumber, + }, + ); + + const issueOrPR = response.repository.issueOrPullRequest; + const nodes = issueOrPR?.timelineItems.nodes ?? []; + + return nodes + .filter((node) => node.source) + .map((node) => ({ + id: 0, + event: "cross-referenced", + createdAt: node.createdAt, + actor: node.actor + ? { + login: node.actor.login, + avatarUrl: node.actor.avatarUrl, + url: node.actor.url, + type: "User", + } + : null, + source: { + type: + node.source.__typename === "PullRequest" + ? ("pull_request" as const) + : ("issue" as const), + number: node.source.number, + title: node.source.title, + state: node.source.state.toLowerCase(), + url: node.source.url, + repository: node.source.repository.nameWithOwner, + }, + })); + } catch (error) { + console.error( + "[timeline:graphql] ERROR:", + error instanceof Error ? error.message : error, + ); + return []; + } +} + +const TIMELINE_EVENTS_PER_PAGE = 100; + +type TimelineEventsResult = { + events: TimelineEvent[]; + hasMore: boolean; +}; + +async function getTimelineEventsResult( + context: GitHubContext, + data: { owner: string; repo: string; issueNumber: number }, +): Promise { + const [restResult, crossRefs] = await Promise.all([ + getRestTimelineEventsPage(context, data, 1), + getCrossReferencesViaGraphQL(context, data), + ]); + + const restCrossRefKeys = new Set( + restResult.events + .filter((e) => e.event === "cross-referenced" && e.source) + .map((e) => `${e.source?.repository ?? ""}#${e.source?.number}`), + ); + + const uniqueCrossRefs = crossRefs.filter( + (e) => + !restCrossRefKeys.has( + `${e.source?.repository ?? ""}#${e.source?.number}`, + ), + ); + + return { + events: [...restResult.events, ...uniqueCrossRefs], + hasMore: restResult.hasMore, + }; +} + +async function getRestTimelineEventsPage( + context: GitHubContext, + data: { owner: string; repo: string; issueNumber: number }, + page: number, +): Promise { + try { + const response = await context.octokit.request( + "GET /repos/{owner}/{repo}/issues/{issue_number}/timeline", + { + owner: data.owner, + repo: data.repo, + issue_number: data.issueNumber, + per_page: TIMELINE_EVENTS_PER_PAGE, + page, + headers: { + accept: "application/vnd.github.v3+json", + }, + }, + ); + + const items = response.data as unknown[]; + + return { + events: mapTimelineEvents(items), + hasMore: items.length >= TIMELINE_EVENTS_PER_PAGE, + }; + } catch (error) { + console.error( + "[timeline:rest] ERROR:", + error instanceof Error ? error.message : error, + ); + return { events: [], hasMore: false }; + } +} + async function computePullStatus( context: GitHubContext, data: PullFromRepoInput, @@ -1039,15 +1404,42 @@ async function getPullPageDataResult( freshForMs: githubCachePolicy.detail.staleTimeMs, }); - const [comments, commits] = await Promise.all([ - getPullCommentsResult(context, data), + const totalComments = pull.comments ?? 0; + const totalPages = Math.max(1, Math.ceil(totalComments / COMMENTS_PER_PAGE)); + const issueData = { + owner: data.owner, + repo: data.repo, + issueNumber: data.pullNumber, + }; + + const pagesToFetch = totalPages === 1 ? [1] : [1, totalPages]; + + const [commentsPages, commits, timelineResult] = await Promise.all([ + Promise.all( + pagesToFetch.map((p) => + getCommentsPageResult(context, { ...issueData, page: p }), + ), + ), getPullCommitsResult(context, data), + getTimelineEventsResult(context, issueData), ]); + const allComments = commentsPages.flatMap((p) => p.comments); + return { detail: mapPullDetail(pull, buildRepositoryRef(data.owner, data.repo)), - comments, + comments: allComments, commits, + events: timelineResult.events, + commentPagination: { + totalCount: totalComments, + perPage: COMMENTS_PER_PAGE, + loadedPages: pagesToFetch, + }, + eventPagination: { + loadedPages: [1], + hasMore: timelineResult.hasMore, + }, }; } @@ -1136,14 +1528,42 @@ async function getIssuePageDataResult( context: GitHubContext, data: IssueFromRepoInput, ): Promise { - const [detail, comments] = await Promise.all([ - getIssueDetailResult(context, data), - getIssueCommentsResult(context, data), + const detail = await getIssueDetailResult(context, data); + + const totalComments = detail?.comments ?? 0; + const totalPages = Math.max(1, Math.ceil(totalComments / COMMENTS_PER_PAGE)); + const issueData = { + owner: data.owner, + repo: data.repo, + issueNumber: data.issueNumber, + }; + + const pagesToFetch = totalPages === 1 ? [1] : [1, totalPages]; + + const [commentsPages, timelineResult] = await Promise.all([ + Promise.all( + pagesToFetch.map((p) => + getCommentsPageResult(context, { ...issueData, page: p }), + ), + ), + getTimelineEventsResult(context, issueData), ]); + const allComments = commentsPages.flatMap((p) => p.comments); + return { detail, - comments, + comments: allComments, + events: timelineResult.events, + commentPagination: { + totalCount: totalComments, + perPage: COMMENTS_PER_PAGE, + loadedPages: pagesToFetch, + }, + eventPagination: { + loadedPages: [1], + hasMore: timelineResult.hasMore, + }, }; } @@ -1315,7 +1735,10 @@ export const getGitHubAppAccessState = createServerFn({ const appSlug = getGitHubAppSlug(); const publicInstallUrl = buildGitHubAppInstallUrl(appSlug); + // GET /user/installations requires a GitHub App user-to-server token (ghu_). + // With an OAuth App token (gho_), this endpoint returns 403 — expected behavior. let installations: GitHubAppInstallation[] = []; + let installationsAvailable = false; try { const installationsResponse = await context.octokit.request( "GET /user/installations", @@ -1323,6 +1746,7 @@ export const getGitHubAppAccessState = createServerFn({ per_page: 100, }, ); + installationsAvailable = true; const payload = installationsResponse.data as GitHubUserInstallationsPayload; installations = (payload.installations ?? []).flatMap((installation) => { @@ -1352,8 +1776,8 @@ export const getGitHubAppAccessState = createServerFn({ }, ]; }); - } catch (error) { - console.error("[github-access] failed to load installations", error); + } catch { + // Silently ignored — OAuth App tokens cannot list GitHub App installations. } let organizations: GitHubOrganization[] = []; @@ -1403,6 +1827,7 @@ export const getGitHubAppAccessState = createServerFn({ viewerLogin, appSlug, publicInstallUrl, + installationsAvailable, personalInstallation, orgInstallations, organizations, @@ -1592,6 +2017,35 @@ export const getPullsFromRepo = createServerFn({ method: "GET" }) }); }); +export const getCommentPage = createServerFn({ method: "GET" }) + .inputValidator(identityValidator) + .handler(async ({ data }) => { + const context = await getGitHubContext(); + if (!context) { + return { comments: [], total: 0 }; + } + + return getCommentsPageResult(context, data); + }); + +type TimelineEventPageInput = { + owner: string; + repo: string; + issueNumber: number; + page: number; +}; + +export const getTimelineEventPage = createServerFn({ method: "GET" }) + .inputValidator(identityValidator) + .handler(async ({ data }) => { + const context = await getGitHubContext(); + if (!context) { + return { events: [], hasMore: false }; + } + + return getRestTimelineEventsPage(context, data, data.page); + }); + export const getPullFromRepo = createServerFn({ method: "GET" }) .inputValidator(identityValidator) .handler(async ({ data }): Promise => { diff --git a/apps/dashboard/src/lib/github.query.ts b/apps/dashboard/src/lib/github.query.ts index 1c541df..22ccfce 100644 --- a/apps/dashboard/src/lib/github.query.ts +++ b/apps/dashboard/src/lib/github.query.ts @@ -1,5 +1,6 @@ import { queryOptions } from "@tanstack/react-query"; import { + getCommentPage, getGitHubViewer, getIssueComments, getIssueFromRepo, @@ -20,6 +21,7 @@ import { getPullsFromUser, getRepoCollaborators, getRepoLabels, + getTimelineEventPage, getUserRepos, } from "./github.functions"; import { githubCachePolicy } from "./github-cache-policy"; @@ -140,6 +142,14 @@ export const githubQueryKeys = { ) => ["github", scope.userId, "repoLabels", input] as const, orgTeams: (scope: GitHubQueryScope, org: string) => ["github", scope.userId, "orgTeams", org] as const, + commentPage: ( + scope: GitHubQueryScope, + input: { owner: string; repo: string; issueNumber: number; page: number }, + ) => ["github", scope.userId, "commentPage", input] as const, + timelineEventPage: ( + scope: GitHubQueryScope, + input: { owner: string; repo: string; issueNumber: number; page: number }, + ) => ["github", scope.userId, "timelineEventPage", input] as const, issues: { mine: (scope: GitHubQueryScope) => ["github", scope.userId, "issues", "mine"] as const, @@ -425,3 +435,29 @@ export function githubIssueCommentsQueryOptions( meta: tabPersistedMeta, }); } + +export function githubCommentPageQueryOptions( + scope: GitHubQueryScope, + input: { owner: string; repo: string; issueNumber: number; page: number }, +) { + return queryOptions({ + queryKey: githubQueryKeys.commentPage(scope, input), + queryFn: () => getCommentPage({ data: input }), + staleTime: githubCachePolicy.activity.staleTimeMs, + gcTime: githubCachePolicy.activity.gcTimeMs, + meta: tabPersistedMeta, + }); +} + +export function githubTimelineEventPageQueryOptions( + scope: GitHubQueryScope, + input: { owner: string; repo: string; issueNumber: number; page: number }, +) { + return queryOptions({ + queryKey: githubQueryKeys.timelineEventPage(scope, input), + queryFn: () => getTimelineEventPage({ data: input }), + staleTime: githubCachePolicy.activity.staleTimeMs, + gcTime: githubCachePolicy.activity.gcTimeMs, + meta: tabPersistedMeta, + }); +} diff --git a/apps/dashboard/src/lib/github.types.ts b/apps/dashboard/src/lib/github.types.ts index b878af3..9f23f6c 100644 --- a/apps/dashboard/src/lib/github.types.ts +++ b/apps/dashboard/src/lib/github.types.ts @@ -127,9 +127,35 @@ export type IssueComment = { author: GitHubActor | null; }; +export type TimelineEvent = { + id: number; + event: string; + createdAt: string; + actor: GitHubActor | null; + label?: { name: string; color: string }; + assignee?: GitHubActor | null; + requestedReviewer?: GitHubActor | null; + requestedTeam?: { name: string; slug: string } | null; + rename?: { from: string; to: string }; + source?: { + type: "issue" | "pull_request"; + number: number; + title: string; + state: string; + url: string; + repository: string | null; + } | null; + milestone?: { title: string } | null; + reviewState?: string; + body?: string; +}; + export type IssuePageData = { detail: IssueDetail | null; comments: IssueComment[]; + events: TimelineEvent[]; + commentPagination: CommentPagination; + eventPagination: EventPagination; }; export type PullCheckRun = { @@ -173,10 +199,24 @@ export type PullCommit = { author: GitHubActor | null; }; +export type CommentPagination = { + totalCount: number; + perPage: number; + loadedPages: number[]; +}; + +export type EventPagination = { + loadedPages: number[]; + hasMore: boolean; +}; + export type PullPageData = { detail: PullDetail | null; comments: PullComment[]; commits: PullCommit[]; + events: TimelineEvent[]; + commentPagination: CommentPagination; + eventPagination: EventPagination; }; export type PullFile = { From 5e5144e431703ebbcc630f69f10787f972f9b257 Mon Sep 17 00:00:00 2001 From: Alan Daniel Date: Fri, 10 Apr 2026 18:07:33 -0700 Subject: [PATCH 4/8] Misc UI improvements: merged banner, login page, markdown (#58) * Misc UI changes: merged banner, login cleanup, markdown swap - Add merged branch banner with delete branch CTA on PR detail page - Add deleteBranch server function for GitHub API - Simplify login page: remove features card, use product screenshot - Switch markdown renderer from react-markdown to @m2d/react-markdown - Fix participant avatars wrapping in detail sidebar - Export Delete01Icon from icons package * Format review-file-diff-block with consistent indentation * Revert markdown renderer to react-markdown to fix CF build The @m2d/react-markdown swap caused pnpm to resolve @tanstack/react-start-rsc@0.0.1 which has a broken import of @tanstack/start-plugin-core/utils, failing the CF Workers build. * Switch markdown renderer to @m2d/react-markdown Replaces react-markdown with @m2d/react-markdown for client-side memoization. The previous lockfile resolution issue that pulled in a broken @tanstack/react-start-rsc@0.0.1 is avoided by re-resolving from a clean base. --- apps/dashboard/public/login-preview.png | Bin 0 -> 473123 bytes .../src/components/details/detail-sidebar.tsx | 2 +- .../pulls/detail/pull-detail-activity.tsx | 91 ++++++++++++++++++ .../pulls/review/review-file-diff-block.tsx | 1 + apps/dashboard/src/lib/github.functions.ts | 22 +++++ apps/dashboard/src/routes/login.tsx | 70 ++------------ packages/icons/src/index.ts | 1 + packages/ui/package.json | 2 +- packages/ui/src/components/markdown.tsx | 58 +++++------ pnpm-lock.yaml | 53 ++++------ 10 files changed, 175 insertions(+), 125 deletions(-) create mode 100644 apps/dashboard/public/login-preview.png diff --git a/apps/dashboard/public/login-preview.png b/apps/dashboard/public/login-preview.png new file mode 100644 index 0000000000000000000000000000000000000000..ffe5342400fc2162c748e7ece5fc5b05c4089e98 GIT binary patch literal 473123 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

XMzLabp<0Qm6Q5XWJ!H@bYN!^9?xVtyk9aB^&dr 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%0DprrrYRFB(6 ?iwlYW#6FbbOZ|oAa((Z{q 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
+
{actors.map((actor, index) => ( diff --git a/apps/dashboard/src/components/pulls/detail/pull-detail-activity.tsx b/apps/dashboard/src/components/pulls/detail/pull-detail-activity.tsx index 127a6d7..e7b88ed 100644 --- a/apps/dashboard/src/components/pulls/detail/pull-detail-activity.tsx +++ b/apps/dashboard/src/components/pulls/detail/pull-detail-activity.tsx @@ -3,6 +3,7 @@ import { ChevronDownIcon, ChevronUpIcon, CircleIcon, + Delete01Icon, EditIcon, GitCommitIcon, GitMergeIcon, @@ -40,6 +41,7 @@ import { import { LabelPill } from "#/components/details/label-pill"; import { formatRelativeTime } from "#/lib/format-relative-time"; import { + deleteBranch, dismissPullReview, getCommentPage, getTimelineEventPage, @@ -160,6 +162,16 @@ export function PullDetailActivitySection({
)} + {pr.isMerged && ( +
+ +
+ )} +
@@ -199,6 +211,85 @@ function MergeStatusSection({ ); } +function MergedBranchBanner({ + owner, + repo, + branchName, +}: { + owner: string; + repo: string; + branchName: string; +}) { + const [isDeleting, setIsDeleting] = useState(false); + const [isDeleted, setIsDeleted] = useState(false); + + const handleDelete = async () => { + setIsDeleting(true); + try { + const result = await deleteBranch({ + data: { owner, repo, branch: branchName }, + }); + if (result.ok) { + setIsDeleted(true); + } else { + toast.error(result.error); + checkPermissionWarning(result, `${owner}/${repo}`); + setIsDeleting(false); + } + } catch { + toast.error("Failed to delete branch"); + setIsDeleting(false); + } + }; + + return ( +
+
+ +
+

+ {isDeleted ? ( + <> + Branch{" "} + + {branchName} + {" "} + has been deleted. + + ) : ( + <> + Branch{" "} + + {branchName} + {" "} + has been merged. + + )} +

+ {!isDeleted && ( + + )} +
+ ); +} + function MergeStatusCard({ status, owner, diff --git a/apps/dashboard/src/components/pulls/review/review-file-diff-block.tsx b/apps/dashboard/src/components/pulls/review/review-file-diff-block.tsx index d0bdc33..444b518 100644 --- a/apps/dashboard/src/components/pulls/review/review-file-diff-block.tsx +++ b/apps/dashboard/src/components/pulls/review/review-file-diff-block.tsx @@ -157,6 +157,7 @@ export const ReviewFileDiffBlock = memo(function ReviewFileDiffBlock({ `[data-utility-button] { background-color: ${mutedFg}; }`, `[data-line-annotation] { font-family: 'Inter Variable', 'Inter', 'Avenir Next', ui-sans-serif, system-ui, sans-serif; }`, `[data-line-annotation] code { font-family: var(--diffs-font-family, var(--diffs-font-fallback)); }`, + `[data-diff] { border: 1px solid var(--border); border-top: 0; border-radius: 4px; border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; overflow: hidden; }`, isDark ? `:host { --diffs-bg-addition-override: color-mix(in lab, var(--diffs-bg) 92%, var(--diffs-addition-base)); --diffs-bg-addition-number-override: color-mix(in lab, var(--diffs-bg) 88%, var(--diffs-addition-base)); --diffs-bg-addition-emphasis-override: color-mix(in lab, var(--diffs-bg) 75%, var(--diffs-addition-base)); --diffs-bg-deletion-override: color-mix(in lab, var(--diffs-bg) 92%, var(--diffs-deletion-base)); --diffs-bg-deletion-number-override: color-mix(in lab, var(--diffs-bg) 88%, var(--diffs-deletion-base)); --diffs-bg-deletion-emphasis-override: color-mix(in lab, var(--diffs-bg) 75%, var(--diffs-deletion-base)); }` : `:host { --diffs-bg-addition-override: color-mix(in lab, var(--diffs-bg) 82%, var(--diffs-addition-base)); --diffs-bg-addition-number-override: color-mix(in lab, var(--diffs-bg) 78%, var(--diffs-addition-base)); --diffs-bg-deletion-override: color-mix(in lab, var(--diffs-bg) 82%, var(--diffs-deletion-base)); --diffs-bg-deletion-number-override: color-mix(in lab, var(--diffs-bg) 78%, var(--diffs-deletion-base)); }`, diff --git a/apps/dashboard/src/lib/github.functions.ts b/apps/dashboard/src/lib/github.functions.ts index 91ad1ce..f2fd2f7 100644 --- a/apps/dashboard/src/lib/github.functions.ts +++ b/apps/dashboard/src/lib/github.functions.ts @@ -2325,6 +2325,28 @@ export const mergePullRequest = createServerFn({ method: "POST" }) } }); +export const deleteBranch = createServerFn({ method: "POST" }) + .inputValidator( + identityValidator<{ owner: string; repo: string; branch: string }>, + ) + .handler(async ({ data }): Promise => { + const context = await getGitHubContext(); + if (!context) { + return { ok: false, error: "Not authenticated" }; + } + + try { + await context.octokit.rest.git.deleteRef({ + owner: data.owner, + repo: data.repo, + ref: `heads/${data.branch}`, + }); + return { ok: true }; + } catch (error) { + return toMutationError("delete branch", error); + } + }); + async function getPullFilesResult( context: GitHubContext, data: PullFilesPageInput, diff --git a/apps/dashboard/src/routes/login.tsx b/apps/dashboard/src/routes/login.tsx index bcd2746..97690d1 100644 --- a/apps/dashboard/src/routes/login.tsx +++ b/apps/dashboard/src/routes/login.tsx @@ -64,7 +64,7 @@ function LoginPage() { DiffKit

- Review workspace + Beta version

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 literal 0 HcmV?d00001 diff --git a/apps/dashboard/src/components/details/detail-sidebar.tsx b/apps/dashboard/src/components/details/detail-sidebar.tsx index f56e19f..a14e44f 100644 --- a/apps/dashboard/src/components/details/detail-sidebar.tsx +++ b/apps/dashboard/src/components/details/detail-sidebar.tsx @@ -64,7 +64,7 @@ export function DetailParticipantAvatars({ }>; }) { return ( -

@@ -74,11 +74,6 @@ function LoginPage() {

Review your GitHub work in one place

-

- DiffKit pulls together open pull requests, assigned issues, - and pending code reviews into one fast workspace so you can - move through GitHub work without tab sprawl. -

- -
-

- What DiffKit helps you do -

-
    -
  • - Track pull requests across repositories from one queue. -
  • -
  • - See assigned issues, mentions, and review requests together. -
  • -
  • - Open diffs, comments, and issue details without context - switching. -
  • -
-
@@ -122,54 +99,21 @@ function LoginPage() { aria-hidden="true" className="size-1.5 rounded-full bg-border" /> -

Simple now, room to layer more later.

+

Your GitHub activity, one dashboard away.

-
-
-

- Developer workflow -

-

- A calmer way to triage PRs, issues, and review requests. -

-

- Use one dashboard for GitHub queues, detailed pull request - views, issue threads, and code review context. -

-
- -
- - - -
-
+ DiffKit dashboard preview
); } - -function FeaturePanel({ label, value }: { label: string; value: string }) { - return ( -
-

{label}

-

{value}

-
- ); -} diff --git a/packages/icons/src/index.ts b/packages/icons/src/index.ts index 25da882..5f5b001 100644 --- a/packages/icons/src/index.ts +++ b/packages/icons/src/index.ts @@ -22,6 +22,7 @@ export { ComputerIcon as SystemIcon, Copy01Icon as CopyIcon, DashboardSquare01Icon as DashboardIcon, + Delete01Icon, DragDropVerticalIcon as GripVerticalIcon, File02Icon as FileIcon, Folder01Icon as FolderIcon, diff --git a/packages/ui/package.json b/packages/ui/package.json index 3e73e45..7b21c88 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -19,6 +19,7 @@ "@diffkit/icons": "workspace:*", "@fontsource-variable/geist-mono": "^5.2.7", "@fontsource-variable/inter": "^5.2.8", + "@m2d/react-markdown": "^1.0.0", "@radix-ui/react-alert-dialog": "^1.1.6", "@radix-ui/react-avatar": "^1.1.3", "@radix-ui/react-checkbox": "^1.1.4", @@ -43,7 +44,6 @@ "next-themes": "^0.4.4", "react-day-picker": "8.10.1", "react-hook-form": "^7.54.2", - "react-markdown": "^10.1.0", "react-resizable-panels": "^3.0.3", "rehype-raw": "^7.0.0", "remark-gfm": "^4.0.1", diff --git a/packages/ui/src/components/markdown.tsx b/packages/ui/src/components/markdown.tsx index 1e7b54f..8e85839 100644 --- a/packages/ui/src/components/markdown.tsx +++ b/packages/ui/src/components/markdown.tsx @@ -1,6 +1,5 @@ +import { Md } from "@m2d/react-markdown/client"; import { Suspense, use, useCallback, useRef, useState } from "react"; -import type { Components } from "react-markdown"; -import ReactMarkdown from "react-markdown"; import rehypeRaw from "rehype-raw"; import remarkGfm from "remark-gfm"; import type { BundledLanguage, Highlighter } from "shiki"; @@ -152,8 +151,9 @@ function ShikiCode({ code, lang }: { code: string; lang: string }) { ); } -const components: Components = { - h1: ({ children, ...props }) => ( +// eslint-disable-next-line @typescript-eslint/no-explicit-any -- component overrides receive union props from @m2d/react-markdown +const components: Record> = { + h1: ({ node: _, children, ...props }) => (

), - h2: ({ children, ...props }) => ( + h2: ({ node: _, children, ...props }) => (

), - h3: ({ children, ...props }) => ( + h3: ({ node: _, children, ...props }) => (

), - h4: ({ children, ...props }) => ( + h4: ({ node: _, children, ...props }) => (

{children}

), - p: ({ children, ...props }) => ( + p: ({ node: _, children, ...props }) => (

{children}

), - a: ({ children, href, ...props }) => ( + a: ({ node: _, children, href, ...props }) => (
), - ul: ({ children, ...props }) => ( + ul: ({ node: _, children, ...props }) => (
    ), - ol: ({ children, ...props }) => ( + ol: ({ node: _, children, ...props }) => (
      ), - li: ({ children, ...props }) => ( + li: ({ node: _, children, ...props }) => (
    1. {children}
    2. ), - blockquote: ({ children, ...props }) => ( + blockquote: ({ node: _, children, ...props }) => (
      ), - code: ({ children, className, ...props }) => { + code: ({ node: _, children, className, ...props }) => { const langMatch = className?.match(/language-(\w+)/); if (langMatch) { const code = String(children).replace(/\n$/, ""); @@ -263,27 +263,29 @@ const components: Components = { ); }, - hr: (props) =>
      , - img: ({ alt, ...props }) => ( + hr: ({ node: _, ...props }) => ( +
      + ), + img: ({ node: _, alt, ...props }) => ( {alt} ), - table: ({ children, ...props }) => ( + table: ({ node: _, children, ...props }) => (
      {children}
      ), - thead: ({ children, ...props }) => ( + thead: ({ node: _, children, ...props }) => ( {children} ), - th: ({ children, ...props }) => ( + th: ({ node: _, children, ...props }) => ( ), - td: ({ children, ...props }) => ( + td: ({ node: _, children, ...props }) => ( ), - input: ({ type, checked, ...props }) => { + input: ({ node: _, type, checked, ...props }) => { if (type === "checkbox") { return ( ; }, - strong: ({ children, ...props }) => ( + strong: ({ node: _, children, ...props }) => ( {children} ), - em: ({ children, ...props }) => ( + em: ({ node: _, children, ...props }) => ( {children} ), - del: ({ children, ...props }) => ( + del: ({ node: _, children, ...props }) => ( {children} ), - details: ({ children, ...props }) => ( + details: ({ node: _, children, ...props }) => (
      ), - summary: ({ children, ...props }) => ( + summary: ({ node: _, children, ...props }) => ( - {children} - +
); } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 66f30d1..43da355 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -183,6 +183,9 @@ importers: '@fontsource-variable/inter': specifier: ^5.2.8 version: 5.2.8 + '@m2d/react-markdown': + specifier: ^1.0.0 + version: 1.0.0(@types/react@19.2.14)(react@19.2.4) '@radix-ui/react-alert-dialog': specifier: ^1.1.6 version: 1.1.15(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -261,9 +264,6 @@ importers: react-hook-form: specifier: ^7.54.2 version: 7.72.1(react@19.2.4) - react-markdown: - specifier: ^10.1.0 - version: 10.1.0(@types/react@19.2.14)(react@19.2.4) react-resizable-panels: specifier: ^3.0.3 version: 3.0.6(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -1460,6 +1460,12 @@ packages: '@jridgewell/trace-mapping@0.3.9': resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + '@m2d/react-markdown@1.0.0': + resolution: {integrity: sha512-CqbJTHi+SOLwF3JA4xVgMLSL2ZlSg1VIohaMwt/lHs1Wu+jzZ3eu6JZvDFtHSioSiEGYdlcrwbrpugutDSvL+Q==} + peerDependencies: + '@types/react': '>=16.8' + react: '>=16.8' + '@noble/ciphers@2.1.1': resolution: {integrity: sha512-bysYuiVfhxNJuldNXlFEitTVdNnYUc+XNJZd7Qm2a5j1vZHgY+fazadNFWFaMK/2vye0JVlxV3gHmC0WDfAOQw==} engines: {node: '>= 20.19.0'} @@ -3655,9 +3661,6 @@ packages: resolution: {integrity: sha512-CV9TW3Y3f8/wT0BRFc1/KAVQ3TUHiXmaAb6VW9vtiMFf7SLoMd1PdAc4W3KFOFETBJUb90KatHqlsZMWV+R9Gg==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} - html-url-attributes@3.0.1: - resolution: {integrity: sha512-ol6UPyBWqsrO6EJySPz2O7ZSr856WDrEzM5zMqp+FJJLGMW35cLYmmZnl0vztAZxRUoNZJFTCohfjuIJ8I4QBQ==} - html-void-elements@3.0.0: resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} @@ -4204,12 +4207,6 @@ packages: react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} - react-markdown@10.1.0: - resolution: {integrity: sha512-qKxVopLT/TyA6BX3Ue5NwabOsAzm0Q7kAPwq6L+wWDwisYs7R8vZ0nRXqq6rkueboxpkjvLGU9fWifiX/ZZFxQ==} - peerDependencies: - '@types/react': '>=18' - react: '>=18' - react-refresh@0.18.0: resolution: {integrity: sha512-QgT5//D3jfjJb6Gsjxv0Slpj23ip+HtOpnNgnb2S5zU3CB26G/IDPGoy4RJB42wzFE46DRsstbW6tKHoKbhAxw==} engines: {node: '>=0.10.0'} @@ -5669,6 +5666,18 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.5 + '@m2d/react-markdown@1.0.0(@types/react@19.2.14)(react@19.2.4)': + dependencies: + '@types/react': 19.2.14 + hast-util-to-jsx-runtime: 2.3.6 + react: 19.2.4 + remark-parse: 11.0.0 + remark-rehype: 11.1.2 + unified: 11.0.5 + unist-util-visit: 5.1.0 + transitivePeerDependencies: + - supports-color + '@noble/ciphers@2.1.1': {} '@noble/hashes@2.0.1': {} @@ -7933,8 +7942,6 @@ snapshots: transitivePeerDependencies: - '@noble/hashes' - html-url-attributes@3.0.1: {} - html-void-elements@3.0.0: {} htmlparser2@10.1.0: @@ -8665,24 +8672,6 @@ snapshots: react-is@17.0.2: {} - react-markdown@10.1.0(@types/react@19.2.14)(react@19.2.4): - dependencies: - '@types/hast': 3.0.4 - '@types/mdast': 4.0.4 - '@types/react': 19.2.14 - devlop: 1.1.0 - hast-util-to-jsx-runtime: 2.3.6 - html-url-attributes: 3.0.1 - mdast-util-to-hast: 13.2.1 - react: 19.2.4 - remark-parse: 11.0.0 - remark-rehype: 11.1.2 - unified: 11.0.5 - unist-util-visit: 5.1.0 - vfile: 6.0.3 - transitivePeerDependencies: - - supports-color - react-refresh@0.18.0: {} react-remove-scroll-bar@2.3.8(@types/react@19.2.14)(react@19.2.4): From a8c999a23b7fa1798384b5114c1807786f392662 Mon Sep 17 00:00:00 2001 From: Alan Daniel Date: Fri, 10 Apr 2026 18:45:04 -0700 Subject: [PATCH 5/8] Add mobile-first responsive layout with native bottom nav and drawer patterns (#59) - Add mobile bottom navigation bar with icon-only nav items and avatar - Hide desktop-only controls (avatar menu, more button, nav items) on mobile - Make detail tabs mobile-friendly: inline close button, hidden divider - Wrap PR/issue titles on mobile instead of truncating - Reduce page padding on mobile across pulls, issues, reviews, and detail pages - Hide preview button and timeline guide line on mobile - Make PR stats bar wrap naturally on small screens - Add Vaul drawer component for native-feeling mobile interactions - Convert Dialog to render as bottom drawer on mobile (<768px) - Convert review page: file sidebar as drawer, submit review as drawer - Force unified diff style on mobile by hiding split/unified toggle --- .../src/components/details/detail-page.tsx | 4 +- .../src/components/issues/issue-row.tsx | 2 +- .../components/layouts/dashboard-layout.tsx | 10 + .../layouts/dashboard-mobile-nav.tsx | 181 ++++++++++++ .../src/components/layouts/dashboard-tabs.tsx | 22 +- .../components/layouts/dashboard-topbar.tsx | 144 ++++----- .../pulls/detail/pull-detail-activity.tsx | 2 +- .../pulls/detail/pull-detail-header.tsx | 36 ++- .../src/components/pulls/pull-request-row.tsx | 4 +- .../components/pulls/review/review-page.tsx | 158 +++++++--- .../pulls/review/review-submit-popover.tsx | 278 ++++++++++-------- .../src/routes/_protected/issues.tsx | 2 +- .../dashboard/src/routes/_protected/pulls.tsx | 2 +- .../src/routes/_protected/reviews.tsx | 2 +- packages/ui/package.json | 3 +- packages/ui/src/components/dialog.tsx | 94 ++++++ packages/ui/src/components/drawer.tsx | 125 ++++++++ pnpm-lock.yaml | 178 +++++++---- 18 files changed, 928 insertions(+), 319 deletions(-) create mode 100644 apps/dashboard/src/components/layouts/dashboard-mobile-nav.tsx create mode 100644 packages/ui/src/components/drawer.tsx diff --git a/apps/dashboard/src/components/details/detail-page.tsx b/apps/dashboard/src/components/details/detail-page.tsx index d1792a9..e8aa074 100644 --- a/apps/dashboard/src/components/details/detail-page.tsx +++ b/apps/dashboard/src/components/details/detail-page.tsx @@ -17,7 +17,7 @@ export function DetailPageLayout({ }) { return (
-
+
{main}
{sidebar}
@@ -85,7 +85,7 @@ export function DetailPageSkeletonLayout({ }) { return (
-
+
{main}
-

{issue.title}

+

{issue.title}

{issue.repository.fullName} #{issue.number} {issue.author && ( diff --git a/apps/dashboard/src/components/layouts/dashboard-layout.tsx b/apps/dashboard/src/components/layouts/dashboard-layout.tsx index 1dcc87b..d53a4f4 100644 --- a/apps/dashboard/src/components/layouts/dashboard-layout.tsx +++ b/apps/dashboard/src/components/layouts/dashboard-layout.tsx @@ -8,6 +8,7 @@ import { import { useGitHubRevalidation } from "#/lib/use-github-revalidation"; import { useHasMounted } from "#/lib/use-has-mounted"; import { DashboardBottomBar } from "./dashboard-bottombar"; +import { DashboardMobileNav } from "./dashboard-mobile-nav"; import { DashboardTopbar } from "./dashboard-topbar"; const CommandPalette = lazy(() => @@ -70,6 +71,15 @@ export function DashboardLayout() {

+ diff --git a/apps/dashboard/src/components/layouts/dashboard-mobile-nav.tsx b/apps/dashboard/src/components/layouts/dashboard-mobile-nav.tsx new file mode 100644 index 0000000..a39ae50 --- /dev/null +++ b/apps/dashboard/src/components/layouts/dashboard-mobile-nav.tsx @@ -0,0 +1,181 @@ +import { + GitPullRequestIcon, + HomeIcon, + IssuesIcon, + MoonIcon, + ReviewsIcon, + SunIcon, + SystemIcon, +} from "@diffkit/icons"; +import { Avatar, AvatarFallback } from "@diffkit/ui/components/avatar"; +import { + DropdownMenu, + DropdownMenuContent, + DropdownMenuGroup, + DropdownMenuItem, + DropdownMenuLabel, + DropdownMenuSeparator, + DropdownMenuShortcut, + DropdownMenuTrigger, +} from "@diffkit/ui/components/dropdown-menu"; +import { cn } from "@diffkit/ui/lib/utils"; +import { Link } from "@tanstack/react-router"; +import { useTheme } from "next-themes"; +import { useState } from "react"; +import { signOutToLogin } from "#/lib/auth-actions"; + +const themeOptions = [ + { value: "light", icon: SunIcon, label: "Light" }, + { value: "dark", icon: MoonIcon, label: "Dark" }, + { value: "system", icon: SystemIcon, label: "System" }, +] as const; + +interface MobileNavItem { + to: string; + label: string; + icon: typeof HomeIcon; + count?: number; +} + +interface DashboardMobileNavProps { + user: { + name?: string | null; + email: string; + image?: string | null; + }; + tabsReady: boolean; + counts: { + pulls?: number; + issues?: number; + reviews?: number; + }; +} + +export function DashboardMobileNav({ + user, + tabsReady, + counts, +}: DashboardMobileNavProps) { + const { theme, setTheme } = useTheme(); + const [avatarLoadFailed, setAvatarLoadFailed] = useState(false); + + const displayName = user.name ?? user.email; + const initials = displayName + .split(" ") + .map((part) => part[0]) + .join("") + .slice(0, 2) + .toUpperCase(); + + const navItems: MobileNavItem[] = [ + { to: "/", label: "Overview", icon: HomeIcon }, + { + to: "/pulls", + label: "Pulls", + icon: GitPullRequestIcon, + count: counts.pulls, + }, + { to: "/issues", label: "Issues", icon: IssuesIcon, count: counts.issues }, + { + to: "/reviews", + label: "Reviews", + icon: ReviewsIcon, + count: counts.reviews, + }, + ]; + + return ( + + ); +} diff --git a/apps/dashboard/src/components/layouts/dashboard-tabs.tsx b/apps/dashboard/src/components/layouts/dashboard-tabs.tsx index c5004d9..2423a4e 100644 --- a/apps/dashboard/src/components/layouts/dashboard-tabs.tsx +++ b/apps/dashboard/src/components/layouts/dashboard-tabs.tsx @@ -105,7 +105,7 @@ export function DashboardTabs({ tabsReady, routerRef }: DashboardTabsProps) { : "pointer-events-none -translate-y-0.5 opacity-0" }`} > -
+
)} + {/* Mobile: inline close button in flow — oversized touch target */} + {/* Desktop: overlay close button on hover */} + - - - -
-

{displayName}

-

{user.email}

-
-
- {themeOptions.map((opt) => ( - - ))} -
-
- - - - Profile - - - - Settings - +
+ + + + + + +
+

{displayName}

+

+ {user.email} +

+
+
+ {themeOptions.map((opt) => ( + + ))} +
+
+ + + + Profile + + + + Settings + + + + + { + void signOutToLogin(); + }} + > + Sign out - - - { - void signOutToLogin(); - }} - > - Sign out - -
-
+ + +
@@ -270,7 +276,7 @@ export function DashboardTopbar({
-
+
-

{pr.title}

+

{pr.title}

{pr.repository.fullName} #{pr.number} {pr.author && ( @@ -97,7 +97,7 @@ export const PullRequestRow = memo(function PullRequestRow({ {formatRelativeTime(pr.updatedAt)}

-
+
+ )} + #{pr.number} -
+
-
+
{pr.title}
-
+
{sidebarFileCount} - {" "} - {sidebarFileCount === 1 ? "file" : "files"} + + + {" "} + {sidebarFileCount === 1 ? "file" : "files"} + +{diffStats.totalAdditions} @@ -443,7 +507,7 @@ const ReviewToolbar = memo(function ReviewToolbar({
-
+
-
+
void) => { + const mql = window.matchMedia(MD_QUERY); + mql.addEventListener("change", cb); + return () => mql.removeEventListener("change", cb); +}; +const getMdSnapshot = () => window.matchMedia(MD_QUERY).matches; +const getMdServerSnapshot = () => true; + +function useIsDesktop() { + return useSyncExternalStore(mdSubscribe, getMdSnapshot, getMdServerSnapshot); +} + +const reviewOptions: Array<{ + value: ReviewEvent; + label: string; + description: string; + icon: typeof CommentIcon; + color: string; +}> = [ + { + value: "COMMENT", + label: "Comment", + description: "Submit general feedback without explicit approval.", + icon: CommentIcon, + color: "text-foreground", + }, + { + value: "APPROVE", + label: "Approve", + description: "Submit feedback and approve merging these changes.", + icon: TickIcon, + color: "text-green-500", + }, + { + value: "REQUEST_CHANGES", + label: "Request changes", + description: "Submit feedback suggesting changes.", + icon: GitBranchIcon, + color: "text-red-500", + }, +]; + export function ReviewSubmitPopover({ pendingCount, isSubmitting, @@ -27,6 +75,7 @@ export function ReviewSubmitPopover({ const [body, setBody] = useState(""); const [event, setEvent] = useState("COMMENT"); const [isOpen, setIsOpen] = useState(false); + const isDesktop = useIsDesktop(); const handleSubmit = () => { onSubmit(body, event); @@ -34,43 +83,98 @@ export function ReviewSubmitPopover({ setIsOpen(false); }; - const reviewOptions: Array<{ - value: ReviewEvent; - label: string; - description: string; - icon: typeof CommentIcon; - color: string; - }> = [ - { - value: "COMMENT", - label: "Comment", - description: "Submit general feedback without explicit approval.", - icon: CommentIcon, - color: "text-foreground", - }, - { - value: "APPROVE", - label: "Approve", - description: "Submit feedback and approve merging these changes.", - icon: TickIcon, - color: "text-green-500", - }, - { - value: "REQUEST_CHANGES", - label: "Request changes", - description: "Submit feedback suggesting changes.", - icon: GitBranchIcon, - color: "text-red-500", - }, - ]; + const trigger = ( + + ); - return ( - - + const form = ( +
+
+

Finish your review

+ {isDesktop && ( + + )} +
+ +
+