Enable deletion of relation fields (#5338)

In this PR
1. Enable deletion of relation fields in the product and via the api
(migration part was missing in the api)
3. Change wording, only use "deactivate" and "delete" everywhere (and
not a mix of the two + "disable", "erase")
This commit is contained in:
Marie
2024-05-13 17:43:51 +02:00
committed by GitHub
parent 0018ec78b0
commit b9154f315e
30 changed files with 519 additions and 117 deletions

View File

@ -54,15 +54,18 @@ export const SettingsObjectDetail = () => {
if (!activeObjectMetadataItem) navigate(AppPath.NotFound);
}, [activeObjectMetadataItem, navigate]);
const { activateMetadataField, disableMetadataField, eraseMetadataField } =
useFieldMetadataItem();
const {
activateMetadataField,
deactivateMetadataField,
deleteMetadataField,
} = useFieldMetadataItem();
if (!activeObjectMetadataItem) return null;
const activeMetadataFields = getActiveFieldMetadataItems(
activeObjectMetadataItem,
);
const disabledMetadataFields = getDisabledFieldMetadataItems(
const deactivatedMetadataFields = getDisabledFieldMetadataItems(
activeObjectMetadataItem,
);
@ -75,7 +78,7 @@ export const SettingsObjectDetail = () => {
};
const handleDisableField = (activeFieldMetadatItem: FieldMetadataItem) => {
disableMetadataField(activeFieldMetadatItem);
deactivateMetadataField(activeFieldMetadatItem);
};
const handleSetLabelIdentifierField = (
@ -180,27 +183,27 @@ export const SettingsObjectDetail = () => {
})}
</TableSection>
)}
{!!disabledMetadataFields.length && (
{!!deactivatedMetadataFields.length && (
<TableSection isInitiallyExpanded={false} title="Inactive">
{disabledMetadataFields.map((disabledMetadataField) => (
{deactivatedMetadataFields.map((deactivatedMetadataField) => (
<SettingsObjectFieldItemTableRow
key={disabledMetadataField.id}
key={deactivatedMetadataField.id}
variant={
activeObjectMetadataItem.isCustom
? 'identifier'
: 'field-type'
}
fieldMetadataItem={disabledMetadataField}
fieldMetadataItem={deactivatedMetadataField}
ActionIcon={
<SettingsObjectFieldInactiveActionDropdown
isCustomField={!!disabledMetadataField.isCustom}
fieldType={disabledMetadataField.type}
scopeKey={disabledMetadataField.id}
isCustomField={!!deactivatedMetadataField.isCustom}
fieldType={deactivatedMetadataField.type}
scopeKey={deactivatedMetadataField.id}
onActivate={() =>
activateMetadataField(disabledMetadataField)
activateMetadataField(deactivatedMetadataField)
}
onErase={() =>
eraseMetadataField(disabledMetadataField)
onDelete={() =>
deleteMetadataField(deactivatedMetadataField)
}
/>
}
@ -218,7 +221,7 @@ export const SettingsObjectDetail = () => {
variant="secondary"
onClick={() =>
navigate(
disabledMetadataFields.length
deactivatedMetadataFields.length
? './new-field/step-1'
: './new-field/step-2',
)