diff --git a/src/components/CustomLeftMenu/index.vue b/src/components/CustomLeftMenu/index.vue index 14fe798..1b55749 100644 --- a/src/components/CustomLeftMenu/index.vue +++ b/src/components/CustomLeftMenu/index.vue @@ -590,13 +590,13 @@ .custom-left-menu { --clm-bg: #ffffff; --clm-text: #1a1c20; - --clm-muted: #8a8f98; - --clm-faint: #b0b4ba; + --clm-muted: #6b7280; + --clm-faint: #9ca3af; --clm-hover: rgba(15, 16, 17, 0.04); --clm-selected: var(--app-primary-color-light); --clm-selected-text: var(--app-primary-color); - --clm-selected-border: color-mix(in srgb, var(--app-primary-color) 32%, transparent); - --clm-border: rgba(15, 16, 17, 0.08); + --clm-selected-border: color-mix(in srgb, var(--app-primary-color) 40%, transparent); + --clm-border: rgba(15, 16, 17, 0.12); --clm-radius: 8px; /* 列表卡片统一高度 */ --clm-node-title-line-height: 18px; @@ -856,54 +856,58 @@ :deep(.arco-tree-node-line), :deep(.arco-tree-node-line-top), :deep(.arco-tree-node-line-bottom) { - border-color: rgba(15, 16, 17, 0.08) !important; + border-color: var(--clm-border) !important; } + /* + * 层级树(组织等)节点本身就是可选内容,不能套用「分组头」透明边框/淡字样式。 + */ .tree-node { margin: calc(var(--clm-node-gap) / 2) 0; - padding: var(--clm-node-padding-y) 8px; + padding: 8px 10px; border-radius: var(--clm-radius); - border: 1px solid rgba(15, 16, 17, 0.06); - background: transparent; + border: 1px solid var(--clm-border); + background: var(--color-fill-1, #f7f8fa); box-sizing: border-box; - height: var(--clm-node-height); - min-height: var(--clm-node-height); - max-height: var(--clm-node-height); - overflow: hidden; + height: auto; + min-height: 44px; + max-height: none; + overflow: visible; display: flex; - align-items: stretch; + align-items: center; + cursor: pointer; - &.tree-node--with-code { - min-height: var(--clm-node-height); + &.tree-node--branch, + &.tree-node--leaf { + background: var(--color-fill-1, #f7f8fa); + border-color: var(--clm-border); } &.tree-node--branch { - height: auto; - min-height: 34px; - max-height: none; - margin: calc(var(--clm-node-gap) + 4px) 0 calc(var(--clm-node-gap) / 2); - padding: 6px 8px; - border-color: transparent; - background: transparent; - overflow: visible; - .node-second-row-spacer-cell { display: none; } - } - &.tree-node--leaf { - background: var(--color-fill-1); + .node-title { + font-size: 13px; + font-weight: 600; + color: var(--clm-text); + } + + .node-subtitle { + color: var(--clm-muted); + font-size: 12px; + } + + .node-subtitle-cell { + padding-top: 2px; + padding-left: 11px; + } } &:hover { background: var(--clm-hover); - border-color: rgba(15, 16, 17, 0.1); - } - - &.tree-node--branch:hover { - background: transparent; - border-color: transparent; + border-color: rgba(15, 16, 17, 0.18); } &.selected { @@ -914,39 +918,29 @@ .node-title { color: var(--clm-selected-text) !important; - font-weight: 560; + font-weight: 600; } .node-subtitle { color: var(--clm-muted) !important; } - &.tree-node--branch { - background: transparent !important; - border-color: transparent !important; - - .node-title { - color: var(--clm-muted) !important; - font-weight: 600; - } - - .node-title::before { - background: var(--app-primary-color); - } + .node-title::before { + background: var(--app-primary-color); } } } - .tree-node--depth-1.tree-node--branch .node-title { - font-size: 12px; - font-weight: 600; - letter-spacing: 0.02em; - color: var(--clm-muted); + .tree-node--depth-1 .node-title { + font-size: 13px; + font-weight: 650; + color: var(--clm-text); } .tree-node--depth-2 .node-title { - font-size: 12px; - font-weight: 500; + font-size: 13px; + font-weight: 600; + color: var(--clm-text); } .tree-node--depth-3, @@ -954,25 +948,26 @@ .tree-node--depth-5, .tree-node--depth-6 { .node-title { - font-size: 11px; - font-weight: 450; + font-size: 12px; + font-weight: 500; + color: var(--clm-text); } } - .tree-node--branch .node-title::before { + .tree-node .node-title::before { content: ''; display: inline-block; width: 3px; height: 12px; margin-right: 8px; border-radius: 2px; - background: color-mix(in srgb, var(--app-primary-color) 55%, var(--clm-faint)); + background: color-mix(in srgb, var(--app-primary-color) 70%, var(--clm-muted)); vertical-align: -2px; } .node-subtitle { color: var(--clm-muted); - font-size: 10px; + font-size: 12px; } } } diff --git a/src/components/RbacSplit/RbacDetailShell.vue b/src/components/RbacSplit/RbacDetailShell.vue index 891dc0b..8b32d95 100644 --- a/src/components/RbacSplit/RbacDetailShell.vue +++ b/src/components/RbacSplit/RbacDetailShell.vue @@ -257,10 +257,11 @@ const modelTab = computed({ .shell-tabs { display: flex; align-items: center; - justify-content: space-between; + justify-content: flex-start; gap: 12px; - padding: 10px 24px; + padding: 12px 24px; border-bottom: 1px solid var(--color-border-2); + background: var(--color-fill-1); flex-shrink: 0; } diff --git a/src/components/UserEditDrawer/index.vue b/src/components/UserEditDrawer/index.vue index aa49f67..3e5d736 100644 --- a/src/components/UserEditDrawer/index.vue +++ b/src/components/UserEditDrawer/index.vue @@ -1,68 +1,47 @@