Browse Source

Refactoring

pull/2094/head
Thomas 2 years ago
parent
commit
a5a873aa20
  1. 2
      apps/api/src/app/symbol/symbol.controller.ts
  2. 4
      apps/api/src/app/symbol/symbol.service.ts
  3. 2
      apps/api/src/services/data-provider/alpha-vantage/alpha-vantage.service.ts
  4. 2
      apps/api/src/services/data-provider/coingecko/coingecko.service.ts
  5. 4
      apps/api/src/services/data-provider/data-provider.service.ts
  6. 2
      apps/api/src/services/data-provider/eod-historical-data/eod-historical-data.service.ts
  7. 2
      apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts
  8. 2
      apps/api/src/services/data-provider/google-sheets/google-sheets.service.ts
  9. 2
      apps/api/src/services/data-provider/manual/manual.service.ts
  10. 2
      apps/api/src/services/data-provider/rapid-api/rapid-api.service.ts
  11. 4
      apps/api/src/services/data-provider/yahoo-finance/yahoo-finance.service.ts
  12. 10
      apps/client/src/app/services/data.service.ts
  13. 8
      libs/ui/src/lib/symbol-autocomplete/symbol-autocomplete.component.ts

2
apps/api/src/app/symbol/symbol.controller.ts

@ -41,7 +41,7 @@ export class SymbolController {
): Promise<{ items: LookupItem[] }> { ): Promise<{ items: LookupItem[] }> {
try { try {
return this.symbolService.lookup({ return this.symbolService.lookup({
includeIndices: includeIndices, includeIndices,
query: query.toLowerCase(), query: query.toLowerCase(),
user: this.request.user user: this.request.user
}); });

4
apps/api/src/app/symbol/symbol.service.ts

@ -81,11 +81,11 @@ export class SymbolService {
} }
public async lookup({ public async lookup({
includeIndices, includeIndices = false,
query, query,
user user
}: { }: {
includeIndices: boolean; includeIndices?: boolean;
query: string; query: string;
user: UserWithSettings; user: UserWithSettings;
}): Promise<{ items: LookupItem[] }> { }): Promise<{ items: LookupItem[] }> {

2
apps/api/src/services/data-provider/alpha-vantage/alpha-vantage.service.ts

@ -115,7 +115,7 @@ export class AlphaVantageService implements DataProviderInterface {
} }
public async search({ public async search({
includeIndices, includeIndices = false,
query query
}: { }: {
includeIndices?: boolean; includeIndices?: boolean;

2
apps/api/src/services/data-provider/coingecko/coingecko.service.ts

@ -165,7 +165,7 @@ export class CoinGeckoService implements DataProviderInterface {
} }
public async search({ public async search({
includeIndices, includeIndices = false,
query query
}: { }: {
includeIndices?: boolean; includeIndices?: boolean;

4
apps/api/src/services/data-provider/data-provider.service.ts

@ -367,11 +367,11 @@ export class DataProviderService {
} }
public async search({ public async search({
includeIndices, includeIndices = false,
query, query,
user user
}: { }: {
includeIndices: boolean; includeIndices?: boolean;
query: string; query: string;
user: UserWithSettings; user: UserWithSettings;
}): Promise<{ items: LookupItem[] }> { }): Promise<{ items: LookupItem[] }> {

2
apps/api/src/services/data-provider/eod-historical-data/eod-historical-data.service.ts

@ -220,7 +220,7 @@ export class EodHistoricalDataService implements DataProviderInterface {
} }
public async search({ public async search({
includeIndices, includeIndices = false,
query query
}: { }: {
includeIndices?: boolean; includeIndices?: boolean;

2
apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts

@ -144,7 +144,7 @@ export class FinancialModelingPrepService implements DataProviderInterface {
} }
public async search({ public async search({
includeIndices, includeIndices = false,
query query
}: { }: {
includeIndices?: boolean; includeIndices?: boolean;

2
apps/api/src/services/data-provider/google-sheets/google-sheets.service.ts

@ -154,7 +154,7 @@ export class GoogleSheetsService implements DataProviderInterface {
} }
public async search({ public async search({
includeIndices, includeIndices = false,
query query
}: { }: {
includeIndices?: boolean; includeIndices?: boolean;

2
apps/api/src/services/data-provider/manual/manual.service.ts

@ -172,7 +172,7 @@ export class ManualService implements DataProviderInterface {
} }
public async search({ public async search({
includeIndices, includeIndices = false,
query query
}: { }: {
includeIndices?: boolean; includeIndices?: boolean;

2
apps/api/src/services/data-provider/rapid-api/rapid-api.service.ts

@ -118,7 +118,7 @@ export class RapidApiService implements DataProviderInterface {
} }
public async search({ public async search({
includeIndices, includeIndices = false,
query query
}: { }: {
includeIndices?: boolean; includeIndices?: boolean;

4
apps/api/src/services/data-provider/yahoo-finance/yahoo-finance.service.ts

@ -276,7 +276,7 @@ export class YahooFinanceService implements DataProviderInterface {
} }
public async search({ public async search({
includeIndices, includeIndices = false,
query query
}: { }: {
includeIndices?: boolean; includeIndices?: boolean;
@ -286,9 +286,11 @@ export class YahooFinanceService implements DataProviderInterface {
try { try {
const quoteTypes = ['EQUITY', 'ETF', 'FUTURE', 'MUTUALFUND']; const quoteTypes = ['EQUITY', 'ETF', 'FUTURE', 'MUTUALFUND'];
if (includeIndices) { if (includeIndices) {
quoteTypes.push('INDEX'); quoteTypes.push('INDEX');
} }
const searchResult = await yahooFinance.search(query); const searchResult = await yahooFinance.search(query);
const quotes = searchResult.quotes const quotes = searchResult.quotes

10
apps/client/src/app/services/data.service.ts

@ -268,10 +268,14 @@ export class DataService {
includeIndices?: boolean; includeIndices?: boolean;
query: string; query: string;
}) { }) {
let params = new HttpParams().set('query', query);
if (includeIndices) {
params = params.append('includeIndices', includeIndices);
}
return this.http return this.http
.get<{ items: LookupItem[] }>( .get<{ items: LookupItem[] }>('/api/v1/symbol/lookup', { params })
`/api/v1/symbol/lookup?query=${query}&includeIndices=${includeIndices}`
)
.pipe( .pipe(
map((respose) => { map((respose) => {
return respose.items; return respose.items;

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

@ -50,8 +50,8 @@ export class SymbolAutocompleteComponent
extends AbstractMatFormField<LookupItem> extends AbstractMatFormField<LookupItem>
implements OnInit, OnDestroy implements OnInit, OnDestroy
{ {
@Input() public isLoading = false;
@Input() private includeIndices = false; @Input() private includeIndices = false;
@Input() public isLoading = false;
@ViewChild(MatInput, { static: false }) private input: MatInput; @ViewChild(MatInput, { static: false }) private input: MatInput;
@ -96,8 +96,8 @@ export class SymbolAutocompleteComponent
}), }),
switchMap((query: string) => { switchMap((query: string) => {
return this.dataService.fetchSymbols({ return this.dataService.fetchSymbols({
includeIndices: this.includeIndices, query,
query includeIndices: this.includeIndices
}); });
}) })
) )
@ -136,9 +136,11 @@ export class SymbolAutocompleteComponent
public ngDoCheck() { public ngDoCheck() {
if (this.ngControl) { if (this.ngControl) {
this.validateRequired(); this.validateRequired();
if (this.control.touched) { if (this.control.touched) {
this.validateSelection(); this.validateSelection();
} }
this.errorState = this.ngControl.invalid && this.ngControl.touched; this.errorState = this.ngControl.invalid && this.ngControl.touched;
this.stateChanges.next(); this.stateChanges.next();
} }

Loading…
Cancel
Save