@sassoftware/restaf 5.1.23 → 5.2.0

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
@@ -2092,7 +2092,7 @@ eval("/*\r\n * Copyright © 2023, SAS Institute Inc., Cary, NC, USA. All Rights
2092
2092
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2093
2093
 
2094
2094
  "use strict";
2095
- eval("/* harmony import */ var _fixImages__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./fixImages */ \"./serverCalls/fixImages.js\");\n/* harmony import */ var _fixImages__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_fixImages__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _fixReports__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./fixReports */ \"./serverCalls/fixReports.js\");\n/* harmony import */ var _fixReports__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_fixReports__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _casSessionLinks__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./casSessionLinks */ \"./serverCalls/casSessionLinks.js\");\n/* harmony import */ var _casSessionLinks__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_casSessionLinks__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _reduceCasResults__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./reduceCasResults */ \"./serverCalls/reduceCasResults.js\");\n/* harmony import */ var _reduceCasResults__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_reduceCasResults__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _fixMlPipelineAutomation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./fixMlPipelineAutomation */ \"./serverCalls/fixMlPipelineAutomation.js\");\n/* harmony import */ var _fixMlPipelineAutomation__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_fixMlPipelineAutomation__WEBPACK_IMPORTED_MODULE_4__);\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// let fixImages = require( './fixImages' );\n// let fixReports = require( './fixReports' );\n// let casSessionLinks = require( './casSessionLinks' );\n// let reduceCasResults = require( './reduceCasResults' );\n// let fixMlPipelineAutomation = require( './fixMlPipelineAutomation' );\n\n\n\n\n\nfunction fixResponse(response) {\n //\n // Ensure all header keys are lowercase\n //\n\n var headers = {};\n for (var k in response.headers) {\n //noinspection JSUnfilteredForInLoop\n var k1 = k.toLowerCase();\n //noinspection JSUnfilteredForInLoop\n headers[k1] = response.headers[k];\n }\n headers['tkhttp-id'] = null;\n if (headers['set-cookie'] != null) {\n var cookieValue = response.headers['set-cookie'].find(function (cookie) {\n return cookie.includes('tkhttp-id');\n });\n headers['tkhttp-id'] = cookieValue != null ? cookieValue.split(';')[0].split('=')[1] : null;\n }\n response.headers = headers;\n var cType = response.headers['content-type'];\n if (cType == null || typeof response.data.results === 'string') {\n return response;\n }\n\n // let contentType = cType.split(';') [0];\n var iLink = response.data.iconfig.link;\n fixCas(iLink, response);\n if (iLink.href.indexOf(\"reportImages/jobs\") > 0) {\n _fixImages__WEBPACK_IMPORTED_MODULE_0___default()(response);\n }\n if (iLink.href === \"/reports/reports\" && iLink.method === \"GET\") {\n _fixReports__WEBPACK_IMPORTED_MODULE_1___default()(response);\n }\n var il = iLink.href.split('?')[0];\n if (il === \"/mlPipelineAutomation/projects\" && iLink.method === \"GET\") {\n _fixMlPipelineAutomation__WEBPACK_IMPORTED_MODULE_4___default()(response);\n }\n return response;\n}\n\n// Plan:\n// step 1: propogate server name and cashttp info\n\nfunction fixCas(iLink, response) {\n // special handling for cas\n var casProxyFlag = false;\n if (response.data.hasOwnProperty('iconfig')) {\n if (response.data.iconfig.storeConfig != null) {\n casProxyFlag = response.data.iconfig.storeConfig.casProxy;\n }\n }\n\n // do a refresh - mainly for reattaching to a cas session\n\n if (iLink.rel === 'self' && iLink.type === 'application/vnd.sas.cas.session.summary' || iLink.rel === 'createSession' && iLink.responseType === 'application/vnd.sas.cas.session') {\n response.data.results.links = response.data.results.links.concat(fixCasSession(iLink, response.data.results, casProxyFlag));\n response.data.results.name2 = response.data.results.name.split(':')[0];\n }\n if (iLink.hasOwnProperty('itemType') && iLink.itemType === 'application/vnd.sas.cas.session.summary') {\n var items = response.data.results.items;\n var pre = \"/\".concat(iLink.casHttp, \"/cas/sessions\");\n for (var i = 0; i < items.length; i++) {\n var item = items[i];\n var uri = \"/casProxy/servers/\".concat(iLink.server, \"/cas/sessions/\").concat(item.id);\n var urihttp = \"\".concat(pre, \"/\").concat(item.id);\n item.links = item.links.map(function (l) {\n l.casHttp = iLink.casHttp;\n l.server = iLink.server;\n return l;\n });\n item.links = item.links.concat(_casSessionLinks__WEBPACK_IMPORTED_MODULE_2___default()(uri, urihttp, iLink.casHttp, iLink.server, casProxyFlag));\n }\n }\n if (iLink.hasOwnProperty('customHandling')) {\n response.data.results = _reduceCasResults__WEBPACK_IMPORTED_MODULE_3___default()(response.data.results);\n response.data.results = {\n items: Object.assign({}, response.data.results)\n };\n response.data.results.customHandling = iLink.customHandling;\n }\n\n //TBD: This could probbably be removed due to enhancements to casManagement\n if ((iLink.href === '/casManagement/' || iLink.href === '/casManagement') && iLink.method === 'GET') {\n response.data.results.links = response.data.results.links.map(function (l) {\n if (l.rel === 'collection') {\n l.title = 'servers';\n l.rel = 'servers';\n l.patch = 'cas';\n }\n return l;\n });\n }\n\n // A seperate loop in case casManagement fixes the issue\n if (iLink.hasOwnProperty('patch') && iLink.rel === 'servers') {\n var _items = response.data.results.items;\n var _loop = function _loop() {\n var item = _items[_i];\n var name = item.name;\n var ll = item.links.map(function (l) {\n l.casHttp = \"\".concat(name, \"-http\"); /* save the http info to propogate to sessions */\n l.server = name;\n return l;\n });\n item.links = ll;\n };\n for (var _i = 0; _i < _items.length; _i++) {\n _loop();\n }\n }\n}\nfunction fixCasSession(iLink, results, casProxyFlag) {\n // proprogate casHttp\n results.links = results.links.map(function (l) {\n l.casHttp = iLink.casHttp;\n l.server = iLink.server;\n return l;\n });\n return sessionLinks(iLink, results.id, casProxyFlag).concat(results.links);\n}\nfunction sessionLinks(iLink, sessionId, casProxyFlag) {\n var uri = \"/casProxy/servers/\".concat(iLink.server, \"/cas/sessions/\").concat(sessionId);\n var urihttp = \"/\".concat(iLink.casHttp, \"/cas/sessions/\").concat(sessionId);\n // propgate server name also\n return _casSessionLinks__WEBPACK_IMPORTED_MODULE_2___default()(uri, urihttp, iLink.casHttp, iLink.server, casProxyFlag);\n}\n/* harmony default export */ __webpack_exports__[\"a\"] = (fixResponse);\n\n//# sourceURL=webpack://restaf/./serverCalls/fixResponse.js?");
2095
+ eval("/* harmony import */ var _fixImages__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./fixImages */ \"./serverCalls/fixImages.js\");\n/* harmony import */ var _fixImages__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_fixImages__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _fixReports__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./fixReports */ \"./serverCalls/fixReports.js\");\n/* harmony import */ var _fixReports__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_fixReports__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _casSessionLinks__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./casSessionLinks */ \"./serverCalls/casSessionLinks.js\");\n/* harmony import */ var _casSessionLinks__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_casSessionLinks__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _reduceCasResults__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./reduceCasResults */ \"./serverCalls/reduceCasResults.js\");\n/* harmony import */ var _reduceCasResults__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_reduceCasResults__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _fixMlPipelineAutomation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./fixMlPipelineAutomation */ \"./serverCalls/fixMlPipelineAutomation.js\");\n/* harmony import */ var _fixMlPipelineAutomation__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_fixMlPipelineAutomation__WEBPACK_IMPORTED_MODULE_4__);\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// let fixImages = require( './fixImages' );\n// let fixReports = require( './fixReports' );\n// let casSessionLinks = require( './casSessionLinks' );\n// let reduceCasResults = require( './reduceCasResults' );\n// let fixMlPipelineAutomation = require( './fixMlPipelineAutomation' );\n\n\n\n\n\nfunction fixResponse(response) {\n //\n // Ensure all header keys are lowercase\n //\n\n var headers = {};\n for (var k in response.headers) {\n //noinspection JSUnfilteredForInLoop\n var k1 = k.toLowerCase();\n if (k1 === 'x-csrf-header' || k1 === 'x-csrf-token') {\n console.log(k1, response.headers[k]);\n }\n //noinspection JSUnfilteredForInLoop\n headers[k1] = response.headers[k];\n }\n headers['tkhttp-id'] = null;\n if (headers['set-cookie'] != null) {\n var cookieValue = response.headers['set-cookie'].find(function (cookie) {\n return cookie.includes('tkhttp-id');\n });\n headers['tkhttp-id'] = cookieValue != null ? cookieValue.split(';')[0].split('=')[1] : null;\n }\n response.headers = headers;\n var cType = response.headers['content-type'];\n if (cType == null || typeof response.data.results === 'string') {\n return response;\n }\n\n // let contentType = cType.split(';') [0];\n var iLink = response.data.iconfig.link;\n fixCas(iLink, response);\n if (iLink.href.indexOf(\"reportImages/jobs\") > 0) {\n _fixImages__WEBPACK_IMPORTED_MODULE_0___default()(response);\n }\n if (iLink.href === \"/reports/reports\" && iLink.method === \"GET\") {\n _fixReports__WEBPACK_IMPORTED_MODULE_1___default()(response);\n }\n var il = iLink.href.split('?')[0];\n if (il === \"/mlPipelineAutomation/projects\" && iLink.method === \"GET\") {\n _fixMlPipelineAutomation__WEBPACK_IMPORTED_MODULE_4___default()(response);\n }\n return response;\n}\n\n// Plan:\n// step 1: propogate server name and cashttp info\n\nfunction fixCas(iLink, response) {\n // special handling for cas\n var casProxyFlag = false;\n if (response.data.hasOwnProperty('iconfig')) {\n if (response.data.iconfig.storeConfig != null) {\n casProxyFlag = response.data.iconfig.storeConfig.casProxy;\n }\n }\n\n // do a refresh - mainly for reattaching to a cas session\n\n if (iLink.rel === 'self' && iLink.type === 'application/vnd.sas.cas.session.summary' || iLink.rel === 'createSession' && iLink.responseType === 'application/vnd.sas.cas.session') {\n response.data.results.links = response.data.results.links.concat(fixCasSession(iLink, response.data.results, casProxyFlag));\n response.data.results.name2 = response.data.results.name.split(':')[0];\n }\n if (iLink.hasOwnProperty('itemType') && iLink.itemType === 'application/vnd.sas.cas.session.summary') {\n var items = response.data.results.items;\n var pre = \"/\".concat(iLink.casHttp, \"/cas/sessions\");\n for (var i = 0; i < items.length; i++) {\n var item = items[i];\n var uri = \"/casProxy/servers/\".concat(iLink.server, \"/cas/sessions/\").concat(item.id);\n var urihttp = \"\".concat(pre, \"/\").concat(item.id);\n item.links = item.links.map(function (l) {\n l.casHttp = iLink.casHttp;\n l.server = iLink.server;\n return l;\n });\n item.links = item.links.concat(_casSessionLinks__WEBPACK_IMPORTED_MODULE_2___default()(uri, urihttp, iLink.casHttp, iLink.server, casProxyFlag));\n }\n }\n if (iLink.hasOwnProperty('customHandling')) {\n response.data.results = _reduceCasResults__WEBPACK_IMPORTED_MODULE_3___default()(response.data.results);\n response.data.results = {\n items: Object.assign({}, response.data.results)\n };\n response.data.results.customHandling = iLink.customHandling;\n }\n\n //TBD: This could probbably be removed due to enhancements to casManagement\n if ((iLink.href === '/casManagement/' || iLink.href === '/casManagement') && iLink.method === 'GET') {\n response.data.results.links = response.data.results.links.map(function (l) {\n if (l.rel === 'collection') {\n l.title = 'servers';\n l.rel = 'servers';\n l.patch = 'cas';\n }\n return l;\n });\n }\n\n // A seperate loop in case casManagement fixes the issue\n if (iLink.hasOwnProperty('patch') && iLink.rel === 'servers') {\n var _items = response.data.results.items;\n var _loop = function _loop() {\n var item = _items[_i];\n var name = item.name;\n var ll = item.links.map(function (l) {\n l.casHttp = \"\".concat(name, \"-http\"); /* save the http info to propogate to sessions */\n l.server = name;\n return l;\n });\n item.links = ll;\n };\n for (var _i = 0; _i < _items.length; _i++) {\n _loop();\n }\n }\n}\nfunction fixCasSession(iLink, results, casProxyFlag) {\n // proprogate casHttp\n results.links = results.links.map(function (l) {\n l.casHttp = iLink.casHttp;\n l.server = iLink.server;\n return l;\n });\n return sessionLinks(iLink, results.id, casProxyFlag).concat(results.links);\n}\nfunction sessionLinks(iLink, sessionId, casProxyFlag) {\n var uri = \"/casProxy/servers/\".concat(iLink.server, \"/cas/sessions/\").concat(sessionId);\n var urihttp = \"/\".concat(iLink.casHttp, \"/cas/sessions/\").concat(sessionId);\n // propgate server name also\n return _casSessionLinks__WEBPACK_IMPORTED_MODULE_2___default()(uri, urihttp, iLink.casHttp, iLink.server, casProxyFlag);\n}\n/* harmony default export */ __webpack_exports__[\"a\"] = (fixResponse);\n\n//# sourceURL=webpack://restaf/./serverCalls/fixResponse.js?");
2096
2096
 
2097
2097
  /***/ }),
2098
2098
 
@@ -2105,7 +2105,7 @@ eval("/* harmony import */ var _fixImages__WEBPACK_IMPORTED_MODULE_0__ = __webpa
2105
2105
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2106
2106
 
2107
2107
  "use strict";
2108
- 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 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(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\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 debugger;\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 config.headers = {};\n if (logonInfo.token !== null) {\n config.headers['Authorization'] = logonInfo.tokenType + \" \" + logonInfo.token;\n } else {\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 debugger;\n if (ixsrf !== null) {\n /* TBD: fix parallel calls to get of this conditional */\n var xsrfHeaderName = ixsrf[\"x-csrf-header\"];\n console.log(xsrfHeaderName);\n if (xsrfHeaderName != null) {\n config.xsrfHeaderName = xsrfHeaderName;\n // https://github.com/axios/axios/issues/2024\n config.headers[xsrfHeaderName] = ixsrf[\"x-csrf-token\"];\n }\n if (ixsrf[\"tkhttp_id\"] != null) {\n config.headers[\"tkhttp_id\"] = ixsrf[\"tkhttp_id\"];\n }\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 if (proxy.pathname != null && proxy.pathname.trim().length > 0) {\n config.url = \"\".concat(proxy.pathname).concat(config.url); //prepend url with proxy path\n }\n\n config.baseURL = \"\".concat(proxy.protocol, \"//\").concat(proxy.host); //override base 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 debugger;\n if (config.headers['tkhttp-id'] != null) {\n console.log(config.url, '--', config.headers['tkhttp-id']);\n console.log('-----------------------');\n }\n Object(axios__WEBPACK_IMPORTED_MODULE_2__[/* default */ \"a\"])(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 Object(axios__WEBPACK_IMPORTED_MODULE_2__[/* default */ \"a\"])(action.payload);\n}\n\n\n//# sourceURL=webpack://restaf/./serverCalls/index.js?");
2108
+ 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 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(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\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 debugger;\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 config.headers = {};\n if (logonInfo.token !== null) {\n config.headers['Authorization'] = logonInfo.tokenType + \" \" + logonInfo.token;\n } else {\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 debugger;\n if (ixsrf !== null) {\n /* TBD: fix parallel calls to get of this conditional */\n var xsrfHeaderName = ixsrf[\"x-csrf-header\"];\n console.log('**********************', ixsrf);\n console.log(xsrfHeaderName);\n if (xsrfHeaderName != null) {\n config.xsrfHeaderName = xsrfHeaderName;\n // https://github.com/axios/axios/issues/2024\n config.headers[xsrfHeaderName] = ixsrf[xsrfHeaderName];\n }\n if (ixsrf[\"tkhttp-id\"] != null) {\n config.headers[\"tkhttp-id\"] = ixsrf[\"tkhttp-id\"];\n }\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 if (proxy.pathname != null && proxy.pathname.trim().length > 0) {\n config.url = \"\".concat(proxy.pathname).concat(config.url); //prepend url with proxy path\n }\n\n config.baseURL = \"\".concat(proxy.protocol, \"//\").concat(proxy.host); //override base 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 debugger;\n console.log('---------------------------------');\n console.log(config.url, '--', config.headers['tkhttp_id']);\n if (config.xsrfHeaderName != null) {\n console.log(config.url, '--', config.headers[config.xsrfHeaderName]);\n }\n console.log('-----------------------');\n Object(axios__WEBPACK_IMPORTED_MODULE_2__[/* default */ \"a\"])(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 Object(axios__WEBPACK_IMPORTED_MODULE_2__[/* default */ \"a\"])(action.payload);\n}\n\n\n//# sourceURL=webpack://restaf/./serverCalls/index.js?");
2109
2109
 
2110
2110
  /***/ }),
2111
2111
 
@@ -2144,7 +2144,7 @@ eval("/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_
2144
2144
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2145
2145
 
2146
2146
  "use strict";
2147
- eval("/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ \"../../../node_modules/@babel/runtime/helpers/asyncToGenerator.js\");\n/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"../../../node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _iapiCall__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./iapiCall */ \"./store/iapiCall.js\");\n/* harmony import */ var _actionTypes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../actionTypes */ \"./actionTypes/index.js\");\n/* harmony import */ var _appData__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./appData */ \"./store/appData.js\");\n/* harmony import */ var _readXsrfData__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./readXsrfData */ \"./store/readXsrfData.js\");\n/* harmony import */ var _getXsrfData__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./getXsrfData */ \"./store/getXsrfData.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\n\n\n\n\n\n\n/**\r\n * @description make an api call to viya\r\n * @module apiCall\r\n * @category restaf/core\r\n * @param {rafLinkeRel} iroute \r\n * @param {*} payload \r\n * @param {...any} rest \r\n * @returns {promise} returns a rafObject\r\n */\nfunction apiCall(_x, _x2, _x3) {\n return _apiCall.apply(this, arguments);\n}\nfunction _apiCall() {\n _apiCall = _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0___default()( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.mark(function _callee(store, iroute, payload) {\n var _len,\n rest,\n _key,\n response,\n newXsrf,\n _args = arguments;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n // const apiCall = ( store, iroute, payload, ...rest ) => {\n debugger;\n for (_len = _args.length, rest = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {\n rest[_key - 3] = _args[_key];\n }\n _context.next = 4;\n return _iapiCall__WEBPACK_IMPORTED_MODULE_2__[/* default */ \"a\"].apply(void 0, [store, iroute, _actionTypes__WEBPACK_IMPORTED_MODULE_3__[/* API_CALL */ \"b\"], payload].concat(rest));\n case 4:\n response = _context.sent;\n debugger;\n // Update csrf data if present in headers\n // TBD: csrf with DELETE behavior needs to be reviewed\n debugger;\n newXsrf = Object(_readXsrfData__WEBPACK_IMPORTED_MODULE_5__[/* default */ \"a\"])(response.headers, response.usedService);\n Object(_appData__WEBPACK_IMPORTED_MODULE_4__[/* default */ \"a\"])(store, _actionTypes__WEBPACK_IMPORTED_MODULE_3__[/* API_XSRF */ \"h\"], response.usedService, newXsrf);\n console.log(response.usedService, response.service);\n console.log('After call', JSON.stringify(Object(_getXsrfData__WEBPACK_IMPORTED_MODULE_6__[/* default */ \"a\"])(store), null, 4));\n debugger;\n if (newXsrf['tkhttp-id'] !== null) {\n console.log('saving tkhttp');\n Object(_appData__WEBPACK_IMPORTED_MODULE_4__[/* default */ \"a\"])(store, _actionTypes__WEBPACK_IMPORTED_MODULE_3__[/* API_XSRF */ \"h\"], 'cassession', newXsrf);\n }\n return _context.abrupt(\"return\", response);\n case 14:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }));\n return _apiCall.apply(this, arguments);\n}\n;\n/* harmony default export */ __webpack_exports__[\"a\"] = (apiCall);\n\n//# sourceURL=webpack://restaf/./store/apiCall.js?");
2147
+ eval("/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ \"../../../node_modules/@babel/runtime/helpers/asyncToGenerator.js\");\n/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"../../../node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _iapiCall__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./iapiCall */ \"./store/iapiCall.js\");\n/* harmony import */ var _actionTypes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../actionTypes */ \"./actionTypes/index.js\");\n/* harmony import */ var _appData__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./appData */ \"./store/appData.js\");\n/* harmony import */ var _readXsrfData__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./readXsrfData */ \"./store/readXsrfData.js\");\n/* harmony import */ var _getXsrfData__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./getXsrfData */ \"./store/getXsrfData.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\n\n\n\n\n\n\n/**\r\n * @description make an api call to viya\r\n * @module apiCall\r\n * @category restaf/core\r\n * @param {rafLinkeRel} iroute \r\n * @param {*} payload \r\n * @param {...any} rest \r\n * @returns {promise} returns a rafObject\r\n */\nfunction apiCall(_x, _x2, _x3) {\n return _apiCall.apply(this, arguments);\n}\nfunction _apiCall() {\n _apiCall = _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0___default()( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.mark(function _callee(store, iroute, payload) {\n var _len,\n rest,\n _key,\n response,\n newXsrf,\n _args = arguments;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n // const apiCall = ( store, iroute, payload, ...rest ) => {\n debugger;\n for (_len = _args.length, rest = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {\n rest[_key - 3] = _args[_key];\n }\n _context.next = 4;\n return _iapiCall__WEBPACK_IMPORTED_MODULE_2__[/* default */ \"a\"].apply(void 0, [store, iroute, _actionTypes__WEBPACK_IMPORTED_MODULE_3__[/* API_CALL */ \"b\"], payload].concat(rest));\n case 4:\n response = _context.sent;\n debugger;\n newXsrf = Object(_readXsrfData__WEBPACK_IMPORTED_MODULE_5__[/* default */ \"a\"])(response.headers, response.usedService);\n Object(_appData__WEBPACK_IMPORTED_MODULE_4__[/* default */ \"a\"])(store, _actionTypes__WEBPACK_IMPORTED_MODULE_3__[/* API_XSRF */ \"h\"], response.usedService, newXsrf);\n console.log(response.usedService, response.service);\n console.log(\"apiCall to \".concat(response.usedService), JSON.stringify(Object(_getXsrfData__WEBPACK_IMPORTED_MODULE_6__[/* default */ \"a\"])(store), null, 4));\n debugger;\n if (newXsrf['tkhttp-id'] !== null) {\n Object(_appData__WEBPACK_IMPORTED_MODULE_4__[/* default */ \"a\"])(store, _actionTypes__WEBPACK_IMPORTED_MODULE_3__[/* API_XSRF */ \"h\"], 'cassession', newXsrf);\n }\n return _context.abrupt(\"return\", response);\n case 13:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }));\n return _apiCall.apply(this, arguments);\n}\n;\n/* harmony default export */ __webpack_exports__[\"a\"] = (apiCall);\n\n//# sourceURL=webpack://restaf/./store/apiCall.js?");
2148
2148
 
2149
2149
  /***/ }),
2150
2150
 
@@ -2469,7 +2469,7 @@ eval("/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IM
2469
2469
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2470
2470
 
2471
2471
  "use strict";
2472
- eval("/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash */ \"../../../node_modules/lodash/lodash.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _getResults__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getResults */ \"./store/getResults.js\");\n/* harmony import */ var _getXsrfData__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getXsrfData */ \"./store/getXsrfData.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\nvar Immutable = __webpack_require__(/*! immutable */ \"../../../node_modules/immutable/dist/immutable.es.js\");\n\n\n\nvar prepareAction = function prepareAction(store, iroute, actionType, payload, delay, eventHandler, parentRoute, jobContext) {\n var paginator;\n var route;\n var link;\n var serviceName;\n var current;\n debugger;\n if (typeof iroute === \"string\") {\n current = Object(_getResults__WEBPACK_IMPORTED_MODULE_1__[/* default */ \"a\"])(store, iroute);\n route = iroute;\n } else {\n current = iroute;\n route = current.get(\"route\");\n }\n if (current === null || Immutable.Iterable.isIterable(current) === false) {\n return null;\n }\n /* */\n paginator = current.get(\"paginator\");\n link = current.get(\"link\").toJS();\n if (paginator) {\n route = current.get(\"parentRoute\");\n serviceName = route.split(\":/\")[0];\n } else {\n var searchPath = route.split(\":/\");\n serviceName = searchPath[0];\n searchPath.splice(1, 0, store.apiCallNo);\n route = searchPath.join(\":/\");\n store.apiCallNo++;\n }\n var action = {\n type: actionType,\n delay: delay == null ? 0 : delay,\n paginator: paginator,\n serviceName: serviceName,\n route: route,\n eventHandler: eventHandler,\n parentRoute: parentRoute,\n jobContext: jobContext,\n storeConfig: store.config,\n usedService: serviceName,\n link: link\n };\n var xsrf = Object(_getXsrfData__WEBPACK_IMPORTED_MODULE_2__[/* default */ \"a\"])(store, serviceName);\n if (link.href.split('/')[1] === 'casProxy') {\n action.usedService = 'casProxy';\n }\n debugger;\n if (payload != null) {\n action.payload = payload;\n }\n debugger;\n if (serviceName === \"casProxy\") {\n debugger;\n var xsrfcas = Object(_getXsrfData__WEBPACK_IMPORTED_MODULE_2__[/* default */ \"a\"])(store, \"cassession\");\n console.log(action.usedService, action.serviceName);\n console.log('in Prep', JSON.stringify(Object(_getXsrfData__WEBPACK_IMPORTED_MODULE_2__[/* default */ \"a\"])(store), null, 4));\n if (xsrfcas != null) {\n console.log(xsrfcas);\n xsrf = Object(_getXsrfData__WEBPACK_IMPORTED_MODULE_2__[/* default */ \"a\"])(store, \"casProxy\");\n console.log(xsrf);\n xsrf['tkhttp-id'] = xsrfcas['tkhttp-id'];\n console.log(xsrf);\n }\n }\n debugger;\n if (payload != null) {\n action.payload.xsrf = xsrf;\n } else {\n action.payload = {\n xsrf: xsrf\n };\n }\n return action;\n};\n/* harmony default export */ __webpack_exports__[\"a\"] = (prepareAction);\n\n//# sourceURL=webpack://restaf/./store/prepareAction.js?");
2472
+ eval("/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash */ \"../../../node_modules/lodash/lodash.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _getResults__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getResults */ \"./store/getResults.js\");\n/* harmony import */ var _getXsrfData__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getXsrfData */ \"./store/getXsrfData.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\nvar Immutable = __webpack_require__(/*! immutable */ \"../../../node_modules/immutable/dist/immutable.es.js\");\n\n\n\nvar prepareAction = function prepareAction(store, iroute, actionType, payload, delay, eventHandler, parentRoute, jobContext) {\n var paginator;\n var route;\n var link;\n var serviceName;\n var current;\n debugger;\n if (typeof iroute === \"string\") {\n current = Object(_getResults__WEBPACK_IMPORTED_MODULE_1__[/* default */ \"a\"])(store, iroute);\n route = iroute;\n } else {\n current = iroute;\n route = current.get(\"route\");\n }\n if (current === null || Immutable.Iterable.isIterable(current) === false) {\n return null;\n }\n /* */\n paginator = current.get(\"paginator\");\n link = current.get(\"link\").toJS();\n if (paginator) {\n route = current.get(\"parentRoute\");\n serviceName = route.split(\":/\")[0];\n } else {\n var searchPath = route.split(\":/\");\n serviceName = searchPath[0];\n searchPath.splice(1, 0, store.apiCallNo);\n route = searchPath.join(\":/\");\n store.apiCallNo++;\n }\n var action = {\n type: actionType,\n delay: delay == null ? 0 : delay,\n paginator: paginator,\n serviceName: serviceName,\n route: route,\n eventHandler: eventHandler,\n parentRoute: parentRoute,\n jobContext: jobContext,\n storeConfig: store.config,\n usedService: serviceName,\n link: link\n };\n if (link.href.split('/')[1] === 'casProxy') {\n action.usedService = 'casProxy';\n }\n var xsrf = Object(_getXsrfData__WEBPACK_IMPORTED_MODULE_2__[/* default */ \"a\"])(store, action.usedService);\n debugger;\n if (payload != null) {\n action.payload = payload;\n }\n debugger;\n if (action.usedService === \"casProxy\") {\n debugger;\n var xsrfcas = Object(_getXsrfData__WEBPACK_IMPORTED_MODULE_2__[/* default */ \"a\"])(store, \"cassession\");\n console.log(action.usedService, action.serviceName);\n console.log('in Prep', JSON.stringify(Object(_getXsrfData__WEBPACK_IMPORTED_MODULE_2__[/* default */ \"a\"])(store), null, 4));\n if (xsrfcas != null) {\n console.log(xsrfcas);\n xsrf['tkhttp-id'] = xsrfcas['tkhttp-id'];\n console.log(xsrf);\n }\n }\n debugger;\n if (payload != null) {\n action.payload.xsrf = xsrf;\n } else {\n action.payload = {\n xsrf: xsrf\n };\n }\n return action;\n};\n/* harmony default export */ __webpack_exports__[\"a\"] = (prepareAction);\n\n//# sourceURL=webpack://restaf/./store/prepareAction.js?");
2473
2473
 
2474
2474
  /***/ }),
2475
2475
 
@@ -2482,7 +2482,7 @@ eval("/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_r
2482
2482
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2483
2483
 
2484
2484
  "use strict";
2485
- eval("/*\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 */\nfunction readXsrfData(headers, service) {\n var xsrfData = {\n serviceName: service,\n 'x-csrf-header': null,\n 'x-csrf-token': null,\n 'tkhttp-id': null\n };\n var xheader = headers('x-csrf-header');\n if (xheader !== null) {\n xheader = xheader.toUpperCase();\n var xtoken = headers('x-csrf-token');\n xsrfData['x-csrf-header'] = xheader;\n xsrfData['x-csrf-token'] = xtoken;\n }\n xsrfData['tkhttp-id'] = headers('tkhttp-id') != null ? headers('tkhttp-id') : null;\n return xsrfData;\n}\n/* harmony default export */ __webpack_exports__[\"a\"] = (readXsrfData);\n\n//# sourceURL=webpack://restaf/./store/readXsrfData.js?");
2485
+ eval("/*\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 */\nfunction readXsrfData(headers, service) {\n var xsrfData = {\n serviceName: service,\n 'x-csrf-header': null,\n 'x-csrf-token': null,\n 'tkhttp-id': null\n };\n var xheader = headers('x-csrf-header');\n console.log(xheader);\n xsrfData['x-csrf-header'] = xheader;\n // xsrf data is present\n if (xheader != null) {\n xsrfData[xheader] = headers(xheader.toLowerCase());\n }\n // save tkhtt-id for cas use\n xsrfData['tkhttp-id'] = headers('tkhttp-id') != null ? headers('tkhttp-id') : null;\n console.log('Incoming xsrf data ', JSON.stringify(xsrfData, null, 4));\n return xsrfData;\n}\n/* harmony default export */ __webpack_exports__[\"a\"] = (readXsrfData);\n\n//# sourceURL=webpack://restaf/./store/readXsrfData.js?");
2486
2486
 
2487
2487
  /***/ }),
2488
2488
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sassoftware/restaf",
3
- "version": "5.1.23",
3
+ "version": "5.2.0",
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",