Baptiste Devessier
2025-04-24 17:02:26 +02:00
committed by GitHub
parent 6a75420285
commit 48e2581581
4 changed files with 34 additions and 11 deletions

View File

@ -25,6 +25,7 @@ import { isFieldSelect } from '@/object-record/record-field/types/guards/isField
import { isFieldSelectValue } from '@/object-record/record-field/types/guards/isFieldSelectValue'; import { isFieldSelectValue } from '@/object-record/record-field/types/guards/isFieldSelectValue';
import { recordStoreFamilySelector } from '@/object-record/record-store/states/selectors/recordStoreFamilySelector'; import { recordStoreFamilySelector } from '@/object-record/record-store/states/selectors/recordStoreFamilySelector';
import { isWorkflowRunJsonField } from '@/object-record/record-field/meta-types/utils/isWorkflowRunJsonField';
import { isFieldArray } from '@/object-record/record-field/types/guards/isFieldArray'; import { isFieldArray } from '@/object-record/record-field/types/guards/isFieldArray';
import { isFieldArrayValue } from '@/object-record/record-field/types/guards/isFieldArrayValue'; import { isFieldArrayValue } from '@/object-record/record-field/types/guards/isFieldArrayValue';
import { isFieldRichText } from '@/object-record/record-field/types/guards/isFieldRichText'; import { isFieldRichText } from '@/object-record/record-field/types/guards/isFieldRichText';
@ -126,6 +127,12 @@ export const usePersistField = () => {
const fieldIsArray = const fieldIsArray =
isFieldArray(fieldDefinition) && isFieldArrayValue(valueToPersist); isFieldArray(fieldDefinition) && isFieldArrayValue(valueToPersist);
const isUnpersistableRawJsonField = isWorkflowRunJsonField({
objectMetadataNameSingular:
fieldDefinition.metadata.objectMetadataNameSingular,
fieldName: fieldDefinition.metadata.fieldName,
});
const isValuePersistable = const isValuePersistable =
fieldIsRelationToOneObject || fieldIsRelationToOneObject ||
fieldIsText || fieldIsText ||
@ -142,7 +149,7 @@ export const usePersistField = () => {
fieldIsSelect || fieldIsSelect ||
fieldIsMultiSelect || fieldIsMultiSelect ||
fieldIsAddress || fieldIsAddress ||
fieldIsRawJson || (fieldIsRawJson && !isUnpersistableRawJsonField) ||
fieldIsArray || fieldIsArray ||
fieldIsRichText || fieldIsRichText ||
fieldIsRichTextV2; fieldIsRichTextV2;

View File

@ -1,6 +1,6 @@
import styled from '@emotion/styled'; import styled from '@emotion/styled';
import { CoreObjectNameSingular } from '@/object-metadata/types/CoreObjectNameSingular'; import { isWorkflowRunJsonField } from '@/object-record/record-field/meta-types/utils/isWorkflowRunJsonField';
import { import {
FieldInputClickOutsideEvent, FieldInputClickOutsideEvent,
FieldInputEvent, FieldInputEvent,
@ -131,13 +131,11 @@ export const RawJsonFieldInput = ({
[handleShiftTab, draftValue], [handleShiftTab, draftValue],
); );
// FIXME: This is temporary. We'll soon introduce a new display mode for all fields and we'll have to remove this code. const showEditingButton = !isWorkflowRunJsonField({
const isWorkflowRunOutputField = objectMetadataNameSingular:
fieldDefinition.metadata.objectMetadataNameSingular === fieldDefinition.metadata.objectMetadataNameSingular,
CoreObjectNameSingular.WorkflowRun && fieldName: fieldDefinition.metadata.fieldName,
fieldDefinition.metadata.fieldName === 'output'; });
const showEditingButton = !isWorkflowRunOutputField;
const handleStartEditing = () => { const handleStartEditing = () => {
setIsEditing(true); setIsEditing(true);

View File

@ -0,0 +1,15 @@
import { CoreObjectNameSingular } from '@/object-metadata/types/CoreObjectNameSingular';
// FIXME: This is temporary. We'll soon introduce a new display mode for all fields and we'll have to remove this code.
export const isWorkflowRunJsonField = ({
objectMetadataNameSingular,
fieldName,
}: {
fieldName: string | undefined;
objectMetadataNameSingular: string | undefined;
}) => {
return (
objectMetadataNameSingular === CoreObjectNameSingular.WorkflowRun &&
(fieldName === 'output' || fieldName === 'context')
);
};

View File

@ -1,5 +1,6 @@
import { CoreObjectNameSingular } from '@/object-metadata/types/CoreObjectNameSingular'; import { CoreObjectNameSingular } from '@/object-metadata/types/CoreObjectNameSingular';
import { isWorkflowSubObjectMetadata } from '@/object-metadata/utils/isWorkflowSubObjectMetadata'; import { isWorkflowSubObjectMetadata } from '@/object-metadata/utils/isWorkflowSubObjectMetadata';
import { isWorkflowRunJsonField } from '@/object-record/record-field/meta-types/utils/isWorkflowRunJsonField';
import { isFieldActor } from '@/object-record/record-field/types/guards/isFieldActor'; import { isFieldActor } from '@/object-record/record-field/types/guards/isFieldActor';
import { isFieldRichText } from '@/object-record/record-field/types/guards/isFieldRichText'; import { isFieldRichText } from '@/object-record/record-field/types/guards/isFieldRichText';
@ -26,8 +27,10 @@ export const isFieldValueReadOnly = ({
} }
if ( if (
objectNameSingular === CoreObjectNameSingular.WorkflowRun && isWorkflowRunJsonField({
fieldName === 'output' objectMetadataNameSingular: objectNameSingular,
fieldName,
})
) { ) {
return false; return false;
} }