mirror of
https://github.com/akveo/ngx-admin.git
synced 2026-01-04 08:38:50 +01:00
With this change all components, which used data services before, now use abstract classes of service interfaces, mock services extend interface services, CoreModule contains code to inject a needed implementation of some service.
29 lines
850 B
TypeScript
29 lines
850 B
TypeScript
import { Injectable } from '@angular/core';
|
|
import { of as observableOf, Observable } from 'rxjs';
|
|
import { CountryOrderData } from '../data/country-order';
|
|
|
|
@Injectable()
|
|
export class CountryOrderService extends CountryOrderData {
|
|
|
|
private countriesCategories = [
|
|
'Sofas',
|
|
'Furniture',
|
|
'Lighting',
|
|
'Tables',
|
|
'Textiles',
|
|
];
|
|
private countriesCategoriesLength = this.countriesCategories.length;
|
|
private generateRandomData(nPoints: number): number[] {
|
|
return Array.from(Array(nPoints)).map(() => {
|
|
return Math.round(Math.random() * 20);
|
|
});
|
|
}
|
|
|
|
getCountriesCategories(): Observable<string[]> {
|
|
return observableOf(this.countriesCategories);
|
|
}
|
|
|
|
getCountriesCategoriesData(country: string): Observable<number[]> {
|
|
return observableOf(this.generateRandomData(this.countriesCategoriesLength));
|
|
}
|
|
}
|