fuse-angular/src/@fuse/scss/partials/plugins/_ngx-datatable.scss

258 lines
5.8 KiB
SCSS

// -----------------------------------------------------------------------------------------------------
// @ Theming
// -----------------------------------------------------------------------------------------------------
@mixin ngx-datatable-theme($theme) {
$background: map-get($theme, background);
$foreground: map-get($theme, foreground);
ngx-datatable {
&.material {
background: map-get($background, card);
color: map-get($foreground, text);
.datatable-header {
.datatable-header-cell {
color: map-get($foreground, secondary-text);
}
}
.datatable-body {
.datatable-row-wrapper {
border-bottom-color: map-get($foreground, divider);
&:first-child {
border-top-color: map-get($foreground, divider);
}
.datatable-body-row {
.datatable-body-cell {
color: map-get($foreground, text);
}
}
}
}
.datatable-footer {
color: map-get($foreground, secondary-text);
.datatable-pager {
a {
color: map-get($foreground, secondary-text);
}
}
}
&:not(.cell-selection) {
.datatable-body {
.datatable-row-wrapper {
.datatable-body-row {
&:hover {
background-color: map-get($background, hover);
.datatable-row-group {
background-color: map-get($background, hover);
}
}
}
}
}
}
}
}
}
.ngx-datatable {
&.material {
@include mat-elevation(4);
.empty-row {
display: flex;
align-items: center;
line-height: 1;
height: 56px;
padding: 0 24px;
}
.datatable-header {
border: none;
min-height: 48px;
.datatable-header-cell {
display: inline-flex;
align-items: center;
line-height: 1;
min-height: 48px;
font-size: 13px;
padding: 0 24px;
.datatable-header-cell-template-wrap {
display: inline-flex;
align-items: center;
}
}
}
.datatable-body {
display: flex;
flex: 1 0 auto;
.datatable-scroll {
display: flex;
flex-direction: column;
width: 100% !important;
}
.datatable-row-left,
.datatable-row-center,
.datatable-row-right {
min-height: 48px;
}
.datatable-row-wrapper {
border-bottom: 1px solid;
&:first-child {
border-top: 1px solid;
}
.datatable-body-cell {
display: inline-flex;
align-items: center;
line-height: 1;
min-height: 48px;
transition: none;
padding: 0 24px;
overflow: hidden;
}
}
}
.datatable-footer {
border: none;
min-height: 56px;
.datatable-footer-inner {
padding: 0 24px;
@include media-breakpoint('sm') {
flex-direction: column;
padding: 16px 0;
height: auto !important;
.datatable-pager {
margin: 0 !important;
}
}
.page-count {
padding: 0;
}
.datatable-pager {
margin: 0 0 0 24px;
.pager {
li {
a {
text-decoration: none !important;
}
}
}
}
}
}
}
}
[class*="datatable-icon-"] {
font-family: 'material-outline-icons';
font-weight: normal;
font-style: normal;
font-size: 24px;
line-height: 1;
letter-spacing: normal;
text-transform: none;
display: inline-block;
white-space: nowrap;
word-wrap: normal;
direction: ltr;
-webkit-font-feature-settings: 'liga';
-webkit-font-smoothing: antialiased;
}
.datatable-icon-filter:before {
content: "filter_list";
}
.datatable-icon-collapse:before {
content: "unfold_less";
}
.datatable-icon-expand:before {
content: "unfold_more";
}
.datatable-icon-close:before {
content: "close";
}
.datatable-icon-up:before {
content: "arrow_drop_up";
}
.datatable-icon-down:before {
content: "arrow_drop_down";
}
.datatable-icon-sort:before {
content: "sort";
}
.datatable-icon-done:before {
content: "done";
}
.datatable-icon-done-all:before {
content: "done_all";
}
.datatable-icon-search:before {
content: "search";
}
.datatable-icon-pin:before {
content: "lock";
}
.datatable-icon-add:before {
content: "add";
}
.datatable-icon-left:before {
content: "chevron_left";
}
.datatable-icon-right:before {
content: "chevron_right";
}
.datatable-icon-skip:before {
content: "skip_next";
}
.datatable-icon-prev:before {
content: "skip_previous";
}