diff --git a/packages/twenty-front/src/modules/workflow/workflow-steps/workflow-actions/filter-action/components/WorkflowStepFilterFieldSelect.tsx b/packages/twenty-front/src/modules/workflow/workflow-steps/workflow-actions/filter-action/components/WorkflowStepFilterFieldSelect.tsx index 8f1b2e7078..d02ac2544a 100644 --- a/packages/twenty-front/src/modules/workflow/workflow-steps/workflow-actions/filter-action/components/WorkflowStepFilterFieldSelect.tsx +++ b/packages/twenty-front/src/modules/workflow/workflow-steps/workflow-actions/filter-action/components/WorkflowStepFilterFieldSelect.tsx @@ -56,8 +56,10 @@ export const WorkflowStepFilterFieldSelect = ({ const { getIcon } = useIcons(); - const { fieldMetadataItem: filterFieldMetadataItem } = - useFieldMetadataItemById(stepFilter.fieldMetadataId ?? ''); + const { + fieldMetadataItem: filterFieldMetadataItem, + objectMetadataItem: filterObjectMetadataItem, + } = useFieldMetadataItemById(stepFilter.fieldMetadataId ?? ''); const { getFieldMetadataItemByIdOrThrow } = useGetFieldMetadataItemByIdOrThrow(); @@ -141,17 +143,26 @@ export const WorkflowStepFilterFieldSelect = ({ return null; } + const isFullRecord = + filterFieldMetadataItem?.name === 'id' && + isDefined(filterObjectMetadataItem?.labelSingular); + const { variableLabel } = searchVariableThroughOutputSchema({ stepOutputSchema: stepsOutputSchema?.[0], rawVariableName: stepFilter.stepOutputKey, - isFullRecord: false, + isFullRecord, }); const isSelectedFieldNotFound = !isDefined(variableLabel); - const label = - isSelectedFieldNotFound || !isDefined(stepFilter.displayValue) - ? t`Select a field from a previous step` - : variableLabel; + const label = isSelectedFieldNotFound + ? t`Select a field from a previous step` + : variableLabel; + + const icon = isFullRecord + ? getIcon(filterObjectMetadataItem?.icon) + : filterFieldMetadataItem?.icon + ? getIcon(filterFieldMetadataItem.icon) + : undefined; const dropdownId = `step-filter-field-${stepFilter.id}`; @@ -182,9 +193,7 @@ export const WorkflowStepFilterFieldSelect = ({ selectedOption={{ value: stepFilter.stepOutputKey, label, - Icon: filterFieldMetadataItem?.icon - ? getIcon(filterFieldMetadataItem.icon) - : undefined, + Icon: icon, }} isDisabled={true} /> @@ -202,11 +211,9 @@ export const WorkflowStepFilterFieldSelect = ({ clickableComponent={ diff --git a/packages/twenty-front/src/modules/workflow/workflow-steps/workflow-actions/filter-action/components/WorkflowStepFilterValueInput.tsx b/packages/twenty-front/src/modules/workflow/workflow-steps/workflow-actions/filter-action/components/WorkflowStepFilterValueInput.tsx index 01666b84e9..f28a0bf4c2 100644 --- a/packages/twenty-front/src/modules/workflow/workflow-steps/workflow-actions/filter-action/components/WorkflowStepFilterValueInput.tsx +++ b/packages/twenty-front/src/modules/workflow/workflow-steps/workflow-actions/filter-action/components/WorkflowStepFilterValueInput.tsx @@ -116,6 +116,7 @@ export const WorkflowStepFilterValueInput = ({ onChange={handleValueChange} VariablePicker={WorkflowVariablePicker} objectNameSingular={objectMetadataItem.nameSingular} + disabled={readonly} /> ); }