@@ -13,7 +13,8 @@
|
||||
"build-only": "vite build",
|
||||
"type-check": "vue-tsc --build --force",
|
||||
"lint": "eslint . --fix",
|
||||
"format": "prettier --write src/"
|
||||
"format": "prettier --write src/",
|
||||
"vite-bundle-visualizer": "npx vite-bundle-visualizer"
|
||||
},
|
||||
"dependencies": {
|
||||
"@f3ve/vue-markdown-it": "^0.2.3",
|
||||
|
||||
@@ -15,6 +15,73 @@ export default defineConfig(({ mode }) => {
|
||||
build: {
|
||||
sourcemap: mode === 'development',
|
||||
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: [
|
||||
vue(),
|
||||
|
||||
@@ -7,7 +7,6 @@
|
||||
"node": ">=v20.10.0",
|
||||
"pnpm": ">=8.15.9"
|
||||
},
|
||||
"packageManager": "pnpm@8.15.9+sha512.499434c9d8fdd1a2794ebf4552b3b25c0a633abcee5bb15e7b5de90f32f47b513aca98cd5cfd001c31f0db454bc3804edccd578501e4ca293a6816166bbd9f81",
|
||||
"workspaces": {
|
||||
"packages": [
|
||||
"apps/*",
|
||||
|
||||
Reference in New Issue
Block a user