7d747c9876
# Introduction Adding view-group to core engine v2 Following https://github.com/twentyhq/twenty/pull/15010 ( same pattern ) ## What's done - Created flat-view-group - flat view group runner - flat view group builder - create view group service v2 and input transpilers - refactor the existing view group resolver to fix standard ( BREAKING_CHANGE on graphql api update especially ) REST stays the same - refactored the front to consume the mutations autogenerated close https://github.com/twentyhq/core-team-issues/issues/1665
23 lines
991 B
TypeScript
23 lines
991 B
TypeScript
import { removePropertiesFromRecord } from 'twenty-shared/utils';
|
|
|
|
import { VIEW_ENTITY_RELATION_PROPERTIES } from 'src/engine/metadata-modules/flat-view/constants/view-entity-relation-properties.constant';
|
|
import { type FlatView } from 'src/engine/metadata-modules/flat-view/types/flat-view.type';
|
|
import { type ViewEntity } from 'src/engine/metadata-modules/view/entities/view.entity';
|
|
|
|
export const fromViewEntityToFlatView = (viewEntity: ViewEntity): FlatView => {
|
|
const viewEntityWithoutRelations = removePropertiesFromRecord(
|
|
viewEntity,
|
|
VIEW_ENTITY_RELATION_PROPERTIES,
|
|
);
|
|
|
|
return {
|
|
...viewEntityWithoutRelations,
|
|
universalIdentifier:
|
|
viewEntityWithoutRelations.universalIdentifier ??
|
|
viewEntityWithoutRelations.id,
|
|
viewFieldIds: viewEntity.viewFields.map((viewField) => viewField.id),
|
|
viewFilterIds: viewEntity.viewFilters.map((viewFilter) => viewFilter.id),
|
|
viewGroupIds: viewEntity.viewGroups.map((viewGroup) => viewGroup.id),
|
|
};
|
|
};
|