feat: simplification of default-value specification in FieldMetadata (#4592)

* feat: wip refactor default-value

* feat: health check to migrate default value

* fix: tests

* fix: refactor defaultValue to make it more clean

* fix: unit tests

* fix: front-end default value
This commit is contained in:
Jérémy M
2024-03-27 10:56:04 +01:00
committed by GitHub
parent 90ce7709dd
commit 5c0b65eecb
43 changed files with 481 additions and 328 deletions

View File

@ -23,13 +23,19 @@ export const useFieldMetadataItem = () => {
options?: Omit<FieldMetadataOption, 'id'>[];
type: FieldMetadataType;
},
) =>
createOneFieldMetadataItem({
...formatFieldMetadataItemInput(input),
defaultValue: input.defaultValue,
) => {
const formatedInput = formatFieldMetadataItemInput(input);
const defaultValue = input.defaultValue
? `'${input.defaultValue}'`
: formatedInput.defaultValue ?? undefined;
return createOneFieldMetadataItem({
...formatedInput,
defaultValue,
objectMetadataId: input.objectMetadataId,
type: input.type,
});
};
const editMetadataField = (
input: Pick<Field, 'id' | 'label' | 'icon' | 'description'> & {

View File

@ -74,7 +74,7 @@ describe('formatFieldMetadataItemInput', () => {
value: 'OPTION_2',
},
],
defaultValue: 'OPTION_1',
defaultValue: "'OPTION_1'",
};
const result = formatFieldMetadataItemInput(input);

View File

@ -44,7 +44,7 @@ export const formatFieldMetadataItemInput = (
return {
defaultValue: defaultOption
? getOptionValueFromLabel(defaultOption.label)
? `'${getOptionValueFromLabel(defaultOption.label)}'`
: undefined,
description: input.description?.trim() ?? null,
icon: input.icon,