From 5d9c57c9aba4780b432b1cf96bf6468c8feebe9d Mon Sep 17 00:00:00 2001 From: David Requeno Date: Tue, 3 Mar 2026 22:49:29 -0600 Subject: [PATCH] Feature/enable column sorting in data provider table --- .../admin-settings.component.html | 30 ++++++++++++++++--- .../admin-settings.component.ts | 10 ++++++- 2 files changed, 35 insertions(+), 5 deletions(-) diff --git a/apps/client/src/app/components/admin-settings/admin-settings.component.html b/apps/client/src/app/components/admin-settings/admin-settings.component.html index af64f034b..109b327e4 100644 --- a/apps/client/src/app/components/admin-settings/admin-settings.component.html +++ b/apps/client/src/app/components/admin-settings/admin-settings.component.html @@ -40,9 +40,21 @@ } - +
-
+ Name @@ -88,7 +100,12 @@ - + Status @@ -102,7 +119,12 @@ - + Asset Profiles diff --git a/apps/client/src/app/components/admin-settings/admin-settings.component.ts b/apps/client/src/app/components/admin-settings/admin-settings.component.ts index 446221058..508c5855c 100644 --- a/apps/client/src/app/components/admin-settings/admin-settings.component.ts +++ b/apps/client/src/app/components/admin-settings/admin-settings.component.ts @@ -23,17 +23,20 @@ import { ChangeDetectorRef, Component, OnDestroy, - OnInit + OnInit, + ViewChild } from '@angular/core'; import { MatButtonModule } from '@angular/material/button'; import { MatCardModule } from '@angular/material/card'; import { MatMenuModule } from '@angular/material/menu'; import { MatProgressBarModule } from '@angular/material/progress-bar'; +import { MatSort, MatSortModule } from '@angular/material/sort'; import { MatTableDataSource, MatTableModule } from '@angular/material/table'; import { RouterModule } from '@angular/router'; import { IonIcon } from '@ionic/angular/standalone'; import { addIcons } from 'ionicons'; import { ellipsisHorizontal, trashOutline } from 'ionicons/icons'; +import { get } from 'lodash'; import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader'; import { catchError, filter, of, Subject, takeUntil } from 'rxjs'; @@ -52,6 +55,7 @@ import { catchError, filter, of, Subject, takeUntil } from 'rxjs'; MatCardModule, MatMenuModule, MatProgressBarModule, + MatSortModule, MatTableModule, NgxSkeletonLoaderModule, RouterModule @@ -61,6 +65,8 @@ import { catchError, filter, of, Subject, takeUntil } from 'rxjs'; templateUrl: './admin-settings.component.html' }) export class GfAdminSettingsComponent implements OnDestroy, OnInit { + @ViewChild(MatSort) sort: MatSort; + public dataSource = new MatTableDataSource(); public defaultDateFormat: string; public displayedColumns = [ @@ -166,6 +172,8 @@ export class GfAdminSettingsComponent implements OnDestroy, OnInit { }); this.dataSource = new MatTableDataSource(filteredProviders); + this.dataSource.sort = this.sort; + this.dataSource.sortingDataAccessor = get; const ghostfolioApiKey = settings[ PROPERTY_API_KEY_GHOSTFOLIO