Refacto default value (#6507)
A quick followup of #6506 to add clarity and differentiate emptyValue from defaultValue
This commit is contained in:
@ -0,0 +1,27 @@
|
||||
import { FieldMetadataItem } from '@/object-metadata/types/FieldMetadataItem';
|
||||
import { isFieldValueEmpty } from '@/object-record/record-field/utils/isFieldValueEmpty';
|
||||
import { generateEmptyFieldValue } from '@/object-record/utils/generateEmptyFieldValue';
|
||||
import { v4 } from 'uuid';
|
||||
|
||||
export const generateDefaultFieldValue = (
|
||||
fieldMetadataItem: Pick<
|
||||
FieldMetadataItem,
|
||||
'defaultValue' | 'type' | 'fromRelationMetadata'
|
||||
>,
|
||||
) => {
|
||||
const defaultValue = isFieldValueEmpty({
|
||||
fieldValue: fieldMetadataItem.defaultValue,
|
||||
fieldDefinition: fieldMetadataItem,
|
||||
})
|
||||
? generateEmptyFieldValue(fieldMetadataItem)
|
||||
: fieldMetadataItem.defaultValue;
|
||||
|
||||
switch (defaultValue) {
|
||||
case 'uuid':
|
||||
return v4();
|
||||
case 'now':
|
||||
return new Date().toISOString();
|
||||
default:
|
||||
return defaultValue;
|
||||
}
|
||||
};
|
||||
@ -4,7 +4,7 @@ import { FieldMetadataItem } from '@/object-metadata/types/FieldMetadataItem';
|
||||
import { FieldMetadataType } from '~/generated-metadata/graphql';
|
||||
|
||||
export const generateEmptyFieldValue = (
|
||||
fieldMetadataItem: FieldMetadataItem,
|
||||
fieldMetadataItem: Pick<FieldMetadataItem, 'type' | 'fromRelationMetadata'>,
|
||||
) => {
|
||||
switch (fieldMetadataItem.type) {
|
||||
case FieldMetadataType.Email:
|
||||
|
||||
@ -2,7 +2,7 @@ import { isUndefined } from '@sniptt/guards';
|
||||
|
||||
import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
|
||||
import { ObjectRecord } from '@/object-record/types/ObjectRecord';
|
||||
import { generateEmptyFieldValue } from '@/object-record/utils/generateEmptyFieldValue';
|
||||
import { generateDefaultFieldValue } from '@/object-record/utils/generateDefaultFieldValue';
|
||||
import { isDefined } from '~/utils/isDefined';
|
||||
|
||||
export const prefillRecord = <T extends ObjectRecord>({
|
||||
@ -20,7 +20,7 @@ export const prefillRecord = <T extends ObjectRecord>({
|
||||
return [
|
||||
fieldMetadataItem.name,
|
||||
isUndefined(inputValue)
|
||||
? generateEmptyFieldValue(fieldMetadataItem)
|
||||
? generateDefaultFieldValue(fieldMetadataItem)
|
||||
: inputValue,
|
||||
];
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user