Skip to content

Commit 587f910

Browse files
authored
feat(data-table-v2): add selectable row styles (#2199)
* feat: add selectable styles * fix: remove nots * fix: td padding to align with header * fix: checkbox header padding
1 parent 4274bf1 commit 587f910

File tree

2 files changed

+52
-4
lines changed

2 files changed

+52
-4
lines changed

src/components/data-table-v2/_data-table-v2-core.scss

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -311,6 +311,53 @@
311311
.#{$prefix}--overflow-menu__icon {
312312
opacity: 1;
313313
}
314+
315+
//----------------------------------------------------------------------------
316+
// Select
317+
//----------------------------------------------------------------------------
318+
.#{$prefix}--table-column-checkbox .#{$prefix}--checkbox-label {
319+
padding-left: $spacing-05;
320+
}
321+
322+
.#{$prefix}--data-table-v2 th.#{$prefix}--table-column-checkbox {
323+
padding: rem(12px) $spacing-03 0 $spacing-05;
324+
width: rem(44px); // 16px padding left + 8px padding right + 20px checkbox width
325+
}
326+
327+
th.#{$prefix}--table-column-checkbox:hover {
328+
background: $data-table-column-hover;
329+
}
330+
331+
// default selected row
332+
tr.#{$prefix}--data-table-v2--selected td {
333+
background-color: $ui-03;
334+
border-top: 1px solid $ui-03;
335+
border-bottom: 1px solid $active-01; //bottom border acts as separator from other rows
336+
}
337+
338+
// first row
339+
tr.#{$prefix}--data-table-v2--selected:first-of-type td {
340+
border-top: 1px solid $active-01; //top border acts as separator from thead
341+
}
342+
343+
// last row
344+
tr.#{$prefix}--data-table-v2--selected:last-of-type td {
345+
border-top: 1px solid $ui-03; // doesn't need separators
346+
border-bottom: 1px solid $ui-03;
347+
}
348+
349+
// hover
350+
.#{$prefix}--data-table-v2 tbody .#{$prefix}--data-table-v2--selected:hover td {
351+
color: $text-01;
352+
background: $data-table-column-hover;
353+
border-top: 1px solid $data-table-column-hover;
354+
border-bottom: 1px solid $data-table-column-hover;
355+
}
356+
357+
// selected overflow menu
358+
.#{$prefix}--data-table-v2--selected .#{$prefix}--overflow-menu .#{$prefix}--overflow-menu__icon {
359+
opacity: 1;
360+
}
314361
}
315362

316363
@include exports('data-table-v2-core') {

src/components/data-table-v2/_data-table-v2-sort.scss

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -78,12 +78,13 @@
7878
border-bottom: none;
7979
}
8080

81-
.#{$prefix}--data-table-v2--sort th:first-of-type .#{$prefix}--table-sort-v2 {
82-
padding-left: $spacing-04;
81+
.#{$prefix}--data-table-v2--sort td {
82+
padding-left: $spacing-03;
83+
padding-right: $spacing-03;
8384
}
8485

85-
.#{$prefix}--data-table-v2--sort th.#{$prefix}--table-column-checkbox {
86-
padding: rem(10px) $spacing-05;
86+
.#{$prefix}--data-table-v2--sort th:first-of-type .#{$prefix}--table-sort-v2 {
87+
padding-left: $spacing-04;
8788
}
8889

8990
// -------------------------------------

0 commit comments

Comments
 (0)