Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(grid): [grid] add dark theme #3040

Merged
merged 7 commits into from
Mar 10, 2025
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ function rowClassName({ rowIndex }) {
background: red !important;
}
.tiny-grid :deep(.row__drag-disable) {
background: #f1f1f1 !important;
background: var(--tv-color-bg-disabled) !important;
}
.only-me-can-drag {
cursor: move;
Expand Down
2 changes: 1 addition & 1 deletion examples/sites/demos/pc/app/grid/drag/row-drag-ctrl.vue
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ export default {
background: red !important;
}
.tiny-grid :deep(.row__drag-disable) {
background: #f1f1f1 !important;
background: var(--tv-color-bg-disabled) !important;
}
.only-me-can-drag {
cursor: move;
Expand Down
12 changes: 12 additions & 0 deletions packages/theme/src/grid/checkbox.less
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,14 @@
}
}
}

&:not(:checked) + .@{grid-checkbox-prefix-cls}__icon {
> svg {
path:first-child {
fill: transparent;
}
}
}
}

&.is__indeterminate {
Expand All @@ -84,6 +92,10 @@
> svg {
fill: var(--tv-Grid-checkbox-icon-color-selected);
border-radius: var(--tv-Grid-checkbox-border-radius);

path:first-child {
fill: var(--tv-Grid-checkbox-icon-color-selected);
}
}
}
}
Expand Down
4 changes: 2 additions & 2 deletions packages/theme/src/grid/filter.less
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@
margin: 0;
width: 100%;
padding: 12px 8px 8px;
border-bottom: solid 1px var(--tv-Grid-divider-color);
border-bottom: solid 1px var(--tv-Grid-border-color-divider);

.@{grid-prefix-cls}__filter-search {
margin-bottom: 4px;
Expand Down Expand Up @@ -208,7 +208,7 @@
&.filter-option__btns {
padding: 10px 0;
margin: 0 10px;
border-top: 1px solid var(--tv-Grid-divider-color);
border-top: 1px solid var(--tv-Grid-border-color-divider);
text-align: center;
height: auto;
}
Expand Down
2 changes: 1 addition & 1 deletion packages/theme/src/grid/input.less
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
padding: 4px 8px;
width: 100%;
color: var(--tv-Grid-text-color);
border: 1px solid var(--tv-Grid-divider-color);
border: 1px solid var(--tv-Grid-border-color-divider);
background-color: #fff;

&:focus {
Expand Down
2 changes: 1 addition & 1 deletion packages/theme/src/grid/menu.less
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
.@{grid-menu-prefix-cls}__clild-wrapper {
margin: 0;
list-style-type: none;
border-bottom: 1px solid var(--tv-Grid-divider-color);
border-bottom: 1px solid var(--tv-Grid-border-color-divider);

&:last-child {
border: 0;
Expand Down
14 changes: 13 additions & 1 deletion packages/theme/src/grid/radio.less
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@
margin: 1px;
border: 1px solid var(--tv-Grid-radio-icon-color-selected);
border-radius: 100%;
background: #fff;
background: transparent;

&::after {
content: '';
Expand All @@ -75,12 +75,24 @@
&.icon-radio-selected {
display: none;
}

path:last-child {
fill: transparent;
}
}

& + .@{grid-radio-prefix-cls}__label {
color: var(--tv-Grid-text-color);
}
}

&:not(:checked) + .@{grid-radio-prefix-cls}__icon {
> svg {
path:last-child {
fill: transparent;
}
}
}
}

&.is__disabled {
Expand Down
25 changes: 14 additions & 11 deletions packages/theme/src/grid/table.less
Original file line number Diff line number Diff line change
Expand Up @@ -295,12 +295,12 @@
&:before {
top: 0;
z-index: 2;
border-top: 1px solid var(--tv-Grid-divider-color);
border-top: 1px solid var(--tv-Grid-border-color-divider);
}

&:after {
bottom: 0;
border-bottom: 1px solid var(--tv-Grid-divider-color);
border-bottom: 1px solid var(--tv-Grid-border-color-divider);
}

.@{grid-prefix-cls}__header {
Expand All @@ -312,8 +312,8 @@
.@{grid-prefix-cls}-header__column,
.@{grid-prefix-cls}-body__column,
.@{grid-prefix-cls}-footer__column {
background-image: linear-gradient(-90deg, var(--tv-Grid-divider-color), var(--tv-Grid-divider-color)),
linear-gradient(-180deg, var(--tv-Grid-divider-color), var(--tv-Grid-divider-color));
background-image: linear-gradient(-90deg, var(--tv-Grid-border-color-divider), var(--tv-Grid-border-color-divider)),
linear-gradient(-180deg, var(--tv-Grid-border-color-divider), var(--tv-Grid-border-color-divider));
background-repeat: no-repeat;
background-size:
1px 100%,
Expand Down Expand Up @@ -341,12 +341,12 @@

&:before {
left: 0;
border-left: 1px solid var(--tv-Grid-divider-color);
border-left: 1px solid var(--tv-Grid-border-color-divider);
}

&:after {
right: 0;
border-right: 1px solid var(--tv-Grid-divider-color);
border-right: 1px solid var(--tv-Grid-border-color-divider);
}
}
}
Expand Down Expand Up @@ -390,7 +390,7 @@
}

& &__footer-wrapper {
border-top: 1px solid var(--tv-Grid-divider-color);
border-top: 1px solid var(--tv-Grid-border-color-divider);
border-bottom: none;
overflow: hidden !important;

Expand Down Expand Up @@ -444,7 +444,7 @@
& &-footer__column {
// 默认文字居左对齐
text-align: left;
border-bottom: 1px solid var(--tv-Grid-divider-color);
border-bottom: 1px solid var(--tv-Grid-border-color-divider);

.DefaultTdPadding();

Expand Down Expand Up @@ -692,7 +692,7 @@

// 展开行td
& &-body__expanded-column {
border-bottom: 1px solid var(--tv-Grid-divider-color);
border-bottom: 1px solid var(--tv-Grid-border-color-divider);
}

& &-body__expanded-cell {
Expand Down Expand Up @@ -831,6 +831,7 @@

svg {
font-size: var(--tv-Grid-icon-size);
fill: var(--tv-Grid-text-color);
}
}
}
Expand Down Expand Up @@ -952,7 +953,8 @@
width: 100%;
color: var(--tv-Grid-text-color);
border-radius: var(--tv-Grid-input-border-radius);
border: 1px solid var(--tv-Grid-divider-color);
border: 1px solid var(--tv-Grid-border-color-divider);
background-color: var(--tv-Grid-Input-bg-color);

&:focus {
border: 1px solid var(--tv-Grid-input-border-color-hover);
Expand All @@ -964,6 +966,7 @@
height: var(--tv-Grid-input-height);
line-height: normal;
color: var(--tv-Grid-text-color);
background-color: var(--tv-Grid-Input-bg-color);

.@{input-prefix-cls} {
width: 100%;
Expand Down Expand Up @@ -1063,7 +1066,7 @@
margin-right: 1.5rem;
font-size: 0.875rem;
cursor: pointer;
color: #161e26;
color: var(--tv-Grid-column-anchor-text-color);

&:last-child {
margin-right: 0px;
Expand Down
6 changes: 5 additions & 1 deletion packages/theme/src/grid/vars.less
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
// 表格图标禁用颜色
--tv-Grid-icon-color-disabled: var(--tv-color-icon-disabled);
// 表格分割线颜色
--tv-Grid-divider-color: var(--tv-color-border-divider);
--tv-Grid-border-color-divider: var(--tv-color-border-divider);
// 表格边框颜色
--tv-Grid-border-color: var(--tv-color-border);
// 表格边框激活态颜色
Expand Down Expand Up @@ -154,6 +154,8 @@
--tv-Grid-toolbar-btn-icon-border-color-hover: var(--tv-color-border-hover);
// 工具栏图标按钮边框圆角
--tv-Grid-toolbar-btn-icon-border-radius: var(--tv-border-radius-md);
// 工具栏字体颜色
--tv-Grid-column-anchor-text-color: var(--tv-color-text);
// -------mini/small表格-------
// mini表格表头高度
--tv-Grid-header-height-mini: var(--tv-size-height-sm);
Expand All @@ -176,6 +178,8 @@
--tv-Grid-tree-expand-icon-padding-right: var(--tv-space-md);
// 内置输入框高度
--tv-Grid-input-height: var(--tv-size-height-md);
// 内置输入框背景色
--tv-Grid-Input-bg-color: var(--tv-color-bg-secondary);
// 内置输入框边框圆角
--tv-Grid-input-border-radius: var(--tv-border-radius-md);
// 内置输入框悬浮边框颜色
Expand Down