refactor: 🧱 first commit to enable vue3 support
This commit is contained in:
parent
e190a9eeb6
commit
6456ccc3d0
8070
package-lock.json
generated
8070
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
27
package.json
27
package.json
@ -2,11 +2,14 @@
|
||||
"name": "repod",
|
||||
"license": "AGPL-3.0-or-later",
|
||||
"scripts": {
|
||||
"build": "NODE_ENV=production webpack --config webpack.js --progress",
|
||||
"dev": "NODE_ENV=development webpack --config webpack.js --progress",
|
||||
"watch": "NODE_ENV=development webpack --config webpack.js --progress --watch",
|
||||
"build": "vite build --mode production",
|
||||
"dev": "vite build --mode development",
|
||||
"dev:watch": "vite build --mode development --watch",
|
||||
"watch": "npm run dev:watch",
|
||||
"lint": "eslint src",
|
||||
"stylelint": "stylelint src/**/*.vue src/**/*.scss src/**/*.css"
|
||||
"lint:fix": "eslint src --fix",
|
||||
"stylelint": "stylelint src/**/*.vue src/**/*.scss src/**/*.css",
|
||||
"stylelint:fix": "stylelint src/**/*.vue src/**/*.scss src/**/*.css --fix"
|
||||
},
|
||||
"browserslist": [
|
||||
"extends @nextcloud/browserslist-config"
|
||||
@ -14,27 +17,25 @@
|
||||
"prettier": "@nextcloud/prettier-config",
|
||||
"dependencies": {
|
||||
"@nextcloud/axios": "^2.5.0",
|
||||
"@nextcloud/dialogs": "^5.3.5",
|
||||
"@nextcloud/dialogs": "github:nextcloud-libraries/nextcloud-dialogs#vue3",
|
||||
"@nextcloud/initial-state": "^2.2.0",
|
||||
"@nextcloud/l10n": "^3.1.0",
|
||||
"@nextcloud/router": "^3.0.1",
|
||||
"@nextcloud/vue": "^8.16.0",
|
||||
"@nextcloud/vite-config": "^2.2.2",
|
||||
"@nextcloud/vue": "9.0.0-alpha.5",
|
||||
"dompurify": "^3.1.6",
|
||||
"linkify-html": "^4.1.3",
|
||||
"vue": "^2",
|
||||
"pinia": "^2.2.1",
|
||||
"vue": "^3.4.37",
|
||||
"vue-material-design-icons": "^5.3.0",
|
||||
"vue-router": "^3",
|
||||
"vuex": "^3"
|
||||
"vue-router": "^4.4.3"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@nextcloud/browserslist-config": "^3.0.1",
|
||||
"@nextcloud/eslint-config": "^8.4.1",
|
||||
"@nextcloud/prettier-config": "^1.1.0",
|
||||
"@nextcloud/stylelint-config": "^3.0.1",
|
||||
"@nextcloud/webpack-vue-config": "^6.0.1",
|
||||
"eslint-config-prettier": "^9.1.0",
|
||||
"eslint-plugin-prettier": "^5.2.1",
|
||||
"eslint-webpack-plugin": "^4.2.0",
|
||||
"stylelint-webpack-plugin": "^5.0.1"
|
||||
"eslint-plugin-prettier": "^5.2.1"
|
||||
}
|
||||
}
|
||||
|
14
src/main.js
14
src/main.js
@ -1,13 +1,13 @@
|
||||
import { n, t } from '@nextcloud/l10n'
|
||||
import App from './App.vue'
|
||||
import Vue from 'vue'
|
||||
import { createApp } from 'vue'
|
||||
import router from './router.js'
|
||||
import store from './store/main.js'
|
||||
|
||||
Vue.mixin({ methods: { t, n } })
|
||||
const Vue = createApp(App)
|
||||
|
||||
const View = Vue.extend(App)
|
||||
new View({
|
||||
router,
|
||||
store,
|
||||
}).$mount('#content')
|
||||
Vue.mixin({ methods: { t, n } })
|
||||
Vue.use(router)
|
||||
Vue.use(store)
|
||||
|
||||
Vue.mount('#content')
|
||||
|
@ -1,12 +1,9 @@
|
||||
import Discover from './views/Discover.vue'
|
||||
import Feed from './views/Feed.vue'
|
||||
import Router from 'vue-router'
|
||||
import Vue from 'vue'
|
||||
import { createRouter } from 'vue-router'
|
||||
import { generateUrl } from '@nextcloud/router'
|
||||
|
||||
Vue.use(Router)
|
||||
|
||||
const router = new Router({
|
||||
const router = createRouter({
|
||||
base: generateUrl('apps/repod'),
|
||||
routes: [
|
||||
{
|
||||
|
5
vite.config.js
Normal file
5
vite.config.js
Normal file
@ -0,0 +1,5 @@
|
||||
import { createAppConfig } from '@nextcloud/vite-config'
|
||||
|
||||
export default createAppConfig({
|
||||
main: 'src/main.js',
|
||||
})
|
31
webpack.js
31
webpack.js
@ -1,31 +0,0 @@
|
||||
const webpackConfig = require('@nextcloud/webpack-vue-config')
|
||||
const ESLintPlugin = require('eslint-webpack-plugin')
|
||||
const StyleLintPlugin = require('stylelint-webpack-plugin')
|
||||
const path = require('path')
|
||||
|
||||
webpackConfig.entry = {
|
||||
main: { import: path.join(__dirname, 'src', 'main.js'), filename: 'main.js' },
|
||||
}
|
||||
|
||||
webpackConfig.plugins.push(
|
||||
new ESLintPlugin({
|
||||
extensions: ['js', 'vue'],
|
||||
files: 'src',
|
||||
}),
|
||||
)
|
||||
|
||||
webpackConfig.plugins.push(
|
||||
new StyleLintPlugin({
|
||||
files: 'src/**/*.{css,scss,vue}',
|
||||
}),
|
||||
)
|
||||
|
||||
webpackConfig.module.rules.push({
|
||||
test: /\.svg$/i,
|
||||
type: 'asset/source',
|
||||
})
|
||||
|
||||
webpackConfig.devtool =
|
||||
webpackConfig.mode !== 'production' ? webpackConfig.devtool : false
|
||||
|
||||
module.exports = webpackConfig
|
Loading…
Reference in New Issue
Block a user