feat(astrolabe): upgrade to Vue 3 and @nextcloud/vue 9

- Merge renovate/major-vue-monorepo: Vue 2.7.16 → 3.5.26
- Merge renovate/nextcloud-vue-9.x: @nextcloud/vue 8.29.2 → 9.3.1
- Update component imports to new @nextcloud/vue v9 paths
- Replace .sync modifiers with v-model:prop (Vue 3 syntax)
- Replace beforeDestroy with beforeUnmount lifecycle hook
- Remove Vue.() usage (automatic reactivity in Vue 3)
- Update main.js to use createApp() instead of Vue.extend()
- Add @vitejs/plugin-vue and configure Vite for Vue 3
- All builds passing, ready for admin UX improvements
This commit is contained in:
Chris Coutinho
2025-12-23 00:47:21 +01:00
parent 47095fabcd
commit d7c99fcc69
6 changed files with 74 additions and 27 deletions
+23 -5
View File
@@ -1,7 +1,25 @@
import { createAppConfig } from '@nextcloud/vite-config'
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from 'path'
export default createAppConfig({
main: 'src/main.js',
adminSettings: 'src/adminSettings.js',
personalSettings: 'src/personalSettings.js',
export default defineConfig({
plugins: [vue()],
build: {
outDir: 'js',
emptyOutDir: false,
rollupOptions: {
input: {
main: resolve(__dirname, 'src/main.js'),
'astrolabe-adminSettings': resolve(__dirname, 'src/adminSettings.js'),
'astrolabe-personalSettings': resolve(__dirname, 'src/personalSettings.js'),
},
output: {
entryFileNames: '[name].mjs',
chunkFileNames: '[name]-[hash].chunk.mjs',
assetFileNames: '[name][extname]',
},
},
sourcemap: true,
minify: 'terser',
},
})