mirror of
https://github.com/hellodigua/ChatLab.git
synced 2026-05-15 19:09:24 +08:00
chore: 优化构建分包策略
This commit is contained in:
@@ -56,6 +56,29 @@ export default defineConfig(() => {
|
||||
input: {
|
||||
index: resolve(__dirname, 'src/index.html'),
|
||||
},
|
||||
output: {
|
||||
manualChunks(id) {
|
||||
if (id.includes('node_modules/echarts-wordcloud')) {
|
||||
return 'vendor-echarts-wordcloud'
|
||||
}
|
||||
if (id.includes('node_modules/zrender')) {
|
||||
return 'vendor-zrender'
|
||||
}
|
||||
if (id.includes('node_modules/echarts')) {
|
||||
return 'vendor-echarts'
|
||||
}
|
||||
if (id.includes('node_modules/@nuxt/ui')) {
|
||||
return 'vendor-nuxt-ui'
|
||||
}
|
||||
if (id.includes('node_modules/reka-ui')) {
|
||||
return 'vendor-reka-ui'
|
||||
}
|
||||
if (id.includes('node_modules/@zumer/snapdom')) {
|
||||
return 'vendor-snapdom'
|
||||
}
|
||||
return undefined
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
server: {
|
||||
|
||||
+2
-7
@@ -37,7 +37,6 @@
|
||||
"@mariozechner/pi-ai": "0.54.2",
|
||||
"@node-rs/jieba": "^2.0.1",
|
||||
"@tanstack/vue-virtual": "^3.13.18",
|
||||
"@types/markdown-it": "^14.1.2",
|
||||
"@zumer/snapdom": "^2.0.1",
|
||||
"better-sqlite3": "^12.4.6",
|
||||
"echarts": "^6.0.0",
|
||||
@@ -48,9 +47,7 @@
|
||||
"markdown-it": "^14.1.0",
|
||||
"node-machine-id": "^1.1.12",
|
||||
"stream-json": "^1.9.1",
|
||||
"vue-echarts": "^8.0.1",
|
||||
"vue-i18n": "^11.2.8",
|
||||
"zod": "^4.3.5"
|
||||
"vue-i18n": "^11.2.8"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@electron-toolkit/tsconfig": "^1.0.1",
|
||||
@@ -58,20 +55,18 @@
|
||||
"@nuxt/ui": "^4.2.1",
|
||||
"@tailwindcss/vite": "^4.0.0",
|
||||
"@types/better-sqlite3": "^7.6.13",
|
||||
"@types/markdown-it": "^14.1.2",
|
||||
"@types/stream-json": "^1.7.8",
|
||||
"@vitejs/plugin-vue": "^5.2.3",
|
||||
"@vue/eslint-config-prettier": "^10.2.0",
|
||||
"@vue/eslint-config-typescript": "^14.6.0",
|
||||
"@vueuse/core": "^13.9.0",
|
||||
"axios": "^1.13.2",
|
||||
"cross-env": "^7.0.3",
|
||||
"dayjs": "^1.11.19",
|
||||
"electron": "^35.0.0",
|
||||
"electron-builder": "^26.0.12",
|
||||
"electron-vite": "^3.0.0",
|
||||
"eslint": "^9.39.1",
|
||||
"eslint-plugin-vue": "^9.33.0",
|
||||
"mitt": "^3.0.1",
|
||||
"pinia": "^3.0.4",
|
||||
"pinia-plugin-persistedstate": "^4.7.1",
|
||||
"prettier": "^3.5.3",
|
||||
|
||||
Generated
+6
-39
@@ -29,9 +29,6 @@ importers:
|
||||
'@tanstack/vue-virtual':
|
||||
specifier: ^3.13.18
|
||||
version: 3.13.18(vue@3.5.27(typescript@5.9.3))
|
||||
'@types/markdown-it':
|
||||
specifier: ^14.1.2
|
||||
version: 14.1.2
|
||||
'@zumer/snapdom':
|
||||
specifier: ^2.0.1
|
||||
version: 2.0.2
|
||||
@@ -62,15 +59,9 @@ importers:
|
||||
stream-json:
|
||||
specifier: ^1.9.1
|
||||
version: 1.9.1
|
||||
vue-echarts:
|
||||
specifier: ^8.0.1
|
||||
version: 8.0.1(echarts@6.0.0)(vue@3.5.27(typescript@5.9.3))
|
||||
vue-i18n:
|
||||
specifier: ^11.2.8
|
||||
version: 11.2.8(vue@3.5.27(typescript@5.9.3))
|
||||
zod:
|
||||
specifier: ^4.3.5
|
||||
version: 4.3.6
|
||||
devDependencies:
|
||||
'@electron-toolkit/tsconfig':
|
||||
specifier: ^1.0.1
|
||||
@@ -87,6 +78,9 @@ importers:
|
||||
'@types/better-sqlite3':
|
||||
specifier: ^7.6.13
|
||||
version: 7.6.13
|
||||
'@types/markdown-it':
|
||||
specifier: ^14.1.2
|
||||
version: 14.1.2
|
||||
'@types/stream-json':
|
||||
specifier: ^1.7.8
|
||||
version: 1.7.8
|
||||
@@ -102,12 +96,6 @@ importers:
|
||||
'@vueuse/core':
|
||||
specifier: ^13.9.0
|
||||
version: 13.9.0(vue@3.5.27(typescript@5.9.3))
|
||||
axios:
|
||||
specifier: ^1.13.2
|
||||
version: 1.13.5
|
||||
cross-env:
|
||||
specifier: ^7.0.3
|
||||
version: 7.0.3
|
||||
dayjs:
|
||||
specifier: ^1.11.19
|
||||
version: 1.11.19
|
||||
@@ -126,9 +114,6 @@ importers:
|
||||
eslint-plugin-vue:
|
||||
specifier: ^9.33.0
|
||||
version: 9.33.0(eslint@9.39.2(jiti@2.6.1))
|
||||
mitt:
|
||||
specifier: ^3.0.1
|
||||
version: 3.0.1
|
||||
pinia:
|
||||
specifier: ^3.0.4
|
||||
version: 3.0.4(typescript@5.9.3)(vue@3.5.27(typescript@5.9.3))
|
||||
@@ -2329,11 +2314,6 @@ packages:
|
||||
cross-dirname@0.1.0:
|
||||
resolution: {integrity: sha512-+R08/oI0nl3vfPcqftZRpytksBXDzOUveBq/NBVx0sUp1axwzPQrKinNx5yd5sxPu8j1wIy8AfnVQ+5eFdha6Q==}
|
||||
|
||||
cross-env@7.0.3:
|
||||
resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==}
|
||||
engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'}
|
||||
hasBin: true
|
||||
|
||||
cross-spawn@7.0.6:
|
||||
resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
|
||||
engines: {node: '>= 8'}
|
||||
@@ -4644,12 +4624,6 @@ packages:
|
||||
'@vue/composition-api':
|
||||
optional: true
|
||||
|
||||
vue-echarts@8.0.1:
|
||||
resolution: {integrity: sha512-23rJTFLu1OUEGRWjJGmdGt8fP+8+ja1gVgzMYPIPaHWpXegcO1viIAaeu2H4QHESlVeHzUAHIxKXGrwjsyXAaA==}
|
||||
peerDependencies:
|
||||
echarts: ^6.0.0
|
||||
vue: ^3.3.0
|
||||
|
||||
vue-eslint-parser@10.2.0:
|
||||
resolution: {integrity: sha512-CydUvFOQKD928UzZhTp4pr2vWz1L+H99t7Pkln2QSPdvmURT0MoC4wUccfCnuEaihNsu9aYYyk+bep8rlfkUXw==}
|
||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||
@@ -7426,6 +7400,7 @@ snapshots:
|
||||
proxy-from-env: 1.1.0
|
||||
transitivePeerDependencies:
|
||||
- debug
|
||||
optional: true
|
||||
|
||||
balanced-match@1.0.2: {}
|
||||
|
||||
@@ -7679,10 +7654,6 @@ snapshots:
|
||||
cross-dirname@0.1.0:
|
||||
optional: true
|
||||
|
||||
cross-env@7.0.3:
|
||||
dependencies:
|
||||
cross-spawn: 7.0.6
|
||||
|
||||
cross-spawn@7.0.6:
|
||||
dependencies:
|
||||
path-key: 3.1.1
|
||||
@@ -8249,7 +8220,8 @@ snapshots:
|
||||
|
||||
flatted@3.3.3: {}
|
||||
|
||||
follow-redirects@1.15.11: {}
|
||||
follow-redirects@1.15.11:
|
||||
optional: true
|
||||
|
||||
fontaine@0.7.0:
|
||||
dependencies:
|
||||
@@ -10114,11 +10086,6 @@ snapshots:
|
||||
dependencies:
|
||||
vue: 3.5.27(typescript@5.9.3)
|
||||
|
||||
vue-echarts@8.0.1(echarts@6.0.0)(vue@3.5.27(typescript@5.9.3)):
|
||||
dependencies:
|
||||
echarts: 6.0.0
|
||||
vue: 3.5.27(typescript@5.9.3)
|
||||
|
||||
vue-eslint-parser@10.2.0(eslint@9.39.2(jiti@2.6.1)):
|
||||
dependencies:
|
||||
debug: 4.4.3
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<script setup lang="ts">
|
||||
import { ref, watch, computed, onMounted } from 'vue'
|
||||
import { ref, watch, computed, onMounted, defineAsyncComponent } from 'vue'
|
||||
import { useI18n } from 'vue-i18n'
|
||||
import { EChartWordcloud } from '@/components/charts'
|
||||
const EChartWordcloud = defineAsyncComponent(() => import('@/components/charts/EChartWordcloud.vue'))
|
||||
import type { EChartWordcloudData } from '@/components/charts'
|
||||
import { LoadingState, EmptyState, UITabs } from '@/components/UI'
|
||||
import UserSelect from '@/components/common/UserSelect.vue'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<script setup lang="ts">
|
||||
import { ref, onMounted, watch, computed } from 'vue'
|
||||
import { ref, onMounted, watch, computed, defineAsyncComponent } from 'vue'
|
||||
import { useRoute, useRouter } from 'vue-router'
|
||||
import { storeToRefs } from 'pinia'
|
||||
import { useI18n } from 'vue-i18n'
|
||||
@@ -16,7 +16,7 @@ import MemberTab from './components/MemberTab.vue'
|
||||
import PageHeader from '@/components/layout/PageHeader.vue'
|
||||
import SessionIndexModal from '@/components/analysis/SessionIndexModal.vue'
|
||||
import IncrementalImportModal from '@/components/analysis/IncrementalImportModal.vue'
|
||||
import MessageExportModal from '@/components/MessageExport/MessageExportModal.vue'
|
||||
const MessageExportModal = defineAsyncComponent(() => import('@/components/MessageExport/MessageExportModal.vue'))
|
||||
import LoadingState from '@/components/UI/LoadingState.vue'
|
||||
import { useSessionStore } from '@/stores/session'
|
||||
import { useLayoutStore } from '@/stores/layout'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<script setup lang="ts">
|
||||
import { ref, onMounted, watch, computed } from 'vue'
|
||||
import { ref, onMounted, watch, computed, defineAsyncComponent } from 'vue'
|
||||
import { useRoute, useRouter } from 'vue-router'
|
||||
import { storeToRefs } from 'pinia'
|
||||
import { useI18n } from 'vue-i18n'
|
||||
@@ -16,7 +16,7 @@ import MemberTab from './components/MemberTab.vue'
|
||||
import PageHeader from '@/components/layout/PageHeader.vue'
|
||||
import SessionIndexModal from '@/components/analysis/SessionIndexModal.vue'
|
||||
import IncrementalImportModal from '@/components/analysis/IncrementalImportModal.vue'
|
||||
import MessageExportModal from '@/components/MessageExport/MessageExportModal.vue'
|
||||
const MessageExportModal = defineAsyncComponent(() => import('@/components/MessageExport/MessageExportModal.vue'))
|
||||
import LoadingState from '@/components/UI/LoadingState.vue'
|
||||
import { useSessionStore } from '@/stores/session'
|
||||
import { useLayoutStore } from '@/stores/layout'
|
||||
|
||||
Reference in New Issue
Block a user