migration: remove @vue/compat + update to vue 3.4.21

This commit is contained in:
axolotle 2024-03-12 04:32:20 +01:00
parent 23594bc338
commit 1d2aa3387d
86 changed files with 3 additions and 123 deletions

View file

@ -15,14 +15,13 @@
"dependencies": {
"@fontsource/fira-code": "^5.0.17",
"@fontsource/firago": "^5.0.7",
"@vue/compat": "3.3.4",
"@vuelidate/core": "^2.0.3",
"@vuelidate/validators": "^2.0.4",
"bootstrap-vue": "^2.23.1",
"date-fns": "^3.3.1",
"fork-awesome": "^1.2.0",
"simple-evaluate": "^1.4.6",
"vue": "3.3.4",
"vue": "^3.4.21",
"vue-i18n": "^9.10.1",
"vue-router": "^4.3.0",
"vue-showdown": "^4.2.0",

View file

@ -101,7 +101,6 @@ import { mapGetters } from 'vuex'
import { HistoryConsole, ViewLockOverlay } from '@/views/_partials'
export default {
compatConfig: { MODE: 3 },
name: 'App',
components: {

View file

@ -39,7 +39,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'AdressInputSelect',
inheritAttrs: false,

View file

@ -23,7 +23,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'CardCollapse',
props: {

View file

@ -5,7 +5,6 @@ import { h } from 'vue'
import { BCardGroup } from 'bootstrap-vue'
export default {
compatConfig: { MODE: 3 },
name: 'CardDeckFeed',
props: {

View file

@ -54,7 +54,6 @@
import { filterObject } from '@/helpers/commons'
export default {
compatConfig: { MODE: 3 },
name: 'ConfigPanel',
props: {

View file

@ -32,7 +32,6 @@ import { defineAsyncComponent } from 'vue'
import { useVuelidate } from '@vuelidate/core'
export default {
compatConfig: { MODE: 3 },
name: 'ConfigPanels',
inheritAttrs: false,

View file

@ -6,7 +6,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'LazyRenderer',
props: {

View file

@ -24,7 +24,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'MessageListGroup',
props: {

View file

@ -49,7 +49,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'QueryHeader',
props: {

View file

@ -45,7 +45,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'RecursiveListGroup',
props: {

View file

@ -37,7 +37,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'RoutableTabs',
// Thanks to `v-bind="$attrs"` and `inheritAttrs: false`, this component can forward

View file

@ -32,7 +32,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'AbstractForm',
props: {

View file

@ -37,7 +37,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'CardForm',
props: {

View file

@ -16,7 +16,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'DescriptionRow',
props: {

View file

@ -24,7 +24,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'ExplainWhat',
props: {

View file

@ -49,7 +49,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'FormField',
inheritAttrs: false,

View file

@ -13,7 +13,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'ReadOnlyField',
inheritAttrs: false,

View file

@ -16,7 +16,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'TopBar',
props: {

View file

@ -33,7 +33,6 @@
import api from '@/api'
export default {
compatConfig: { MODE: 3 },
name: 'ViewBase',
props: {

View file

@ -57,7 +57,6 @@
<script>
export default {
compatConfig: { MODE: 3, INSTANCE_LISTENERS: false },
name: 'ViewSearch',
props: {

View file

@ -18,7 +18,6 @@
import { DEFAULT_STATUS_ICON } from '@/helpers/yunohostArguments'
export default {
compatConfig: { MODE: 3 },
name: 'YAlert',
props: {

View file

@ -20,7 +20,6 @@
import { mapGetters } from 'vuex'
export default {
compatConfig: { MODE: 3 },
name: 'YBreadcrumb',
computed: {

View file

@ -56,7 +56,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'YCard',
props: {

View file

@ -7,7 +7,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'YIcon',
props: {
iname: { type: String, required: true },

View file

@ -14,7 +14,6 @@
import { DEFAULT_STATUS_ICON } from '@/helpers/yunohostArguments'
export default {
compatConfig: { MODE: 3 },
name: 'YListGroupItem',
props: {

View file

@ -6,7 +6,6 @@
import { mapGetters } from 'vuex'
export default {
compatConfig: { MODE: 3 },
name: 'YSpinner',
computed: {

View file

@ -13,7 +13,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'ButtonItem',
props: {

View file

@ -13,7 +13,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'CheckboxItem',
props: {

View file

@ -6,7 +6,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'DisplayTextItem',
props: {

View file

@ -30,7 +30,6 @@
import { getFileContent } from '@/helpers/commons'
export default {
compatConfig: { MODE: 3 },
name: 'FileItem',
props: {

View file

@ -18,7 +18,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'InputItem',
props: {

View file

@ -4,7 +4,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'MarkdownItem',
props: {

View file

@ -12,7 +12,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'ReadOnlyAlertItem',
props: {

View file

@ -11,7 +11,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'SelectItem',
props: {

View file

@ -16,7 +16,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'TagsItem',
props: {

View file

@ -93,7 +93,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'TagsSelectizeItem',
inheritAttrs: false,

View file

@ -13,7 +13,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'TextAreaItem',
props: {

View file

@ -21,7 +21,6 @@
import { randint } from '@/helpers/commons'
export default {
compatConfig: { MODE: 3 },
name: 'CardButtonsSkeleton',
props: {

View file

@ -47,7 +47,6 @@
import { randint } from '@/helpers/commons'
export default {
compatConfig: { MODE: 3 },
name: 'CardFormSkeleton',
props: {

View file

@ -19,7 +19,6 @@
import { randint } from '@/helpers/commons'
export default {
compatConfig: { MODE: 3 },
name: 'CardInfoSkeleton',
props: {

View file

@ -23,7 +23,6 @@
import { randint } from '@/helpers/commons'
export default {
compatConfig: { MODE: 3 },
name: 'CardListSkeleton',
props: {

View file

@ -11,7 +11,6 @@
import { randint } from '@/helpers/commons'
export default {
compatConfig: { MODE: 3 },
name: 'ListGroupSkeleton',
props: {

View file

@ -1,4 +1,4 @@
import { createApp, configureCompat } from 'vue'
import { createApp } from 'vue'
import App from './App.vue'
import BootstrapVue from 'bootstrap-vue'
import { VueShowdownPlugin } from 'vue-showdown'
@ -18,31 +18,6 @@ app.use(store)
app.use(router)
app.use(i18n)
configureCompat({
MODE: 2,
// warnings we can do something about should be fixed
// next warnings are suppressed because those come from bootstrap-vue (vue2)
INSTANCE_EVENT_EMITTER: 'suppress-warning',
COMPONENT_FUNCTIONAL: 'suppress-warning',
RENDER_FUNCTION: 'suppress-warning',
GLOBAL_EXTEND: 'suppress-warning',
GLOBAL_MOUNT: 'suppress-warning',
WATCH_ARRAY: 'suppress-warning',
GLOBAL_PROTOTYPE: 'suppress-warning',
INSTANCE_SCOPED_SLOTS: 'suppress-warning',
INSTANCE_LISTENERS: 'suppress-warning',
OPTIONS_DATA_MERGE: 'suppress-warning',
OPTIONS_BEFORE_DESTROY: 'suppress-warning',
INSTANCE_ATTRS_CLASS_STYLE: 'suppress-warning',
CUSTOM_DIR: 'suppress-warning',
// TODO
// ATTR_FALSE_VALUE: 'suppress-warning',
// ATTR_ENUMERATED_COERCION
// ATTR_FALSE_VALUE
// COMPONENT_V_MODEL: 'suppress-warning',
// COMPILER_V_BIND_SYNC
})
// Styles are imported in `src/App.vue` <style>
app.use(BootstrapVue, {
BSkeleton: { animation: 'none' },

View file

@ -16,7 +16,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'HomeView',
data() {

View file

@ -39,7 +39,6 @@ import { useVuelidate } from '@vuelidate/core'
import { alphalownumdot_, required, minLength } from '@/helpers/validators'
export default {
compatConfig: { MODE: 3 },
name: 'LoginView',
props: {

View file

@ -104,7 +104,6 @@ import {
} from '@/helpers/validators'
export default {
compatConfig: { MODE: 3 },
name: 'PostInstall',
components: {

View file

@ -129,7 +129,6 @@ import {
} from '@/helpers/validators'
export default {
compatConfig: { MODE: 3 },
name: 'DomainForm',
props: {

View file

@ -54,7 +54,6 @@
import MessageListGroup from '@/components/MessageListGroup.vue'
export default {
compatConfig: { MODE: 3 },
name: 'ErrorDisplay',
components: {

View file

@ -94,7 +94,6 @@ import QueryHeader from '@/components/QueryHeader.vue'
import MessageListGroup from '@/components/MessageListGroup.vue'
export default {
compatConfig: { MODE: 3 },
name: 'HistoryConsole',
components: {

View file

@ -43,7 +43,6 @@ import api from '@/api'
import LoginView from '@/views/LoginView.vue'
export default {
compatConfig: { MODE: 3 },
name: 'ReconnectingDisplay',
components: {

View file

@ -30,7 +30,6 @@ import {
import QueryHeader from '@/components/QueryHeader.vue'
export default {
compatConfig: { MODE: 3 },
name: 'ViewLockOverlay',
components: {

View file

@ -30,7 +30,6 @@
import MessageListGroup from '@/components/MessageListGroup.vue'
export default {
compatConfig: { MODE: 3 },
name: 'WaitingDisplay',
components: {

View file

@ -13,7 +13,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'WarningDisplay',
props: {

View file

@ -227,7 +227,6 @@ import { required, appRepoUrl } from '@/helpers/validators'
import { randint } from '@/helpers/commons'
export default {
compatConfig: { MODE: 3 },
name: 'AppCatalog',
components: {

View file

@ -377,7 +377,6 @@ import {
import ConfigPanels from '@/components/ConfigPanels.vue'
export default {
compatConfig: { MODE: 3 },
name: 'AppInfo',
components: {

View file

@ -217,7 +217,6 @@ import {
import CardCollapse from '@/components/CardCollapse.vue'
export default {
compatConfig: { MODE: 3 },
name: 'AppInstall',
components: {

View file

@ -39,7 +39,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'AppList',
data() {

View file

@ -127,7 +127,6 @@
import api from '@/api'
export default {
compatConfig: { MODE: 3 },
name: 'BackupCreate',
props: {

View file

@ -142,7 +142,6 @@ import { humanSize } from '@/helpers/filters/human'
import { isEmptyValue } from '@/helpers/commons'
export default {
compatConfig: { MODE: 3 },
name: 'BackupInfo',
props: {

View file

@ -49,7 +49,6 @@ import { distanceToNow, readableDate } from '@/helpers/filters/date'
import { humanSize } from '@/helpers/filters/human'
export default {
compatConfig: { MODE: 3 },
name: 'BackupList',
props: {

View file

@ -24,7 +24,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'BackupView',
data() {

View file

@ -153,7 +153,6 @@ import { distanceToNow } from '@/helpers/filters/date'
import { DEFAULT_STATUS_ICON } from '@/helpers/yunohostArguments'
export default {
compatConfig: { MODE: 3 },
name: 'DiagnosisView',
data() {

View file

@ -14,7 +14,6 @@ import api from '@/api'
import { DomainForm } from '@/views/_partials'
export default {
compatConfig: { MODE: 3 },
name: 'DomainAdd',
data() {

View file

@ -148,7 +148,6 @@ import api from '@/api'
import { isEmptyValue } from '@/helpers/commons'
export default {
compatConfig: { MODE: 3 },
name: 'DomainDns',
props: {

View file

@ -149,7 +149,6 @@ import ConfigPanels from '@/components/ConfigPanels.vue'
import DomainDns from './DomainDns.vue'
export default {
compatConfig: { MODE: 3 },
name: 'DomainInfo',
components: {

View file

@ -53,7 +53,6 @@ import { mapGetters } from 'vuex'
import RecursiveListGroup from '@/components/RecursiveListGroup.vue'
export default {
compatConfig: { MODE: 3 },
name: 'DomainList',
components: {

View file

@ -22,7 +22,6 @@ import api from '@/api'
import { required, alphalownumdot_ } from '@/helpers/validators'
export default {
compatConfig: { MODE: 3 },
name: 'GroupCreate',
setup() {

View file

@ -140,7 +140,6 @@ import TagsSelectizeItem from '@/components/globals/formItems/TagsSelectizeItem.
// TODO add global search with type (search by: group, user, permission)
// TODO add vuex store update on inputs ?
export default {
compatConfig: { MODE: 3 },
name: 'GroupList',
components: {

View file

@ -86,7 +86,6 @@ import api from '@/api'
import { distanceToNow } from '@/helpers/filters/date'
export default {
compatConfig: { MODE: 3 },
name: 'ServiceInfo',
props: {

View file

@ -46,7 +46,6 @@
import { distanceToNow } from '@/helpers/filters/date'
export default {
compatConfig: { MODE: 3 },
name: 'ServiceList',
data() {

View file

@ -125,7 +125,6 @@ import api from '@/api'
import { required, integer, between } from '@/helpers/validators'
export default {
compatConfig: { MODE: 3 },
name: 'ToolFirewall',
setup() {

View file

@ -15,7 +15,6 @@
<script>
export default {
compatConfig: { MODE: 3 },
name: 'ToolList',
data() {

View file

@ -78,7 +78,6 @@ import { escapeHtml } from '@/helpers/commons'
import { readableDate } from '@/helpers/filters/date'
export default {
compatConfig: { MODE: 3 },
name: 'ToolLog',
props: {

View file

@ -29,7 +29,6 @@
import { distanceToNow, readableDate } from '@/helpers/filters/date'
export default {
compatConfig: { MODE: 3 },
name: 'ToolLogs',
data() {

View file

@ -91,7 +91,6 @@ import api from '@/api'
// FIXME not tested with pending migrations (disclaimer and stuff)
export default {
compatConfig: { MODE: 3 },
name: 'ToolMigrations',
data() {

View file

@ -37,7 +37,6 @@
import api from '@/api'
export default {
compatConfig: { MODE: 3 },
name: 'ToolPower',
methods: {

View file

@ -23,7 +23,6 @@ import {
import ConfigPanels from '@/components/ConfigPanels.vue'
export default {
compatConfig: { MODE: 3 },
name: 'ToolSettingsConfig',
components: {

View file

@ -27,7 +27,6 @@ function mapStoreGetSet(props = [], action = 'commit') {
}
export default {
compatConfig: { MODE: 3 },
name: 'ToolWebadmin',
data() {

View file

@ -144,7 +144,6 @@ import { mapGetters } from 'vuex'
import CardCollapse from '@/components/CardCollapse.vue'
export default {
compatConfig: { MODE: 3 },
name: 'SystemUpdate',
components: {

View file

@ -84,7 +84,6 @@ import {
} from '@/helpers/validators'
export default {
compatConfig: { MODE: 3 },
name: 'UserCreate',
setup() {

View file

@ -134,7 +134,6 @@ import {
import AdressInputSelect from '@/components/AdressInputSelect.vue'
export default {
compatConfig: { MODE: 3 },
name: 'UserEdit',
props: {

View file

@ -29,7 +29,6 @@ import { formatFormData } from '@/helpers/yunohostArguments'
import { required } from '@/helpers/validators'
export default {
compatConfig: { MODE: 3 },
name: 'UserImport',
setup() {

View file

@ -106,7 +106,6 @@
import api from '@/api'
export default {
compatConfig: { MODE: 3 },
name: 'UserInfo',
props: {

View file

@ -56,7 +56,6 @@
import { mapGetters } from 'vuex'
export default {
compatConfig: { MODE: 3 },
name: 'UserList',
data() {

View file

@ -23,7 +23,6 @@ export default defineConfig(({ command, mode }) => {
},
resolve: {
alias: [
{ find: 'vue', replacement: '@vue/compat' },
// this is required for the SCSS modules imports with `~` (node_modules)
{
find: /^~(.*)$/,
@ -47,17 +46,7 @@ export default defineConfig(({ command, mode }) => {
},
},
},
plugins: [
createVuePlugin({
template: {
compilerOptions: {
compatConfig: {
MODE: 2,
},
},
},
}),
],
plugins: [createVuePlugin()],
build: {
rollupOptions: {
output: {