diff --git a/front/src/modules/settings/data-model/components/SettingsObjectFieldTypeSelectSection.tsx b/front/src/modules/settings/data-model/components/SettingsObjectFieldTypeSelectSection.tsx index 3a53e368d..061f83116 100644 --- a/front/src/modules/settings/data-model/components/SettingsObjectFieldTypeSelectSection.tsx +++ b/front/src/modules/settings/data-model/components/SettingsObjectFieldTypeSelectSection.tsx @@ -24,9 +24,10 @@ export type SettingsObjectFieldTypeSelectSectionFormValues = Partial<{ }>; type SettingsObjectFieldTypeSelectSectionProps = { + excludedFieldTypes?: FieldMetadataType[]; fieldMetadata: Pick & { id?: string }; - relationFieldMetadataId?: string; onChange: (values: SettingsObjectFieldTypeSelectSectionFormValues) => void; + relationFieldMetadataId?: string; values?: SettingsObjectFieldTypeSelectSectionFormValues; } & Pick; @@ -45,17 +46,21 @@ const StyledRelationImage = styled.img<{ flip?: boolean }>` `; export const SettingsObjectFieldTypeSelectSection = ({ + excludedFieldTypes, fieldMetadata, - relationFieldMetadataId, objectMetadataId, onChange, + relationFieldMetadataId, values, }: SettingsObjectFieldTypeSelectSectionProps) => { const relationFormConfig = values?.relation; - const allowedFieldTypes = Object.entries(dataTypes).filter( - ([key]) => key !== FieldMetadataType.Relation, - ); + const fieldTypeOptions = Object.entries(dataTypes) + .filter(([key]) => !excludedFieldTypes?.includes(key as FieldMetadataType)) + .map(([key, dataType]) => ({ + value: key as FieldMetadataType, + ...dataType, + })); return (
@@ -68,10 +73,7 @@ export const SettingsObjectFieldTypeSelectSection = ({ dropdownScopeId="object-field-type-select" value={values?.type} onChange={(value) => onChange({ type: value })} - options={allowedFieldTypes.map(([key, dataType]) => ({ - value: key as FieldMetadataType, - ...dataType, - }))} + options={fieldTypeOptions} /> {!!values?.type && [ diff --git a/front/src/pages/settings/data-model/SettingsObjectNewField/SettingsObjectNewFieldStep2.tsx b/front/src/pages/settings/data-model/SettingsObjectNewField/SettingsObjectNewFieldStep2.tsx index 7d566bff6..75eb1bdf8 100644 --- a/front/src/pages/settings/data-model/SettingsObjectNewField/SettingsObjectNewFieldStep2.tsx +++ b/front/src/pages/settings/data-model/SettingsObjectNewField/SettingsObjectNewFieldStep2.tsx @@ -203,6 +203,10 @@ export const SettingsObjectNewFieldStep2 = () => { onChange={handleFormChange} />