From 7cf4193083c89f6fd475acd4dbdceda66178f9bd Mon Sep 17 00:00:00 2001 From: Lukas Lihotzki Date: Sun, 12 Mar 2023 00:28:01 +0100 Subject: [PATCH 1/7] refactor(webapp): remove unused dependency --- www/webapp/package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/www/webapp/package.json b/www/webapp/package.json index 48a0f5447..7f11f49f5 100644 --- a/www/webapp/package.json +++ b/www/webapp/package.json @@ -13,7 +13,6 @@ "@mdi/font": "^6.9.96", "axios": "^0.27.2", "core-js": "^3.27.1", - "javascript-time-ago": "^2.5.9", "pinia": "^2.0.30", "vue": "~2.7.14", "vue-clipboard2": "^0.3.3", From eaee43f5bba881b8ea92dc7df97b0805ee66868e Mon Sep 17 00:00:00 2001 From: Lukas Lihotzki Date: Sun, 12 Mar 2023 00:28:14 +0100 Subject: [PATCH 2/7] chore(webapp): update to vue 3 --- www/webapp/.eslintrc.js | 5 +-- www/webapp/package.json | 13 +++--- www/webapp/src/App.vue | 40 +++++++++---------- .../ActivateAccountActionHandler.vue | 10 ++--- .../src/components/DonateDirectDebitForm.vue | 20 +++++----- www/webapp/src/components/Field/Checkbox.vue | 4 +- .../src/components/Field/GenericText.vue | 6 +-- .../src/components/Field/GenericTextarea.vue | 6 +-- www/webapp/src/components/Field/RRSetType.vue | 4 +- www/webapp/src/components/Field/Record.vue | 2 +- .../src/components/Field/RecordList.vue | 4 +- www/webapp/src/components/Field/Switchbox.vue | 2 +- www/webapp/src/components/Field/TTL.vue | 6 +-- .../components/ResetPasswordActionHandler.vue | 2 +- www/webapp/src/views/About.vue | 6 +-- www/webapp/src/views/ChangeEmail.vue | 10 ++--- www/webapp/src/views/Confirmation.vue | 4 +- .../src/views/Console/DomainSetupDialog.vue | 2 +- .../src/views/Console/TOTPVerifyDialog.vue | 4 +- www/webapp/src/views/CrudList.vue | 26 ++++++------ www/webapp/src/views/DeleteAccount.vue | 6 +-- www/webapp/src/views/DomainSetup.vue | 24 +++++------ www/webapp/src/views/DomainSetupPage.vue | 8 ++-- www/webapp/src/views/Donate.vue | 14 +++---- www/webapp/src/views/DynSetup.vue | 22 +++++----- www/webapp/src/views/Home.vue | 38 +++++++++--------- www/webapp/src/views/Login.vue | 8 ++-- www/webapp/src/views/MFA.vue | 6 +-- www/webapp/src/views/PrivacyPolicy.vue | 2 +- www/webapp/src/views/ResetPassword.vue | 14 +++---- www/webapp/src/views/SignUp.vue | 16 ++++---- www/webapp/src/views/Terms.vue | 6 +-- www/webapp/src/views/Welcome.vue | 2 +- 33 files changed, 171 insertions(+), 171 deletions(-) diff --git a/www/webapp/.eslintrc.js b/www/webapp/.eslintrc.js index 171b20c3d..d8a4b758f 100644 --- a/www/webapp/.eslintrc.js +++ b/www/webapp/.eslintrc.js @@ -5,9 +5,8 @@ module.exports = { node: true }, extends: [ - 'plugin:vue/essential', - // 'plugin:vue/strongly-recommended', - // 'plugin:vue/recommended', + 'plugin:vue/base', + 'plugin:vuetify/base', 'eslint:recommended' ], rules: { diff --git a/www/webapp/package.json b/www/webapp/package.json index 7f11f49f5..eb4301285 100644 --- a/www/webapp/package.json +++ b/www/webapp/package.json @@ -11,15 +11,17 @@ "dependencies": { "@fontsource/roboto": "^4.5.8", "@mdi/font": "^6.9.96", + "@vue/compiler-sfc": "^3.2.47", "axios": "^0.27.2", "core-js": "^3.27.1", "pinia": "^2.0.30", - "vue": "~2.7.14", + "vue": "^3.2.47", "vue-clipboard2": "^0.3.3", - "vue-router": "~3.6.5", + "vue-router": "^4.1.6", "vue-timeago": "^5.1.3", "vuelidate": "^0.7.7", - "vuetify": "^2.6.13" + "vuetify": "^3.1.8", + "webpack-plugin-vuetify": "^2.0.1" }, "devDependencies": { "@babel/eslint-parser": "^7.19.1", @@ -29,10 +31,9 @@ "@vue/cli-service": "^5.0.8", "eslint": "^8.31.0", "eslint-plugin-vue": "^9.8.0", + "eslint-plugin-vuetify": "^2.0.0-beta.2", "sass": "~1.32.13", "sass-loader": "^13.2.0", - "vue-cli-plugin-vuetify": "^2.5.8", - "vue-template-compiler": "^2.7.14", - "vuetify-loader": "~1.9.1" + "vue-demi": "^0.13.11" } } diff --git a/www/webapp/src/App.vue b/www/webapp/src/App.vue index 719eeea01..cdf7c53de 100644 --- a/www/webapp/src/App.vue +++ b/www/webapp/src/App.vue @@ -3,7 +3,7 @@ @@ -19,14 +19,14 @@ {{item.text}} - {{item.post_icon}} + {{item.post_icon}} - + {{item.text}} - {{item.post_icon}} + {{item.post_icon}} - Create Account - Log In - Log Out + Create Account + Log In + Log Out diff --git a/www/webapp/src/components/Field/GenericText.vue b/www/webapp/src/components/Field/GenericText.vue index 926d7d0c5..5dc9d8b35 100644 --- a/www/webapp/src/components/Field/GenericText.vue +++ b/www/webapp/src/components/Field/GenericText.vue @@ -3,15 +3,15 @@ :label="label" :disabled="disabled || readonly" :error-messages="errorMessages" - :value="value" + :model-value="value" :type="type || ''" :placeholder="placeholder || (required ? '' : '(optional)')" :hint="hint" persistent-hint :required="required" :rules="[v => !required || !!v || 'Required.'].concat(rules)" - @input="changed('input', $event)" - @input.native="$emit('dirty', $event)" + @update:model-value="changed('input', $event)" + @update:model-value.native="$emit('dirty', $event)" @keyup="changed('keyup', $event)" /> diff --git a/www/webapp/src/components/Field/GenericTextarea.vue b/www/webapp/src/components/Field/GenericTextarea.vue index 56818c060..ca5464f71 100644 --- a/www/webapp/src/components/Field/GenericTextarea.vue +++ b/www/webapp/src/components/Field/GenericTextarea.vue @@ -3,15 +3,15 @@ :label="label" :disabled="disabled || readonly" :error-messages="errorMessages" - :value="value" + :model-value="value" :type="type || ''" :placeholder="required ? '' : '(optional)'" :hint="hint" persistent-hint :required="required" :rules="[v => !required || !!v || 'Required.'].concat(rules)" - @input="changed('input', $event)" - @input.native="$emit('dirty', $event)" + @update:model-value="changed('input', $event)" + @update:model-value.native="$emit('dirty', $event)" @keyup="changed('keyup', $event)" dense rows="8" diff --git a/www/webapp/src/components/Field/RRSetType.vue b/www/webapp/src/components/Field/RRSetType.vue index 8c0773ef9..28a8bf3c4 100644 --- a/www/webapp/src/components/Field/RRSetType.vue +++ b/www/webapp/src/components/Field/RRSetType.vue @@ -5,11 +5,11 @@ :error-messages="errorMessages" hint="You can also enter other types. For a full list, check the documentation." :persistent-hint="!readonly" - :value="value" + :model-value="value" :items="types" :required="required" :rules="[v => !required || !!v || 'Required.']" - @input="input($event)" + @update:model-value="input($event)" /> diff --git a/www/webapp/src/components/Field/Record.vue b/www/webapp/src/components/Field/Record.vue index d496bd14f..6bba58c80 100644 --- a/www/webapp/src/components/Field/Record.vue +++ b/www/webapp/src/components/Field/Record.vue @@ -19,7 +19,7 @@ :style="{ width: fieldWidth(index) }" :append-icon="index == fields.length-1 && !readonly && !disabled ? appendIcon : ''" @click:append="$emit('remove', $event)" - @input="inputHandler()" + @update:model-value="inputHandler()" @paste.prevent="pasteHandler($event)" @keydown.8="backspaceHandler(index, $event)" @keydown.32="spaceHandler(index, $event)" diff --git a/www/webapp/src/components/Field/RecordList.vue b/www/webapp/src/components/Field/RecordList.vue index 8bf2114b7..4c7323ea4 100644 --- a/www/webapp/src/components/Field/RecordList.vue +++ b/www/webapp/src/components/Field/RecordList.vue @@ -21,8 +21,8 @@ @click="addHandler" class="px-0 text-none" color="grey" - small - text + size="small" + variant="text" v-if="!readonly && !disabled" >mdi-plus add another value diff --git a/www/webapp/src/components/Field/Switchbox.vue b/www/webapp/src/components/Field/Switchbox.vue index bcb8b9bce..746cb94cc 100644 --- a/www/webapp/src/components/Field/Switchbox.vue +++ b/www/webapp/src/components/Field/Switchbox.vue @@ -6,7 +6,7 @@ :input-value="value" :required="required" :rules="[v => !required || !!v || 'Required.']" - @change="change" + @update:model-value="change" /> diff --git a/www/webapp/src/components/Field/TTL.vue b/www/webapp/src/components/Field/TTL.vue index c91d38c31..daa0f0791 100644 --- a/www/webapp/src/components/Field/TTL.vue +++ b/www/webapp/src/components/Field/TTL.vue @@ -3,15 +3,15 @@ :label="label" :disabled="disabled || readonly" :error-messages="errorMessages" - :value="value" + :model-value="value" type="number" max="86400" :min="min" :placeholder="required ? '' : '(optional)'" :required="required" :rules="rules" - @input="changed('input', $event)" - @input.native="$emit('dirty', $event)" + @update:model-value="changed('input', $event)" + @update:model-value.native="$emit('dirty', $event)" @keyup="changed('keyup', $event)" /> diff --git a/www/webapp/src/components/ResetPasswordActionHandler.vue b/www/webapp/src/components/ResetPasswordActionHandler.vue index d0ea9f122..f5ec5e0cf 100644 --- a/www/webapp/src/components/ResetPasswordActionHandler.vue +++ b/www/webapp/src/components/ResetPasswordActionHandler.vue @@ -15,7 +15,7 @@ tabindex="1" >
- +
-

About Us

+

About Us

Our services are operated by deSEC e.V., a registered non-profit organization in Berlin, Germany. @@ -26,7 +26,7 @@ - + diff --git a/www/webapp/src/views/ChangeEmail.vue b/www/webapp/src/views/ChangeEmail.vue index 86f7d98b8..be764d886 100644 --- a/www/webapp/src/views/ChangeEmail.vue +++ b/www/webapp/src/views/ChangeEmail.vue @@ -35,10 +35,10 @@ v-model="email" label="Current Email" prepend-icon="mdi-blank" - outline + variant="outlined" required :disabled="true" - validate-on-blur + validate-on="blur" />

-

Keep deSEC Going

+

Keep deSEC Going

To offer free DNS hosting for everyone, deSEC relies on donations only. If you like our service, please consider donating.

- Donate + Donate

diff --git a/www/webapp/src/views/Console/DomainSetupDialog.vue b/www/webapp/src/views/Console/DomainSetupDialog.vue index 3d8d1a257..c3a653050 100644 --- a/www/webapp/src/views/Console/DomainSetupDialog.vue +++ b/www/webapp/src/views/Console/DomainSetupDialog.vue @@ -8,7 +8,7 @@ > -
+
Setup Instructions for {{ domain }}
diff --git a/www/webapp/src/views/Console/TOTPVerifyDialog.vue b/www/webapp/src/views/Console/TOTPVerifyDialog.vue index ef2d68c6a..b5aa2f626 100644 --- a/www/webapp/src/views/Console/TOTPVerifyDialog.vue +++ b/www/webapp/src/views/Console/TOTPVerifyDialog.vue @@ -9,7 +9,7 @@ -
+
Verify TOTP: {{ name }}
@@ -65,7 +65,7 @@ mdi-plus @@ -84,7 +84,7 @@ - {{ headlines.create }} + {{ headlines.create }} mdi-close @@ -137,7 +137,7 @@ v-if="Object.keys(writeableAdvancedColumns).length > 0" > - + Advanced settings @@ -166,7 +166,7 @@ @@ -176,7 +176,7 @@ type="submit" color="primary" class="grow" - depressed + variant="flat" :disabled="createInhibited || !valid || createDialogWorking || createDialogSuccess" :loading="createDialogWorking" v-if="!createDialogSuccess" @@ -215,7 +215,7 @@