@@ -13,7 +13,8 @@
|
|||||||
"build-only": "vite build",
|
"build-only": "vite build",
|
||||||
"type-check": "vue-tsc --build --force",
|
"type-check": "vue-tsc --build --force",
|
||||||
"lint": "eslint . --fix",
|
"lint": "eslint . --fix",
|
||||||
"format": "prettier --write src/"
|
"format": "prettier --write src/",
|
||||||
|
"vite-bundle-visualizer": "npx vite-bundle-visualizer"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@f3ve/vue-markdown-it": "^0.2.3",
|
"@f3ve/vue-markdown-it": "^0.2.3",
|
||||||
|
|||||||
@@ -15,6 +15,73 @@ export default defineConfig(({ mode }) => {
|
|||||||
build: {
|
build: {
|
||||||
sourcemap: mode === 'development',
|
sourcemap: mode === 'development',
|
||||||
reportCompressedSize: false,
|
reportCompressedSize: false,
|
||||||
|
|
||||||
|
rollupOptions: {
|
||||||
|
output: {
|
||||||
|
manualChunks(id) {
|
||||||
|
if (id.includes('node_modules')) {
|
||||||
|
// PouchDB и его плагины
|
||||||
|
if (id.includes('pouchdb')) {
|
||||||
|
return 'vendor_pouchdb'
|
||||||
|
}
|
||||||
|
|
||||||
|
// QR-коды и библиотеки для работы с ними
|
||||||
|
if (id.includes('qr-code-styling')) {
|
||||||
|
return 'vendor_qr-code-styling'
|
||||||
|
}
|
||||||
|
|
||||||
|
// PrimeVue и связанные модули
|
||||||
|
if (id.includes('primevue')) {
|
||||||
|
return 'vendor_primevue'
|
||||||
|
}
|
||||||
|
|
||||||
|
// SVGO и зависимости
|
||||||
|
if (id.includes('svgo') || id.includes('@trysound')) {
|
||||||
|
return 'vendor_svgo'
|
||||||
|
}
|
||||||
|
|
||||||
|
// Танстэк Vue Query и ядро
|
||||||
|
if (id.includes('@tanstack')) {
|
||||||
|
return 'vendor_tanstack-query'
|
||||||
|
}
|
||||||
|
|
||||||
|
// Vue и связанные библиотеки
|
||||||
|
if (id.includes('vue')) {
|
||||||
|
return 'vendor_vue'
|
||||||
|
}
|
||||||
|
|
||||||
|
if (id.includes('css-tree')) {
|
||||||
|
return 'vendor_css-tree'
|
||||||
|
}
|
||||||
|
|
||||||
|
if (id.includes('css-what')) {
|
||||||
|
return 'vendor_css-what'
|
||||||
|
}
|
||||||
|
|
||||||
|
if (id.includes('domutils')) {
|
||||||
|
return 'vendor_domutils'
|
||||||
|
}
|
||||||
|
|
||||||
|
if (id.includes('source-map-js')) {
|
||||||
|
return 'vendor_source-map-js'
|
||||||
|
}
|
||||||
|
|
||||||
|
if (id.includes('csso')) {
|
||||||
|
return 'vendor_csso'
|
||||||
|
}
|
||||||
|
if (id.includes('entities')) {
|
||||||
|
return 'vendor_entities'
|
||||||
|
}
|
||||||
|
|
||||||
|
// Остальные модули из node_modules в vendor
|
||||||
|
return 'vendor'
|
||||||
|
}
|
||||||
|
|
||||||
|
// По умолчанию ничего не делим
|
||||||
|
return null
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
},
|
},
|
||||||
plugins: [
|
plugins: [
|
||||||
vue(),
|
vue(),
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
"node": ">=v20.10.0",
|
"node": ">=v20.10.0",
|
||||||
"pnpm": ">=8.15.9"
|
"pnpm": ">=8.15.9"
|
||||||
},
|
},
|
||||||
"packageManager": "pnpm@8.15.9+sha512.499434c9d8fdd1a2794ebf4552b3b25c0a633abcee5bb15e7b5de90f32f47b513aca98cd5cfd001c31f0db454bc3804edccd578501e4ca293a6816166bbd9f81",
|
|
||||||
"workspaces": {
|
"workspaces": {
|
||||||
"packages": [
|
"packages": [
|
||||||
"apps/*",
|
"apps/*",
|
||||||
|
|||||||
Reference in New Issue
Block a user