@@ -1248,6 +1248,7 @@ export enum FeatureFlagKey {
|
||||
IS_RELATION_CONNECT_ENABLED = 'IS_RELATION_CONNECT_ENABLED',
|
||||
IS_STRIPE_INTEGRATION_ENABLED = 'IS_STRIPE_INTEGRATION_ENABLED',
|
||||
IS_UNIQUE_INDEXES_ENABLED = 'IS_UNIQUE_INDEXES_ENABLED',
|
||||
IS_WORKFLOW_RUN_STOPPAGE_ENABLED = 'IS_WORKFLOW_RUN_STOPPAGE_ENABLED',
|
||||
IS_WORKSPACE_MIGRATION_V2_ENABLED = 'IS_WORKSPACE_MIGRATION_V2_ENABLED'
|
||||
}
|
||||
|
||||
|
||||
@@ -1212,6 +1212,7 @@ export enum FeatureFlagKey {
|
||||
IS_RELATION_CONNECT_ENABLED = 'IS_RELATION_CONNECT_ENABLED',
|
||||
IS_STRIPE_INTEGRATION_ENABLED = 'IS_STRIPE_INTEGRATION_ENABLED',
|
||||
IS_UNIQUE_INDEXES_ENABLED = 'IS_UNIQUE_INDEXES_ENABLED',
|
||||
IS_WORKFLOW_RUN_STOPPAGE_ENABLED = 'IS_WORKFLOW_RUN_STOPPAGE_ENABLED',
|
||||
IS_WORKSPACE_MIGRATION_V2_ENABLED = 'IS_WORKSPACE_MIGRATION_V2_ENABLED'
|
||||
}
|
||||
|
||||
|
||||
+7
-2
@@ -27,8 +27,13 @@ export const WORKFLOW_RUNS_ACTIONS_CONFIG = inheritActionsFromDefaultConfig({
|
||||
type: ActionType.Standard,
|
||||
scope: ActionScope.RecordSelection,
|
||||
Icon: IconPlayerStop,
|
||||
shouldBeRegistered: ({ selectedRecord }) => {
|
||||
return selectedRecord?.status === 'RUNNING';
|
||||
shouldBeRegistered: ({
|
||||
selectedRecord,
|
||||
isWorkflowRunStoppageEnabled,
|
||||
}) => {
|
||||
return (
|
||||
selectedRecord?.status === 'RUNNING' && isWorkflowRunStoppageEnabled
|
||||
);
|
||||
},
|
||||
availableOn: [
|
||||
ActionViewType.SHOW_PAGE,
|
||||
|
||||
+1
@@ -26,4 +26,5 @@ export type ShouldBeRegisteredFunctionParams = {
|
||||
objectMetadataItemNameSingular: string,
|
||||
) => boolean;
|
||||
forceRegisteredActionsByKey: Record<string, boolean | undefined>;
|
||||
isWorkflowRunStoppageEnabled: boolean;
|
||||
};
|
||||
|
||||
+6
@@ -14,8 +14,10 @@ import { useObjectPermissionsForObject } from '@/object-record/hooks/useObjectPe
|
||||
import { hasAnySoftDeleteFilterOnViewComponentSelector } from '@/object-record/record-filter/states/hasAnySoftDeleteFilterOnView';
|
||||
import { recordStoreFamilyState } from '@/object-record/record-store/states/recordStoreFamilyState';
|
||||
import { useRecoilComponentValue } from '@/ui/utilities/state/component-state/hooks/useRecoilComponentValue';
|
||||
import { useIsFeatureEnabled } from '@/workspace/hooks/useIsFeatureEnabled';
|
||||
import { useContext } from 'react';
|
||||
import { useRecoilCallback, useRecoilValue } from 'recoil';
|
||||
import { FeatureFlagKey } from '~/generated/graphql';
|
||||
|
||||
export const useShouldActionBeRegisteredParams = ({
|
||||
objectMetadataItem,
|
||||
@@ -23,6 +25,9 @@ export const useShouldActionBeRegisteredParams = ({
|
||||
objectMetadataItem?: ObjectMetadataItem;
|
||||
}): ShouldBeRegisteredFunctionParams => {
|
||||
const { sortedFavorites: favorites } = useFavorites();
|
||||
const isWorkflowRunStoppageEnabled =
|
||||
useIsFeatureEnabled(FeatureFlagKey.IS_WORKFLOW_RUN_STOPPAGE_ENABLED) ??
|
||||
false;
|
||||
|
||||
const contextStoreTargetedRecordsRule = useRecoilComponentValue(
|
||||
contextStoreTargetedRecordsRuleComponentState,
|
||||
@@ -119,5 +124,6 @@ export const useShouldActionBeRegisteredParams = ({
|
||||
getTargetObjectReadPermission: getObjectReadPermission,
|
||||
getTargetObjectWritePermission: getObjectWritePermission,
|
||||
forceRegisteredActionsByKey,
|
||||
isWorkflowRunStoppageEnabled,
|
||||
};
|
||||
};
|
||||
|
||||
+1
@@ -20,4 +20,5 @@ export enum FeatureFlagKey {
|
||||
IS_EMAILING_DOMAIN_ENABLED = 'IS_EMAILING_DOMAIN_ENABLED',
|
||||
IS_DYNAMIC_SEARCH_FIELDS_ENABLED = 'IS_DYNAMIC_SEARCH_FIELDS_ENABLED',
|
||||
IS_COMMON_API_ENABLED = 'IS_COMMON_API_ENABLED',
|
||||
IS_WORKFLOW_RUN_STOPPAGE_ENABLED = 'IS_WORKFLOW_RUN_STOPPAGE_ENABLED',
|
||||
}
|
||||
|
||||
+1
@@ -143,6 +143,7 @@ describe('WorkspaceEntityManager', () => {
|
||||
IS_EMAILING_DOMAIN_ENABLED: false,
|
||||
IS_DYNAMIC_SEARCH_FIELDS_ENABLED: false,
|
||||
IS_COMMON_API_ENABLED: false,
|
||||
IS_WORKFLOW_RUN_STOPPAGE_ENABLED: false,
|
||||
},
|
||||
eventEmitterService: {
|
||||
emitMutationEvent: jest.fn(),
|
||||
|
||||
Reference in New Issue
Block a user