@sassoftware/restaf 4.11.1 → 5.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/restaf.js CHANGED
@@ -1537,7 +1537,7 @@ eval("/*------------------------------------------------------------------------
1537
1537
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1538
1538
 
1539
1539
  "use strict";
1540
- eval("/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return trustedGrant; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return keepAlive; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return request; });\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ \"../../../node_modules/@babel/runtime/helpers/typeof.js\");\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"../../../node_modules/@babel/runtime/helpers/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! axios */ \"../../../node_modules/axios/index.js\");\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! qs */ \"../../../node_modules/qs/lib/index.js\");\n/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(qs__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _fixResponse__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./fixResponse */ \"./serverCalls/fixResponse.js\");\n/* harmony import */ var https__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! https */ \"https\");\n/* harmony import */ var https__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(https__WEBPACK_IMPORTED_MODULE_5__);\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n/* eslint-disable no-prototype-builtins */\n/*------------------------------------------------------------------------------------\r\n Copyright © 2023, SAS Institute Inc., Cary, NC, USA. All Rights reserved Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n ---------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n// axios.defaults.withCredentials = true\naxios__WEBPACK_IMPORTED_MODULE_2___default.a.interceptors.response.use(function (response) {\n return response;\n}, function (error) {\n return Promise.reject(error);\n});\n\n/* X-Uaa-Csrf */\nfunction trustedGrant(iconfig) {\n var link = iconfig.link;\n var auth1 = Buffer.from(iconfig.clientID + ':' + iconfig.clientSecret).toString('base64');\n auth1 = 'Basic ' + auth1;\n var l = patchURL4ns(iconfig, link.href);\n var url = \"\".concat(l).concat(link.href);\n var config = {\n method: link.method,\n url: url,\n /*iconfig.host + link.href,*/\n\n headers: {\n Accept: link.responseType,\n 'Content-Type': link.type,\n /* Axios seems to be case sensitive */\n\n Authorization: auth1\n },\n withCredentials: false,\n data: {\n 'grant_type': 'password',\n username: iconfig.user,\n password: iconfig.password\n /*\r\n client_id : iconfig.clientID,\r\n client_secret: iconfig.clientSecret\r\n */\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n transformResponse: function transformResponse(data) {\n return data;\n },\n transformRequest: function transformRequest(data) {\n return qs__WEBPACK_IMPORTED_MODULE_3___default.a.stringify(data);\n }\n };\n return makeCall(config, iconfig, iconfig);\n}\nfunction request(iconfig) {\n 'use strict';\n\n var link = iconfig.link,\n logonInfo = iconfig.logonInfo;\n var iLink = _objectSpread({}, link);\n var payload = iconfig.hasOwnProperty('payload') ? iconfig.payload : null;\n var iqs = null;\n var idata = null;\n var iheaders = null;\n var ixsrf = null;\n var casAction = null;\n if (payload !== null) {\n casAction = hasItem(payload, 'action');\n iqs = hasItem(payload, 'qs');\n idata = hasItem(payload, 'data');\n iheaders = hasItem(payload, 'headers');\n ixsrf = hasItem(payload, 'xsrf');\n }\n var l = patchURL4ns(logonInfo, iLink.href);\n var url = \"\".concat(l).concat(iLink.href);\n\n // handle casaction upload\n casAction = casAction != null ? casAction.toLowerCase() : null;\n if (casAction === 'upload') {\n casAction = 'table.upload';\n }\n if (casAction !== null) {\n url = \"\".concat(url, \"/\").concat(casAction);\n }\n if (iLink.hasOwnProperty('customHandling') && casAction !== null) {\n // casAction = casAction.toLowerCase();\n if (casAction === 'table.upload') {\n iLink.method = 'PUT';\n iLink.type = 'application/octet-stream';\n iLink.responseType = 'application/json';\n }\n }\n var config = {\n method: iLink.method,\n url: url,\n transformResponse: function transformResponse(data) {\n return data;\n },\n validateStatus: function validateStatus(status) {\n /* 304 for state calls */\n return status === 302 || status === 304 || status >= 200 && status < 300;\n }\n };\n if (logonInfo.token !== null) {\n config.headers = {\n Authorization: logonInfo.tokenType + ' ' + logonInfo.token\n };\n } else {\n config.headers = {};\n config.withCredentials = iconfig.withCredentials == null ? true : iconfig.withCredentials;\n }\n var type = fullType(iLink.type);\n if (iLink.hasOwnProperty('responseType')) {\n if (type !== null) {\n config.headers['Content-Type'] = type;\n }\n config.headers.Accept = fullType(iLink.responseType);\n } else if (type !== null) {\n config.headers.Accept = type;\n if (iLink.method === 'PUT' || iLink.method === 'POST' || iLink.method === 'PATCH') {\n config.headers['Content-Type'] = type;\n }\n }\n if (iheaders !== null) {\n for (var ih in iheaders) {\n //noinspection JSUnfilteredForInLoop\n if (ih.toLowerCase() === 'json-parameters') {\n //noinspection JSUnfilteredForInLoop\n config.headers[ih] = _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(iheaders[ih]) === 'object' ? JSON.stringify(iheaders[ih]) : iheaders[ih];\n } else {\n //noinspection JSUnfilteredForInLoop\n config.headers[ih] = iheaders[ih];\n }\n }\n }\n if (ixsrf !== null) {\n var xsrfHeaderName = ixsrf['x-csrf-header'];\n config.xsrfHeaderName = xsrfHeaderName;\n // https://github.com/axios/axios/issues/2024\n config.headers[xsrfHeaderName] = ixsrf['x-csrf-token'];\n }\n if (iqs !== null) {\n config.params = _objectSpread({}, iqs);\n }\n config.data = idata === null ? {} : idata;\n config.maxContentLength = 2 * 10063256;\n var httpOptions = iconfig.storeConfig.httpOptions;\n if (httpOptions != null) {\n for (var k in httpOptions) {\n config[k] = httpOptions[k];\n }\n }\n return makeCall(config, iconfig, logonInfo);\n}\nfunction patchURL4ns(logInfo, link) {\n var host = logInfo.host;\n if (logInfo.options.proxyServer != null) {\n host = logInfo.options.proxyServer;\n } else if (logInfo.options.ns != null) {\n var service = link.split('/')[1];\n host = \"\".concat(logInfo.protocol).concat(service, \".storeConfig.ns.svc.cluster.local\");\n }\n return host;\n}\nfunction makeCall(config, iconfig, storeConfig) {\n // for nodejs apps use the nodejs env variables instead of restaf config.\n // NODE_TLS_REJECT_UNAUTHORIZED\n // SSL_CERT_FILE\n // let { sslOptions } = iconfig;\n\n if (storeConfig.protocol === 'https://') {\n var opt = storeConfig.sslOptions != null ? storeConfig.sslOptions : {};\n var agent = new https__WEBPACK_IMPORTED_MODULE_5___default.a.Agent(opt);\n config.httpsAgent = agent;\n }\n return new Promise(function (resolve, reject) {\n axios__WEBPACK_IMPORTED_MODULE_2___default()(config).then(function (response) {\n parseJSON(response.data).then(function (data) {\n iconfig.data = null; /* get rid of the payload*/\n response.data = {\n results: data,\n iconfig: Object.assign({}, iconfig)\n };\n if (data.hasOwnProperty('errorCode')) {\n //noinspection JSUnresolvedVariable\n response.status = response.data.results.httpStatusCode;\n response.statusText = \"errorCode: \".concat(response.data.results.errorCode);\n reject({\n response: response\n });\n } else {\n resolve(Object(_fixResponse__WEBPACK_IMPORTED_MODULE_4__[/* default */ \"a\"])(response));\n }\n }).catch(function () {\n iconfig.data = null;\n response.data = {\n results: response.data,\n iconfig: Object.assign({}, iconfig)\n };\n resolve(Object(_fixResponse__WEBPACK_IMPORTED_MODULE_4__[/* default */ \"a\"])(response));\n });\n }).catch(function (error) {\n reject(error);\n });\n });\n}\nfunction parseJSON(data) {\n //noinspection JSUnusedLocalSymbols\n return new Promise(function (resolve, reject) {\n if (_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(data) === 'object') {\n resolve(data);\n } else {\n var temp = data.replace(/\\r?\\n|\\r/g, ' ');\n try {\n var odata = JSON.parse(temp);\n resolve(odata);\n } catch (err) {\n resolve(data);\n }\n }\n });\n}\nfunction hasItem(payload, name) {\n for (var _i = 0, _Object$keys = Object.keys(payload); _i < _Object$keys.length; _i++) {\n var k = _Object$keys[_i];\n if (k.toUpperCase() === name.toUpperCase()) {\n return payload[k];\n }\n }\n return null;\n}\nfunction fullType(type) {\n var ntype = type;\n if (ntype === undefined || ntype === null) {\n ntype = null;\n } else {\n if (ntype.indexOf('application/vnd') !== -1) {\n if (ntype.indexOf('+json') === -1) {\n ntype = ntype + '+json';\n }\n }\n }\n return ntype;\n}\n\n// Code below is for experimenting.\n\nfunction keepAlive(action) {\n return axios__WEBPACK_IMPORTED_MODULE_2___default()(action.payload);\n}\n\n\n//# sourceURL=webpack://restaf/./serverCalls/index.js?");
1540
+ eval("/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return trustedGrant; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return keepAlive; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return request; });\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ \"../../../node_modules/@babel/runtime/helpers/typeof.js\");\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"../../../node_modules/@babel/runtime/helpers/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! axios */ \"../../../node_modules/axios/index.js\");\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! qs */ \"../../../node_modules/qs/lib/index.js\");\n/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(qs__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _fixResponse__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./fixResponse */ \"./serverCalls/fixResponse.js\");\n/* harmony import */ var https__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! https */ \"https\");\n/* harmony import */ var https__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(https__WEBPACK_IMPORTED_MODULE_5__);\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n/* eslint-disable no-prototype-builtins */\n/*------------------------------------------------------------------------------------\r\n Copyright © 2023, SAS Institute Inc., Cary, NC, USA. All Rights reserved Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n ---------------------------------------------------------------------------------------*/\n\n\n\n\n\n\n// axios.defaults.withCredentials = true\naxios__WEBPACK_IMPORTED_MODULE_2___default.a.interceptors.response.use(function (response) {\n return response;\n}, function (error) {\n return Promise.reject(error);\n});\n\n/* X-Uaa-Csrf */\nfunction trustedGrant(iconfig) {\n var link = iconfig.link;\n var auth1 = Buffer.from(iconfig.clientID + \":\" + iconfig.clientSecret).toString(\"base64\");\n auth1 = \"Basic \" + auth1;\n var baseUrl = patchURL4ns(iconfig, link.href);\n var config = {\n method: link.method,\n baseURl: baseUrl,\n url: link.href,\n /*iconfig.host + link.href,*/\n\n headers: {\n Accept: link.responseType,\n \"Content-Type\": link.type /* Axios seems to be case sensitive */,\n Authorization: auth1\n },\n withCredentials: false,\n data: {\n grant_type: \"password\",\n username: iconfig.user,\n password: iconfig.password\n },\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n transformResponse: function transformResponse(data) {\n return data;\n },\n transformRequest: function transformRequest(data) {\n return qs__WEBPACK_IMPORTED_MODULE_3___default.a.stringify(data);\n }\n };\n return makeCall(config, iconfig, iconfig);\n}\nfunction request(iconfig) {\n \"use strict\";\n\n var link = iconfig.link,\n logonInfo = iconfig.logonInfo;\n var iLink = _objectSpread({}, link);\n var payload = iconfig.hasOwnProperty(\"payload\") ? iconfig.payload : null;\n var iqs = null;\n var idata = null;\n var iheaders = null;\n var ixsrf = null;\n var casAction = null;\n if (payload !== null) {\n casAction = hasItem(payload, \"action\");\n iqs = hasItem(payload, \"qs\");\n idata = hasItem(payload, \"data\");\n iheaders = hasItem(payload, \"headers\");\n ixsrf = hasItem(payload, \"xsrf\");\n }\n var baseUrl = patchURL4ns(logonInfo, iLink.href);\n // let url = `${l}${iLink.href}`;\n\n // handle casaction upload\n casAction = casAction != null ? casAction.toLowerCase() : null;\n var url = casAction !== null ? \"\".concat(iLink.href, \"/\").concat(casAction) : \"\".concat(iLink.href);\n if (iLink.hasOwnProperty(\"customHandling\") && casAction !== null) {\n // casAction = casAction.toLowerCase();\n if (casAction === \"table.upload\") {\n iLink.method = \"PUT\";\n iLink.type = \"application/octet-stream\";\n iLink.responseType = \"application/json\";\n }\n }\n var config = {\n method: iLink.method,\n baseURL: baseUrl,\n url: url,\n transformResponse: function transformResponse(data) {\n return data;\n },\n validateStatus: function validateStatus(status) {\n /* 304 for state calls */\n return status === 302 || status === 304 || status >= 200 && status < 300;\n }\n };\n if (logonInfo.token !== null) {\n config.headers = {\n Authorization: logonInfo.tokenType + \" \" + logonInfo.token\n };\n } else {\n config.headers = {};\n config.withCredentials = iconfig.withCredentials == null ? true : iconfig.withCredentials;\n }\n var type = fullType(iLink.type);\n if (iLink.hasOwnProperty(\"responseType\")) {\n if (type !== null) {\n config.headers[\"Content-Type\"] = type;\n }\n config.headers.Accept = fullType(iLink.responseType);\n } else if (type !== null) {\n config.headers.Accept = type;\n if (iLink.method === \"PUT\" || iLink.method === \"POST\" || iLink.method === \"PATCH\") {\n config.headers[\"Content-Type\"] = type;\n }\n }\n if (iheaders !== null) {\n for (var ih in iheaders) {\n //noinspection JSUnfilteredForInLoop\n if (ih.toLowerCase() === \"json-parameters\") {\n //noinspection JSUnfilteredForInLoop\n config.headers[ih] = _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(iheaders[ih]) === \"object\" ? JSON.stringify(iheaders[ih]) : iheaders[ih];\n } else {\n //noinspection JSUnfilteredForInLoop\n config.headers[ih] = iheaders[ih];\n }\n }\n }\n if (ixsrf !== null) {\n var xsrfHeaderName = ixsrf[\"x-csrf-header\"];\n config.xsrfHeaderName = xsrfHeaderName;\n // https://github.com/axios/axios/issues/2024\n config.headers[xsrfHeaderName] = ixsrf[\"x-csrf-token\"];\n }\n if (iqs !== null) {\n config.params = _objectSpread({}, iqs);\n }\n config.data = idata === null ? {} : idata;\n config.maxContentLength = 2 * 10063256;\n var httpOptions = iconfig.storeConfig.httpOptions;\n if (httpOptions != null) {\n for (var k in httpOptions) {\n config[k] = httpOptions[k];\n }\n }\n setupProxy(iconfig, config);\n return makeCall(config, iconfig, logonInfo);\n}\n// setup if using reverse proxy server\nfunction setupProxy(iconfig, config) {\n var options = iconfig.logonInfo.options;\n if (options.proxyServer != null) {\n var proxy = options.proxy;\n console.log(\"proxy: \" + JSON.stringify(proxy));\n if (proxy.pathname != null && proxy.pathname.trim().length > 0) {\n config.url = \"\".concat(proxy.pathname).concat(config.url); //prepend url with proxy path\n console.log(\"proxy path: \" + config.url);\n }\n config.baseURL = \"\".concat(proxy.protocol, \"//\").concat(proxy.host); //override base url\n console.log('++++++++++++++++++', config.baseURL);\n console.log('+++++++++++++++', config.url);\n }\n}\n// patch the url for namespace - useful for k8s to make calls into another namespace\nfunction patchURL4ns(logInfo, link) {\n var host = logInfo.host;\n if (logInfo.options.ns != null) {\n var service = link.split(\"/\")[1];\n host = \"\".concat(logInfo.protocol).concat(service, \".{logInfo.options.ns}.svc.cluster.local\");\n }\n return host;\n}\nfunction makeCall(config, iconfig, storeConfig) {\n if (storeConfig.protocol === \"https://\" && config.agent == null) {\n var opt = storeConfig.sslOptions != null ? storeConfig.sslOptions : {};\n var agent = new https__WEBPACK_IMPORTED_MODULE_5___default.a.Agent(opt);\n config.httpsAgent = agent;\n }\n return new Promise(function (resolve, reject) {\n console.log(config);\n axios__WEBPACK_IMPORTED_MODULE_2___default()(config).then(function (response) {\n parseJSON(response.data).then(function (data) {\n iconfig.data = null; /* get rid of the payload*/\n response.data = {\n results: data,\n iconfig: Object.assign({}, iconfig)\n };\n if (data.hasOwnProperty(\"errorCode\")) {\n //noinspection JSUnresolvedVariable\n response.status = response.data.results.httpStatusCode;\n response.statusText = \"errorCode: \".concat(response.data.results.errorCode);\n reject({\n response: response\n });\n } else {\n resolve(Object(_fixResponse__WEBPACK_IMPORTED_MODULE_4__[/* default */ \"a\"])(response));\n }\n }).catch(function () {\n iconfig.data = null;\n response.data = {\n results: response.data,\n iconfig: Object.assign({}, iconfig)\n };\n resolve(Object(_fixResponse__WEBPACK_IMPORTED_MODULE_4__[/* default */ \"a\"])(response));\n });\n }).catch(function (error) {\n reject(error);\n });\n });\n}\nfunction parseJSON(data) {\n //noinspection JSUnusedLocalSymbols\n return new Promise(function (resolve, reject) {\n if (_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(data) === \"object\") {\n resolve(data);\n } else {\n var temp = data.replace(/\\r?\\n|\\r/g, \" \");\n try {\n var odata = JSON.parse(temp);\n resolve(odata);\n } catch (err) {\n resolve(data);\n }\n }\n });\n}\nfunction hasItem(payload, name) {\n for (var _i = 0, _Object$keys = Object.keys(payload); _i < _Object$keys.length; _i++) {\n var k = _Object$keys[_i];\n if (k.toUpperCase() === name.toUpperCase()) {\n return payload[k];\n }\n }\n return null;\n}\nfunction fullType(type) {\n var ntype = type;\n if (ntype === undefined || ntype === null) {\n ntype = null;\n } else {\n if (ntype.indexOf(\"application/vnd\") !== -1) {\n if (ntype.indexOf(\"+json\") === -1) {\n ntype = ntype + \"+json\";\n }\n }\n }\n return ntype;\n}\n\n// Code below is for experimenting.\n\nfunction keepAlive(action) {\n return axios__WEBPACK_IMPORTED_MODULE_2___default()(action.payload);\n}\n\n\n//# sourceURL=webpack://restaf/./serverCalls/index.js?");
1541
1541
 
1542
1542
  /***/ }),
1543
1543
 
@@ -1823,7 +1823,7 @@ eval("/* harmony import */ var _initStore__WEBPACK_IMPORTED_MODULE_0__ = __webpa
1823
1823
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1824
1824
 
1825
1825
  "use strict";
1826
- eval("/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"../../../node_modules/@babel/runtime/helpers/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _configureSagaStore__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./configureSagaStore */ \"./store/configureSagaStore.js\");\n/* harmony import */ var _actionTypes__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../actionTypes */ \"./actionTypes/index.js\");\n/* harmony import */ var _apiCall__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./apiCall */ \"./store/apiCall.js\");\n/* harmony import */ var _apiCallAll__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./apiCallAll */ \"./store/apiCallAll.js\");\n/* harmony import */ var _runAction__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./runAction */ \"./store/runAction.js\");\n/* harmony import */ var _apiSubmit__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./apiSubmit */ \"./store/apiSubmit.js\");\n/* harmony import */ var _jobState__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./jobState */ \"./store/jobState.js\");\n/* harmony import */ var _jobStateAll__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./jobStateAll */ \"./store/jobStateAll.js\");\n/* harmony import */ var _request__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./request */ \"./store/request.js\");\n/* harmony import */ var _getServices__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./getServices */ \"./store/getServices.js\");\n/* harmony import */ var _addServices__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./addServices */ \"./store/addServices.js\");\n/* harmony import */ var _getServiceRoot__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./getServiceRoot */ \"./store/getServiceRoot.js\");\n/* harmony import */ var _logon__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./logon */ \"./store/logon.js\");\n/* harmony import */ var _logoff__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./logoff */ \"./store/logoff.js\");\n/* harmony import */ var _endStore__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./endStore */ \"./store/endStore.js\");\n/* harmony import */ var _routeToObj__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./routeToObj */ \"./store/routeToObj.js\");\n/* harmony import */ var _selectLogonInfo__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./selectLogonInfo */ \"./store/selectLogonInfo.js\");\n/* harmony import */ var _appData__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./appData */ \"./store/appData.js\");\n/* harmony import */ var _getXsrfData__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./getXsrfData */ \"./store/getXsrfData.js\");\n/* harmony import */ var _deleteRafObject__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./deleteRafObject */ \"./store/deleteRafObject.js\");\n/* harmony import */ var _keepViyaAlive__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./keepViyaAlive */ \"./store/keepViyaAlive.js\");\n/*\r\n * ------------------------------------------------------------------------------------\r\n * Copyright © 2023, SAS Institute Inc., Cary, NC, USA. * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n * ---------------------------------------------------------------------------------------\r\n *\r\n */\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\n\n\n\n\n// import jobStatus from './jobStatus';\n\n\n\n\n\n\n\n\n\n\n\n\n/**\r\n * @description Initialize a restaf store\r\n * @category restaf/core\r\n * @module initStore\r\n * @param {object=} config configuration object(future)\r\n * @returns {store} restaf store object(rafObject)\r\n * @example\r\n * let store = restaf.initStore();\r\n * The store object manages all the data and access\r\n * to Viya using the REST API. \r\n */\nfunction initStore(iconfig) {\n var config = {\n casProxy: false\n };\n if (iconfig != null) {\n config = _objectSpread(_objectSpread({}, config), iconfig);\n }\n console.log('+++++++++++++++++initStore', config);\n var store = Object(_configureSagaStore__WEBPACK_IMPORTED_MODULE_1__[/* default */ \"a\"])(config);\n return {\n logon: _logon__WEBPACK_IMPORTED_MODULE_13__[/* default */ \"a\"].bind(null, store),\n connect: _logon__WEBPACK_IMPORTED_MODULE_13__[/* default */ \"a\"].bind(null, store),\n logoff: _logoff__WEBPACK_IMPORTED_MODULE_14__[/* default */ \"a\"].bind(null, store),\n disconnect: _logoff__WEBPACK_IMPORTED_MODULE_14__[/* default */ \"a\"].bind(null, store),\n connection: loggedOn.bind(null, store),\n addServices: _addServices__WEBPACK_IMPORTED_MODULE_11__[/* default */ \"a\"].bind(null, store),\n getServices: _getServices__WEBPACK_IMPORTED_MODULE_10__[/* default */ \"a\"].bind(null, store),\n apiCall: _apiCall__WEBPACK_IMPORTED_MODULE_3__[/* default */ \"a\"].bind(null, store),\n runAction: _runAction__WEBPACK_IMPORTED_MODULE_5__[/* default */ \"a\"].bind(null, store),\n apiCallAll: _apiCallAll__WEBPACK_IMPORTED_MODULE_4__[/* default */ \"a\"].bind(null, store),\n rafObject: _routeToObj__WEBPACK_IMPORTED_MODULE_16__[/* default */ \"a\"].bind(null, store),\n getService: _routeToObj__WEBPACK_IMPORTED_MODULE_16__[/* default */ \"a\"].bind(null, store),\n deleteRafObject: _deleteRafObject__WEBPACK_IMPORTED_MODULE_20__[/* default */ \"a\"].bind(null, store),\n jobState: _jobState__WEBPACK_IMPORTED_MODULE_7__[/* default */ \"a\"].bind(null, store),\n jobStateAll: _jobStateAll__WEBPACK_IMPORTED_MODULE_8__[/* default */ \"a\"].bind(null, store),\n submit: _apiSubmit__WEBPACK_IMPORTED_MODULE_6__[/* default */ \"a\"].bind(null, store),\n submitStatus: getApiStatus.bind(null, store),\n setAppData: _appData__WEBPACK_IMPORTED_MODULE_18__[/* default */ \"a\"].bind(null, store, _actionTypes__WEBPACK_IMPORTED_MODULE_2__[/* APP_DATA */ \"k\"]),\n getAppData: getAppData.bind(null, store),\n setXsrfData: _appData__WEBPACK_IMPORTED_MODULE_18__[/* default */ \"a\"].bind(null, store, _actionTypes__WEBPACK_IMPORTED_MODULE_2__[/* API_XSRF */ \"h\"]),\n getXsrfData: _getXsrfData__WEBPACK_IMPORTED_MODULE_19__[/* default */ \"a\"].bind(null, store),\n getState: store.getState,\n endStore: _endStore__WEBPACK_IMPORTED_MODULE_15__[/* default */ \"a\"].bind(null, store),\n store: store,\n config: _objectSpread({}, config),\n getServiceRoot: _getServiceRoot__WEBPACK_IMPORTED_MODULE_12__[/* default */ \"a\"].bind(null, store),\n request: _request__WEBPACK_IMPORTED_MODULE_9__[/* default */ \"a\"].bind(null, store),\n keepViyaAlive: _keepViyaAlive__WEBPACK_IMPORTED_MODULE_21__[/* default */ \"a\"].bind(null, store)\n };\n}\nfunction loggedOn(store) {\n return Object(_selectLogonInfo__WEBPACK_IMPORTED_MODULE_17__[/* default */ \"a\"])(store.getState());\n}\nfunction getAppData(store) {\n var list = store.getState()[_actionTypes__WEBPACK_IMPORTED_MODULE_2__[/* APP_DATA_ROOT */ \"l\"]];\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n var path = args.length > 0 ? ['userData'].concat(args) : ['userData'];\n return list.getIn(path, null);\n}\nfunction getApiStatus(store, jobContext) {\n var list = store.getState()[_actionTypes__WEBPACK_IMPORTED_MODULE_2__[/* API_STATUS_ROOT */ \"f\"]];\n var result = null;\n if (!jobContext) {\n result = list.get('routeList');\n } else {\n var r = list.getIn(['userData', jobContext], null);\n if (r !== null) {\n result = r.toJS();\n result.job = Object(_routeToObj__WEBPACK_IMPORTED_MODULE_16__[/* default */ \"a\"])(store, result.route);\n }\n }\n return result;\n}\n/* harmony default export */ __webpack_exports__[\"a\"] = (initStore);\n\n//# sourceURL=webpack://restaf/./store/initStore.js?");
1826
+ eval("/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"../../../node_modules/@babel/runtime/helpers/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _configureSagaStore__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./configureSagaStore */ \"./store/configureSagaStore.js\");\n/* harmony import */ var _actionTypes__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../actionTypes */ \"./actionTypes/index.js\");\n/* harmony import */ var _apiCall__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./apiCall */ \"./store/apiCall.js\");\n/* harmony import */ var _apiCallAll__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./apiCallAll */ \"./store/apiCallAll.js\");\n/* harmony import */ var _runAction__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./runAction */ \"./store/runAction.js\");\n/* harmony import */ var _apiSubmit__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./apiSubmit */ \"./store/apiSubmit.js\");\n/* harmony import */ var _jobState__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./jobState */ \"./store/jobState.js\");\n/* harmony import */ var _jobStateAll__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./jobStateAll */ \"./store/jobStateAll.js\");\n/* harmony import */ var _request__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./request */ \"./store/request.js\");\n/* harmony import */ var _getServices__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./getServices */ \"./store/getServices.js\");\n/* harmony import */ var _addServices__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./addServices */ \"./store/addServices.js\");\n/* harmony import */ var _getServiceRoot__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./getServiceRoot */ \"./store/getServiceRoot.js\");\n/* harmony import */ var _logon__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./logon */ \"./store/logon.js\");\n/* harmony import */ var _logoff__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./logoff */ \"./store/logoff.js\");\n/* harmony import */ var _endStore__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./endStore */ \"./store/endStore.js\");\n/* harmony import */ var _routeToObj__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./routeToObj */ \"./store/routeToObj.js\");\n/* harmony import */ var _selectLogonInfo__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./selectLogonInfo */ \"./store/selectLogonInfo.js\");\n/* harmony import */ var _appData__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./appData */ \"./store/appData.js\");\n/* harmony import */ var _getXsrfData__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./getXsrfData */ \"./store/getXsrfData.js\");\n/* harmony import */ var _deleteRafObject__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./deleteRafObject */ \"./store/deleteRafObject.js\");\n/* harmony import */ var _keepViyaAlive__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./keepViyaAlive */ \"./store/keepViyaAlive.js\");\n/*\r\n * ------------------------------------------------------------------------------------\r\n * Copyright © 2023, SAS Institute Inc., Cary, NC, USA. * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n * ---------------------------------------------------------------------------------------\r\n *\r\n */\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\n\n\n\n\n// import jobStatus from './jobStatus';\n\n\n\n\n\n\n\n\n\n\n\n\n/**\r\n * @description Initialize a restaf store\r\n * @category restaf/core\r\n * @module initStore\r\n * @param {object=} config configuration object(future)\r\n * @returns {store} restaf store object(rafObject)\r\n * @example\r\n * let store = restaf.initStore();\r\n * The store object manages all the data and access\r\n * to Viya using the REST API. \r\n */\nfunction initStore(iconfig) {\n var config = {\n casProxy: false\n };\n if (iconfig != null) {\n config = _objectSpread(_objectSpread({}, config), iconfig);\n }\n if (config.options == null) {\n config.options = {};\n }\n var store = Object(_configureSagaStore__WEBPACK_IMPORTED_MODULE_1__[/* default */ \"a\"])(config);\n return {\n logon: _logon__WEBPACK_IMPORTED_MODULE_13__[/* default */ \"a\"].bind(null, store),\n connect: _logon__WEBPACK_IMPORTED_MODULE_13__[/* default */ \"a\"].bind(null, store),\n logoff: _logoff__WEBPACK_IMPORTED_MODULE_14__[/* default */ \"a\"].bind(null, store),\n disconnect: _logoff__WEBPACK_IMPORTED_MODULE_14__[/* default */ \"a\"].bind(null, store),\n connection: loggedOn.bind(null, store),\n addServices: _addServices__WEBPACK_IMPORTED_MODULE_11__[/* default */ \"a\"].bind(null, store),\n getServices: _getServices__WEBPACK_IMPORTED_MODULE_10__[/* default */ \"a\"].bind(null, store),\n apiCall: _apiCall__WEBPACK_IMPORTED_MODULE_3__[/* default */ \"a\"].bind(null, store),\n runAction: _runAction__WEBPACK_IMPORTED_MODULE_5__[/* default */ \"a\"].bind(null, store),\n apiCallAll: _apiCallAll__WEBPACK_IMPORTED_MODULE_4__[/* default */ \"a\"].bind(null, store),\n rafObject: _routeToObj__WEBPACK_IMPORTED_MODULE_16__[/* default */ \"a\"].bind(null, store),\n getService: _routeToObj__WEBPACK_IMPORTED_MODULE_16__[/* default */ \"a\"].bind(null, store),\n deleteRafObject: _deleteRafObject__WEBPACK_IMPORTED_MODULE_20__[/* default */ \"a\"].bind(null, store),\n jobState: _jobState__WEBPACK_IMPORTED_MODULE_7__[/* default */ \"a\"].bind(null, store),\n jobStateAll: _jobStateAll__WEBPACK_IMPORTED_MODULE_8__[/* default */ \"a\"].bind(null, store),\n submit: _apiSubmit__WEBPACK_IMPORTED_MODULE_6__[/* default */ \"a\"].bind(null, store),\n submitStatus: getApiStatus.bind(null, store),\n setAppData: _appData__WEBPACK_IMPORTED_MODULE_18__[/* default */ \"a\"].bind(null, store, _actionTypes__WEBPACK_IMPORTED_MODULE_2__[/* APP_DATA */ \"k\"]),\n getAppData: getAppData.bind(null, store),\n setXsrfData: _appData__WEBPACK_IMPORTED_MODULE_18__[/* default */ \"a\"].bind(null, store, _actionTypes__WEBPACK_IMPORTED_MODULE_2__[/* API_XSRF */ \"h\"]),\n getXsrfData: _getXsrfData__WEBPACK_IMPORTED_MODULE_19__[/* default */ \"a\"].bind(null, store),\n getState: store.getState,\n endStore: _endStore__WEBPACK_IMPORTED_MODULE_15__[/* default */ \"a\"].bind(null, store),\n store: store,\n config: _objectSpread({}, config),\n getServiceRoot: _getServiceRoot__WEBPACK_IMPORTED_MODULE_12__[/* default */ \"a\"].bind(null, store),\n request: _request__WEBPACK_IMPORTED_MODULE_9__[/* default */ \"a\"].bind(null, store),\n keepViyaAlive: _keepViyaAlive__WEBPACK_IMPORTED_MODULE_21__[/* default */ \"a\"].bind(null, store)\n };\n}\nfunction loggedOn(store) {\n return Object(_selectLogonInfo__WEBPACK_IMPORTED_MODULE_17__[/* default */ \"a\"])(store.getState());\n}\nfunction getAppData(store) {\n var list = store.getState()[_actionTypes__WEBPACK_IMPORTED_MODULE_2__[/* APP_DATA_ROOT */ \"l\"]];\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n var path = args.length > 0 ? ['userData'].concat(args) : ['userData'];\n return list.getIn(path, null);\n}\nfunction getApiStatus(store, jobContext) {\n var list = store.getState()[_actionTypes__WEBPACK_IMPORTED_MODULE_2__[/* API_STATUS_ROOT */ \"f\"]];\n var result = null;\n if (!jobContext) {\n result = list.get('routeList');\n } else {\n var r = list.getIn(['userData', jobContext], null);\n if (r !== null) {\n result = r.toJS();\n result.job = Object(_routeToObj__WEBPACK_IMPORTED_MODULE_16__[/* default */ \"a\"])(store, result.route);\n }\n }\n return result;\n}\n/* harmony default export */ __webpack_exports__[\"a\"] = (initStore);\n\n//# sourceURL=webpack://restaf/./store/initStore.js?");
1827
1827
 
1828
1828
  /***/ }),
1829
1829
 
@@ -1888,7 +1888,7 @@ eval("/* harmony import */ var _actionTypes__WEBPACK_IMPORTED_MODULE_0__ = __web
1888
1888
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1889
1889
 
1890
1890
  "use strict";
1891
- eval("/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"../../../node_modules/@babel/runtime/helpers/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _actionTypes__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../actionTypes */ \"./actionTypes/index.js\");\n/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! qs */ \"../../../node_modules/qs/lib/index.js\");\n/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(qs__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var url_parse__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! url-parse */ \"../../../node_modules/url-parse/index.js\");\n/* harmony import */ var url_parse__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(url_parse__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _keepViyaAlive__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./keepViyaAlive */ \"./store/keepViyaAlive.js\");\n/* eslint-disable no-prototype-builtins */\n\n/*\r\n * ------------------------------------------------------------------------------------\r\n * Copyright © 2023, SAS Institute Inc., Cary, NC, USA. * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n * ---------------------------------------------------------------------------------------\r\n *\r\n */\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n/**\r\n * @description logon or connect to Viya\r\n * @module logon\r\n * @category restaf/core\r\n * @param {rafLogonPayload} logonPayload See type definition for details\r\n * @returns {promise} returns a text 'done' if successful\r\n * @example\r\nlet restaf = require(\"@sassoftware/restaf\");\r\n\r\nlet logonPayload = {\r\n authType: 'password',\r\n host: process.env.VIYA_SERVER,\r\n clientID: 'sas.ec',\r\n clientSecret: '',\r\n user: 'sastest1',\r\n password: 'somepassword'\r\n};\r\n\r\nlet store = restaf.initStore();\r\n\r\nstore.logon(logonPayload)\r\n .then ( r => console.log(r))\r\n .catch( err => console.log(err));\r\n\r\n */\nvar logon = function logon(store, ipayload) {\n return new Promise(function (resolve, reject) {\n var unSubscribe;\n var action;\n var implicitLogon = false;\n var urlInfo = null;\n var payload = ipayload == null ? null : _objectSpread({}, ipayload);\n if (store.getState().connections.get('currentConnection') >= 0) {\n resolve('ready');\n } else {\n var logonExit = function logonExit() {\n var newState = store.getState().connections;\n var runStatus = newState.get('runStatus');\n if (runStatus === 'ready') {\n unSubscribe();\n if (ipayload != null && ipayload.keepAlive != null) {\n var interval = 300;\n var timeout = 14400;\n if (ipayload.timers != null) {\n var timers = ipayload.timers;\n if (typeof timers === 'string') {\n var opts = timers.split(',');\n interval = parseInt(opts[0]);\n timeout = parseInt(opts[1]);\n } else {\n interval = timers[0];\n timeout = timers[1];\n }\n }\n Object(_keepViyaAlive__WEBPACK_IMPORTED_MODULE_4__[/* default */ \"a\"])(store, ipayload.keepAlive, interval, timeout, ipayload.onTimeout);\n }\n resolve(runStatus);\n } else if (runStatus === 'error') {\n unSubscribe();\n reject(newState.get('statusInfo').toJS());\n }\n };\n\n //\n // check url if not password (no window) or when payload is null\n // this allows users of restaf-server|viya-appserverjs to LOGONPAYLOAD unconditionally to logon\n //\n\n if (payload === null || payload.authType === _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGON_IMPLICIT */ \"v\"]) {\n urlInfo = parseUrlNext();\n if (payload !== null && urlInfo !== null) {\n payload = _objectSpread(_objectSpread({}, payload), urlInfo);\n }\n }\n debugger;\n if (payload == null) {\n if (urlInfo !== null) {\n payload = urlInfo;\n } else {\n payload = {\n host: \"\".concat(window.location.protocol, \"//\").concat(window.location.host),\n authType: _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGON_SERVER */ \"x\"]\n };\n }\n }\n\n // persist options in payload - currently used for pup support\n // remove once testing of setting options in initStore is complete\n\n debugger;\n if (store.config.options == null) {\n store.config.options = {};\n }\n // store.config.options = {};\n debugger;\n if (payload.options != null) {\n store.config.options = _objectSpread({}, payload.options);\n }\n\n // now make the final decision\n if (payload.authType === 'code') {\n payload.authType = 'server';\n }\n payload.options = store.config.options;\n switch (payload.authType) {\n case _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGON_TOKEN */ \"y\"]:\n case _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGON_SERVER */ \"x\"]:\n if (payload.host == null) {\n payload.host = \"\".concat(window.location.protocol, \"//\").concat(window.location.host);\n }\n break;\n case _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGON_IMPLICIT */ \"v\"]:\n if (payload.hasOwnProperty('token') === false) {\n implicitLogon = true;\n getToken(payload);\n resolve('Implicit Call');\n }\n break;\n case \"LOGOFF\":\n break;\n default:\n break;\n }\n if (!implicitLogon) {\n action = {\n type: payload.authType === 'LOGOFF' ? _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGOFF */ \"r\"] : _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGON */ \"t\"],\n payload: _objectSpread({}, payload)\n };\n action.payload.sslOptions = store.config.hasOwnProperty('sslOptions') ? store.config.sslOptions : null;\n unSubscribe = store.subscribe(logonExit);\n action.storeConfig = store.config;\n // action.type = VIYA_LOGON;\n\n store.dispatch(action);\n }\n }\n });\n};\nfunction getToken(payload) {\n var x = \"\".concat(payload.host, \"/SASLogon/oauth/authorize?response_type=token&client_id=\").concat(payload.clientID);\n //noinspection JSUnresolvedVariable\n if (payload.redirect != null) {\n //noinspection JSUnresolvedVariable\n var redirectUri = \"\".concat(window.location.protocol, \"//\").concat(window.location.host, \"/\").concat(payload.redirect, \"?host=\").concat(payload.host);\n x = \"\".concat(x, \"&redirect_uri=\").concat(redirectUri);\n }\n window.location.replace(x);\n}\nfunction parseUrlNext() {\n if (window == null) {\n return null;\n }\n var url = url_parse__WEBPACK_IMPORTED_MODULE_3___default()(window.location, true);\n var loc = qs__WEBPACK_IMPORTED_MODULE_2___default.a.parse(url.hash);\n var q = url.query;\n if (q.host == null || loc.access_token == null) {\n return null;\n }\n var tokenType = 'bearer';\n if (loc['#token_type'] != null) {\n tokenType = loc['#token_type'];\n } else if (loc['token_type'] != null) {\n tokenType = loc['token_type'];\n }\n var payload = {\n host: q.host,\n authType: _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGON_IMPLICIT */ \"v\"],\n tokenType: tokenType,\n token: loc.access_token\n };\n return payload;\n}\n/* harmony default export */ __webpack_exports__[\"a\"] = (logon);\n\n//# sourceURL=webpack://restaf/./store/logon.js?");
1891
+ eval("/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"../../../node_modules/@babel/runtime/helpers/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _actionTypes__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../actionTypes */ \"./actionTypes/index.js\");\n/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! qs */ \"../../../node_modules/qs/lib/index.js\");\n/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(qs__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var url_parse__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! url-parse */ \"../../../node_modules/url-parse/index.js\");\n/* harmony import */ var url_parse__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(url_parse__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _keepViyaAlive__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./keepViyaAlive */ \"./store/keepViyaAlive.js\");\n/* harmony import */ var url__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! url */ \"url\");\n/* harmony import */ var url__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(url__WEBPACK_IMPORTED_MODULE_5__);\n/* eslint-disable no-prototype-builtins */\n\n/*\r\n * ------------------------------------------------------------------------------------\r\n * Copyright © 2023, SAS Institute Inc., Cary, NC, USA. * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n * ---------------------------------------------------------------------------------------\r\n *\r\n */\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\n/**\r\n * @description logon or connect to Viya\r\n * @module logon\r\n * @category restaf/core\r\n * @param {rafLogonPayload} logonPayload See type definition for details\r\n * @returns {promise} returns a text 'done' if successful\r\n * @example\r\nlet restaf = require(\"@sassoftware/restaf\");\r\n\r\nlet logonPayload = {\r\n authType: 'password',\r\n host: process.env.VIYA_SERVER,\r\n clientID: 'sas.ec',\r\n clientSecret: '',\r\n user: 'sastest1',\r\n password: 'somepassword'\r\n};\r\n\r\nlet store = restaf.initStore();\r\n\r\nstore.logon(logonPayload)\r\n .then ( r => console.log(r))\r\n .catch( err => console.log(err));\r\n\r\n */\nvar logon = function logon(store, ipayload) {\n return new Promise(function (resolve, reject) {\n var unSubscribe;\n var action;\n var implicitLogon = false;\n var urlInfo = null;\n var payload = ipayload == null ? null : _objectSpread({}, ipayload);\n if (store.getState().connections.get('currentConnection') >= 0) {\n resolve('ready');\n } else {\n var logonExit = function logonExit() {\n var newState = store.getState().connections;\n var runStatus = newState.get('runStatus');\n if (runStatus === 'ready') {\n unSubscribe();\n if (ipayload != null && ipayload.keepAlive != null) {\n var interval = 300;\n var timeout = 14400;\n if (ipayload.timers != null) {\n var timers = ipayload.timers;\n if (typeof timers === 'string') {\n var opts = timers.split(',');\n interval = parseInt(opts[0]);\n timeout = parseInt(opts[1]);\n } else {\n interval = timers[0];\n timeout = timers[1];\n }\n }\n Object(_keepViyaAlive__WEBPACK_IMPORTED_MODULE_4__[/* default */ \"a\"])(store, ipayload.keepAlive, interval, timeout, ipayload.onTimeout);\n }\n resolve(runStatus);\n } else if (runStatus === 'error') {\n unSubscribe();\n reject(newState.get('statusInfo').toJS());\n }\n };\n\n //\n // check url if not password (no window) or when payload is null\n // this allows users of restaf-server|viya-appserverjs to LOGONPAYLOAD unconditionally to logon\n //\n\n if (payload === null || payload.authType === _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGON_IMPLICIT */ \"v\"]) {\n urlInfo = parseUrlNext();\n if (payload !== null && urlInfo !== null) {\n payload = _objectSpread(_objectSpread({}, payload), urlInfo);\n }\n }\n debugger;\n if (payload == null) {\n if (urlInfo !== null) {\n payload = urlInfo;\n } else {\n payload = {\n host: \"\".concat(window.location.protocol, \"//\").concat(window.location.host),\n authType: _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGON_SERVER */ \"x\"]\n };\n }\n }\n\n // persist options in payload - currently used for pup support\n // remove once testing of setting options in initStore is complete\n\n debugger;\n if (payload.options != null) {\n store.config.options = _objectSpread({}, payload.options);\n }\n\n // now make the final decision\n if (payload.authType === 'code') {\n payload.authType = 'server';\n }\n payload.options = store.config.options;\n switch (payload.authType) {\n case _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGON_TOKEN */ \"y\"]:\n case _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGON_SERVER */ \"x\"]:\n if (payload.host == null) {\n payload.host = \"\".concat(window.location.protocol, \"//\").concat(window.location.host);\n }\n break;\n case _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGON_IMPLICIT */ \"v\"]:\n if (payload.hasOwnProperty('token') === false) {\n implicitLogon = true;\n getToken(payload);\n resolve('Implicit Call');\n }\n break;\n case \"LOGOFF\":\n break;\n default:\n break;\n }\n if (!implicitLogon) {\n action = {\n type: payload.authType === 'LOGOFF' ? _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGOFF */ \"r\"] : _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGON */ \"t\"],\n payload: _objectSpread({}, payload)\n };\n // adding proxy option for use with axios\n payload.options.proxy = null;\n if (payload.options.proxyServer != null) {\n payload.options.proxy = url_parse__WEBPACK_IMPORTED_MODULE_3___default()(payload.options.proxyServer);\n }\n action.payload.sslOptions = store.config.hasOwnProperty('sslOptions') ? store.config.sslOptions : null;\n console.log(payload.options);\n unSubscribe = store.subscribe(logonExit);\n action.storeConfig = store.config;\n // action.type = VIYA_LOGON;\n\n store.dispatch(action);\n }\n }\n });\n};\nfunction getToken(payload) {\n var x = \"\".concat(payload.host, \"/SASLogon/oauth/authorize?response_type=token&client_id=\").concat(payload.clientID);\n //noinspection JSUnresolvedVariable\n if (payload.redirect != null) {\n //noinspection JSUnresolvedVariable\n var redirectUri = \"\".concat(window.location.protocol, \"//\").concat(window.location.host, \"/\").concat(payload.redirect, \"?host=\").concat(payload.host);\n x = \"\".concat(x, \"&redirect_uri=\").concat(redirectUri);\n }\n window.location.replace(x);\n}\nfunction parseUrlNext() {\n if (window == null) {\n return null;\n }\n var url = url_parse__WEBPACK_IMPORTED_MODULE_3___default()(window.location, true);\n var loc = qs__WEBPACK_IMPORTED_MODULE_2___default.a.parse(url.hash);\n var q = url.query;\n if (q.host == null || loc.access_token == null) {\n return null;\n }\n var tokenType = 'bearer';\n if (loc['#token_type'] != null) {\n tokenType = loc['#token_type'];\n } else if (loc['token_type'] != null) {\n tokenType = loc['token_type'];\n }\n var payload = {\n host: q.host,\n authType: _actionTypes__WEBPACK_IMPORTED_MODULE_1__[/* VIYA_LOGON_IMPLICIT */ \"v\"],\n tokenType: tokenType,\n token: loc.access_token\n };\n return payload;\n}\n/* harmony default export */ __webpack_exports__[\"a\"] = (logon);\n\n//# sourceURL=webpack://restaf/./store/logon.js?");
1892
1892
 
1893
1893
  /***/ }),
1894
1894
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sassoftware/restaf",
3
- "version": "4.11.1",
3
+ "version": "5.0.1",
4
4
  "description": "Library for writing SAS Viya application using REST APIs",
5
5
  "author": "Deva Kumaraswamy <deva.kumar@sas.com>",
6
6
  "license": "Apache-2.0",
@@ -40,7 +40,7 @@
40
40
  "test": "node",
41
41
  "build": "rimraf dist && rimraf lib && webpack --env target=node p=n --config webpack.config.js && webpack --env target=web p=n --config webpack.config.js && webpack --env target=web p=y --config webpack.config.js",
42
42
  "babel": "babel src --out-dir jslib",
43
- "pub": "npm publish --tag dev --access public",
43
+ "pub": "npm publish --tag proxy --access public",
44
44
  "lint": "eslint . --fix",
45
45
  "jsdoc": "jsdoc -c jsdoc.json",
46
46
  "dlink": "npm link"