[PAGE LAYOUTS] Add widgets validation (#16635)

- Add widget validation
- Remove 'None' option for primary axis group by
- Fix error message parsing by passing the operation type in
`useMetadataErrorHandler`
This commit is contained in:
Raphaël Bosi
2026-01-07 16:00:13 +01:00
committed by GitHub
parent 701a713042
commit 4faed25624
71 changed files with 4004 additions and 1220 deletions
@@ -101,6 +101,13 @@ export const ChartGroupByFieldSelectionDropdownContentBase = <
const { getIcon } = useIcons();
const isSecondaryAxisGroupBy =
fieldMetadataIdKey === 'secondaryAxisGroupByFieldMetadataId';
const selectableItemIdArray = isSecondaryAxisGroupBy
? ['none', ...availableFieldMetadataItems.map((item) => item.id)]
: availableFieldMetadataItems.map((item) => item.id);
if (!isDefined(sourceObjectMetadataItem)) {
return null;
}
@@ -227,19 +234,18 @@ export const ChartGroupByFieldSelectionDropdownContentBase = <
<SelectableList
selectableListInstanceId={dropdownId}
focusId={dropdownId}
selectableItemIdArray={[
'none',
...availableFieldMetadataItems.map((item) => item.id),
]}
selectableItemIdArray={selectableItemIdArray}
>
<SelectableListItem itemId="none" onEnter={handleSelectNone}>
<MenuItemSelect
text={t`None`}
selected={!isDefined(currentGroupByFieldMetadataId)}
focused={selectedItemId === 'none'}
onClick={handleSelectNone}
/>
</SelectableListItem>
{isSecondaryAxisGroupBy && (
<SelectableListItem itemId="none" onEnter={handleSelectNone}>
<MenuItemSelect
text={t`None`}
selected={!isDefined(currentGroupByFieldMetadataId)}
focused={selectedItemId === 'none'}
onClick={handleSelectNone}
/>
</SelectableListItem>
)}
{availableFieldMetadataItems.map((fieldMetadataItem) => (
<SelectableListItem