import { Injectable } from '@angular/core'; import { HttpRestService } from '@core/services/http-rest.service'; import { GrantManagerUser } from '@core/typings/grant-manager.typing'; import { PaginationOptions } from '@yourcause/common'; @Injectable({ providedIn: 'root' }) export class GrantManagerResources { constructor ( private http: HttpRestService ) { } adminGrantManagerPaginated ( paginationOptions: PaginationOptions ) { const endpoint = 'api/admin/grantmanager/paginated'; return this.http.post(endpoint, { paginationOptions }); } async passwordResetForGrantManager ( email: string, purpose: string ) { const endpoint = `api/admin/grantmanager/generatepasswordresettokenforgrantmanager`; const response = await this.http.post<{ token: string }>(endpoint, { email, purpose }); return response.token; } confirmEmailAddress (clientUserId: number) { const endpoint = `api/admin/grantmanager/confirmemailaddress`; return this.http.post(endpoint, { clientUserId }); } updateGrantManager (user: GrantManagerUser) { const endpoint = `api/admin/grantmanager/edit`; return this.http.post(endpoint, { id: user.id, firstName: user.firstName.trim(), lastName: user.lastName.trim(), jobTitle: user.jobTitle, email: user.email, isSso: user.isSso }); } }