[Headless Front component] Support multiple selected record (#20268)

# Introduction

Support multiple selected record ids for headless front components

### Changes

**Added:**
- `recordIds: string[]` field to `FrontComponentExecutionContext`
- `useRecordIds()` hook to get all selected record IDs

**Deprecated:**
- `recordId` field - use `recordIds` instead
- `useRecordId()` hook - use `useRecordIds()` instead

Backward compatibility is preserved
This commit is contained in:
Paul Rastoin
2026-05-05 14:53:22 +02:00
committed by GitHub
parent 41a7d6928b
commit 820f97f53d
18 changed files with 163 additions and 57 deletions
@@ -18,13 +18,13 @@ import { FindOneFrontComponentDocument } from '~/generated-metadata/graphql';
type FrontComponentRendererProps = {
frontComponentId: string;
commandMenuItemId?: string;
recordId?: string;
selectedRecordIds?: string[];
};
export const FrontComponentRenderer = ({
frontComponentId,
commandMenuItemId,
recordId,
selectedRecordIds,
}: FrontComponentRendererProps) => {
const { colorScheme } = useContext(ThemeContext);
const { enqueueErrorSnackBar } = useSnackBar();
@@ -38,7 +38,7 @@ export const FrontComponentRenderer = ({
useFrontComponentExecutionContext({
frontComponentId,
commandMenuItemId,
recordId,
selectedRecordIds,
});
const handleError = useCallback(