Feature/prettify symbols in transaction filtering component (#131)
* Prettify generic scraper symbols * Update changelog
This commit is contained in:
parent
dc736d53b4
commit
aea497154a
@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Respected the data source attribute of the transactions model in the data management for historical data
|
- Respected the data source attribute of the transactions model in the data management for historical data
|
||||||
|
- Prettified the generic scraper symbols in the transaction filtering component
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
[removable]="true"
|
[removable]="true"
|
||||||
(removed)="removeKeyword(searchKeyword)"
|
(removed)="removeKeyword(searchKeyword)"
|
||||||
>
|
>
|
||||||
{{ searchKeyword }}
|
{{ searchKeyword | gfSymbol }}
|
||||||
<ion-icon class="ml-2" matPrefix name="close-outline"></ion-icon>
|
<ion-icon class="ml-2" matPrefix name="close-outline"></ion-icon>
|
||||||
</mat-chip>
|
</mat-chip>
|
||||||
<input
|
<input
|
||||||
@ -26,11 +26,8 @@
|
|||||||
#autocomplete="matAutocomplete"
|
#autocomplete="matAutocomplete"
|
||||||
(optionSelected)="keywordSelected($event)"
|
(optionSelected)="keywordSelected($event)"
|
||||||
>
|
>
|
||||||
<mat-option
|
<mat-option *ngFor="let filter of filters | async" [value]="filter">
|
||||||
*ngFor="let transaction of filteredTransactions | async"
|
{{ filter | gfSymbol }}
|
||||||
[value]="transaction"
|
|
||||||
>
|
|
||||||
{{ transaction }}
|
|
||||||
</mat-option>
|
</mat-option>
|
||||||
</mat-autocomplete>
|
</mat-autocomplete>
|
||||||
</mat-form-field>
|
</mat-form-field>
|
||||||
|
@ -57,10 +57,8 @@ export class TransactionsTableComponent
|
|||||||
public dataSource: MatTableDataSource<OrderWithAccount> = new MatTableDataSource();
|
public dataSource: MatTableDataSource<OrderWithAccount> = new MatTableDataSource();
|
||||||
public defaultDateFormat = DEFAULT_DATE_FORMAT;
|
public defaultDateFormat = DEFAULT_DATE_FORMAT;
|
||||||
public displayedColumns = [];
|
public displayedColumns = [];
|
||||||
public filteredTransactions$: Subject<string[]> = new BehaviorSubject([]);
|
public filters$: Subject<string[]> = new BehaviorSubject([]);
|
||||||
public filteredTransactions: Observable<
|
public filters: Observable<string[]> = this.filters$.asObservable();
|
||||||
string[]
|
|
||||||
> = this.filteredTransactions$.asObservable();
|
|
||||||
public isLoading = true;
|
public isLoading = true;
|
||||||
public placeholder = '';
|
public placeholder = '';
|
||||||
public routeQueryParams: Subscription;
|
public routeQueryParams: Subscription;
|
||||||
@ -68,7 +66,7 @@ export class TransactionsTableComponent
|
|||||||
public searchKeywords: string[] = [];
|
public searchKeywords: string[] = [];
|
||||||
public separatorKeysCodes: number[] = [ENTER, COMMA];
|
public separatorKeysCodes: number[] = [ENTER, COMMA];
|
||||||
|
|
||||||
private allFilteredTransactions: string[];
|
private allFilters: string[];
|
||||||
private unsubscribeSubject = new Subject<void>();
|
private unsubscribeSubject = new Subject<void>();
|
||||||
|
|
||||||
public constructor(
|
public constructor(
|
||||||
@ -90,13 +88,13 @@ export class TransactionsTableComponent
|
|||||||
this.searchControl.valueChanges.subscribe((keyword) => {
|
this.searchControl.valueChanges.subscribe((keyword) => {
|
||||||
if (keyword) {
|
if (keyword) {
|
||||||
const filterValue = keyword.toLowerCase();
|
const filterValue = keyword.toLowerCase();
|
||||||
this.filteredTransactions$.next(
|
this.filters$.next(
|
||||||
this.allFilteredTransactions.filter(
|
this.allFilters.filter(
|
||||||
(filter) => filter.toLowerCase().indexOf(filterValue) === 0
|
(filter) => filter.toLowerCase().indexOf(filterValue) === 0
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
this.filteredTransactions$.next(this.allFilteredTransactions);
|
this.filters$.next(this.allFilters);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -239,13 +237,13 @@ export class TransactionsTableComponent
|
|||||||
this.placeholder =
|
this.placeholder =
|
||||||
lowercaseSearchKeywords.length <= 0 ? SEARCH_PLACEHOLDER : '';
|
lowercaseSearchKeywords.length <= 0 ? SEARCH_PLACEHOLDER : '';
|
||||||
|
|
||||||
this.allFilteredTransactions = this.getSearchableFieldValues(
|
this.allFilters = this.getSearchableFieldValues(this.transactions).filter(
|
||||||
this.transactions
|
(item) => {
|
||||||
).filter((item) => {
|
return !lowercaseSearchKeywords.includes(item.trim().toLowerCase());
|
||||||
return !lowercaseSearchKeywords.includes(item.trim().toLowerCase());
|
}
|
||||||
});
|
);
|
||||||
|
|
||||||
this.filteredTransactions$.next(this.allFilteredTransactions);
|
this.filters$.next(this.allFilters);
|
||||||
}
|
}
|
||||||
|
|
||||||
private getSearchableFieldValues(transactions: OrderWithAccount[]): string[] {
|
private getSearchableFieldValues(transactions: OrderWithAccount[]): string[] {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user