From d189bb5af4ea7d632aead1ccca066b32957aa18b Mon Sep 17 00:00:00 2001 From: openhands Date: Tue, 21 Jul 2026 16:47:02 +0200 Subject: [PATCH] fix: mobile responsive improvements - Audit: responsive summary cards (grid-cols-2 mobile, p-3), responsive empty states - Repair-icons/sync-all: log area horizontal scroll (overflow-x-auto, whitespace-nowrap) - Upload furni: tighter mobile padding (p-4 sm:p-5) - Nitro client: compact toolbar on mobile (smaller buttons, tighter gap, top-2/left-2) --- src/app/admin/import/audit/audit-client.tsx | 34 +++-- .../furni/upload/upload-furni-client.tsx | 2 +- .../repair-icons/repair-icons-client.tsx | 7 +- src/app/admin/import/sync/sync-all-client.tsx | 7 +- src/app/client/client-view.tsx | 134 +++++++++--------- 5 files changed, 97 insertions(+), 87 deletions(-) diff --git a/src/app/admin/import/audit/audit-client.tsx b/src/app/admin/import/audit/audit-client.tsx index a4e6a2db..cb74d978 100644 --- a/src/app/admin/import/audit/audit-client.tsx +++ b/src/app/admin/import/audit/audit-client.tsx @@ -223,15 +223,17 @@ export function AuditClient() { {summary && ( <> {/* Summary cards */} -
-
-
{summary.totalItemsBase}
+
+
+
+ {summary.totalItemsBase} +
items_base entries
-
-
+
+
{summary.totalCatalogItems}
@@ -239,20 +241,20 @@ export function AuditClient() {
0 ? "border-[var(--admin-error-border)] bg-[var(--admin-error-subtle)]" : "bg-card"}`} + className={`rounded-xl border p-3 sm:p-4 space-y-1 ${errors.length > 0 ? "border-[var(--admin-error-border)] bg-[var(--admin-error-subtle)]" : "bg-card"}`} >
0 ? "text-[var(--admin-error)]" : ""}`} + className={`text-xl sm:text-2xl font-bold ${errors.length > 0 ? "text-[var(--admin-error)]" : ""}`} > {errors.length}
Errors
0 ? "border-[var(--admin-warning-border)] bg-[var(--admin-warning-subtle)]" : "bg-card"}`} + className={`rounded-xl border p-3 sm:p-4 space-y-1 ${warnings.length > 0 ? "border-[var(--admin-warning-border)] bg-[var(--admin-warning-subtle)]" : "bg-card"}`} >
0 ? "text-[var(--admin-warning)]" : ""}`} + className={`text-xl sm:text-2xl font-bold ${warnings.length > 0 ? "text-[var(--admin-warning)]" : ""}`} > {warnings.length}
@@ -383,7 +385,7 @@ export function AuditClient() { {TYPE_LABELS[issue.type] || issue.type} {issue.classname && ( - + {issue.classname} )} @@ -425,9 +427,11 @@ export function AuditClient() { {activeTab === "issues" && issues.length === 0 && missingFromSources.length === 0 && ( -
- -

No issues found

+
+ +

+ No issues found +

Your catalog is clean!

)} @@ -448,8 +452,8 @@ export function AuditClient() { )} {!loading && !summary && ( -
- +
+

Run a full audit to check for missing catalog entries, broken references, missing files, and items available from clone sources. diff --git a/src/app/admin/import/furni/upload/upload-furni-client.tsx b/src/app/admin/import/furni/upload/upload-furni-client.tsx index 7e39db78..1ab3e028 100644 --- a/src/app/admin/import/furni/upload/upload-furni-client.tsx +++ b/src/app/admin/import/furni/upload/upload-furni-client.tsx @@ -108,7 +108,7 @@ export function UploadFurniClient() {

{!result ? (
-
+
Furniture Details
diff --git a/src/app/admin/import/repair-icons/repair-icons-client.tsx b/src/app/admin/import/repair-icons/repair-icons-client.tsx index c126c305..a0a3bd3d 100644 --- a/src/app/admin/import/repair-icons/repair-icons-client.tsx +++ b/src/app/admin/import/repair-icons/repair-icons-client.tsx @@ -160,9 +160,12 @@ export function RepairIconsClient() { )} {log.length > 0 && ( -
+
{log.map((line) => ( -
+
{line}
))} diff --git a/src/app/admin/import/sync/sync-all-client.tsx b/src/app/admin/import/sync/sync-all-client.tsx index 3eba9b0b..4c546615 100644 --- a/src/app/admin/import/sync/sync-all-client.tsx +++ b/src/app/admin/import/sync/sync-all-client.tsx @@ -147,9 +147,12 @@ export function SyncAllClient() { )} {log.length > 0 && ( -
+
{log.map((line) => ( -
+
{line}
))} diff --git a/src/app/client/client-view.tsx b/src/app/client/client-view.tsx index 6630391b..0e9874c6 100644 --- a/src/app/client/client-view.tsx +++ b/src/app/client/client-view.tsx @@ -15,7 +15,7 @@ function ToolbarBtn({ href?: string; }) { const cls = - "w-10 h-10 rounded-lg border-2 cursor-pointer flex items-center justify-center shadow-lg transition-all duration-200 hover:-translate-y-0.5 hover:shadow-xl active:translate-y-0"; + "w-9 h-9 sm:w-10 sm:h-10 rounded-lg border-2 cursor-pointer flex items-center justify-center shadow-lg transition-all duration-200 hover:-translate-y-0.5 hover:shadow-xl active:translate-y-0"; const style = { borderColor: "color-mix(in srgb, var(--color-primary, #eeb425) 75%, black)", background: @@ -94,63 +94,63 @@ export function ClientView({ className="relative w-screen h-screen overflow-hidden" style={{ backgroundColor: "var(--color-background)" }} > -
+
- - Home - - - + + Home + + + window.location.reload()} title="Reload"> - - Reload - - - - + + Reload + + + + - - Fullscreen - - + + Fullscreen + +
- - Online users - - - + + Online users + + + {onlineCount}