feat: save edited custom field (#2245)
Closes #2161 Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
This commit is contained in:
@ -21,6 +21,15 @@ export const useMetadataField = () => {
|
||||
createOneMetadataField({
|
||||
...formatMetadataFieldInput(input),
|
||||
objectId: input.objectId,
|
||||
type: input.type,
|
||||
});
|
||||
|
||||
const editMetadataField = (
|
||||
input: Pick<Field, 'id' | 'label' | 'icon' | 'description'>,
|
||||
) =>
|
||||
updateOneMetadataField({
|
||||
fieldIdToUpdate: input.id,
|
||||
updatePayload: formatMetadataFieldInput(input),
|
||||
});
|
||||
|
||||
const activateMetadataField = (metadataField: Field) =>
|
||||
@ -43,5 +52,6 @@ export const useMetadataField = () => {
|
||||
createMetadataField,
|
||||
disableMetadataField,
|
||||
eraseMetadataField,
|
||||
editMetadataField,
|
||||
};
|
||||
};
|
||||
|
||||
@ -28,7 +28,7 @@ export const useUpdateOneMetadataField = () => {
|
||||
fieldIdToUpdate: UpdateOneMetadataFieldMutationVariables['idToUpdate'];
|
||||
updatePayload: Pick<
|
||||
UpdateOneMetadataFieldMutationVariables['updatePayload'],
|
||||
'description' | 'icon' | 'isActive' | 'label'
|
||||
'description' | 'icon' | 'isActive' | 'label' | 'name'
|
||||
>;
|
||||
}) => {
|
||||
return await mutate({
|
||||
|
||||
@ -1,16 +1,12 @@
|
||||
import toCamelCase from 'lodash.camelcase';
|
||||
|
||||
import { MetadataFieldDataType } from '@/settings/data-model/types/ObjectFieldDataType';
|
||||
import { Field } from '~/generated-metadata/graphql';
|
||||
|
||||
export const formatMetadataFieldInput = (
|
||||
input: Pick<Field, 'label' | 'icon' | 'description'> & {
|
||||
type: MetadataFieldDataType;
|
||||
},
|
||||
input: Pick<Field, 'label' | 'icon' | 'description'>,
|
||||
) => ({
|
||||
description: input.description?.trim() ?? null,
|
||||
icon: input.icon,
|
||||
label: input.label.trim(),
|
||||
name: toCamelCase(input.label.trim()),
|
||||
type: input.type,
|
||||
});
|
||||
|
||||
@ -42,6 +42,7 @@ export const SettingsObjectFieldFormSection = ({
|
||||
/>
|
||||
<StyledInputsContainer>
|
||||
<IconPicker
|
||||
disabled={disabled}
|
||||
selectedIconKey={iconKey}
|
||||
onChange={(value) => onChange?.({ icon: value.iconKey })}
|
||||
variant="primary"
|
||||
|
||||
Reference in New Issue
Block a user