UNPKG

@venly/venly-core-sdk

Version:

Javascrip/Typescript SDK for Venly's Web3 Services

49 lines 2.01 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.VyResponseHelper = void 0; const core_1 = require("../core"); const json_1 = require("./json"); class VyResponseHelper { static processHttpResponse(jsonData, httpResponse, requestData, resultType) { if (httpResponse.ok) return this.processSuccess(jsonData, httpResponse, requestData, resultType); return this.processError(jsonData, httpResponse, requestData); } static processError(jsonData, httpResponse, requestData) { var apiResponse = new core_1.VyApiResponse(); apiResponse.success = false; apiResponse.statusCode = httpResponse.status; apiResponse.rawResponse = jsonData; //Enveloped? if (jsonData.success != null) { var errorJson = jsonData.errors; apiResponse.errors = json_1.JsonConvert.deserialize(errorJson, core_1.VyApiResponseError); } else { //Auth Error apiResponse.errors = [ new core_1.VyApiResponseError({ code: jsonData.error, message: jsonData.error_description }) ]; } return apiResponse; } static processSuccess(jsonData, httpResponse, requestData, resultType) { var apiResponse = new core_1.VyApiResponse(); apiResponse.success = true; apiResponse.statusCode = httpResponse.status; apiResponse.rawResponse = jsonData; //Data var dataJson = requestData.isEnveloped ? jsonData.result : jsonData; apiResponse.data = json_1.JsonConvert.deserialize(dataJson, resultType); //Pagination if (jsonData.pagination != null) { apiResponse.pagination = json_1.JsonConvert.deserializeObject(jsonData.pagination, core_1.VyPagination); } return apiResponse; } } exports.VyResponseHelper = VyResponseHelper; //# sourceMappingURL=VyResponseHelper.js.map