From 51afed5578c55ae886c72581b3635f1b84d7e076 Mon Sep 17 00:00:00 2001 From: Methapon Metanipat Date: Thu, 5 Sep 2024 16:35:51 +0700 Subject: [PATCH] fix: email should not required and fix error on empty --- .../01_branch-management/FormBranchContact.vue | 16 ++++++++++------ .../02_personnel-management/FormPerson.vue | 16 ++++++++++------ .../components/employer/EmployerFormContact.vue | 16 ++++++++++------ 3 files changed, 30 insertions(+), 18 deletions(-) diff --git a/src/components/01_branch-management/FormBranchContact.vue b/src/components/01_branch-management/FormBranchContact.vue index 778f6aed..b878cacd 100644 --- a/src/components/01_branch-management/FormBranchContact.vue +++ b/src/components/01_branch-management/FormBranchContact.vue @@ -38,12 +38,16 @@ defineProps<{ hide-bottom-space class="col-12 col-md-4" :label="$t('form.email')" - :rules="[ - (v: string) => !!v || $t('form.error.required'), - (v: string) => - /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/g.test(v) || - $t('form.error.invalid'), - ]" + :rules=" + readonly + ? undefined + : [ + (v: string) => + !v || + /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/g.test(v) || + $t('form.error.invalid'), + ] + " for="input-email" :model-value="readonly ? email || '-' : email" @update:model-value="(v) => (typeof v === 'string' ? (email = v) : '')" diff --git a/src/components/02_personnel-management/FormPerson.vue b/src/components/02_personnel-management/FormPerson.vue index 76497c54..4135c00a 100644 --- a/src/components/02_personnel-management/FormPerson.vue +++ b/src/components/02_personnel-management/FormPerson.vue @@ -268,12 +268,16 @@ watch( outlined :readonly="readonly" :label="$t('form.email')" - :rules="[ - (v: string) => !!v || $t('form.error.required'), - (v: string) => - /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/g.test(v) || - $t('form.error.invalid'), - ]" + :rules=" + readonly + ? undefined + : [ + (v: string) => + !v || + /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/g.test(v) || + $t('form.error.invalid'), + ] + " class="col-md-3 col-6" :model-value="readonly ? email || '-' : email" @update:model-value="(v) => (typeof v === 'string' ? (email = v) : '')" diff --git a/src/pages/03_customer-management/components/employer/EmployerFormContact.vue b/src/pages/03_customer-management/components/employer/EmployerFormContact.vue index d571f6a7..8110f473 100644 --- a/src/pages/03_customer-management/components/employer/EmployerFormContact.vue +++ b/src/pages/03_customer-management/components/employer/EmployerFormContact.vue @@ -31,12 +31,16 @@ const telephone = defineModel('telephone'); hide-bottom-space class="col-md-6 col-12" :label="$t('form.email')" - :rules="[ - (v: string) => !!v || $t('form.error.required'), - (v: string) => - /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/g.test(v) || - $t('form.error.invalid'), - ]" + :rules=" + readonly + ? undefined + : [ + (v: string) => + !v || + /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/g.test(v) || + $t('form.error.invalid'), + ] + " v-model="mail" />