import { Injectable } from '@angular/core'; import { HttpRestService } from '@core/services/http-rest.service'; import { SFTPAPI } from '@core/typings/api/sftp.typing'; import { PaginationOptions } from '@yourcause/common'; @Injectable({ providedIn: 'root'}) export class SFTPResources { constructor ( private httpRestService: HttpRestService ) { } getCredentialsList ( paginationOptions: PaginationOptions ) { const endpoint = 'api/manager/sftp/paginated'; return this.httpRestService.post(endpoint, { paginationOptions }); } getBasicCredentialsList () { const endpoint = 'api/manager/sftp/nameList'; return this.httpRestService.get(endpoint); } getUserCredentialsList () { const endpoint = 'api/manager/sftp/GetUsersSFTPList'; return this.httpRestService.get(endpoint); } createUpdateSFTPCredential (payload: SFTPAPI.SFTPCredentialsPayload) { const endpoint = 'api/manager/sftp/createAndEdit'; return this.httpRestService.post(endpoint, payload); } testSFTPCredential (payload: SFTPAPI.SFTPCredentialsPayload) { const endpoint = 'api/manager/sftp/testConnection'; return this.httpRestService.post(endpoint, payload); } getReportsTiedToCredential (id: number): Promise { const endpoint = `api/manager/sftp/Reports/${id}`; return this.httpRestService.get(endpoint); } deleteSFTPCredentials (credentialsID: number) { const endpoint = `api/manager/sftp/Delete/${credentialsID}`; return this.httpRestService.get(endpoint); } }