@egalteam/framework
Version:
Egal
48 lines (47 loc) • 2.14 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ActionMessage = void 0;
const HttpRequest_1 = require("./NetworkRequests/HttpRequest");
const Observer_1 = require("./NetworkRequests/SocketConnection/Observer");
const observer = Observer_1.EventObserver.getInstance();
class ActionMessage {
constructor(microserviceName, actionName, modelName, actionParameters, customActionParameters) {
this.serviceName = microserviceName;
this.modelName = modelName;
this.actionName = actionName;
this.actionParameters = actionParameters;
this.customActionParameters = customActionParameters;
this.httpMethod = 'POST';
this.httpRequest = new HttpRequest_1.HttpRequest();
}
axiosConnect(constructorRequest, refreshTokenName) {
return new Promise((resolve, reject) => {
this.httpRequest
.axiosConnect(this.serviceName, this.modelName, this.actionName, this.httpMethod, this.actionParameters, this.customActionParameters, refreshTokenName)
.then((response) => {
let action = response.data.action.action_name;
let items = response.data.action_result.data;
let actionMessage = response.data.action_result.action_message;
let modelName = response.data.action.model_name;
constructorRequest
? resolve(response.data.action_result.data)
: observer.broadcast(items, action, modelName, actionMessage);
})
.catch((error) => {
let returnError;
if ('data' in error) {
if ('action_error' in error.data) {
returnError = error.data.action_error;
}
}
else {
returnError = error;
}
constructorRequest
? reject(returnError)
: observer.broadcast(error, 'error', this.modelName);
});
});
}
}
exports.ActionMessage = ActionMessage;