From f1bfd0db31192ba8eccfde807207b1ec90b42194 Mon Sep 17 00:00:00 2001 From: kevinkosterr Date: Mon, 19 May 2025 21:32:07 +0200 Subject: [PATCH 1/7] feat(FormGenerator): emit field-validated when field is validated --- src/FormGenerator.vue | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/FormGenerator.vue b/src/FormGenerator.vue index 4b99637..333c5f3 100644 --- a/src/FormGenerator.vue +++ b/src/FormGenerator.vue @@ -3,7 +3,7 @@ import { computed, ref } from 'vue' import { resetObjectProperties, toUniqueArray } from '@/helpers' import FormGroup from './FormGroup.vue' -const emits = defineEmits([ 'submit' ]) +const emits = defineEmits([ 'submit', 'field-validated' ]) const props = defineProps({ id: { @@ -55,6 +55,7 @@ const updateGeneratorModel = ({ model, value }) => { * @param field field schema object that has been validated. */ const onFieldValidated = ({ fieldErrors, field }) => { + emits('field-validated', { fieldErrors, field }) if (!fieldErrors.length) { if (!(field.model in formErrors.value)) return else { @@ -82,7 +83,7 @@ const onReset = () => { props.model = resetObjectProperties(props.model) } -defineExpose({ hasErrors }) +defineExpose({ hasErrors, formErrors }) - \ No newline at end of file diff --git a/src/fields/core/FieldSelect.vue b/src/fields/core/FieldSelect.vue index dcc662a..06453b3 100644 --- a/src/fields/core/FieldSelect.vue +++ b/src/fields/core/FieldSelect.vue @@ -64,39 +64,43 @@ - \ No newline at end of file diff --git a/src/fields/core/FieldText.vue b/src/fields/core/FieldText.vue index 01cb397..714fe04 100644 --- a/src/fields/core/FieldText.vue +++ b/src/fields/core/FieldText.vue @@ -1,27 +1,30 @@ -