From 1c4781e620ea1b256f5098e8a36de0e7d74e1b03 Mon Sep 17 00:00:00 2001 From: Linus Rath <139418639+rathlinus@users.noreply.github.com> Date: Tue, 3 Nov 2026 05:19:50 +0100 Subject: [PATCH] fix: give the update and manage buttons their own line in the marketplace installed list on phones --- app/(main)/admin/_pages/marketplace.tsx | 1 + components/admin/list.tsx | 13 ++++++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/app/(main)/admin/_pages/marketplace.tsx b/app/(main)/admin/_pages/marketplace.tsx index c70d65354..25385f963 100644 --- a/app/(main)/admin/_pages/marketplace.tsx +++ b/app/(main)/admin/_pages/marketplace.tsx @@ -594,6 +594,7 @@ function InstalledView({ href={fromMarketplace ? detailHref(entry.id) : undefined} icon={entry.kind === 'plugin' ? : } title={entry.name} + wideControl titleExtra={( <> v{entry.version} diff --git a/components/admin/list.tsx b/components/admin/list.tsx index ad3269c1d..d988f7dbd 100644 --- a/components/admin/list.tsx +++ b/components/admin/list.tsx @@ -31,17 +31,20 @@ interface AdminListRowProps { meta?: ReactNode; /** Controls on the end side; they sit above the row link. */ control?: ReactNode; + /** The control is wider than a switch: on a phone it gets its own line under the text. */ + wideControl?: boolean; className?: string; 'data-testid'?: string; } -export function AdminListRow({ href, icon, title, titleExtra, description, meta, control, className, ...rest }: AdminListRowProps) { +export function AdminListRow({ href, icon, title, titleExtra, description, meta, control, wideControl, className, ...rest }: AdminListRowProps) { return (
@@ -50,7 +53,7 @@ export function AdminListRow({ href, icon, title, titleExtra, description, meta, {icon}
)} -
+
{href ? ( {description}

} {meta &&
{meta}
}
- {control &&
{control}
} + {control && ( +
+ {control} +
+ )} {href &&
);