Use promises api for user-related backend calls
This commit is contained in:
parent
447c1894d9
commit
e11ffb741f
4 changed files with 7 additions and 13 deletions
|
@ -57,7 +57,7 @@ export class AddEditBudgetComponent {
|
||||||
|
|
||||||
// TODO: Implement a search box with suggestions to add users
|
// TODO: Implement a search box with suggestions to add users
|
||||||
searchUsers(username: string) {
|
searchUsers(username: string) {
|
||||||
this.twigsService.getUsersByUsername(username).subscribe(users => {
|
this.twigsService.getUsersByUsername(username).then(users => {
|
||||||
this.searchedUsers = users;
|
this.searchedUsers = users;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -302,10 +302,8 @@ export class TwigsHttpService implements TwigsService {
|
||||||
return this.request(url, HttpMethod.GET)
|
return this.request(url, HttpMethod.GET)
|
||||||
}
|
}
|
||||||
|
|
||||||
getUsersByUsername(username: string): Observable<User[]> {
|
getUsersByUsername(username: string): Promise<User[]> {
|
||||||
return new Observable(subscriber => {
|
return Promise.reject("Not yet implemented")
|
||||||
subscriber.error("Not yet implemented")
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private async request<T>(url: URL, method: HttpMethod, body?: any): Promise<T> {
|
private async request<T>(url: URL, method: HttpMethod, body?: any): Promise<T> {
|
||||||
|
|
|
@ -311,15 +311,11 @@ export class TwigsLocalService implements TwigsService {
|
||||||
|
|
||||||
// Users
|
// Users
|
||||||
getProfile(id: string): Promise<User> {
|
getProfile(id: string): Promise<User> {
|
||||||
return new Promise((resolve, reject) => {
|
return Promise.reject("Not yet implemented");
|
||||||
reject("Not yet implemented")
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
getUsersByUsername(username: string): Observable<User[]> {
|
getUsersByUsername(username: string): Promise<User[]> {
|
||||||
return new Observable(subscriber => {
|
return Promise.resolve(this.users.filter(user => user.username.indexOf(username) > -1))
|
||||||
subscriber.next(this.users.filter(user => user.username.indexOf(username) > -1 ));
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private updateValues(old: object, changes: object, keys: string[]) {
|
private updateValues(old: object, changes: object, keys: string[]) {
|
||||||
|
|
|
@ -55,7 +55,7 @@ export interface TwigsService {
|
||||||
deleteTransaction(id: string): Observable<void>;
|
deleteTransaction(id: string): Observable<void>;
|
||||||
|
|
||||||
getProfile(id: string): Promise<User>;
|
getProfile(id: string): Promise<User>;
|
||||||
getUsersByUsername(username: string): Observable<User[]>;
|
getUsersByUsername(username: string): Promise<User[]>;
|
||||||
}
|
}
|
||||||
|
|
||||||
export let TWIGS_SERVICE = new InjectionToken<TwigsService>('twigs.service');
|
export let TWIGS_SERVICE = new InjectionToken<TwigsService>('twigs.service');
|
||||||
|
|
Loading…
Reference in a new issue