Create default view for workflows + fix task and note targets (#6620)

As title
This commit is contained in:
Thomas Trompette
2024-08-14 12:04:41 +02:00
committed by GitHub
parent d1c278d6b2
commit 0f75e14ab2
7 changed files with 126 additions and 1 deletions

View File

@ -1,6 +1,8 @@
import { EntityManager } from 'typeorm';
import { v4 } from 'uuid';
import { FeatureFlagKey } from 'src/engine/core-modules/feature-flag/enums/feature-flag-key.enum';
import { FeatureFlagEntity } from 'src/engine/core-modules/feature-flag/feature-flag.entity';
import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
import { activitiesAllView } from 'src/engine/workspace-manager/standard-objects-prefill-data/views/activities-all.view';
import { companiesAllView } from 'src/engine/workspace-manager/standard-objects-prefill-data/views/companies-all.view';
@ -10,12 +12,19 @@ import { opportunitiesByStageView } from 'src/engine/workspace-manager/standard-
import { peopleAllView } from 'src/engine/workspace-manager/standard-objects-prefill-data/views/people-all.view';
import { tasksAllView } from 'src/engine/workspace-manager/standard-objects-prefill-data/views/tasks-all.view';
import { tasksByStatusView } from 'src/engine/workspace-manager/standard-objects-prefill-data/views/tasks-by-status.view';
import { workflowsAllView } from 'src/engine/workspace-manager/standard-objects-prefill-data/views/workflows-all.view';
export const viewPrefillData = async (
entityManager: EntityManager,
schemaName: string,
objectMetadataMap: Record<string, ObjectMetadataEntity>,
featureFlags?: FeatureFlagEntity[],
) => {
const isWorkflowEnabled =
featureFlags?.find(
(featureFlag) => featureFlag.key === FeatureFlagKey.IsWorkflowEnabled,
)?.value ?? false;
const viewDefinitions = [
await companiesAllView(objectMetadataMap),
await peopleAllView(objectMetadataMap),
@ -25,6 +34,7 @@ export const viewPrefillData = async (
await notesAllView(objectMetadataMap),
await tasksAllView(objectMetadataMap),
await tasksByStatusView(objectMetadataMap),
...(isWorkflowEnabled ? [await workflowsAllView(objectMetadataMap)] : []),
];
const viewDefinitionsWithId = viewDefinitions.map((viewDefinition) => ({

View File

@ -0,0 +1,38 @@
import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
import { WORKFLOW_STANDARD_FIELD_IDS } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-field-ids';
import { STANDARD_OBJECT_IDS } from 'src/engine/workspace-manager/workspace-sync-metadata/constants/standard-object-ids';
export const workflowsAllView = async (
objectMetadataMap: Record<string, ObjectMetadataEntity>,
) => {
return {
name: 'All Workflows',
objectMetadataId: objectMetadataMap[STANDARD_OBJECT_IDS.workflow].id,
type: 'table',
key: null,
position: 0,
icon: 'IconSettingsAutomation',
kanbanFieldMetadataId: '',
filters: [],
fields: [
{
fieldMetadataId:
objectMetadataMap[STANDARD_OBJECT_IDS.workflow].fields[
WORKFLOW_STANDARD_FIELD_IDS.name
],
position: 0,
isVisible: true,
size: 210,
},
{
fieldMetadataId:
objectMetadataMap[STANDARD_OBJECT_IDS.workflow].fields[
WORKFLOW_STANDARD_FIELD_IDS.publishedVersionId
],
position: 1,
isVisible: true,
size: 150,
},
],
};
};