reverse-proxy-middleware 0.0.86 → 0.0.87

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.
Files changed (3) hide show
  1. package/index.js +1 -1
  2. package/package.json +13 -12
  3. package/readme.md +0 -5
package/index.js CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- "use strict";if("undefined"!=typeof module&&null!==module&&"undefined"!==eval("typeof require")&&null!==eval("require")&&"main"in eval("require")&&"undefined"!==eval("typeof require.main")&&null!==eval("require.main")){var ORIGINAL_MAIN_MODULE=module;module!==eval("require.main")&&"paths"in module&&"paths"in eval("require.main")&&"undefined"!=typeof __dirname&&null!==__dirname&&(module.paths=eval("require.main.paths").concat(module.paths.filter((function(path){return eval("require.main.paths").includes(path)}))))}module===eval("require.main")&&module.paths.unshift("/application/node_modules"),(()=>{var __webpack_modules__=[(e,r,t)=>{t.d(r,{addParsedContentToRequest:()=>P,applyStateAPIs:()=>O,default:()=>g,determineForwarder:()=>h,logging:()=>b,resolveForwarders:()=>v});var n=t(1),_=t.n(n),o=t(2),a=t.n(o),s=t(3),i=t.n(s),u=t(4);const c=require("net"),p=require("tls");function l(e,r){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(t)return(t=t.call(e)).next.bind(t);if(Array.isArray(e)||(t=function(e,r){if(e){if("string"==typeof e)return f(e,r);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?f(e,r):void 0}}(e))||r&&e&&"number"==typeof e.length){t&&(e=t);var n=0;return function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function f(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=Array(r);t<r;t++)n[t]=e[t];return n}var d=[].concat(u.UTILITY_SCOPE_NAMES,["data","error","request","response","stateAPI","stateAPIs"]),E=function(){var e=a()(i().mark((function e(){var r,t,n,_=arguments;return i().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(r=_.length,t=Array(r),n=0;n<r;n++)t[n]=_[n];return e.abrupt("return",new Promise((function(e,r){process.stdout.write(t.join(" ")+"\n",(function(t){return t?r(t):e()}))})));case 2:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),b={log:E,debug:E,info:E,error:E,warn:E},O=function(){var e=a()(i().mark((function e(r,t,n){var _,o,a,s,c,p,f,d,E,O,h,v,P,m,g,I;return i().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:_={},a=l(n.stateAPIs);case 2:if((s=a()).done){e.next=73;break}c=s.value,o=_[c.name]={configuration:c,error:null,response:null},p=!1,f=1,d=l(c.expressions.pre);case 8:if((E=d()).done){e.next=28;break}O=E.value,h=void 0;try{h=O.apply(void 0,u.UTILITY_SCOPE_VALUES.concat([c.data,null,r,t,o,_]))}catch(e){b.warn("Failed running pre "+f+". expression of state api:",e)}if("number"!=typeof h){e.next=17;break}return b.info("Break request caused by state api",'"'+c.name+'" with status code '+h+"."),t.statusCode=h,t.end(),e.abrupt("return",{result:!1,scope:_});case 17:if("break"!==h){e.next=19;break}return e.abrupt("break",28);case 19:if(f+=1,"boolean"!=typeof h){e.next=26;break}if(!h){e.next=25;break}p=!0,e.next=26;break;case 25:return e.abrupt("break",28);case 26:e.next=8;break;case 28:if(!p){e.next=71;break}if(b.info('Use state api: "'+c.name+'"'),v=null,c.urlExpression)try{c.url=c.urlExpression.apply(c,u.UTILITY_SCOPE_VALUES.concat([c.data,null,r,t,o,_]))}catch(e){b.warn("Failed running url expression:",e)}return b.debug("\nState api configuration is: "+(0,u.represent)(c)),e.prev=33,e.next=36,fetch(c.url,c.options);case 36:o.response=e.sent,e.next=43;break;case 39:e.prev=39,e.t0=e.catch(33),v=e.t0,b.warn('Running state api request for "'+c.name+'" throws',"error:",v);case 43:if(!(o.response&&o.response.headers.has("content-type")&&/application\/json(;.*)?$/.test(o.response.headers.get("content-type")))){e.next=54;break}return e.prev=44,e.next=47,o.response.json();case 47:o.response.data=e.sent,e.next=54;break;case 50:e.prev=50,e.t1=e.catch(44),v=e.t1,b.warn("Parsing state api json response for",'"'+c.name+'" throws error:',v);case 54:b.debug("\nState api response is:",(0,u.represent)(o.response)),f=1,P=l(c.expressions.post);case 57:if((m=P()).done){e.next=71;break}g=m.value,I=null;try{I=g.apply(void 0,u.UTILITY_SCOPE_VALUES.concat([c.data,v,r,t,o,_]))}catch(e){b.warn("Failed running "+f+". post expression of state api:",e)}if("number"!=typeof I){e.next=66;break}return b.info("Break request caused by state api",'"'+c.name+'" with status code '+I+"."),t.statusCode=I,t.end(),e.abrupt("return",{result:!1,scope:_});case 66:if("break"!==I){e.next=68;break}return e.abrupt("break",71);case 68:f+=1;case 69:e.next=57;break;case 71:e.next=2;break;case 73:return e.abrupt("return",{result:!0,scope:_});case 74:case"end":return e.stop()}}),e,null,[[33,39],[44,50]])})));return function(){return e.apply(this,arguments)}}(),h=function(e,r,t){for(var n,_=l(Object.entries(t).sort((function(e,r){var t=e[0],n=r[0];return t.localeCompare(n)})));!(n=_()).done;){var o,a=n.value,s=a[0],i=a[1],c={configuration:i,error:null,response:null};if(i.useExpression.apply(i,u.UTILITY_SCOPE_VALUES.concat([i,null,e,r,c,(o={},o[s]=c,o)])))return b.info('Determined forwarder is: "'+s+'".'),i}return null},v=function(e){for(var r={},t=0,n=Object.entries(e);t<n.length;t++){var o=n[t],a=o[0],s=o[1];if("base"!==a){for(var i,c=(0,u.extend)(!0,{name:a},(0,u.modifyObject)((0,u.copy)(e.base),s),s),p={retrieve:[],send:[]},f=l(["retrieve","send"]);!(i=f()).done;)for(var E,b=i.value,O=function(){var e=E.value,r=_()({},e,{sourceRun:function(){return""},targetRun:function(){return""}});if(Object.prototype.hasOwnProperty.call(r,"source"))if(r.source instanceof RegExp)r.sourceRun=function(){return r.source};else if("string"==typeof r.source){var t=(0,u.compile)(r.source,d);if(t.error)throw new Error(t.error);r.sourceRun=t.templateFunction}else r.sourceRun=r.source;if(Object.prototype.hasOwnProperty.call(r,"target"))if("string"==typeof r.target){var n=(0,u.compile)(r.target,d);if(n.error)throw new Error(n.error);r.targetRun=n.templateFunction}else r.targetRun=r.target;p[b].push(r)},h=l([].concat(c.headerTransformations[b]));!(E=h()).done;)O();c.headerTransformations=p;for(var v,P,m=[],g=[].concat(c.stateAPIs||[]),I=g.filter((function(e){return"base"===e.name}))[0],M=[],A=l(g);!(v=A()).done;)"base"!==(P=v.value).name&&M.push((0,u.extend)(!0,{},(0,u.modifyObject)((0,u.copy)(I),P),P));for(var D,y=0,T=M;y<T.length;y++){if("string"==typeof(D=T[y]).urlExpression){var w=(0,u.compile)(D.urlExpression,d);if(w.error)throw new Error(w.error);D.urlExpression=w.templateFunction}for(var k,R={pre:[],post:[]},U=l([].concat((null==(C=D.expressions)?void 0:C.pre)||[]));!(k=U()).done;){var C,x=k.value;if("string"==typeof x){var L=(0,u.compile)(x,d);if(L.error)throw new Error(L.error);R.pre.push(L.templateFunction)}else R.pre.push(x)}for(var q,B=l([].concat((null==(S=D.expressions)?void 0:S.post)||[]));!(q=B()).done;){var S,K=q.value;if("string"==typeof K){var W=(0,u.compile)(K,d);if(W.error)throw new Error(W.error);R.post.push(W.templateFunction)}else R.post.push(K)}D.expressions=R,m.push(D)}if(c.stateAPIs=m,"string"==typeof c.useExpression){var F=(0,u.compile)(c.useExpression,d);if(F.error)throw new Error(F.error);c.useExpression=F.templateFunction}r[a]=c}}return r},P=function(e){if(e.headers["content-type"]&&/application\/json(;.*)?$/.test(e.headers["content-type"]))try{var r=Buffer.concat(e.socket.buffer.data).toString();e.socket.buffer.body=r.replace(/^[\s\S]+\s*\n\s*\n\s*([\s\S]+)$/m,"$1"),e.socket.buffer.content=JSON.parse(e.socket.buffer.body)}catch(r){b.warn("Error parsing given request.",e)}},m=function(e,r,t){for(var n,_=!1,o=function(){var r=n.value;try{var o=r.sourceRun.apply(r,t),a=r.targetRun.apply(r,t);if([null,void 0].includes(o)||"string"==typeof o&&""===o.trim()){if([null,void 0].includes(a)||"string"==typeof a&&""===a.trim())return 1;e=e.replace(/(\s*\n)\s*\n\s*/,(function(e,r){for(var t=arguments.length,n=Array(2<t?t-2:0),_=2;_<t;_++)n[_-2]=arguments[_];var o="string"==typeof a?a:a.apply(void 0,[e,r].concat(n));return""+r+o+e}))}else _||(b.debug(),_=!0),b.debug('Search for "'+o+'" and replace with',(0,u.represent)(a)+"."),e=e.replace(o,a)}catch(e){b.warn("\nCould not apply header transformation with source "+(r.source?(0,u.represent)(r.source):'"add"')+" and replacement "+(r.target?(0,u.represent)(r.target):'"remove"')+":",e)}},a=l(r);!(n=a()).done;)o();return e};const g=function(){var e=a()(i().mark((function e(r,t,n,o){return i().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,a){var s=t.socket,i=n.tls?p.connect:c.createConnection,f=n.tls&&443!==n.port||!n.tls&&80!==n.port?":"+n.port:"",d=i(_()({host:n.host,port:n.port},n.tls?{servername:n.host,rejectUnauthorized:!1}:{}),(function(){b.info("\nConnection to: http"+(n.tls?"s":"")+"://"+n.host+f+" established.")}));d.on("error",(function(e){b.error("Proxy to server error",e),a(e)}));var E=[].concat(u.UTILITY_SCOPE_VALUES,[{clientSocket:s,serverSocket:d},null,r,t,null,o]);if(n.headerTransformations.retrieve.length){var O=!1;d.on("data",(function(r){if(O)s.write(r);else{var t=r.toString();b.info("\n <=== Got response header from backend:\n\n"+t),t=m(t,n.headerTransformations.retrieve,E),b.info("\n <<<< Send response header to client:\n\n"+t),s.write(t),O=!0,e()}}))}else d.pipe(s);d.on("connect",(function(){for(var e,t,_=!1,o=l(r.socket.buffer.data);!(e=o()).done;)if(t=e.value,_)d.write(t);else{var a=t.toString();b.debug("\n ===> Got request header from client:\n\n"+a),n.tls&&(a=a.replace(/HTTP\/1\.0/i,"HTTP/1.1")),a=a.replace(/(($|\n)host: )[^\n]+/i,"$1"+n.host+f),a=m(a,n.headerTransformations.send,E),b.debug("\n >>>> Send request header to backend:\n\n"+a),d.write(a),_=!0}}))})));case 1:case"end":return e.stop()}}),e)})));return function(r,t,n,_){return e.apply(this,arguments)}}()},e=>{e.exports=require("@babel/runtime/helpers/extends")},e=>{e.exports=require("@babel/runtime/helpers/asyncToGenerator")},e=>{e.exports=require("@babel/runtime/regenerator")},e=>{e.exports=require("clientnode")},(module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{default:()=>__WEBPACK_DEFAULT_EXPORT__});var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(1),_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__),_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(2),_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__),_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(3),_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2___default=__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2__),clientnode__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(4),clientnode__WEBPACK_IMPORTED_MODULE_3___default=__webpack_require__.n(clientnode__WEBPACK_IMPORTED_MODULE_3__),http__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(6),http__WEBPACK_IMPORTED_MODULE_4___default=__webpack_require__.n(http__WEBPACK_IMPORTED_MODULE_4__),http2__WEBPACK_IMPORTED_MODULE_5__=__webpack_require__(7),http2__WEBPACK_IMPORTED_MODULE_5___default=__webpack_require__.n(http2__WEBPACK_IMPORTED_MODULE_5__),path__WEBPACK_IMPORTED_MODULE_6__=__webpack_require__(8),path__WEBPACK_IMPORTED_MODULE_6___default=__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_6__),_helper__WEBPACK_IMPORTED_MODULE_7__=__webpack_require__(0),_package_json__WEBPACK_IMPORTED_MODULE_8__=__webpack_require__(9);function _createForOfIteratorHelperLoose(e,r){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(t)return(t=t.call(e)).next.bind(t);if(Array.isArray(e)||(t=_unsupportedIterableToArray(e))||r&&e&&"number"==typeof e.length){t&&(e=t);var n=0;return function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,r){if(e){if("string"==typeof e)return _arrayLikeToArray(e,r);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(e,r):void 0}}function _arrayLikeToArray(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=Array(r);t<r;t++)n[t]=e[t];return n}module=__webpack_require__.hmd(module);for(var _step,onIncomingMessage=function(e,r){var t=e;_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default()(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2___default().mark((function e(){var n,_,o,a;return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2___default().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:_helper__WEBPACK_IMPORTED_MODULE_7__.logging.info("|"+"-".repeat(78)+"|\nStart processing",t.method+" request: "+t.url+"\n"+t);case 1:return e.next=4,(0,clientnode__WEBPACK_IMPORTED_MODULE_3__.timeout)();case 4:if(!t.socket.buffer.finished){e.next=6;break}return e.abrupt("break",8);case 6:e.next=1;break;case 8:if(CONFIGURATION.parseBody&&(0,_helper__WEBPACK_IMPORTED_MODULE_7__.addParsedContentToRequest)(t),null!==(n=(0,_helper__WEBPACK_IMPORTED_MODULE_7__.determineForwarder)(t,r,FORWARDERS))){e.next=15;break}return _helper__WEBPACK_IMPORTED_MODULE_7__.logging.error("No forwarder found for given request:",t),r.statusCode=502,r.end(),e.abrupt("return");case 15:return e.prev=15,e.next=18,(0,_helper__WEBPACK_IMPORTED_MODULE_7__.applyStateAPIs)(t,r,n);case 18:if(_=e.sent,o=_.result,a=_.scope,!o){e.next=24;break}return e.next=24,(0,_helper__WEBPACK_IMPORTED_MODULE_7__.default)(t,r,n,a);case 24:e.next=29;break;case 26:e.prev=26,e.t0=e.catch(15),_helper__WEBPACK_IMPORTED_MODULE_7__.logging.error(e.t0);case 29:_helper__WEBPACK_IMPORTED_MODULE_7__.logging.info("\nEnd processing",t.method+" request: "+t.url+"\n"+t+"|"+"-".repeat(78)+"|");case 30:case"end":return e.stop()}}),e,null,[[15,26]])})))()},onIncomingStream=function(e,r){_helper__WEBPACK_IMPORTED_MODULE_7__.logging.info("Got stream",e,r)},BASE_CONFIGURATION=_package_json__WEBPACK_IMPORTED_MODULE_8__.HF,_iterator=_createForOfIteratorHelperLoose(["configuration.json","secure-configuration.json"]);!(_step=_iterator()).done;){var path=_step.value,configurationPath=(0,path__WEBPACK_IMPORTED_MODULE_6__.resolve)(process.cwd(),path);if((0,clientnode__WEBPACK_IMPORTED_MODULE_3__.isFileSync)(configurationPath)){var configuration=eval("require('"+configurationPath+"')");(0,clientnode__WEBPACK_IMPORTED_MODULE_3__.extend)(!0,(0,clientnode__WEBPACK_IMPORTED_MODULE_3__.modifyObject)(BASE_CONFIGURATION,configuration),configuration)}}var CONFIGURATION=(0,clientnode__WEBPACK_IMPORTED_MODULE_3__.evaluateDynamicData)(BASE_CONFIGURATION,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({},clientnode__WEBPACK_IMPORTED_MODULE_3__.UTILITY_SCOPE,{configuration:BASE_CONFIGURATION,environment:process.env})),FORWARDERS=(0,_helper__WEBPACK_IMPORTED_MODULE_7__.resolveForwarders)(CONFIGURATION.forwarders),server={instance:CONFIGURATION.publicKeyPath&&CONFIGURATION.privateKeyPath?(0,http2__WEBPACK_IMPORTED_MODULE_5__.createSecureServer)(CONFIGURATION.nodeServerOptions,onIncomingMessage):(0,http__WEBPACK_IMPORTED_MODULE_4__.createServer)(onIncomingMessage),streams:[],sockets:[],start:function(){server.instance.listen(CONFIGURATION.port,(function(){_helper__WEBPACK_IMPORTED_MODULE_7__.logging.info("Listen on port "+CONFIGURATION.port+" for incoming requests.")}))},stop:function(){server.instance.close((function(){_helper__WEBPACK_IMPORTED_MODULE_7__.logging.info("Shut server down.")}));for(var e,r=0,t=[server.sockets,server.streams];r<t.length;r++)if(e=t[r],Array.isArray(e))for(var n,_=_createForOfIteratorHelperLoose(e);!(n=_()).done;)n.value.destroy()}};if(server.instance.on("connection",(function(e){server.sockets.push(e),e.buffer={data:[],finished:!1},e.on("data",(function(r){e.buffer.data.push(r)}));for(var r,t=0,n=["done","finish","writableEnded","writableFinished"];t<n.length;t++)r=n[t],e.on(r,(function(){e.buffer.finished=!0}));(0,clientnode__WEBPACK_IMPORTED_MODULE_3__.timeout)((function(){e.buffer.finished=!0})),e.on("close",(function(){e.buffer.finished=!0,server.sockets.splice(server.sockets.indexOf(e),1)}))})),server.instance.on("stream",(function(e,r){server.streams.push(e),onIncomingStream(e,r),e.on("close",(function(){server.streams.splice(server.streams.indexOf(e),1)}))})),__webpack_require__.c[__webpack_require__.s]===module||eval("require.main")!==__webpack_require__.c[__webpack_require__.s]&&void 0!==ORIGINAL_MAIN_MODULE&&ORIGINAL_MAIN_MODULE===eval("require.main")){_helper__WEBPACK_IMPORTED_MODULE_7__.logging.info("Start server with configuration:",(0,clientnode__WEBPACK_IMPORTED_MODULE_3__.represent)(CONFIGURATION)),_helper__WEBPACK_IMPORTED_MODULE_7__.logging.debug("Apply resolved forwarder:",(0,clientnode__WEBPACK_IMPORTED_MODULE_3__.represent)(FORWARDERS)),server.start();for(var _step3,_loop=function(){var e=_step3.value;process.on(e,(function(){_helper__WEBPACK_IMPORTED_MODULE_7__.logging.info('\nGot "'+e+'" signal: stopping server.'),server.stop()}))},_iterator3=_createForOfIteratorHelperLoose(clientnode__WEBPACK_IMPORTED_MODULE_3__.CLOSE_EVENT_NAMES);!(_step3=_iterator3()).done;)_loop()}const __WEBPACK_DEFAULT_EXPORT__=server},e=>{e.exports=require("http")},e=>{e.exports=require("http2")},e=>{e.exports=require("path")},e=>{e.exports=JSON.parse('{"HF":{"publicKeyPath":"","privateKeyPath":"","nodeServerOptions":{"allowHTTP1":true},"host":"localhost","port":8080,"parseBody":false,"forwarders":{"base":{"headerTransformations":{"retrieve":[],"send":[]},"host":"localhost","port":443,"stateAPIs":[{"data":{},"expressions":{"pre":"false","post":"true"},"name":"base","options":{},"url":""}],"tls":true,"useExpression":"true"}}}}')}],__webpack_module_cache__={};function __webpack_require__(e){var r=__webpack_module_cache__[e];if(void 0!==r)return r.exports;var t=__webpack_module_cache__[e]={id:e,loaded:!1,exports:{}};return __webpack_modules__[e](t,t.exports,__webpack_require__),t.loaded=!0,t.exports}__webpack_require__.c=__webpack_module_cache__,__webpack_require__.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(r,{a:r}),r},__webpack_require__.d=(e,r)=>{for(var t in r)__webpack_require__.o(r,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},__webpack_require__.hmd=e=>((e=Object.create(e)).children||(e.children=[]),Object.defineProperty(e,"exports",{enumerable:!0,set:()=>{throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+e.id)}}),e),__webpack_require__.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__=__webpack_require__(__webpack_require__.s=5);module.exports=__webpack_exports__})();
2
+ "use strict";if("undefined"!=typeof module&&null!==module&&"undefined"!==eval("typeof require")&&null!==eval("require")&&"main"in eval("require")&&"undefined"!==eval("typeof require.main")&&null!==eval("require.main")){var ORIGINAL_MAIN_MODULE=module;module!==eval("require.main")&&"paths"in module&&"paths"in eval("require.main")&&"undefined"!=typeof __dirname&&null!==__dirname&&(module.paths=eval("require.main.paths").concat(module.paths.filter((function(path){return eval("require.main.paths").includes(path)}))))}module===eval("require.main")&&module.paths.unshift("/application/node_modules"),(()=>{var __webpack_modules__=[(e,r,t)=>{t.d(r,{addParsedContentToRequest:()=>P,applyStateAPIs:()=>O,default:()=>g,determineForwarder:()=>h,logging:()=>b,resolveForwarders:()=>v});var n=t(1),_=t.n(n),o=t(2),a=t.n(o),s=t(3),i=t.n(s),u=t(4);const c=require("net"),p=require("tls");function l(e,r){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(t)return(t=t.call(e)).next.bind(t);if(Array.isArray(e)||(t=function(e,r){if(e){if("string"==typeof e)return f(e,r);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?f(e,r):void 0}}(e))||r&&e&&"number"==typeof e.length){t&&(e=t);var n=0;return function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function f(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=Array(r);t<r;t++)n[t]=e[t];return n}var d=[].concat(u.UTILITY_SCOPE_NAMES,["data","error","request","response","stateAPI","stateAPIs"]),E=function(){var e=a()(i().mark((function e(){var r,t,n,_=arguments;return i().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(r=_.length,t=Array(r),n=0;n<r;n++)t[n]=_[n];return e.abrupt("return",new Promise((function(e,r){process.stdout.write(t.join(" ")+"\n",(function(t){return t?r(t):e()}))})));case 2:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),b={log:E,debug:E,info:E,error:E,warn:E},O=function(){var e=a()(i().mark((function e(r,t,n){var _,o,a,s,c,p,f,d,E,O,h,v,P,m,g,M;return i().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:_={},a=l(n.stateAPIs);case 2:if((s=a()).done){e.next=73;break}c=s.value,o=_[c.name]={configuration:c,error:null,response:null},p=!1,f=1,d=l(c.expressions.pre);case 8:if((E=d()).done){e.next=28;break}O=E.value,h=void 0;try{h=O.apply(void 0,u.UTILITY_SCOPE_VALUES.concat([c.data,null,r,t,o,_]))}catch(e){b.warn("Failed running pre "+f+". expression of state api:",e)}if("number"!=typeof h){e.next=17;break}return b.info("Break request caused by state api",'"'+c.name+'" with status code '+h+"."),t.statusCode=h,t.end(),e.abrupt("return",{result:!1,scope:_});case 17:if("break"!==h){e.next=19;break}return e.abrupt("break",28);case 19:if(f+=1,"boolean"!=typeof h){e.next=26;break}if(!h){e.next=25;break}p=!0,e.next=26;break;case 25:return e.abrupt("break",28);case 26:e.next=8;break;case 28:if(!p){e.next=71;break}if(b.info('Use state api: "'+c.name+'"'),v=null,c.urlExpression)try{c.url=c.urlExpression.apply(c,u.UTILITY_SCOPE_VALUES.concat([c.data,null,r,t,o,_]))}catch(e){b.warn("Failed running url expression:",e)}return b.debug("\nState api configuration is: "+(0,u.represent)(c)),e.prev=33,e.next=36,fetch(c.url,c.options);case 36:o.response=e.sent,e.next=43;break;case 39:e.prev=39,e.t0=e.catch(33),v=e.t0,b.warn('Running state api request for "'+c.name+'" throws',"error:",v);case 43:if(!(o.response&&o.response.headers.has("content-type")&&/application\/json(;.*)?$/.test(o.response.headers.get("content-type")))){e.next=54;break}return e.prev=44,e.next=47,o.response.json();case 47:o.response.data=e.sent,e.next=54;break;case 50:e.prev=50,e.t1=e.catch(44),v=e.t1,b.warn("Parsing state api json response for",'"'+c.name+'" throws error:',v);case 54:b.debug("\nState api response is:",(0,u.represent)(o.response)),f=1,P=l(c.expressions.post);case 57:if((m=P()).done){e.next=71;break}g=m.value,M=null;try{M=g.apply(void 0,u.UTILITY_SCOPE_VALUES.concat([c.data,v,r,t,o,_]))}catch(e){b.warn("Failed running "+f+". post expression of state api:",e)}if("number"!=typeof M){e.next=66;break}return b.info("Break request caused by state api",'"'+c.name+'" with status code '+M+"."),t.statusCode=M,t.end(),e.abrupt("return",{result:!1,scope:_});case 66:if("break"!==M){e.next=68;break}return e.abrupt("break",71);case 68:f+=1;case 69:e.next=57;break;case 71:e.next=2;break;case 73:return e.abrupt("return",{result:!0,scope:_});case 74:case"end":return e.stop()}}),e,null,[[33,39],[44,50]])})));return function(){return e.apply(this,arguments)}}(),h=function(e,r,t){for(var n,_=l(Object.entries(t).sort((function(e,r){var t=e[0],n=r[0];return t.localeCompare(n)})));!(n=_()).done;){var o,a=n.value,s=a[0],i=a[1],c={configuration:i,error:null,response:null};if(i.useExpression.apply(i,u.UTILITY_SCOPE_VALUES.concat([i,null,e,r,c,(o={},o[s]=c,o)])))return b.info('Determined forwarder is: "'+s+'".'),i}return null},v=function(e){for(var r={},t=0,n=Object.entries(e);t<n.length;t++){var o=n[t],a=o[0],s=o[1];if("base"!==a){for(var i,c=(0,u.extend)(!0,{name:a},(0,u.modifyObject)((0,u.copy)(e.base),s),s),p={retrieve:[],send:[]},f=l(["retrieve","send"]);!(i=f()).done;)for(var E,b=i.value,O=function(){var e=E.value,r=_()({},e,{sourceRun:function(){return""},targetRun:function(){return""}});if(Object.prototype.hasOwnProperty.call(r,"source"))if(r.source instanceof RegExp)r.sourceRun=function(){return r.source};else if("string"==typeof r.source){var t=(0,u.compile)(r.source,d);if(t.error)throw new Error(t.error);r.sourceRun=t.templateFunction}else r.sourceRun=r.source;if(Object.prototype.hasOwnProperty.call(r,"target"))if("string"==typeof r.target){var n=(0,u.compile)(r.target,d);if(n.error)throw new Error(n.error);r.targetRun=n.templateFunction}else r.targetRun=r.target;p[b].push(r)},h=l([].concat(c.headerTransformations[b]));!(E=h()).done;)O();c.headerTransformations=p;for(var v,P,m=[],g=[].concat(c.stateAPIs||[]),M=g.filter((function(e){return"base"===e.name}))[0],I=[],A=l(g);!(v=A()).done;)"base"!==(P=v.value).name&&I.push((0,u.extend)(!0,{},(0,u.modifyObject)((0,u.copy)(M),P),P));for(var D,T=0,y=I;T<y.length;T++){if("string"==typeof(D=y[T]).urlExpression){var w=(0,u.compile)(D.urlExpression,d);if(w.error)throw new Error(w.error);D.urlExpression=w.templateFunction}for(var k,R={pre:[],post:[]},U=l([].concat((null==(C=D.expressions)?void 0:C.pre)||[]));!(k=U()).done;){var C,x=k.value;if("string"==typeof x){var L=(0,u.compile)(x,d);if(L.error)throw new Error(L.error);R.pre.push(L.templateFunction)}else R.pre.push(x)}for(var q,B=l([].concat((null==(S=D.expressions)?void 0:S.post)||[]));!(q=B()).done;){var S,K=q.value;if("string"==typeof K){var W=(0,u.compile)(K,d);if(W.error)throw new Error(W.error);R.post.push(W.templateFunction)}else R.post.push(K)}D.expressions=R,m.push(D)}if(c.stateAPIs=m,"string"==typeof c.useExpression){var F=(0,u.compile)(c.useExpression,d);if(F.error)throw new Error(F.error);c.useExpression=F.templateFunction}r[a]=c}}return r},P=function(e){if(e.headers["content-type"]&&/application\/json(;.*)?$/.test(e.headers["content-type"]))try{var r=Buffer.concat(e.socket.buffer.data).toString();e.socket.buffer.body=r.replace(/^[\s\S]+\s*\n\s*\n\s*([\s\S]+)$/m,"$1"),e.socket.buffer.content=JSON.parse(e.socket.buffer.body)}catch(r){b.warn("Error parsing given request.",e)}},m=function(e,r,t){for(var n,_=!1,o=function(){var r=n.value;try{var o=r.sourceRun.apply(r,t),a=r.targetRun.apply(r,t);if([null,void 0].includes(o)||"string"==typeof o&&""===o.trim()){if([null,void 0].includes(a)||"string"==typeof a&&""===a.trim())return 1;e=e.replace(/(\s*\n)\s*\n\s*/,(function(e,r){for(var t=arguments.length,n=Array(2<t?t-2:0),_=2;_<t;_++)n[_-2]=arguments[_];var o="string"==typeof a?a:a.apply(void 0,[e,r].concat(n));return""+r+o+e}))}else _||(b.debug(),_=!0),b.debug('Search for "'+o+'" and replace with',(0,u.represent)(a)+"."),e=e.replace(o,a)}catch(e){b.warn("\nCould not apply header transformation with source "+(r.source?(0,u.represent)(r.source):'"add"')+" and replacement "+(r.target?(0,u.represent)(r.target):'"remove"')+":",e)}},a=l(r);!(n=a()).done;)o();return e};const g=function(){var e=a()(i().mark((function e(r,t,n,o){return i().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,a){var s=t.socket,i=n.tls?p.connect:c.createConnection,f=n.tls&&443!==n.port||!n.tls&&80!==n.port?":"+n.port:"",d=i(_()({host:n.host,port:n.port},n.tls?{servername:n.host,rejectUnauthorized:!1}:{}),(function(){b.info("\nConnection to: http"+(n.tls?"s":"")+"://"+n.host+f+" established.")}));d.on("error",(function(e){b.error("Proxy to server error",e),a(e)}));var E=[].concat(u.UTILITY_SCOPE_VALUES,[{clientSocket:s,serverSocket:d},null,r,t,null,o]);if(n.headerTransformations.retrieve.length){var O=!1;d.on("data",(function(r){if(O)s.write(r);else{var t=r.toString();b.info("\n <=== Got response header from backend:\n\n"+t),t=m(t,n.headerTransformations.retrieve,E),b.info("\n <<<< Send response header to client:\n\n"+t),s.write(t),O=!0,e()}}))}else d.pipe(s);d.on("connect",(function(){for(var e,t,_=!1,o=l(r.socket.buffer.data);!(e=o()).done;)if(t=e.value,_)d.write(t);else{var a=t.toString();b.debug("\n ===> Got request header from client:\n\n"+a),n.tls&&(a=a.replace(/HTTP\/1\.0/i,"HTTP/1.1")),a=a.replace(/(($|\n)host: )[^\n]+/i,"$1"+n.host+f),a=m(a,n.headerTransformations.send,E),b.debug("\n >>>> Send request header to backend:\n\n"+a),d.write(a),_=!0}}))})));case 1:case"end":return e.stop()}}),e)})));return function(r,t,n,_){return e.apply(this,arguments)}}()},e=>{e.exports=require("@babel/runtime/helpers/extends")},e=>{e.exports=require("@babel/runtime/helpers/asyncToGenerator")},e=>{e.exports=require("@babel/runtime/regenerator")},e=>{e.exports=require("clientnode")},(module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{default:()=>__WEBPACK_DEFAULT_EXPORT__});var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(1),_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__),_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(2),_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__),_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(3),_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2___default=__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2__),clientnode__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(4),clientnode__WEBPACK_IMPORTED_MODULE_3___default=__webpack_require__.n(clientnode__WEBPACK_IMPORTED_MODULE_3__),http__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(6),http__WEBPACK_IMPORTED_MODULE_4___default=__webpack_require__.n(http__WEBPACK_IMPORTED_MODULE_4__),http2__WEBPACK_IMPORTED_MODULE_5__=__webpack_require__(7),http2__WEBPACK_IMPORTED_MODULE_5___default=__webpack_require__.n(http2__WEBPACK_IMPORTED_MODULE_5__),path__WEBPACK_IMPORTED_MODULE_6__=__webpack_require__(8),path__WEBPACK_IMPORTED_MODULE_6___default=__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_6__),_helper__WEBPACK_IMPORTED_MODULE_7__=__webpack_require__(0),_package_json__WEBPACK_IMPORTED_MODULE_8__=__webpack_require__(9);function _createForOfIteratorHelperLoose(e,r){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(t)return(t=t.call(e)).next.bind(t);if(Array.isArray(e)||(t=_unsupportedIterableToArray(e))||r&&e&&"number"==typeof e.length){t&&(e=t);var n=0;return function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,r){if(e){if("string"==typeof e)return _arrayLikeToArray(e,r);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(e,r):void 0}}function _arrayLikeToArray(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=Array(r);t<r;t++)n[t]=e[t];return n}module=__webpack_require__.hmd(module);for(var _step,onIncomingMessage=function(e,r){var t=e;_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default()(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2___default().mark((function e(){var n,_,o,a,s;return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2___default().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:_helper__WEBPACK_IMPORTED_MODULE_7__.logging.info("|"+"-".repeat(78)+"|\nStart processing",t.method+" request: "+t.url+"\n"+t),n=0;case 2:if(!(n<1e3*clientnode__WEBPACK_IMPORTED_MODULE_3__.MAXIMAL_NUMBER_OF_ITERATIONS.value)){e.next=10;break}return e.next=5,(0,clientnode__WEBPACK_IMPORTED_MODULE_3__.timeout)();case 5:if(!t.socket.buffer.finished){e.next=7;break}return e.abrupt("break",10);case 7:n++,e.next=2;break;case 10:if(CONFIGURATION.parseBody&&(0,_helper__WEBPACK_IMPORTED_MODULE_7__.addParsedContentToRequest)(t),null!==(_=(0,_helper__WEBPACK_IMPORTED_MODULE_7__.determineForwarder)(t,r,FORWARDERS))){e.next=17;break}return _helper__WEBPACK_IMPORTED_MODULE_7__.logging.error("No forwarder found for given request:",t),r.statusCode=502,r.end(),e.abrupt("return");case 17:return e.prev=17,e.next=20,(0,_helper__WEBPACK_IMPORTED_MODULE_7__.applyStateAPIs)(t,r,_);case 20:if(o=e.sent,a=o.result,s=o.scope,!a){e.next=26;break}return e.next=26,(0,_helper__WEBPACK_IMPORTED_MODULE_7__.default)(t,r,_,s);case 26:e.next=31;break;case 28:e.prev=28,e.t0=e.catch(17),_helper__WEBPACK_IMPORTED_MODULE_7__.logging.error(e.t0);case 31:_helper__WEBPACK_IMPORTED_MODULE_7__.logging.info("\nEnd processing",t.method+" request: "+t.url+"\n"+t+"|"+"-".repeat(78)+"|");case 32:case"end":return e.stop()}}),e,null,[[17,28]])})))()},onIncomingStream=function(e,r){_helper__WEBPACK_IMPORTED_MODULE_7__.logging.info("Got stream",e,r)},BASE_CONFIGURATION=_package_json__WEBPACK_IMPORTED_MODULE_8__.HF,_iterator=_createForOfIteratorHelperLoose(["configuration.json","secure-configuration.json"]);!(_step=_iterator()).done;){var path=_step.value,configurationPath=(0,path__WEBPACK_IMPORTED_MODULE_6__.resolve)(process.cwd(),path);if((0,clientnode__WEBPACK_IMPORTED_MODULE_3__.isFileSync)(configurationPath)){var configuration=eval("require('"+configurationPath+"')");(0,clientnode__WEBPACK_IMPORTED_MODULE_3__.extend)(!0,(0,clientnode__WEBPACK_IMPORTED_MODULE_3__.modifyObject)(BASE_CONFIGURATION,configuration),configuration)}}var CONFIGURATION=(0,clientnode__WEBPACK_IMPORTED_MODULE_3__.evaluateDynamicData)(BASE_CONFIGURATION,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({},clientnode__WEBPACK_IMPORTED_MODULE_3__.UTILITY_SCOPE,{configuration:BASE_CONFIGURATION,environment:process.env})),FORWARDERS=(0,_helper__WEBPACK_IMPORTED_MODULE_7__.resolveForwarders)(CONFIGURATION.forwarders),server={instance:CONFIGURATION.publicKeyPath&&CONFIGURATION.privateKeyPath?(0,http2__WEBPACK_IMPORTED_MODULE_5__.createSecureServer)(CONFIGURATION.nodeServerOptions,onIncomingMessage):(0,http__WEBPACK_IMPORTED_MODULE_4__.createServer)(onIncomingMessage),streams:[],sockets:[],start:function(){server.instance.listen(CONFIGURATION.port,(function(){_helper__WEBPACK_IMPORTED_MODULE_7__.logging.info("Listen on port "+CONFIGURATION.port+" for incoming requests.")}))},stop:function(){server.instance.close((function(){_helper__WEBPACK_IMPORTED_MODULE_7__.logging.info("Shut server down.")}));for(var e,r=0,t=[server.sockets,server.streams];r<t.length;r++)if(e=t[r],Array.isArray(e))for(var n,_=_createForOfIteratorHelperLoose(e);!(n=_()).done;)n.value.destroy()}};if(server.instance.on("connection",(function(e){server.sockets.push(e),e.buffer={data:[],finished:!1},e.on("data",(function(r){e.buffer.data.push(r)}));for(var r,t=0,n=["done","finish","writableEnded","writableFinished"];t<n.length;t++)r=n[t],e.on(r,(function(){e.buffer.finished=!0}));(0,clientnode__WEBPACK_IMPORTED_MODULE_3__.timeout)((function(){e.buffer.finished=!0})),e.on("close",(function(){e.buffer.finished=!0,server.sockets.splice(server.sockets.indexOf(e),1)}))})),server.instance.on("stream",(function(e,r){server.streams.push(e),onIncomingStream(e,r),e.on("close",(function(){server.streams.splice(server.streams.indexOf(e),1)}))})),__webpack_require__.c[__webpack_require__.s]===module||eval("require.main")!==__webpack_require__.c[__webpack_require__.s]&&void 0!==ORIGINAL_MAIN_MODULE&&ORIGINAL_MAIN_MODULE===eval("require.main")){_helper__WEBPACK_IMPORTED_MODULE_7__.logging.info("Start server with configuration:",(0,clientnode__WEBPACK_IMPORTED_MODULE_3__.represent)(CONFIGURATION)),_helper__WEBPACK_IMPORTED_MODULE_7__.logging.debug("Apply resolved forwarder:",(0,clientnode__WEBPACK_IMPORTED_MODULE_3__.represent)(FORWARDERS)),server.start();for(var _step3,_loop=function(){var e=_step3.value;process.on(e,(function(){_helper__WEBPACK_IMPORTED_MODULE_7__.logging.info('\nGot "'+e+'" signal: stopping server.'),server.stop()}))},_iterator3=_createForOfIteratorHelperLoose(clientnode__WEBPACK_IMPORTED_MODULE_3__.CLOSE_EVENT_NAMES);!(_step3=_iterator3()).done;)_loop()}const __WEBPACK_DEFAULT_EXPORT__=server},e=>{e.exports=require("http")},e=>{e.exports=require("http2")},e=>{e.exports=require("path")},e=>{e.exports=JSON.parse('{"HF":{"publicKeyPath":"","privateKeyPath":"","nodeServerOptions":{"allowHTTP1":true},"host":"localhost","port":8080,"parseBody":false,"forwarders":{"base":{"headerTransformations":{"retrieve":[],"send":[]},"host":"localhost","port":443,"stateAPIs":[{"data":{},"expressions":{"pre":"false","post":"true"},"name":"base","options":{},"url":""}],"tls":true,"useExpression":"true"}}}}')}],__webpack_module_cache__={};function __webpack_require__(e){var r=__webpack_module_cache__[e];if(void 0!==r)return r.exports;var t=__webpack_module_cache__[e]={id:e,loaded:!1,exports:{}};return __webpack_modules__[e](t,t.exports,__webpack_require__),t.loaded=!0,t.exports}__webpack_require__.c=__webpack_module_cache__,__webpack_require__.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(r,{a:r}),r},__webpack_require__.d=(e,r)=>{for(var t in r)__webpack_require__.o(r,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},__webpack_require__.hmd=e=>((e=Object.create(e)).children||(e.children=[]),Object.defineProperty(e,"exports",{enumerable:!0,set:()=>{throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+e.id)}}),e),__webpack_require__.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__=__webpack_require__(__webpack_require__.s=5);module.exports=__webpack_exports__})();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "reverse-proxy-middleware",
3
- "version": "0.0.86",
3
+ "version": "0.0.87",
4
4
  "description": "A reverse proxy blocking bot requests.",
5
5
  "keywords": [
6
6
  "api",
@@ -60,22 +60,23 @@
60
60
  "runkitExample": "require('@babel/runtime/package.json')\n",
61
61
  "devDependencies": {
62
62
  "@babel/cli": "^7.24.8",
63
- "@babel/eslint-parser": "^7.24.8",
64
- "@types/node": "^20.14.10",
65
- "@typescript-eslint/eslint-plugin": "^7.16.0",
66
- "@typescript-eslint/parser": "^7.16.0",
67
- "documentation-website": "^1.0.328",
68
- "eslint": "^9.6.0",
63
+ "@babel/eslint-parser": "^7.25.1",
64
+ "@stylistic/eslint-plugin": "^2.6.4",
65
+ "@types/node": "^22.4.1",
66
+ "@typescript-eslint/eslint-plugin": "^8.2.0",
67
+ "@typescript-eslint/parser": "^8.2.0",
68
+ "documentation-website": "^1.0.330",
69
+ "eslint": "^9.9.0",
69
70
  "eslint-config-google": "^0.14.0",
70
- "eslint-plugin-jsdoc": "^48.7.0",
71
+ "eslint-plugin-jsdoc": "^50.2.2",
71
72
  "jest": "^29.7.0",
72
73
  "jsdoc": "^4.0.3",
73
- "typescript-eslint": "^7.16.0",
74
- "weboptimizer": "^2.0.1483"
74
+ "typescript-eslint": "^8.2.0",
75
+ "weboptimizer": "^2.0.1495"
75
76
  },
76
77
  "dependencies": {
77
- "@babel/runtime": "^7.24.8",
78
- "clientnode": "^3.0.1163"
78
+ "@babel/runtime": "^7.25.0",
79
+ "clientnode": "^3.0.1172"
79
80
  },
80
81
  "engines": {
81
82
  "node": ">=20",
package/readme.md CHANGED
@@ -431,8 +431,3 @@ Every expression can access the following environment:
431
431
  | response | Response informations (available in post evaluations). |
432
432
  | stateAPIs | Access oher state api informations. |
433
433
  | Tools | [see](https://www.npmjs.com/package/clientnode) |
434
-
435
- <!-- region modline
436
- vim: set tabstop=4 shiftwidth=4 expandtab:
437
- vim: foldmethod=marker foldmarker=region,endregion:
438
- endregion -->