104 lines
7.1 KiB
JavaScript
104 lines
7.1 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
const qs_1 = require("qs");
|
|
class AbstractRequest {
|
|
constructor(client, config) {
|
|
this.config = config;
|
|
this.client = client;
|
|
}
|
|
buildUrl() {
|
|
const url = this.config.apiUrl + (this.prefix ? this.prefix : '') + this.entityPath + '/';
|
|
console.log('url', url);
|
|
return url;
|
|
}
|
|
setParams() {
|
|
}
|
|
get() {
|
|
this.setParams();
|
|
return this.client.get(this.buildUrl(), {
|
|
params: Object.assign({}, this.params),
|
|
paramsSerializer: (params) => {
|
|
return (0, qs_1.stringify)(params);
|
|
}
|
|
});
|
|
}
|
|
post(data = {}) {
|
|
this.setParams();
|
|
return this.client.post(this.buildUrl(), data, {
|
|
params: Object.assign({}, this.params),
|
|
paramsSerializer: (params) => {
|
|
return (0, qs_1.stringify)(params);
|
|
}
|
|
});
|
|
}
|
|
put(data = {}) {
|
|
this.setParams();
|
|
return this.client.put(this.buildUrl(), data, {
|
|
params: Object.assign({}, this.params),
|
|
paramsSerializer: (params) => {
|
|
return (0, qs_1.stringify)(params);
|
|
}
|
|
});
|
|
}
|
|
delete() {
|
|
this.setParams();
|
|
return this.client.delete(this.buildUrl());
|
|
}
|
|
limit(limit) {
|
|
this.params = Object.assign(Object.assign({}, this.params), { items_per_page: limit });
|
|
return this;
|
|
}
|
|
page(page) {
|
|
this.params = Object.assign(Object.assign({}, this.params), { page: page });
|
|
return this;
|
|
}
|
|
byCompany(companyId) {
|
|
if (!this.isMethodAllowed(['products'])) {
|
|
throw new Error(`Can\'t get company for ${this.entityPath} entity`);
|
|
}
|
|
this.params = Object.assign(Object.assign({}, this.params), { company_id: companyId });
|
|
return this;
|
|
}
|
|
withProducts() {
|
|
if (!this.isMethodAllowed(['categories'])) {
|
|
throw new Error(`Can\'t get company for ${this.entityPath} entity`);
|
|
}
|
|
return this;
|
|
}
|
|
one(id) {
|
|
this.handlerParams.id = id;
|
|
return this;
|
|
}
|
|
search(query) {
|
|
this.handlerParams.search = query;
|
|
return this;
|
|
}
|
|
asc() {
|
|
this.handlerParams.order = 'asc';
|
|
return this;
|
|
}
|
|
desc() {
|
|
this.handlerParams.order = 'desc';
|
|
return this;
|
|
}
|
|
orderBy(orderBy) {
|
|
this.handlerParams.orderBy = orderBy;
|
|
return this;
|
|
}
|
|
setIconSize(size) {
|
|
if (!this.params.icon_sizes) {
|
|
this.params.icon_sizes = {
|
|
main_pair: [],
|
|
image_pairs: []
|
|
};
|
|
}
|
|
this.params.icon_sizes.main_pair.push(size);
|
|
this.params.icon_sizes.image_pairs.push(size);
|
|
return this;
|
|
}
|
|
isMethodAllowed(allowed) {
|
|
return allowed.indexOf(this.entityPath) !== -1;
|
|
}
|
|
}
|
|
exports.default = AbstractRequest;
|
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RSZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jc2NhcnQvYXBpLXJlcXVlc3QvQWJzdHJhY3RSZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsMkJBQThCO0FBSzlCLE1BQThCLGVBQWU7SUFTM0MsWUFBc0IsTUFBcUIsRUFBRSxNQUFjO1FBQ3pELElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFUyxRQUFRO1FBQ2hCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUM7UUFDMUYsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDeEIsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRVMsU0FBUztJQUNuQixDQUFDO0lBRUQsR0FBRztRQUNELElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQTtRQUVoQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUNwQixJQUFJLENBQUMsUUFBUSxFQUFFLEVBQ2Y7WUFDRSxNQUFNLG9CQUNELElBQUksQ0FBQyxNQUFNLENBQ2Y7WUFDRCxnQkFBZ0IsRUFBRSxDQUFDLE1BQVcsRUFBRSxFQUFFO2dCQUNoQyxPQUFPLElBQUEsY0FBUyxFQUFDLE1BQU0sQ0FBQyxDQUFBO1lBQzFCLENBQUM7U0FDRixDQUNGLENBQUE7SUFDSCxDQUFDO0lBRUQsSUFBSSxDQUFDLE9BQVksRUFBRTtRQUNqQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUE7UUFFaEIsT0FBTyxJQUFJLENBQUMs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
|