Skip to content

Commit 3ecedc4

Browse files
Copilothotlong
andcommitted
Improve ObjectView and PageView for mobile responsiveness
- ObjectView: Better mobile header spacing and button sizes - ObjectView: Responsive content padding (p-3 sm:p-4) - ObjectView: Mobile-optimized drawer width (90vw on mobile) - PageView: Responsive metadata toggle positioning - Fix TypeScript types for callback parameters Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
1 parent 8177d5e commit 3ecedc4

2 files changed

Lines changed: 13 additions & 13 deletions

File tree

apps/console/src/components/ObjectView.tsx

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -208,19 +208,19 @@ export function ObjectView({ dataSource, objects, onEdit, onRowClick }: any) {
208208
return (
209209
<div className="h-full flex flex-col bg-background">
210210
{/* 1. Main Header */}
211-
<div className="flex justify-between items-center py-3 px-4 border-b shrink-0 bg-background z-10">
212-
<div className="flex items-center gap-3">
213-
<div className="bg-primary/10 p-2 rounded-md shrink-0">
211+
<div className="flex justify-between items-center py-2.5 sm:py-3 px-3 sm:px-4 border-b shrink-0 bg-background z-10">
212+
<div className="flex items-center gap-2 sm:gap-3 min-w-0 flex-1">
213+
<div className="bg-primary/10 p-1.5 sm:p-2 rounded-md shrink-0">
214214
<TableIcon className="h-4 w-4 text-primary" />
215215
</div>
216-
<div>
217-
<h1 className="text-lg font-semibold tracking-tight text-foreground">{objectDef.label}</h1>
216+
<div className="min-w-0">
217+
<h1 className="text-base sm:text-lg font-semibold tracking-tight text-foreground truncate">{objectDef.label}</h1>
218218
</div>
219219
</div>
220220

221-
<div className="flex items-center gap-2">
221+
<div className="flex items-center gap-1.5 sm:gap-2 shrink-0">
222222
<MetadataToggle open={showDebug} onToggle={toggleDebug} className="hidden sm:flex" />
223-
<Button size="sm" onClick={actions.create} className="shadow-none gap-2">
223+
<Button size="sm" onClick={actions.create} className="shadow-none gap-1.5 sm:gap-2 h-8 sm:h-9">
224224
<Plus className="h-4 w-4" />
225225
<span className="hidden sm:inline">New</span>
226226
</Button>
@@ -230,15 +230,15 @@ export function ObjectView({ dataSource, objects, onEdit, onRowClick }: any) {
230230
{/* 2. Content — Plugin ObjectView with ViewSwitcher + Filter + Sort */}
231231
<div className="flex-1 overflow-hidden relative flex flex-row">
232232
<div className="flex-1 relative h-full">
233-
<div className="absolute inset-0 overflow-auto p-4">
233+
<div className="absolute inset-0 overflow-auto p-3 sm:p-4">
234234
<PluginObjectView
235235
key={refreshKey}
236236
schema={objectViewSchema}
237237
dataSource={dataSource}
238238
views={views}
239239
activeViewId={activeViewId}
240240
onViewChange={handleViewChange}
241-
onEdit={(record) => onEdit?.(record)}
241+
onEdit={(record: any) => onEdit?.(record)}
242242
onRowClick={onRowClick || ((record: any) => onEdit?.(record))}
243243
renderListView={renderListView}
244244
/>
@@ -254,10 +254,10 @@ export function ObjectView({ dataSource, objects, onEdit, onRowClick }: any) {
254254
</div>
255255

256256
{/* Drawer for Record Details */}
257-
<Sheet open={!!drawerRecordId} onOpenChange={(open) => !open && handleDrawerClose()}>
258-
<SheetContent side="right" className="w-[85vw] sm:w-150 sm:max-w-none p-0 overflow-hidden">
257+
<Sheet open={!!drawerRecordId} onOpenChange={(open: boolean) => !open && handleDrawerClose()}>
258+
<SheetContent side="right" className="w-[90vw] sm:w-150 sm:max-w-none p-0 overflow-hidden">
259259
{drawerRecordId && (
260-
<div className="h-full bg-background overflow-auto p-4 lg:p-6">
260+
<div className="h-full bg-background overflow-auto p-3 sm:p-4 lg:p-6">
261261
<DetailView
262262
schema={{
263263
type: 'detail-view',

apps/console/src/components/PageView.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ export function PageView() {
3535
return (
3636
<div className="flex flex-row h-full w-full overflow-hidden relative">
3737
<div className="flex-1 overflow-auto h-full relative group">
38-
<div className={`absolute top-2 right-2 z-50 transition-opacity ${showDebug ? 'opacity-100' : 'opacity-0 group-hover:opacity-100'}`}>
38+
<div className={`absolute top-1.5 sm:top-2 right-1.5 sm:right-2 z-50 transition-opacity ${showDebug ? 'opacity-100' : 'opacity-0 group-hover:opacity-100'}`}>
3939
<MetadataToggle open={showDebug} onToggle={toggleDebug} />
4040
</div>
4141
<SchemaRenderer

0 commit comments

Comments
 (0)