From 8957afab01be9c8347e8f8c1e8cc56681ac0f018 Mon Sep 17 00:00:00 2001 From: Maximilian Koeller Date: Thu, 27 Feb 2025 09:36:48 +0100 Subject: [PATCH] fix: allow partial overrides of CSS classes --- .../src/lib/components/datatable.component.ts | 10 +--------- .../lib/components/footer/footer.component.ts | 8 ++++---- .../src/lib/components/footer/pager.component.ts | 16 ++++++++-------- .../components/header/header-cell.component.ts | 12 ++++++------ .../lib/components/header/header.component.ts | 6 +++--- 5 files changed, 22 insertions(+), 30 deletions(-) diff --git a/projects/ngx-datatable/src/lib/components/datatable.component.ts b/projects/ngx-datatable/src/lib/components/datatable.component.ts index 8b4097603..bbc49d988 100644 --- a/projects/ngx-datatable/src/lib/components/datatable.component.ts +++ b/projects/ngx-datatable/src/lib/components/datatable.component.ts @@ -353,15 +353,7 @@ export class DatatableComponent /** * Css class overrides */ - @Input() cssClasses: Partial = { - sortAscending: 'datatable-icon-up', - sortDescending: 'datatable-icon-down', - sortUnset: 'datatable-icon-sort-unset', - pagerLeftArrow: 'datatable-icon-left', - pagerRightArrow: 'datatable-icon-right', - pagerPrevious: 'datatable-icon-prev', - pagerNext: 'datatable-icon-skip' - }; + @Input() cssClasses: Partial = {}; /** * Message overrides for localization diff --git a/projects/ngx-datatable/src/lib/components/footer/footer.component.ts b/projects/ngx-datatable/src/lib/components/footer/footer.component.ts index a289fefa4..a593d8aa7 100644 --- a/projects/ngx-datatable/src/lib/components/footer/footer.component.ts +++ b/projects/ngx-datatable/src/lib/components/footer/footer.component.ts @@ -57,10 +57,10 @@ export class DataTableFooterComponent { @Input() rowCount: number; @Input() pageSize: number; @Input() offset: number; - @Input() pagerLeftArrowIcon: string; - @Input() pagerRightArrowIcon: string; - @Input() pagerPreviousIcon: string; - @Input() pagerNextIcon: string; + @Input() pagerLeftArrowIcon?: string; + @Input() pagerRightArrowIcon?: string; + @Input() pagerPreviousIcon?: string; + @Input() pagerNextIcon?: string; @Input() totalMessage: string; @Input() footerTemplate: DatatableFooterDirective; diff --git a/projects/ngx-datatable/src/lib/components/footer/pager.component.ts b/projects/ngx-datatable/src/lib/components/footer/pager.component.ts index b59916a8f..968e6801b 100644 --- a/projects/ngx-datatable/src/lib/components/footer/pager.component.ts +++ b/projects/ngx-datatable/src/lib/components/footer/pager.component.ts @@ -8,12 +8,12 @@ import { Page } from '../../types/internal.types';
  • - +
  • - +
  • @for (pg of pages; track pg.number) { @@ -29,12 +29,12 @@ import { Page } from '../../types/internal.types'; }
  • - +
  • - +
@@ -46,10 +46,10 @@ import { Page } from '../../types/internal.types'; standalone: true }) export class DataTablePagerComponent { - @Input() pagerLeftArrowIcon: string; - @Input() pagerRightArrowIcon: string; - @Input() pagerPreviousIcon: string; - @Input() pagerNextIcon: string; + @Input() pagerLeftArrowIcon?: string; + @Input() pagerRightArrowIcon?: string; + @Input() pagerPreviousIcon?: string; + @Input() pagerNextIcon?: string; @Input() set size(val: number) { diff --git a/projects/ngx-datatable/src/lib/components/header/header-cell.component.ts b/projects/ngx-datatable/src/lib/components/header/header-cell.component.ts index 8ff0d2914..1848502d1 100644 --- a/projects/ngx-datatable/src/lib/components/header/header-cell.component.ts +++ b/projects/ngx-datatable/src/lib/components/header/header-cell.component.ts @@ -66,9 +66,9 @@ export class DataTableHeaderCellComponent implements OnInit { private cd = inject(ChangeDetectorRef); @Input() sortType: SortType; - @Input() sortAscendingIcon: string; - @Input() sortDescendingIcon: string; - @Input() sortUnsetIcon: string; + @Input() sortAscendingIcon?: string; + @Input() sortDescendingIcon?: string; + @Input() sortUnsetIcon?: string; @Input() isTarget: boolean; @Input() targetMarkerTemplate: TemplateRef; @@ -256,11 +256,11 @@ export class DataTableHeaderCellComponent implements OnInit { return; } if (sortDir === SortDirection.asc) { - return `sort-btn sort-asc ${this.sortAscendingIcon}`; + return `sort-btn sort-asc ${this.sortAscendingIcon ?? 'datatable-icon-up'}`; } else if (sortDir === SortDirection.desc) { - return `sort-btn sort-desc ${this.sortDescendingIcon}`; + return `sort-btn sort-desc ${this.sortDescendingIcon ?? 'datatable-icon-down'}`; } else { - return `sort-btn ${this.sortUnsetIcon}`; + return `sort-btn ${this.sortUnsetIcon ?? 'datatable-icon-sort-unset'}`; } } } diff --git a/projects/ngx-datatable/src/lib/components/header/header.component.ts b/projects/ngx-datatable/src/lib/components/header/header.component.ts index 4692544dc..5ffb58ea2 100644 --- a/projects/ngx-datatable/src/lib/components/header/header.component.ts +++ b/projects/ngx-datatable/src/lib/components/header/header.component.ts @@ -108,9 +108,9 @@ export class DataTableHeaderComponent implements OnDestroy, OnChanges { private cd = inject(ChangeDetectorRef); private scrollbarHelper = inject(ScrollbarHelper); - @Input() sortAscendingIcon: string; - @Input() sortDescendingIcon: string; - @Input() sortUnsetIcon: string; + @Input() sortAscendingIcon?: string; + @Input() sortDescendingIcon?: string; + @Input() sortUnsetIcon?: string; @Input() scrollbarH: boolean; @Input() dealsWithGroup: boolean; @Input() targetMarkerTemplate: TemplateRef;