1cf08c797f
* Convert metadata tables to camelCase * datasourcemetadataid to datasourceid * refactor metadata folders * fix command * move commands out of metadata * fix seed * rename objectId and fieldId in objectMetadataId and fieldMetadataId in FE * fix field-metadata * Fix * Fix * remove logs --------- Co-authored-by: Charles Bochet <charles@twenty.com>
36 lines
1.4 KiB
TypeScript
36 lines
1.4 KiB
TypeScript
import { BoardFieldDefinition } from '@/ui/layout/board/types/BoardFieldDefinition';
|
|
import { FieldMetadata } from '@/ui/object/field/types/FieldMetadata';
|
|
import { assertNotNull } from '~/utils/assert';
|
|
|
|
import { ViewField } from '../types/ViewField';
|
|
|
|
export const mapViewFieldsToBoardFieldDefinitions = (
|
|
viewFields: ViewField[],
|
|
fieldsMetadata: BoardFieldDefinition<FieldMetadata>[],
|
|
): BoardFieldDefinition<FieldMetadata>[] => {
|
|
return viewFields
|
|
.map((viewField) => {
|
|
const correspondingFieldMetadata = fieldsMetadata.find(
|
|
({ fieldMetadataId }) => viewField.fieldMetadataId === fieldMetadataId,
|
|
);
|
|
|
|
return correspondingFieldMetadata
|
|
? {
|
|
fieldMetadataId: viewField.fieldMetadataId,
|
|
label: correspondingFieldMetadata.label,
|
|
metadata: correspondingFieldMetadata.metadata,
|
|
entityChipDisplayMapper:
|
|
correspondingFieldMetadata.entityChipDisplayMapper,
|
|
infoTooltipContent: correspondingFieldMetadata.infoTooltipContent,
|
|
basePathToShowPage: correspondingFieldMetadata.basePathToShowPage,
|
|
Icon: correspondingFieldMetadata.Icon,
|
|
type: correspondingFieldMetadata.type,
|
|
position: viewField.position,
|
|
isVisible: viewField.isVisible,
|
|
viewFieldId: viewField.id,
|
|
}
|
|
: null;
|
|
})
|
|
.filter(assertNotNull);
|
|
};
|