xto-fronted 0.4.90 → 0.4.92

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/dist/{index-A_B_Ap_A.js → index--qRfsJ32.js} +1537 -1510
  2. package/dist/{index-LSdsO2Ox.js → index-CsjBlLrl.js} +2 -2
  3. package/dist/{index-58aI1w0v.js → index-CvYIvRSW.js} +2 -2
  4. package/dist/{index-BVGW4DDQ.js → index-DAPLMrmP.js} +23 -23
  5. package/dist/{index-xWU3J3OH.js → index-DjkSMw-x.js} +2 -2
  6. package/dist/index.es.js +1 -1
  7. package/dist/index.umd.js +8 -8
  8. package/dist/stores/menu.d.ts +8 -2
  9. package/dist/style.css +1 -1
  10. package/dist/utils/permission.d.ts +2 -3
  11. package/package.json +91 -91
  12. package/src/App.vue +48 -48
  13. package/src/assets/styles/_dark.scss +639 -572
  14. package/src/assets/styles/_root.scss +183 -183
  15. package/src/assets/styles/_variables.scss +69 -69
  16. package/src/assets/styles/index.scss +460 -460
  17. package/src/components/Layout/Sidebar.vue +198 -198
  18. package/src/components/Layout/TopMenu.vue +1170 -1170
  19. package/src/components/Layout/index.vue +192 -192
  20. package/src/directives/permission.ts +12 -3
  21. package/src/index.ts +100 -100
  22. package/src/router/layoutRoute.ts +59 -59
  23. package/src/stores/menu.ts +64 -3
  24. package/src/types/json-bigint.d.ts +18 -18
  25. package/src/utils/permission.ts +12 -5
  26. package/src/views/dashboard/index.vue +545 -545
  27. package/src/views/error/403.vue +251 -251
  28. package/src/views/error/404.vue +253 -253
  29. package/src/views/login/index.vue +586 -586
  30. package/src/views/system/menu/index.vue +690 -690
  31. package/src/views/system/role/index.vue +583 -583
  32. package/src/views/system/user/index.vue +655 -655
  33. package/dist/assets/404-C9Uh6Uu-.css +0 -1
  34. package/dist/assets/404-zjGLLssH.js +0 -1
  35. package/dist/assets/_plugin-vue_export-helper-DlAUqK2U.js +0 -1
  36. package/dist/assets/index-B5xc4gQB.css +0 -1
  37. package/dist/assets/index-BDgOY6Rp.js +0 -1
  38. package/dist/assets/index-BIoRANs0.js +0 -1
  39. package/dist/assets/index-BRR97dc6.js +0 -1
  40. package/dist/assets/index-Bz0BgZQ1.js +0 -1
  41. package/dist/assets/index-CAdztNsv.css +0 -1
  42. package/dist/assets/index-CCXrcISf.css +0 -1
  43. package/dist/assets/index-CfpZmcpk.css +0 -1
  44. package/dist/assets/index-CwJSA85U.js +0 -1
  45. package/dist/assets/index-CwRA10ac.js +0 -1
  46. package/dist/assets/index-D8NDxq9d.js +0 -1
  47. package/dist/assets/index-DEB6-Iv_.js +0 -2
  48. package/dist/assets/index-DM4Ezclc.css +0 -1
  49. package/dist/assets/index-DYv7nImj.css +0 -1
  50. package/dist/assets/index-t-2Y0KhA.css +0 -1
  51. package/dist/assets/vendor-CUVPinTg.js +0 -13
  52. package/dist/assets/vue-vendor-DeJXJVbN.js +0 -29
  53. package/dist/assets/xto-base-CL2NKZJJ.css +0 -1
  54. package/dist/assets/xto-base-PwLGsxxb.js +0 -1
  55. package/dist/assets/xto-business--V1F5Gwb.css +0 -1
  56. package/dist/assets/xto-core-CtL4zKiV.js +0 -1
  57. package/dist/assets/xto-data-MxZsiJgi.css +0 -1
  58. package/dist/assets/xto-data-bCXQa7fT.js +0 -1
  59. package/dist/assets/xto-feedback-Bxx38c3P.css +0 -1
  60. package/dist/assets/xto-feedback-CPydp0kn.js +0 -1
  61. package/dist/assets/xto-form-Cu6q3VLG.css +0 -1
  62. package/dist/assets/xto-form-bywohdAf.js +0 -1
  63. package/dist/assets/xto-layout-BDD6sSlM.css +0 -1
  64. package/dist/assets/xto-navigation-Bbdpine9.js +0 -1
  65. package/dist/assets/xto-navigation-XfpyMpEo.css +0 -1
  66. package/dist/index-BAmYUT0G.js +0 -189
  67. package/dist/index-BRvi9qW-.js +0 -515
  68. package/dist/index-Bmf0YbVq.js +0 -189
  69. package/dist/index-C2-a5KSQ.js +0 -4233
  70. package/dist/index-CeZ0CSSs.js +0 -641
  71. package/dist/index-D25KzR0I.js +0 -479
  72. package/dist/index-DEYOivza.js +0 -641
  73. package/dist/index-DReodgBw.js +0 -4233
  74. package/dist/index-DjERNRXX.js +0 -515
  75. package/dist/index-gBlRG4kk.js +0 -479
  76. package/dist/index.html +0 -28
@@ -1,184 +1,184 @@
1
- // ==============================================
2
- // CSS Variables - 企业级配色方案
3
- // 参考:阿里 Ant Design Pro、腾讯云控制台
4
- // ==============================================
5
-
6
- :root {
7
- // 主色调 - 科技蓝系(深邃、专业)
8
- --color-primary: #1677ff;
9
- --color-primary-light-1: #4096ff;
10
- --color-primary-light-2: #69b1ff;
11
- --color-primary-light-3: #91caff;
12
- --color-primary-light-4: #bae0ff;
13
- --color-primary-light-5: #e6f4ff;
14
- --color-primary-light-6: #f0f8ff;
15
- --color-primary-dark-1: #0958d9;
16
- --color-primary-dark-2: #003eb3;
17
- --color-primary-dark-3: #002c8c;
18
-
19
- // 功能色 - 精致调和
20
- --color-success: #52c41a;
21
- --color-success-light: #b7eb8f;
22
- --color-success-lighter: #f6ffed;
23
- --color-success-dark: #389e0d;
24
-
25
- --color-warning: #faad14;
26
- --color-warning-light: #ffe58f;
27
- --color-warning-lighter: #fffbe6;
28
- --color-warning-dark: #d48806;
29
-
30
- --color-danger: #ff4d4f;
31
- --color-danger-light: #ffa39e;
32
- --color-danger-lighter: #fff2f0;
33
- --color-danger-dark: #cf1322;
34
-
35
- --color-info: #1677ff;
36
- --color-info-light: #91caff;
37
- --color-info-lighter: #e6f4ff;
38
- --color-info-dark: #0958d9;
39
-
40
- // 文字颜色 - 层次分明
41
- --color-text-primary: #1f1f1f;
42
- --color-text-regular: #424242;
43
- --color-text-secondary: #757575;
44
- --color-text-placeholder: #9e9e9e;
45
- --color-text-disabled: #bdbdbd;
46
-
47
- // 边框颜色 - 克制淡雅
48
- --color-border: #d9d9d9;
49
- --color-border-light: #e8e8e8;
50
- --color-border-lighter: #f0f0f0;
51
- --color-border-extra-light: #f5f5f5;
52
- --color-border-dark: #bfbfbf;
53
-
54
- // 填充颜色 - 背景层次
55
- --color-fill: #f5f5f5;
56
- --color-fill-light: #fafafa;
57
- --color-fill-lighter: #ffffff;
58
- --color-fill-blank: #ffffff;
59
- --color-fill-dark: #e8e8e8;
60
-
61
- // 背景颜色 - 页面层级
62
- --bg-color: #ffffff;
63
- --bg-color-page: #f0f2f5;
64
- --bg-color-component: #ffffff;
65
- --bg-color-overlay: #ffffff;
66
- --bg-color-spotlight: #e6f4ff;
67
-
68
- // 盒子阴影 - 精致层次
69
- --box-shadow: 0 6px 16px 0 rgba(0, 0, 0, 0.08),
70
- 0 3px 6px -4px rgba(0, 0, 0, 0.12),
71
- 0 9px 28px 8px rgba(0, 0, 0, 0.05);
72
- --box-shadow-light: 0 1px 2px 0 rgba(0, 0, 0, 0.03),
73
- 0 1px 6px -1px rgba(0, 0, 0, 0.02),
74
- 0 2px 4px 0 rgba(0, 0, 0, 0.02);
75
- --box-shadow-lighter: 0 1px 4px rgba(0, 0, 0, 0.04);
76
- --box-shadow-dark: 0 6px 16px -8px rgba(0, 0, 0, 0.08),
77
- 0 9px 28px 8px rgba(0, 0, 0, 0.05),
78
- 0 12px 48px 16px rgba(0, 0, 0, 0.03);
79
- --box-shadow-card: 0 1px 10px -6px rgba(0, 0, 0, 0.1);
80
- --box-shadow-card-hover: 0 6px 16px -8px rgba(0, 0, 0, 0.12);
81
-
82
- // 字体 - 企业级字体栈
83
- --font-family: 'IBM Plex Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
84
- 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';
85
- --font-family-code: 'IBM Plex Mono', 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono',
86
- Consolas, 'Courier New', monospace;
87
- --font-size-base: 14px;
88
- --font-size-small: 12px;
89
- --font-size-large: 16px;
90
- --font-size-extra-large: 20px;
91
- --font-size-title: 24px;
92
- --font-size-hero: 38px;
93
- --font-line-height: 1.5714285714285714;
94
-
95
- // 圆角 - 精致圆润
96
- --border-radius-base: 6px;
97
- --border-radius-small: 4px;
98
- --border-radius-large: 8px;
99
- --border-radius-extra-large: 12px;
100
- --border-radius-round: 24px;
101
- --border-radius-circle: 50%;
102
-
103
- // 间距 - 8px 基础网格
104
- --spacing-xs: 4px;
105
- --spacing-sm: 8px;
106
- --spacing-md: 16px;
107
- --spacing-lg: 24px;
108
- --spacing-xl: 32px;
109
- --spacing-xxl: 48px;
110
-
111
- // 尺寸 - 组件规格
112
- --component-size-large: 40px;
113
- --component-size-default: 32px;
114
- --component-size-small: 24px;
115
-
116
- // 过渡 - 流畅动效
117
- --transition-duration: 0.2s;
118
- --transition-duration-fast: 0.1s;
119
- --transition-duration-slow: 0.3s;
120
- --transition-easing: cubic-bezier(0.645, 0.045, 0.355, 1);
121
- --transition-easing-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);
122
-
123
- // z-index - 层级管理
124
- --z-index-dropdown: 1000;
125
- --z-index-sticky: 1020;
126
- --z-index-fixed: 1030;
127
- --z-index-modal-backdrop: 1040;
128
- --z-index-modal: 1050;
129
- --z-index-popover: 1060;
130
- --z-index-tooltip: 1070;
131
-
132
- // 布局 - 精确尺寸
133
- --sidebar-width: 220px;
134
- --sidebar-collapsed-width: 64px;
135
- --header-height: 56px;
136
- --tabs-height: 40px;
137
- --footer-height: 32px;
138
-
139
- // 特殊效果
140
- --gradient-primary: linear-gradient(135deg, #1677ff 0%, #4096ff 100%);
141
- --gradient-hero: linear-gradient(135deg, #002c8c 0%, #1677ff 50%, #4096ff 100%);
142
- --gradient-card: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 100%);
143
- --gradient-mask: linear-gradient(180deg, rgba(0, 44, 140, 0.03) 0%, rgba(0, 0, 0, 0) 100%);
144
- }
145
-
146
- // 暗色主题 - 深邃科技感
147
- .dark {
148
- --color-text-primary: #ffffff;
149
- --color-text-regular: #e0e0e0;
150
- --color-text-secondary: #a6a6a6;
151
- --color-text-placeholder: #737373;
152
- --color-text-disabled: #5c5c5c;
153
-
154
- --color-border: #434343;
155
- --color-border-light: #363636;
156
- --color-border-lighter: #2a2a2a;
157
- --color-border-extra-light: #1f1f1f;
158
- --color-border-dark: #5c5c5c;
159
-
160
- --color-fill: #262626;
161
- --color-fill-light: #1f1f1f;
162
- --color-fill-lighter: #141414;
163
- --color-fill-blank: #141414;
164
- --color-fill-dark: #363636;
165
-
166
- --bg-color: #141414;
167
- --bg-color-page: #0a0a0a;
168
- --bg-color-component: #1f1f1f;
169
- --bg-color-overlay: #1f1f1f;
170
- --bg-color-spotlight: #111d2c;
171
-
172
- --box-shadow: 0 6px 16px 0 rgba(0, 0, 0, 0.32),
173
- 0 3px 6px -4px rgba(0, 0, 0, 0.48),
174
- 0 9px 28px 8px rgba(0, 0, 0, 0.2);
175
- --box-shadow-light: 0 1px 2px 0 rgba(0, 0, 0, 0.16),
176
- 0 1px 6px -1px rgba(0, 0, 0, 0.12),
177
- 0 2px 4px 0 rgba(0, 0, 0, 0.08);
178
- --box-shadow-card: 0 1px 10px -6px rgba(0, 0, 0, 0.32);
179
- --box-shadow-card-hover: 0 6px 16px -8px rgba(0, 0, 0, 0.48);
180
-
181
- --gradient-primary: linear-gradient(135deg, #1677ff 0%, #4096ff 100%);
182
- --gradient-hero: linear-gradient(135deg, #002c8c 0%, #0958d9 50%, #1677ff 100%);
183
- --gradient-card: linear-gradient(180deg, rgba(20, 20, 20, 0) 0%, rgba(20, 20, 20, 0.8) 100%);
1
+ // ==============================================
2
+ // CSS Variables - 企业级配色方案
3
+ // 参考:阿里 Ant Design Pro、腾讯云控制台
4
+ // ==============================================
5
+
6
+ :root {
7
+ // 主色调 - 科技蓝系(深邃、专业)
8
+ --color-primary: #1677ff;
9
+ --color-primary-light-1: #4096ff;
10
+ --color-primary-light-2: #69b1ff;
11
+ --color-primary-light-3: #91caff;
12
+ --color-primary-light-4: #bae0ff;
13
+ --color-primary-light-5: #e6f4ff;
14
+ --color-primary-light-6: #f0f8ff;
15
+ --color-primary-dark-1: #0958d9;
16
+ --color-primary-dark-2: #003eb3;
17
+ --color-primary-dark-3: #002c8c;
18
+
19
+ // 功能色 - 精致调和
20
+ --color-success: #52c41a;
21
+ --color-success-light: #b7eb8f;
22
+ --color-success-lighter: #f6ffed;
23
+ --color-success-dark: #389e0d;
24
+
25
+ --color-warning: #faad14;
26
+ --color-warning-light: #ffe58f;
27
+ --color-warning-lighter: #fffbe6;
28
+ --color-warning-dark: #d48806;
29
+
30
+ --color-danger: #ff4d4f;
31
+ --color-danger-light: #ffa39e;
32
+ --color-danger-lighter: #fff2f0;
33
+ --color-danger-dark: #cf1322;
34
+
35
+ --color-info: #1677ff;
36
+ --color-info-light: #91caff;
37
+ --color-info-lighter: #e6f4ff;
38
+ --color-info-dark: #0958d9;
39
+
40
+ // 文字颜色 - 层次分明
41
+ --color-text-primary: #1f1f1f;
42
+ --color-text-regular: #424242;
43
+ --color-text-secondary: #757575;
44
+ --color-text-placeholder: #9e9e9e;
45
+ --color-text-disabled: #bdbdbd;
46
+
47
+ // 边框颜色 - 克制淡雅
48
+ --color-border: #d9d9d9;
49
+ --color-border-light: #e8e8e8;
50
+ --color-border-lighter: #f0f0f0;
51
+ --color-border-extra-light: #f5f5f5;
52
+ --color-border-dark: #bfbfbf;
53
+
54
+ // 填充颜色 - 背景层次
55
+ --color-fill: #f5f5f5;
56
+ --color-fill-light: #fafafa;
57
+ --color-fill-lighter: #ffffff;
58
+ --color-fill-blank: #ffffff;
59
+ --color-fill-dark: #e8e8e8;
60
+
61
+ // 背景颜色 - 页面层级
62
+ --bg-color: #ffffff;
63
+ --bg-color-page: #f0f2f5;
64
+ --bg-color-component: #ffffff;
65
+ --bg-color-overlay: #ffffff;
66
+ --bg-color-spotlight: #e6f4ff;
67
+
68
+ // 盒子阴影 - 精致层次
69
+ --box-shadow: 0 6px 16px 0 rgba(0, 0, 0, 0.08),
70
+ 0 3px 6px -4px rgba(0, 0, 0, 0.12),
71
+ 0 9px 28px 8px rgba(0, 0, 0, 0.05);
72
+ --box-shadow-light: 0 1px 2px 0 rgba(0, 0, 0, 0.03),
73
+ 0 1px 6px -1px rgba(0, 0, 0, 0.02),
74
+ 0 2px 4px 0 rgba(0, 0, 0, 0.02);
75
+ --box-shadow-lighter: 0 1px 4px rgba(0, 0, 0, 0.04);
76
+ --box-shadow-dark: 0 6px 16px -8px rgba(0, 0, 0, 0.08),
77
+ 0 9px 28px 8px rgba(0, 0, 0, 0.05),
78
+ 0 12px 48px 16px rgba(0, 0, 0, 0.03);
79
+ --box-shadow-card: 0 1px 10px -6px rgba(0, 0, 0, 0.1);
80
+ --box-shadow-card-hover: 0 6px 16px -8px rgba(0, 0, 0, 0.12);
81
+
82
+ // 字体 - 企业级字体栈
83
+ --font-family: 'IBM Plex Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
84
+ 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';
85
+ --font-family-code: 'IBM Plex Mono', 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono',
86
+ Consolas, 'Courier New', monospace;
87
+ --font-size-base: 14px;
88
+ --font-size-small: 12px;
89
+ --font-size-large: 16px;
90
+ --font-size-extra-large: 20px;
91
+ --font-size-title: 24px;
92
+ --font-size-hero: 38px;
93
+ --font-line-height: 1.5714285714285714;
94
+
95
+ // 圆角 - 精致圆润
96
+ --border-radius-base: 6px;
97
+ --border-radius-small: 4px;
98
+ --border-radius-large: 8px;
99
+ --border-radius-extra-large: 12px;
100
+ --border-radius-round: 24px;
101
+ --border-radius-circle: 50%;
102
+
103
+ // 间距 - 8px 基础网格
104
+ --spacing-xs: 4px;
105
+ --spacing-sm: 8px;
106
+ --spacing-md: 16px;
107
+ --spacing-lg: 24px;
108
+ --spacing-xl: 32px;
109
+ --spacing-xxl: 48px;
110
+
111
+ // 尺寸 - 组件规格
112
+ --component-size-large: 40px;
113
+ --component-size-default: 32px;
114
+ --component-size-small: 24px;
115
+
116
+ // 过渡 - 流畅动效
117
+ --transition-duration: 0.2s;
118
+ --transition-duration-fast: 0.1s;
119
+ --transition-duration-slow: 0.3s;
120
+ --transition-easing: cubic-bezier(0.645, 0.045, 0.355, 1);
121
+ --transition-easing-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);
122
+
123
+ // z-index - 层级管理
124
+ --z-index-dropdown: 1000;
125
+ --z-index-sticky: 1020;
126
+ --z-index-fixed: 1030;
127
+ --z-index-modal-backdrop: 1040;
128
+ --z-index-modal: 1050;
129
+ --z-index-popover: 1060;
130
+ --z-index-tooltip: 1070;
131
+
132
+ // 布局 - 精确尺寸
133
+ --sidebar-width: 220px;
134
+ --sidebar-collapsed-width: 64px;
135
+ --header-height: 56px;
136
+ --tabs-height: 40px;
137
+ --footer-height: 32px;
138
+
139
+ // 特殊效果
140
+ --gradient-primary: linear-gradient(135deg, #1677ff 0%, #4096ff 100%);
141
+ --gradient-hero: linear-gradient(135deg, #002c8c 0%, #1677ff 50%, #4096ff 100%);
142
+ --gradient-card: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 100%);
143
+ --gradient-mask: linear-gradient(180deg, rgba(0, 44, 140, 0.03) 0%, rgba(0, 0, 0, 0) 100%);
144
+ }
145
+
146
+ // 暗色主题 - 深邃科技感
147
+ .dark {
148
+ --color-text-primary: #ffffff;
149
+ --color-text-regular: #e0e0e0;
150
+ --color-text-secondary: #a6a6a6;
151
+ --color-text-placeholder: #737373;
152
+ --color-text-disabled: #5c5c5c;
153
+
154
+ --color-border: #434343;
155
+ --color-border-light: #363636;
156
+ --color-border-lighter: #2a2a2a;
157
+ --color-border-extra-light: #1f1f1f;
158
+ --color-border-dark: #5c5c5c;
159
+
160
+ --color-fill: #262626;
161
+ --color-fill-light: #1f1f1f;
162
+ --color-fill-lighter: #141414;
163
+ --color-fill-blank: #141414;
164
+ --color-fill-dark: #363636;
165
+
166
+ --bg-color: #141414;
167
+ --bg-color-page: #0a0a0a;
168
+ --bg-color-component: #1f1f1f;
169
+ --bg-color-overlay: #1f1f1f;
170
+ --bg-color-spotlight: #111d2c;
171
+
172
+ --box-shadow: 0 6px 16px 0 rgba(0, 0, 0, 0.32),
173
+ 0 3px 6px -4px rgba(0, 0, 0, 0.48),
174
+ 0 9px 28px 8px rgba(0, 0, 0, 0.2);
175
+ --box-shadow-light: 0 1px 2px 0 rgba(0, 0, 0, 0.16),
176
+ 0 1px 6px -1px rgba(0, 0, 0, 0.12),
177
+ 0 2px 4px 0 rgba(0, 0, 0, 0.08);
178
+ --box-shadow-card: 0 1px 10px -6px rgba(0, 0, 0, 0.32);
179
+ --box-shadow-card-hover: 0 6px 16px -8px rgba(0, 0, 0, 0.48);
180
+
181
+ --gradient-primary: linear-gradient(135deg, #1677ff 0%, #4096ff 100%);
182
+ --gradient-hero: linear-gradient(135deg, #002c8c 0%, #0958d9 50%, #1677ff 100%);
183
+ --gradient-card: linear-gradient(180deg, rgba(20, 20, 20, 0) 0%, rgba(20, 20, 20, 0.8) 100%);
184
184
  }
@@ -1,70 +1,70 @@
1
- // ==============================================
2
- // SCSS Variables - 用于样式计算
3
- // ==============================================
4
-
5
- // 主题色 - 科技蓝
6
- $color-primary: #1677ff;
7
- $color-primary-light: #4096ff;
8
- $color-primary-lighter: #91caff;
9
- $color-primary-dark: #0958d9;
10
- $color-primary-darker: #003eb3;
11
-
12
- // 功能色
13
- $color-success: #52c41a;
14
- $color-warning: #faad14;
15
- $color-danger: #ff4d4f;
16
- $color-info: #1677ff;
17
-
18
- // 文字颜色
19
- $color-text-primary: #1f1f1f;
20
- $color-text-regular: #424242;
21
- $color-text-secondary: #757575;
22
- $color-text-placeholder: #9e9e9e;
23
-
24
- // 边框颜色
25
- $color-border: #d9d9d9;
26
- $color-border-light: #e8e8e8;
27
- $color-border-lighter: #f0f0f0;
28
-
29
- // 背景颜色
30
- $bg-color: #ffffff;
31
- $bg-color-page: #f0f2f5;
32
- $bg-color-component: #ffffff;
33
-
34
- // 字体
35
- $font-family: 'IBM Plex Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
36
- $font-family-code: 'IBM Plex Mono', 'SF Mono', Monaco, Consolas, monospace;
37
- $font-size-base: 14px;
38
- $font-size-small: 12px;
39
- $font-size-large: 16px;
40
- $font-size-extra-large: 20px;
41
-
42
- // 圆角
43
- $border-radius-base: 6px;
44
- $border-radius-small: 4px;
45
- $border-radius-large: 8px;
46
- $border-radius-extra-large: 12px;
47
- $border-radius-round: 24px;
48
-
49
- // 间距 - 8px 网格系统
50
- $spacing-xs: 4px;
51
- $spacing-sm: 8px;
52
- $spacing-md: 16px;
53
- $spacing-lg: 24px;
54
- $spacing-xl: 32px;
55
- $spacing-xxl: 48px;
56
-
57
- // 布局尺寸
58
- $sidebar-width: 220px;
59
- $sidebar-collapsed-width: 64px;
60
- $header-height: 56px;
61
- $tabs-height: 40px;
62
- $footer-height: 32px;
63
-
64
- // 过渡
65
- $transition-duration: 0.2s;
66
- $transition-easing: cubic-bezier(0.645, 0.045, 0.355, 1);
67
-
68
- // 阴影
69
- $box-shadow-card: 0 1px 10px -6px rgba(0, 0, 0, 0.1);
1
+ // ==============================================
2
+ // SCSS Variables - 用于样式计算
3
+ // ==============================================
4
+
5
+ // 主题色 - 科技蓝
6
+ $color-primary: #1677ff;
7
+ $color-primary-light: #4096ff;
8
+ $color-primary-lighter: #91caff;
9
+ $color-primary-dark: #0958d9;
10
+ $color-primary-darker: #003eb3;
11
+
12
+ // 功能色
13
+ $color-success: #52c41a;
14
+ $color-warning: #faad14;
15
+ $color-danger: #ff4d4f;
16
+ $color-info: #1677ff;
17
+
18
+ // 文字颜色
19
+ $color-text-primary: #1f1f1f;
20
+ $color-text-regular: #424242;
21
+ $color-text-secondary: #757575;
22
+ $color-text-placeholder: #9e9e9e;
23
+
24
+ // 边框颜色
25
+ $color-border: #d9d9d9;
26
+ $color-border-light: #e8e8e8;
27
+ $color-border-lighter: #f0f0f0;
28
+
29
+ // 背景颜色
30
+ $bg-color: #ffffff;
31
+ $bg-color-page: #f0f2f5;
32
+ $bg-color-component: #ffffff;
33
+
34
+ // 字体
35
+ $font-family: 'IBM Plex Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
36
+ $font-family-code: 'IBM Plex Mono', 'SF Mono', Monaco, Consolas, monospace;
37
+ $font-size-base: 14px;
38
+ $font-size-small: 12px;
39
+ $font-size-large: 16px;
40
+ $font-size-extra-large: 20px;
41
+
42
+ // 圆角
43
+ $border-radius-base: 6px;
44
+ $border-radius-small: 4px;
45
+ $border-radius-large: 8px;
46
+ $border-radius-extra-large: 12px;
47
+ $border-radius-round: 24px;
48
+
49
+ // 间距 - 8px 网格系统
50
+ $spacing-xs: 4px;
51
+ $spacing-sm: 8px;
52
+ $spacing-md: 16px;
53
+ $spacing-lg: 24px;
54
+ $spacing-xl: 32px;
55
+ $spacing-xxl: 48px;
56
+
57
+ // 布局尺寸
58
+ $sidebar-width: 220px;
59
+ $sidebar-collapsed-width: 64px;
60
+ $header-height: 56px;
61
+ $tabs-height: 40px;
62
+ $footer-height: 32px;
63
+
64
+ // 过渡
65
+ $transition-duration: 0.2s;
66
+ $transition-easing: cubic-bezier(0.645, 0.045, 0.355, 1);
67
+
68
+ // 阴影
69
+ $box-shadow-card: 0 1px 10px -6px rgba(0, 0, 0, 0.1);
70
70
  $box-shadow-card-hover: 0 6px 16px -8px rgba(0, 0, 0, 0.12);