UNPKG

@eleva-io/erp-sdk

Version:

SDK oficial para el ERP de Eleva

68 lines 2.07 kB
import { CRUD } from '../../../../utils/crud'; import { deleteKeys } from '../../../../utils'; class _CommunityProviderCRUD extends CRUD { } export class CommunitiesProvidersAPI { _httpClient; _baseUrl; _crud; constructor(_httpClient, _baseUrl) { this._httpClient = _httpClient; this._baseUrl = _baseUrl; this._crud = new _CommunityProviderCRUD(this._httpClient, { basePath: this._baseUrl }); } create(data) { return this._crud.create(data); } update(id, data) { return this._httpClient.patch(`${this._baseUrl}/:typeId/provider/${id}`, data); } delete(id) { return this._httpClient.delete(`${this._baseUrl}/:typeId/provider/${id}`); } find(query) { return this._crud.find(query); } contracts(id) { return new CommunitiesProvidersContractsAPI(this._httpClient, `${this._baseUrl}/${id}/contracts`); } } export class CommunitiesProvidersContractsAPI { _httpClient; _baseUrl; _cud; constructor(_httpClient, _baseUrl) { this._httpClient = _httpClient; this._baseUrl = _baseUrl; this._cud = new CRUD(_httpClient, { basePath: _baseUrl, }); } get(id) { return this._httpClient.get(`${this._baseUrl}/${id}`); } create(data) { if (data.documents) { return this._httpClient.form(`${this._baseUrl}`, { ...deleteKeys(data, ['documents']), files: data.documents, }); } return this._cud.create(data); } update(id, data) { return this._cud.update(id, data); } delete(id) { return this._httpClient.delete(`${this._baseUrl}/${id}`); } addDocuments(id, documents) { return this._httpClient.form(`${this._baseUrl}/${id}/documents`, { files: documents, }); } removeDocument(id, documentId) { return this._httpClient.delete(`${this._baseUrl}/${id}/documents/${documentId}`); } } //# sourceMappingURL=providers.js.map