Files
twenty/packages/twenty-front/src/modules/action-menu/actions/utils/getActionConfig.ts
T
Baptiste Devessier 9c6d8330df Bring back companies focused actions (#15961)
We want to release the readonly mode of record page layouts before the
edit mode. We will think about adding actions related to page layout
edition later.


https://github.com/user-attachments/assets/2c2213d2-80b8-4d6f-b4bf-e023ac9d2906

Closes https://github.com/twentyhq/core-team-issues/issues/1818
2025-11-20 15:53:34 +01:00

45 lines
1.9 KiB
TypeScript

import { DASHBOARD_ACTIONS_CONFIG } from '@/action-menu/actions/record-actions/constants/DashboardActionsConfig';
import { DEFAULT_RECORD_ACTIONS_CONFIG } from '@/action-menu/actions/record-actions/constants/DefaultRecordActionsConfig';
import { WORKFLOW_ACTIONS_CONFIG } from '@/action-menu/actions/record-actions/constants/WorkflowActionsConfig';
import { WORKFLOW_RUNS_ACTIONS_CONFIG } from '@/action-menu/actions/record-actions/constants/WorkflowRunsActionsConfig';
import { WORKFLOW_VERSIONS_ACTIONS_CONFIG } from '@/action-menu/actions/record-actions/constants/WorkflowVersionsActionsConfig';
import { WORKSPACE_MEMBERS_ACTIONS_CONFIG } from '@/action-menu/actions/record-actions/constants/WorkspaceMembersActionsConfig';
import { type ActionConfig } from '@/action-menu/actions/types/ActionConfig';
import { CoreObjectNameSingular } from '@/object-metadata/types/CoreObjectNameSingular';
import { type ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem';
import { isDefined } from 'twenty-shared/utils';
export const getActionConfig = ({
objectMetadataItem,
}: {
objectMetadataItem?: ObjectMetadataItem;
}): Record<string, ActionConfig> => {
if (!isDefined(objectMetadataItem)) {
return {};
}
switch (objectMetadataItem.nameSingular) {
case CoreObjectNameSingular.Dashboard: {
return DASHBOARD_ACTIONS_CONFIG;
}
case CoreObjectNameSingular.Workflow: {
return WORKFLOW_ACTIONS_CONFIG;
}
case CoreObjectNameSingular.WorkflowVersion: {
return WORKFLOW_VERSIONS_ACTIONS_CONFIG;
}
case CoreObjectNameSingular.WorkflowRun: {
return WORKFLOW_RUNS_ACTIONS_CONFIG;
}
case CoreObjectNameSingular.WorkspaceMember: {
return WORKSPACE_MEMBERS_ACTIONS_CONFIG;
}
case CoreObjectNameSingular.Company: {
return DEFAULT_RECORD_ACTIONS_CONFIG;
}
default: {
return DEFAULT_RECORD_ACTIONS_CONFIG;
}
}
};