@eleva-io/erp-sdk
Version:
SDK oficial para el ERP de Eleva
73 lines • 2.38 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.CommunitiesProvidersContractsAPI = exports.CommunitiesProvidersAPI = void 0;
const crud_1 = require("../../../../utils/crud");
const utils_1 = require("../../../../utils");
class _CommunityProviderCRUD extends crud_1.CRUD {
}
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`);
}
}
exports.CommunitiesProvidersAPI = CommunitiesProvidersAPI;
class CommunitiesProvidersContractsAPI {
_httpClient;
_baseUrl;
_cud;
constructor(_httpClient, _baseUrl) {
this._httpClient = _httpClient;
this._baseUrl = _baseUrl;
this._cud = new crud_1.CRUD(_httpClient, {
basePath: _baseUrl,
});
}
get(id) {
return this._httpClient.get(`${this._baseUrl}/${id}`);
}
create(data) {
if (data.documents) {
return this._httpClient.form(`${this._baseUrl}`, {
...(0, utils_1.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}`);
}
}
exports.CommunitiesProvidersContractsAPI = CommunitiesProvidersContractsAPI;
//# sourceMappingURL=providers.js.map