feat: display identifier field in Object Detail page for custom objects (#3329)
* feat: display identifier field in Object Detail page for custom objects Closes #3301 * fix: show Name as object label identifier by default * Minor improvements --------- Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
This commit is contained in:
@ -0,0 +1,28 @@
|
||||
import { FieldMetadataItem } from '@/object-metadata/types/FieldMetadataItem';
|
||||
import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
|
||||
import { isLabelIdentifierField } from '@/object-metadata/utils/isLabelIdentifierField';
|
||||
import { FieldIdentifierType } from '@/settings/data-model/types/FieldIdentifierType';
|
||||
|
||||
export const getFieldIdentifierType = (
|
||||
activeFieldMetadatItem: FieldMetadataItem,
|
||||
activeObjectMetadataItem: ObjectMetadataItem,
|
||||
): FieldIdentifierType | undefined => {
|
||||
const fieldIsLabelIdentifier = isLabelIdentifierField({
|
||||
fieldMetadataItem: activeFieldMetadatItem,
|
||||
objectMetadataItem: activeObjectMetadataItem,
|
||||
});
|
||||
|
||||
if (fieldIsLabelIdentifier) {
|
||||
return 'label';
|
||||
}
|
||||
|
||||
const fieldIsImageIdentifier =
|
||||
activeObjectMetadataItem.imageIdentifierFieldMetadataId ===
|
||||
activeFieldMetadatItem.id;
|
||||
|
||||
if (fieldIsImageIdentifier) {
|
||||
return 'image';
|
||||
}
|
||||
|
||||
return undefined;
|
||||
};
|
||||
Reference in New Issue
Block a user