ontimize-web-ngx
Version:
Ontimize Web framework using Angular 15
45 lines • 5.49 kB
JavaScript
import { Util } from "../../util/util";
export class JSONAPIServiceResponse {
constructor(status, statusText, headers, ok, body, context) {
this.status = status;
this.statusText = statusText;
this.headers = headers;
this.ok = ok;
this.body = body;
this.context = context;
if (body?.data) {
if (Util.isArray(body.data)) {
this.data = body.data.map((data) => {
return data['attributes'];
});
}
else {
this.data = body.data['attributes'];
}
}
if (body?.meta) {
this.totalQueryRecordsNumber = body.meta.total;
this.startRecordIndex = this.context.pageNumber * this.context.pageSize;
}
if (this.status >= 200 || this.status < 300) {
this.code = 0;
}
else if (this.status === 404) {
this.code = 3;
}
else {
this.code = 1;
}
this.message = this.statusText;
}
isSuccessful() {
return this.status >= 200 || this.status < 300;
}
isFailed() {
return this.status > 300;
}
isUnauthorized() {
return this.status === 403;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbmFwaS1zZXJ2aWNlLXJlc3BvbnNlLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL3NlcnZpY2VzL2pzb25hcGkvanNvbmFwaS1zZXJ2aWNlLXJlc3BvbnNlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUd2QyxNQUFNLE9BQU8sc0JBQXNCO0lBUWpDLFlBQ1MsTUFBYyxFQUNkLFVBQWtCLEVBQ2xCLE9BQW9CLEVBQ3BCLEVBQVcsRUFDWCxJQUFTLEVBQ1QsT0FBMEI7UUFMMUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGVBQVUsR0FBVixVQUFVLENBQVE7UUFDbEIsWUFBTyxHQUFQLE9BQU8sQ0FBYTtRQUNwQixPQUFFLEdBQUYsRUFBRSxDQUFTO1FBQ1gsU0FBSSxHQUFKLElBQUksQ0FBSztRQUNULFlBQU8sR0FBUCxPQUFPLENBQW1CO1FBR2pDLElBQUksSUFBSSxFQUFFLElBQUksRUFBRTtZQUNkLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQzNCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRTtvQkFDdEMsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQzVCLENBQUMsQ0FBQyxDQUFDO2FBQ0o7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFBO2FBQ3BDO1NBQ0Y7UUFDRCxJQUFJLElBQUksRUFBRSxJQUFJLEVBQUU7WUFDZCxJQUFJLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDL0MsSUFBSSxDQUFDLGdCQUFnQixHQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1NBQzFFO1FBRUQsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsRUFBRTtZQUMzQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztTQUNmO2FBQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRTtZQUM5QixJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztTQUNmO2FBQU07WUFDTCxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztTQUNmO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBRWpDLENBQUM7SUFFRCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQztJQUNqRCxDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7SUFDM0IsQ0FBQztJQUVELGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssR0FBRyxDQUFDO0lBQzdCLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBIZWFkZXJzIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XG5pbXBvcnQgeyBTZXJ2aWNlUmVzcG9uc2UgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9zZXJ2aWNlLXJlc3BvbnNlLmludGVyZmFjZVwiO1xuaW1wb3J0IHsgVXRpbCB9IGZyb20gXCIuLi8uLi91dGlsL3V0aWxcIjtcbmltcG9ydCB7IFBhZ2luYXRpb25Db250ZXh0IH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXMvcGFnaW5hdGlvbi1jb250ZXh0LmludGVyZmFjZVwiO1xuXG5leHBvcnQgY2xhc3MgSlNPTkFQSVNlcnZpY2VSZXNwb25zZSBpbXBsZW1lbnRzIFNlcnZpY2VSZXNwb25zZSB7XG4gIHB1YmxpYyBjb2RlOiBudW1iZXI7XG4gIHB1YmxpYyBtZXNzYWdlOiBzdHJpbmc7XG4gIHB1YmxpYyBzcWxUeXBlczogeyBba2V5OiBzdHJpbmddOiBudW1iZXI7IH07XG4gIHB1YmxpYyBzdGFydFJlY29yZEluZGV4OiBudW1iZXI7XG4gIHB1YmxpYyB0b3RhbFF1ZXJ5UmVjb3Jkc051bWJlcjogbnVtYmVyO1xuICBwdWJsaWMgZGF0YTogYW55O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBzdGF0dXM6IG51bWJlcixcbiAgICBwdWJsaWMgc3RhdHVzVGV4dDogc3RyaW5nLFxuICAgIHB1YmxpYyBoZWFkZXJzOiBIdHRwSGVhZGVycyxcbiAgICBwdWJsaWMgb2s6IGJvb2xlYW4sXG4gICAgcHVibGljIGJvZHk6IGFueSxcbiAgICBwdWJsaWMgY29udGV4dDogUGFnaW5hdGlvbkNvbnRleHRcbiAgKSB7XG5cbiAgICBpZiAoYm9keT8uZGF0YSkge1xuICAgICAgaWYgKFV0aWwuaXNBcnJheShib2R5LmRhdGEpKSB7XG4gICAgICAgIHRoaXMuZGF0YSA9IGJvZHkuZGF0YS5tYXAoKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBkYXRhWydhdHRyaWJ1dGVzJ107XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5kYXRhID0gYm9keS5kYXRhWydhdHRyaWJ1dGVzJ11cbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKGJvZHk/Lm1ldGEpIHtcbiAgICAgIHRoaXMudG90YWxRdWVyeVJlY29yZHNOdW1iZXIgPSBib2R5Lm1ldGEudG90YWw7XG4gICAgICB0aGlzLnN0YXJ0UmVjb3JkSW5kZXggPSAgdGhpcy5jb250ZXh0LnBhZ2VOdW1iZXIgKiB0aGlzLmNvbnRleHQucGFnZVNpemU7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc3RhdHVzID49IDIwMCB8fCB0aGlzLnN0YXR1cyA8IDMwMCkge1xuICAgICAgdGhpcy5jb2RlID0gMDtcbiAgICB9IGVsc2UgaWYgKHRoaXMuc3RhdHVzID09PSA0MDQpIHtcbiAgICAgIHRoaXMuY29kZSA9IDM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY29kZSA9IDE7XG4gICAgfVxuICAgIHRoaXMubWVzc2FnZSA9IHRoaXMuc3RhdHVzVGV4dDtcblxuICB9XG5cbiAgaXNTdWNjZXNzZnVsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyA+PSAyMDAgfHwgdGhpcy5zdGF0dXMgPCAzMDA7XG4gIH1cblxuICBpc0ZhaWxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPiAzMDA7XG4gIH1cblxuICBpc1VuYXV0aG9yaXplZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IDQwMztcbiAgfVxuXG59XG4iXX0=