import 'rxjs/add/operator/map'; import { HttpClient, HttpHeaders } from '@angular/common/http'; import { Injectable } from '@angular/core'; import { HostConfiguration } from './../../app.constants'; import { BaseHttpService } from '../../utilities/cite-http-service-module/base-http.service'; import { Observable } from 'rxjs/Observable'; import { ExternalSourcesItemModel } from '../../models/external-sources/ExternalSourcesItemModel'; import { BaseCriteria } from '../../models/criteria/BaseCriteria'; import { RequestItem } from '../../models/criteria/RequestItem'; import { ResearcherCriteria } from '../../models/criteria/researchers/ResearcherCriteria'; import { FileUploader } from '../../shared/components/file-uploader/FileUploader'; import { ContentFile } from '../../models/files/ContentFile'; @Injectable() export class ProjectFileUploaderService implements FileUploader { private actionUrl: string; private headers: HttpHeaders; constructor(private http: BaseHttpService) { this.actionUrl = HostConfiguration.Server + 'files/'; this.headers = new HttpHeaders(); this.headers = this.headers.set('Content-Type', 'application/json'); this.headers = this.headers.set('Accept', 'application/json'); } uploadFile(formData: FormData): Observable { return this.http.post(this.actionUrl + "upload", formData, this.headers); } }