UNPKG

vineanova-redux-artifacts

Version:

## Overview

127 lines (126 loc) 6.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _get = _interopRequireDefault(require("lodash/get")); var _axios = _interopRequireDefault(require("axios")); var _isEmpty = _interopRequireDefault(require("lodash/isEmpty")); var _isNil = _interopRequireDefault(require("lodash/isNil")); var _first2 = _interopRequireDefault(require("lodash/first")); var _omit = _interopRequireDefault(require("lodash/omit")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* eslint-disable class-methods-use-this */ /* eslint-disable no-param-reassign */ // const apiUrl = 'https://okex00vdqa.execute-api.us-east-1.amazonaws.com/dev/api'; var apiUrl = ""; // const apiUrl = 'https://fn-vn-dev-common.azurewebsites.net/api/v1'; // const apiUrl = 'https://vn-mockserver-dev1.azurewebsites.net/api/v1'; var mockApiUrl = process.env.REACT_APP_MOCK_API_URL; var useMock = false; var ServiceConfigClass = /*#__PURE__*/function () { function ServiceConfigClass() { _classCallCheck(this, ServiceConfigClass); } return _createClass(ServiceConfigClass, [{ key: "initConfig", value: function initConfig(config) { this.config = config; } }, { key: "isTestEnv", value: function isTestEnv() { var isTest = (0, _get["default"])(this.config, 'environment.isTest', null); var isProd = (0, _get["default"])(this.config, 'environment.isProd', null); var isDev = !isTest && !isProd; var isLocalHost = (0, _get["default"])(this.config, 'environment.isLocalHost', null); return isTest || isDev || isLocalHost; } }, { key: "getBaseUri", value: function getBaseUri(serviceType) { var userEmail = (0, _get["default"])(this.config, 'user.email', null); var isDemoUser = userEmail === 'VineaNovaDemoAdmin.com' && serviceType !== 'login'; if (serviceType === 'mock' || isDemoUser) { apiUrl = mockApiUrl; } else if (serviceType === 'login') { apiUrl = this.isTestEnv() ? process.env.REACT_APP_COMMON_USER_API : process.env.REACT_APP_PROD_COMMON_USER_API; } else { apiUrl = this.isTestEnv() ? process.env.REACT_APP_CORE_API : process.env.REACT_APP_PROD_CORE_API; } return apiUrl; } }, { key: "onSuccess", value: function onSuccess(response) { return response.data; } }, { key: "onError", value: function onError(error) { if (error.response) { // Request was made but server responded with something // other than 2xx console.error("errorerror:", { error: error.response }); } else { // Something else happened while setting up the request // triggered the error console.error("Error Message:", error.message); } var errorValue = (0, _omit["default"])(error.response, ["config", "headers", "request"]); return Promise.reject(errorValue); } }, { key: "request", value: function request(options, serviceType) { // console.debug('currentConfig', this.config); console.debug("serviceType", { serviceType: serviceType }); var isTest = this.isTestEnv(); var _this$config$user = this.config.user, accessToken = _this$config$user.accessToken, orgDetails = _this$config$user.orgDetails; if ((0, _isEmpty["default"])(accessToken) || (0, _isNil["default"])(accessToken) || (0, _isEmpty["default"])(orgDetails)) { throw new Error("serviceConfig -> No Access token available"); } var value = orgDetails.value; var _first = (0, _first2["default"])(value), displayName = _first.displayName, id = _first.id; var baseUri = this.getBaseUri(serviceType); console.debug(baseUri); var client = _axios["default"].create({ baseURL: baseUri }); client.interceptors.request.use(function (config) { // Do something before request is sent var appCode = isTest ? process.env.REACT_APP_FUNCTION_CODE : process.env.REACT_APP_PROD_FUNCTION_CODE; if (config.params) { config.params.code = appCode; } else { config.params = { code: appCode }; } config.headers.Authorization = "Bearer ".concat(accessToken); config.headers["x-orgname"] = displayName; config.headers["x-tid"] = id; // console.log('running interceptors', config); return config; }, function (error) { // Do something with request error return Promise.reject(error); }); return client(options).then(this.onSuccess)["catch"](this.onError); } }]); }(); var serviceConfig = new ServiceConfigClass(); var _default = exports["default"] = serviceConfig;