Browse Source

Add asset sub classes

pull/2087/head
Thomas 2 years ago
parent
commit
6fe33a1bfb
  1. 5
      libs/ui/src/lib/symbol-autocomplete/symbol-autocomplete.component.html
  2. 16
      libs/ui/src/lib/symbol-autocomplete/symbol-autocomplete.component.ts

5
libs/ui/src/lib/symbol-autocomplete/symbol-autocomplete.component.html

@ -22,7 +22,10 @@
>
<br />
<small class="text-muted"
>{{ lookupItem.symbol | gfSymbol }} · {{ lookupItem.currency }}</small
>{{ lookupItem.symbol | gfSymbol }} · {{ lookupItem.currency
}}<ng-container *ngIf="lookupItem.assetSubClass">
· {{ lookupItem.assetSubClassString }}</ng-container
></small
>
</mat-option>
</ng-container>

16
libs/ui/src/lib/symbol-autocomplete/symbol-autocomplete.component.ts

@ -18,8 +18,9 @@ import { MatFormFieldControl } from '@angular/material/form-field';
import { MatInput } from '@angular/material/input';
import { LookupItem } from '@ghostfolio/api/app/symbol/interfaces/lookup-item.interface';
import { DataService } from '@ghostfolio/client/services/data.service';
import { translate } from '@ghostfolio/ui/i18n';
import { isString } from 'lodash';
import { Observable, Subject, of, tap } from 'rxjs';
import { Subject, tap } from 'rxjs';
import {
debounceTime,
distinctUntilChanged,
@ -56,8 +57,8 @@ export class SymbolAutocompleteComponent
@ViewChild('symbolAutocomplete') public symbolAutocomplete: MatAutocomplete;
public control = new FormControl();
public filteredLookupItems: LookupItem[] = [];
public filteredLookupItemsObservable: Observable<LookupItem[]> = of([]);
public filteredLookupItems: (LookupItem & { assetSubClassString: string })[] =
[];
private unsubscribeSubject = new Subject<void>();
@ -89,6 +90,7 @@ export class SymbolAutocompleteComponent
}),
tap(() => {
this.isLoading = true;
this.changeDetectorRef.markForCheck();
}),
switchMap((query: string) => {
@ -96,7 +98,13 @@ export class SymbolAutocompleteComponent
})
)
.subscribe((filteredLookupItems) => {
this.filteredLookupItems = filteredLookupItems;
this.filteredLookupItems = filteredLookupItems.map((lookupItem) => {
return {
...lookupItem,
assetSubClassString: translate(lookupItem.assetSubClass)
};
});
this.isLoading = false;
this.changeDetectorRef.markForCheck();

Loading…
Cancel
Save