From 55d6b0ce86f78bc5ffd51f52ee96164742b5d8ba Mon Sep 17 00:00:00 2001 From: Shivam Mishra Date: Wed, 24 Jul 2024 18:45:38 +0530 Subject: [PATCH] feat: use custom validation instead of vuelidate --- .../mixins/automations/validationsMixin.js | 44 ------------------- .../settings/automation/AddAutomationRule.vue | 6 ++- .../automation/EditAutomationRule.vue | 32 +++++--------- .../mixins/specs/automationMixin.spec.js | 11 ----- 4 files changed, 14 insertions(+), 79 deletions(-) delete mode 100644 app/javascript/dashboard/mixins/automations/validationsMixin.js diff --git a/app/javascript/dashboard/mixins/automations/validationsMixin.js b/app/javascript/dashboard/mixins/automations/validationsMixin.js deleted file mode 100644 index 4bde6b3a8..000000000 --- a/app/javascript/dashboard/mixins/automations/validationsMixin.js +++ /dev/null @@ -1,44 +0,0 @@ -import { required, requiredIf } from '@vuelidate/validators'; - -export default { - validations: { - automation: { - name: { - required, - }, - description: { - required, - }, - event_name: { - required, - }, - conditions: { - required, - $each: { - values: { - required: requiredIf(prop => { - return !( - prop.filter_operator === 'is_present' || - prop.filter_operator === 'is_not_present' - ); - }), - }, - }, - }, - actions: { - required, - $each: { - action_params: { - required: requiredIf(prop => { - return !( - prop.action_name === 'mute_conversation' || - prop.action_name === 'snooze_conversation' || - prop.action_name === 'resolve_conversation' - ); - }), - }, - }, - }, - }, - }, -}; diff --git a/app/javascript/dashboard/routes/dashboard/settings/automation/AddAutomationRule.vue b/app/javascript/dashboard/routes/dashboard/settings/automation/AddAutomationRule.vue index a1d2689c1..ce096bd3e 100644 --- a/app/javascript/dashboard/routes/dashboard/settings/automation/AddAutomationRule.vue +++ b/app/javascript/dashboard/routes/dashboard/settings/automation/AddAutomationRule.vue @@ -8,7 +8,7 @@ :label="$t('AUTOMATION.ADD.FORM.NAME.LABEL')" type="text" :class="{ error: errors.name }" - :error="errors.name || ''" + :error="errors.name ? $t('AUTOMATION.ADD.FORM.NAME.ERROR') : ''" :placeholder="$t('AUTOMATION.ADD.FORM.NAME.PLACEHOLDER')" />
diff --git a/app/javascript/dashboard/routes/dashboard/settings/automation/EditAutomationRule.vue b/app/javascript/dashboard/routes/dashboard/settings/automation/EditAutomationRule.vue index c20387474..fc648e48f 100644 --- a/app/javascript/dashboard/routes/dashboard/settings/automation/EditAutomationRule.vue +++ b/app/javascript/dashboard/routes/dashboard/settings/automation/EditAutomationRule.vue @@ -7,30 +7,22 @@ v-model="automation.name" :label="$t('AUTOMATION.ADD.FORM.NAME.LABEL')" type="text" - :class="{ error: v$.automation.name.$error }" - :error=" - v$.automation.name.$error - ? $t('AUTOMATION.ADD.FORM.NAME.ERROR') - : '' - " + :class="{ error: errors.name }" + :error="errors.name ? $t('AUTOMATION.ADD.FORM.NAME.ERROR') : ''" :placeholder="$t('AUTOMATION.ADD.FORM.NAME.PLACEHOLDER')" - @blur="v$.automation.name.$touch" />
-