Skip to content

Commit 143b32e

Browse files
Copilothotlong
andcommitted
fix: connect navOverlay.handleClick to row click handlers for record detail navigation
Fix list view row clicks not navigating to record detail page: 1. PluginObjectView onRowClick now uses navOverlay.handleClick instead of onEdit 2. renderListView onRowClick now uses navOverlay.handleClick instead of editHandler 3. useNavigationOverlay now has onNavigate callback for page mode URL updates 4. Added navOverlay to renderListView useCallback dependency array Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
1 parent 52c63b7 commit 143b32e

File tree

1 file changed

+12
-3
lines changed

1 file changed

+12
-3
lines changed

apps/console/src/components/ObjectView.tsx

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -425,6 +425,11 @@ export function ObjectView({ dataSource, objects, onEdit, onRowClick }: any) {
425425
const navOverlay = useNavigationOverlay({
426426
navigation: detailNavigation,
427427
objectName: objectDef.name,
428+
onNavigate: (recordId: string | number, _action?: string) => {
429+
const newParams = new URLSearchParams(searchParams);
430+
newParams.set('recordId', String(recordId));
431+
setSearchParams(newParams);
432+
},
428433
});
429434
const handleDrawerClose = () => {
430435
navOverlay.close();
@@ -596,11 +601,13 @@ export function ObjectView({ dataSource, objects, onEdit, onRowClick }: any) {
596601
schema={fullSchema}
597602
className={className}
598603
onEdit={editHandler}
599-
onRowClick={rowClickHandler || ((record: any) => editHandler?.(record))}
604+
onRowClick={rowClickHandler || ((record: any) => {
605+
navOverlay.handleClick(record);
606+
})}
600607
dataSource={ds}
601608
/>
602609
);
603-
}, [activeView, objectDef, objectName, refreshKey]);
610+
}, [activeView, objectDef, objectName, refreshKey, navOverlay]);
604611

605612
// Memoize the merged views array so PluginObjectView doesn't get a new
606613
// reference on every render (which would trigger unnecessary data refetches).
@@ -769,7 +776,9 @@ export function ObjectView({ dataSource, objects, onEdit, onRowClick }: any) {
769776
activeViewId={activeViewId}
770777
onViewChange={handleViewChange}
771778
onEdit={(record: any) => onEdit?.(record)}
772-
onRowClick={onRowClick || ((record: any) => onEdit?.(record))}
779+
onRowClick={onRowClick || ((record: any) => {
780+
navOverlay.handleClick(record);
781+
})}
773782
renderListView={renderListView}
774783
/>
775784
</div>

0 commit comments

Comments
 (0)