refactor(frontend): 重构前端样式体系,统一资源路径与代码规范

1.  重构SCSS样式结构,将原有分散的样式文件整合到custom目录下,统一使用@use替代@import
2.  删除冗余的全局样式文件,将样式逻辑内联到对应组件或集中到core目录
3.  新增DOMPurify依赖,对富文本内容添加XSS防护
4.  修复metrics端点暴露的兼容性问题,优化启动banner样式
5.  移除无用的权限校验代码,重构工作流组件路径与命名
6.  优化样式混合宏与响应式布局,修复部分组件样式冲突
This commit is contained in:
zhangtao
2026-06-01 00:58:21 +08:00
parent c2135bb456
commit c0733d9861
50 changed files with 1880 additions and 1792 deletions
@@ -222,6 +222,6 @@ defineExpose({
});
</script>
<style scoped>
@import "@styles/fa-login.css";
<style scoped lang="scss">
@use "@styles/custom/fa-login";
</style>
@@ -111,6 +111,6 @@ defineExpose({
});
</script>
<style scoped>
@import "@styles/fa-login.css";
<style scoped lang="scss">
@use "@styles/custom/fa-login";
</style>
@@ -196,64 +196,5 @@ onBeforeUnmount(() => {
</script>
<style scoped lang="scss">
@import "@styles/fa-login.css";
.login-mobile-flow {
margin-top: 1rem;
}
.login-mobile-otp-cell {
box-sizing: border-box;
flex: 1;
min-width: 0;
max-width: 48px;
height: 40px;
padding: 0;
font-size: 1rem;
font-weight: 500;
color: var(--el-text-color-primary);
text-align: center;
appearance: none;
outline: none;
background: var(--el-fill-color-blank);
border: 1px solid var(--el-border-color);
border-radius: 8px;
transition:
border-color 0.2s ease,
box-shadow 0.2s ease;
&:focus {
border-color: var(--el-color-primary);
box-shadow: 0 0 0 1px var(--el-color-primary) inset;
}
}
.login-mobile-sms-btn {
border-radius: 8px;
}
html.dark {
.login-mobile-otp-cell {
background: rgb(255 255 255 / 6%);
border-color: rgb(255 255 255 / 14%);
&:focus {
border-color: var(--el-color-primary);
}
}
}
/* EP 全局规则:相邻 .el-button { margin-left: 12px },纵向叠放时仍会命中,导致第二颗按钮横向错位 */
.login-mobile-actions {
:deep(.el-button + .el-button) {
margin-left: 0 !important;
}
:deep(.el-button) {
box-sizing: border-box;
width: 100%;
min-width: 0;
max-width: 100%;
}
}
@use "@styles/custom/fa-login";
</style>
@@ -65,23 +65,5 @@ const qrPayload = computed(() => {
</script>
<style scoped lang="scss">
@import "@styles/fa-login.css";
.login-qr-flow {
margin-top: 1rem;
}
.login-qr-card {
box-sizing: border-box;
}
/* EP:相邻按钮横向间距;单列返回按钮无需处理 */
.login-mobile-actions {
:deep(.el-button) {
box-sizing: border-box;
width: 100%;
min-width: 0;
max-width: 100%;
}
}
@use "@styles/custom/fa-login";
</style>
@@ -133,6 +133,6 @@ defineExpose({
});
</script>
<style scoped>
@import "@styles/fa-login.css";
<style scoped lang="scss">
@use "@styles/custom/fa-login";
</style>