diff --git a/packages/core/client/src/flow/models/data-blocks/form/QuickEditForm.tsx b/packages/core/client/src/flow/models/data-blocks/form/QuickEditForm.tsx index f3c5ba64ab..41fc8b9fa4 100644 --- a/packages/core/client/src/flow/models/data-blocks/form/QuickEditForm.tsx +++ b/packages/core/client/src/flow/models/data-blocks/form/QuickEditForm.tsx @@ -162,8 +162,7 @@ QuickEditForm.registerFlow({ } const collectionField = ctx.model.collection.getField(fieldPath) as CollectionField; if (collectionField) { - const FieldModels = collectionField.getSubclassesOf('EditableFieldModel'); - const use = FieldModels.keys().next().value || 'EditableFieldModel'; + const use = collectionField.getFirstSubclassNameOf('EditableFieldModel') || 'EditableFieldModel'; ctx.model.addSubModel('fields', { use, stepParams: { diff --git a/packages/core/flow-engine/src/data-source/index.ts b/packages/core/flow-engine/src/data-source/index.ts index 951e3ef360..580887ea1b 100644 --- a/packages/core/flow-engine/src/data-source/index.ts +++ b/packages/core/flow-engine/src/data-source/index.ts @@ -461,6 +461,11 @@ export class CollectionField { return isFieldInterfaceMatch(M['supportedFieldInterfaces'], this.interface); }); } + + getFirstSubclassNameOf(baseClass: string) { + const subclasses = this.getSubclassesOf(baseClass); + return subclasses.keys().next().value; + } } /**