chore(frontend): 更新项目配置和依赖
- 更新 package-lock.json 依赖版本 - 优化 Vite、PostCSS、Tailwind 配置 - 更新入口 HTML 文件 - 更新 TypeScript 构建缓存
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
<!DOCTYPE html>
|
||||
<!doctype html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
|
||||
1147
frontend/package-lock.json
generated
1147
frontend/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,6 @@
|
||||
export default {
|
||||
plugins: {
|
||||
tailwindcss: {},
|
||||
autoprefixer: {},
|
||||
},
|
||||
autoprefixer: {}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
/** @type {import('tailwindcss').Config} */
|
||||
export default {
|
||||
content: [
|
||||
"./index.html",
|
||||
"./src/**/*.{vue,js,ts,jsx,tsx}",
|
||||
],
|
||||
content: ['./index.html', './src/**/*.{vue,js,ts,jsx,tsx}'],
|
||||
darkMode: 'class',
|
||||
theme: {
|
||||
extend: {
|
||||
@@ -20,7 +17,7 @@ export default {
|
||||
700: '#0f766e',
|
||||
800: '#115e59',
|
||||
900: '#134e4a',
|
||||
950: '#042f2e',
|
||||
950: '#042f2e'
|
||||
},
|
||||
// 辅助色 - 深蓝灰
|
||||
accent: {
|
||||
@@ -34,7 +31,7 @@ export default {
|
||||
700: '#334155',
|
||||
800: '#1e293b',
|
||||
900: '#0f172a',
|
||||
950: '#020617',
|
||||
950: '#020617'
|
||||
},
|
||||
// 深色模式背景
|
||||
dark: {
|
||||
@@ -48,8 +45,8 @@ export default {
|
||||
700: '#334155',
|
||||
800: '#1e293b',
|
||||
900: '#0f172a',
|
||||
950: '#020617',
|
||||
},
|
||||
950: '#020617'
|
||||
}
|
||||
},
|
||||
fontFamily: {
|
||||
sans: [
|
||||
@@ -60,31 +57,27 @@ export default {
|
||||
'Roboto',
|
||||
'Helvetica Neue',
|
||||
'Arial',
|
||||
'sans-serif',
|
||||
],
|
||||
mono: [
|
||||
'JetBrains Mono',
|
||||
'Fira Code',
|
||||
'Monaco',
|
||||
'Consolas',
|
||||
'monospace',
|
||||
'sans-serif'
|
||||
],
|
||||
mono: ['JetBrains Mono', 'Fira Code', 'Monaco', 'Consolas', 'monospace']
|
||||
},
|
||||
boxShadow: {
|
||||
'glass': '0 8px 32px rgba(0, 0, 0, 0.08)',
|
||||
glass: '0 8px 32px rgba(0, 0, 0, 0.08)',
|
||||
'glass-sm': '0 4px 16px rgba(0, 0, 0, 0.06)',
|
||||
'glow': '0 0 20px rgba(20, 184, 166, 0.25)',
|
||||
glow: '0 0 20px rgba(20, 184, 166, 0.25)',
|
||||
'glow-lg': '0 0 40px rgba(20, 184, 166, 0.35)',
|
||||
'card': '0 1px 3px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.06)',
|
||||
card: '0 1px 3px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.06)',
|
||||
'card-hover': '0 10px 40px rgba(0, 0, 0, 0.08)',
|
||||
'inner-glow': 'inset 0 1px 0 rgba(255, 255, 255, 0.1)',
|
||||
'inner-glow': 'inset 0 1px 0 rgba(255, 255, 255, 0.1)'
|
||||
},
|
||||
backgroundImage: {
|
||||
'gradient-radial': 'radial-gradient(var(--tw-gradient-stops))',
|
||||
'gradient-primary': 'linear-gradient(135deg, #14b8a6 0%, #0d9488 100%)',
|
||||
'gradient-dark': 'linear-gradient(135deg, #1e293b 0%, #0f172a 100%)',
|
||||
'gradient-glass': 'linear-gradient(135deg, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0.05) 100%)',
|
||||
'mesh-gradient': 'radial-gradient(at 40% 20%, rgba(20, 184, 166, 0.12) 0px, transparent 50%), radial-gradient(at 80% 0%, rgba(6, 182, 212, 0.08) 0px, transparent 50%), radial-gradient(at 0% 50%, rgba(20, 184, 166, 0.08) 0px, transparent 50%)',
|
||||
'gradient-glass':
|
||||
'linear-gradient(135deg, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0.05) 100%)',
|
||||
'mesh-gradient':
|
||||
'radial-gradient(at 40% 20%, rgba(20, 184, 166, 0.12) 0px, transparent 50%), radial-gradient(at 80% 0%, rgba(6, 182, 212, 0.08) 0px, transparent 50%), radial-gradient(at 0% 50%, rgba(20, 184, 166, 0.08) 0px, transparent 50%)'
|
||||
},
|
||||
animation: {
|
||||
'fade-in': 'fadeIn 0.3s ease-out',
|
||||
@@ -93,46 +86,46 @@ export default {
|
||||
'slide-in-right': 'slideInRight 0.3s ease-out',
|
||||
'scale-in': 'scaleIn 0.2s ease-out',
|
||||
'pulse-slow': 'pulse 3s cubic-bezier(0.4, 0, 0.6, 1) infinite',
|
||||
'shimmer': 'shimmer 2s linear infinite',
|
||||
'glow': 'glow 2s ease-in-out infinite alternate',
|
||||
shimmer: 'shimmer 2s linear infinite',
|
||||
glow: 'glow 2s ease-in-out infinite alternate'
|
||||
},
|
||||
keyframes: {
|
||||
fadeIn: {
|
||||
'0%': { opacity: '0' },
|
||||
'100%': { opacity: '1' },
|
||||
'100%': { opacity: '1' }
|
||||
},
|
||||
slideUp: {
|
||||
'0%': { opacity: '0', transform: 'translateY(10px)' },
|
||||
'100%': { opacity: '1', transform: 'translateY(0)' },
|
||||
'100%': { opacity: '1', transform: 'translateY(0)' }
|
||||
},
|
||||
slideDown: {
|
||||
'0%': { opacity: '0', transform: 'translateY(-10px)' },
|
||||
'100%': { opacity: '1', transform: 'translateY(0)' },
|
||||
'100%': { opacity: '1', transform: 'translateY(0)' }
|
||||
},
|
||||
slideInRight: {
|
||||
'0%': { opacity: '0', transform: 'translateX(20px)' },
|
||||
'100%': { opacity: '1', transform: 'translateX(0)' },
|
||||
'100%': { opacity: '1', transform: 'translateX(0)' }
|
||||
},
|
||||
scaleIn: {
|
||||
'0%': { opacity: '0', transform: 'scale(0.95)' },
|
||||
'100%': { opacity: '1', transform: 'scale(1)' },
|
||||
'100%': { opacity: '1', transform: 'scale(1)' }
|
||||
},
|
||||
shimmer: {
|
||||
'0%': { backgroundPosition: '-200% 0' },
|
||||
'100%': { backgroundPosition: '200% 0' },
|
||||
'100%': { backgroundPosition: '200% 0' }
|
||||
},
|
||||
glow: {
|
||||
'0%': { boxShadow: '0 0 20px rgba(20, 184, 166, 0.25)' },
|
||||
'100%': { boxShadow: '0 0 30px rgba(20, 184, 166, 0.4)' },
|
||||
},
|
||||
'100%': { boxShadow: '0 0 30px rgba(20, 184, 166, 0.4)' }
|
||||
}
|
||||
},
|
||||
backdropBlur: {
|
||||
xs: '2px',
|
||||
xs: '2px'
|
||||
},
|
||||
borderRadius: {
|
||||
'4xl': '2rem',
|
||||
},
|
||||
},
|
||||
'4xl': '2rem'
|
||||
}
|
||||
}
|
||||
},
|
||||
plugins: [],
|
||||
plugins: []
|
||||
}
|
||||
|
||||
File diff suppressed because one or more lines are too long
4
frontend/vite.config.d.ts
vendored
4
frontend/vite.config.d.ts
vendored
@@ -1,2 +1,2 @@
|
||||
declare const _default: import("vite").UserConfig;
|
||||
export default _default;
|
||||
declare const _default: import('vite').UserConfig
|
||||
export default _default
|
||||
|
||||
@@ -7,17 +7,17 @@ export default defineConfig({
|
||||
vue(),
|
||||
checker({
|
||||
typescript: true,
|
||||
vueTsc: true,
|
||||
}),
|
||||
vueTsc: true
|
||||
})
|
||||
],
|
||||
resolve: {
|
||||
alias: {
|
||||
'@': resolve(__dirname, 'src'),
|
||||
},
|
||||
'@': resolve(__dirname, 'src')
|
||||
}
|
||||
},
|
||||
build: {
|
||||
outDir: '../backend/internal/web/dist',
|
||||
emptyOutDir: true,
|
||||
emptyOutDir: true
|
||||
},
|
||||
server: {
|
||||
host: '0.0.0.0',
|
||||
@@ -25,12 +25,12 @@ export default defineConfig({
|
||||
proxy: {
|
||||
'/api': {
|
||||
target: 'http://localhost:8080',
|
||||
changeOrigin: true,
|
||||
changeOrigin: true
|
||||
},
|
||||
'/setup': {
|
||||
target: 'http://localhost:8080',
|
||||
changeOrigin: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
changeOrigin: true
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -8,17 +8,17 @@ export default defineConfig({
|
||||
vue(),
|
||||
checker({
|
||||
typescript: true,
|
||||
vueTsc: true,
|
||||
}),
|
||||
vueTsc: true
|
||||
})
|
||||
],
|
||||
resolve: {
|
||||
alias: {
|
||||
'@': resolve(__dirname, 'src'),
|
||||
},
|
||||
'@': resolve(__dirname, 'src')
|
||||
}
|
||||
},
|
||||
build: {
|
||||
outDir: '../backend/internal/web/dist',
|
||||
emptyOutDir: true,
|
||||
emptyOutDir: true
|
||||
},
|
||||
server: {
|
||||
host: '0.0.0.0',
|
||||
@@ -26,12 +26,12 @@ export default defineConfig({
|
||||
proxy: {
|
||||
'/api': {
|
||||
target: 'http://localhost:8080',
|
||||
changeOrigin: true,
|
||||
changeOrigin: true
|
||||
},
|
||||
'/setup': {
|
||||
target: 'http://localhost:8080',
|
||||
changeOrigin: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
changeOrigin: true
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user