diff --git a/dashboard/src/components/SetupAccount.vue b/dashboard/src/components/SetupAccount.vue index 5e10ce91f..2b16c0479 100644 --- a/dashboard/src/components/SetupAccount.vue +++ b/dashboard/src/components/SetupAccount.vue @@ -36,6 +36,15 @@ watch(password, () => { formError.value.password = null; }); +const isFormValid = ref(false); +function validateForm() { + isFormValid.value = form.value.checkValidity(); + + if (isFormValid.value) { + if (password.value !== passwordRepeat.value) isFormValid.value = false; + } +} + async function onSubmit() { if (!form.value.reportValidity()) return; @@ -112,7 +121,7 @@ onMounted(async () => {
{{ formError.generic }}
-
+
@@ -145,7 +154,7 @@ onMounted(async () => {
- +
diff --git a/dashboard/src/views/VolumesView.vue b/dashboard/src/views/VolumesView.vue index c0c629825..9ddedfbe0 100644 --- a/dashboard/src/views/VolumesView.vue +++ b/dashboard/src/views/VolumesView.vue @@ -4,7 +4,7 @@ import { useI18n } from 'vue-i18n'; const i18n = useI18n(); const t = i18n.t; -import { computed, ref, useTemplateRef, onMounted } from 'vue'; +import { ref, useTemplateRef, onMounted } from 'vue'; import { Button, Menu, Checkbox, Dialog, SingleSelect, FormGroup, InputDialog, NumberInput, TableView, TextInput, MaskedInput } from '@cloudron/pankow'; import Section from '../components/Section.vue'; import StateLED from '../components/StateLED.vue';