修复打包错误
This commit is contained in:
@@ -156,6 +156,7 @@ pub fn write_claude_config(config: &ClaudeConfig) -> Result<(), String> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// 备份当前配置
|
/// 备份当前配置
|
||||||
|
#[allow(dead_code)]
|
||||||
pub fn backup_claude_config() -> Result<(), String> {
|
pub fn backup_claude_config() -> Result<(), String> {
|
||||||
let config_path = get_claude_config_path()?;
|
let config_path = get_claude_config_path()?;
|
||||||
let backup_path = get_config_backup_path()?;
|
let backup_path = get_config_backup_path()?;
|
||||||
|
|||||||
@@ -40,28 +40,88 @@ export default defineConfig(async () => ({
|
|||||||
|
|
||||||
// Build configuration for code splitting
|
// Build configuration for code splitting
|
||||||
build: {
|
build: {
|
||||||
// Increase chunk size warning limit to 2000 KB
|
// Increase chunk size warning limit to 3000 KB
|
||||||
chunkSizeWarningLimit: 2000,
|
chunkSizeWarningLimit: 3000,
|
||||||
|
|
||||||
rollupOptions: {
|
rollupOptions: {
|
||||||
output: {
|
output: {
|
||||||
// Manual chunks for better code splitting
|
// Manual chunks for better code splitting
|
||||||
manualChunks: {
|
manualChunks: (id) => {
|
||||||
// Vendor chunks
|
// React core
|
||||||
'react-vendor': ['react', 'react-dom'],
|
if (id.includes('node_modules/react/') || id.includes('node_modules/react-dom/')) {
|
||||||
'ui-vendor': ['@radix-ui/react-dialog', '@radix-ui/react-dropdown-menu', '@radix-ui/react-select', '@radix-ui/react-tabs', '@radix-ui/react-tooltip', '@radix-ui/react-switch', '@radix-ui/react-popover'],
|
return 'react-vendor';
|
||||||
'editor-vendor': ['@uiw/react-md-editor'],
|
}
|
||||||
'monaco-editor': ['monaco-editor', '@monaco-editor/react'],
|
|
||||||
'syntax-vendor': ['react-syntax-highlighter'],
|
// Monaco Editor - split into separate chunks
|
||||||
// Animation and motion
|
if (id.includes('node_modules/monaco-editor/')) {
|
||||||
'framer-motion': ['framer-motion'],
|
return 'monaco-editor';
|
||||||
// Tauri and other utilities
|
}
|
||||||
'tauri': ['@tauri-apps/api', '@tauri-apps/plugin-dialog', '@tauri-apps/plugin-shell', '@tauri-apps/plugin-fs', '@tauri-apps/plugin-clipboard-manager'],
|
if (id.includes('node_modules/@monaco-editor/')) {
|
||||||
'utils': ['date-fns', 'clsx', 'tailwind-merge'],
|
return 'monaco-react';
|
||||||
// Charts and visualization
|
}
|
||||||
'recharts': ['recharts'],
|
|
||||||
|
// Radix UI - split into smaller chunks
|
||||||
|
if (id.includes('node_modules/@radix-ui/')) {
|
||||||
|
if (id.includes('react-dialog') || id.includes('react-dropdown-menu')) {
|
||||||
|
return 'radix-overlay';
|
||||||
|
}
|
||||||
|
if (id.includes('react-select') || id.includes('react-tabs')) {
|
||||||
|
return 'radix-navigation';
|
||||||
|
}
|
||||||
|
return 'radix-base';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Tauri
|
||||||
|
if (id.includes('node_modules/@tauri-apps/')) {
|
||||||
|
return 'tauri';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Charts
|
||||||
|
if (id.includes('node_modules/recharts/')) {
|
||||||
|
return 'recharts';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Framer Motion
|
||||||
|
if (id.includes('node_modules/framer-motion/')) {
|
||||||
|
return 'framer-motion';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Syntax highlighting
|
||||||
|
if (id.includes('node_modules/react-syntax-highlighter/')) {
|
||||||
|
return 'syntax-vendor';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Markdown editor
|
||||||
|
if (id.includes('node_modules/@uiw/react-md-editor/')) {
|
||||||
|
return 'editor-vendor';
|
||||||
|
}
|
||||||
|
|
||||||
|
// DnD Kit
|
||||||
|
if (id.includes('node_modules/@dnd-kit/')) {
|
||||||
|
return 'dnd-kit';
|
||||||
|
}
|
||||||
|
|
||||||
// Virtual scrolling
|
// Virtual scrolling
|
||||||
'virtual': ['@tanstack/react-virtual'],
|
if (id.includes('node_modules/@tanstack/react-virtual/')) {
|
||||||
|
return 'virtual';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Utilities
|
||||||
|
if (id.includes('node_modules/date-fns/') ||
|
||||||
|
id.includes('node_modules/clsx/') ||
|
||||||
|
id.includes('node_modules/tailwind-merge/')) {
|
||||||
|
return 'utils';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Lucide icons
|
||||||
|
if (id.includes('node_modules/lucide-react/')) {
|
||||||
|
return 'lucide-icons';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Other large node_modules
|
||||||
|
if (id.includes('node_modules/')) {
|
||||||
|
return 'vendor';
|
||||||
|
}
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user