badmfck-api-server 3.9.86 → 3.9.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.
- package/package.json +1 -1
- package/dist/apiServer/APIService.js.map +0 -1
- package/dist/apiServer/BaseEndpoint.js.map +0 -1
- package/dist/apiServer/BaseService.js.map +0 -1
- package/dist/apiServer/ClusterService.d.ts +0 -30
- package/dist/apiServer/ClusterService.js +0 -81
- package/dist/apiServer/ClusterService.js.map +0 -1
- package/dist/apiServer/DocumentService.js.map +0 -1
- package/dist/apiServer/HUBService.d.ts +0 -37
- package/dist/apiServer/HUBService.js +0 -132
- package/dist/apiServer/HUBService.js.map +0 -1
- package/dist/apiServer/LocalRequest.js.map +0 -1
- package/dist/apiServer/LogService.js.map +0 -1
- package/dist/apiServer/MysqlService.js.map +0 -1
- package/dist/apiServer/WSAPITransport.js.map +0 -1
- package/dist/apiServer/WebSocketHandler.js.map +0 -1
- package/dist/apiServer/Websocket.d.ts +0 -8
- package/dist/apiServer/Websocket.js +0 -15
- package/dist/apiServer/WebsocketService.d.ts +0 -8
- package/dist/apiServer/WebsocketService.js +0 -18
- package/dist/apiServer/WebsocketService.js.map +0 -1
- package/dist/apiServer/cluster/HUBConnection.d.ts +0 -39
- package/dist/apiServer/cluster/HUBConnection.js +0 -251
- package/dist/apiServer/cluster/HUBConnection.js.map +0 -1
- package/dist/apiServer/cluster/HUBHandlres.d.ts +0 -0
- package/dist/apiServer/cluster/HUBHandlres.js +0 -2
- package/dist/apiServer/cluster/HUBHandlres.js.map +0 -1
- package/dist/apiServer/deployment/Deployment.js.map +0 -1
- package/dist/apiServer/helper/DataProvider.js.map +0 -1
- package/dist/apiServer/helper/Sleep.js.map +0 -1
- package/dist/apiServer/helper/UID.js.map +0 -1
- package/dist/apiServer/helper/Validator.js.map +0 -1
- package/dist/apiServer/monitor/Monitor.js.map +0 -1
- package/dist/apiServer/routes/Liveness.js.map +0 -1
- package/dist/apiServer/routes/Monitor.d.ts +0 -9
- package/dist/apiServer/routes/Monitor.js +0 -77
- package/dist/apiServer/routes/Readiness.js.map +0 -1
- package/dist/apiServer/structures/DefaultErrors.js.map +0 -1
- package/dist/apiServer/structures/HTTPStatus.js.map +0 -1
- package/dist/apiServer/structures/Interfaces.js.map +0 -1
- /package/dist/apiServer/helper/{zipUtils.d.ts → ZipUtils.d.ts} +0 -0
- /package/dist/apiServer/helper/{zipUtils.js → ZipUtils.js} +0 -0
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"Sleep.js","sourceRoot":"","sources":["../../../src/apiServer/helper/Sleep.ts"],"names":[],"mappings":";;;AAAO,MAAM,KAAK,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAAxE,QAAA,KAAK,SAAmE","sourcesContent":["export const Sleep = (ms: number) => new Promise(resolve => setTimeout(resolve, ms));"]}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"UID.js","sourceRoot":"","sources":["../../../src/apiServer/helper/UID.ts"],"names":[],"mappings":"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","sourcesContent":["import crypto from \"crypto\"\nexport class UID{\n private static readonly epoch = 1697037922668;\n private static nextUniqueID=1;\n private static nextUniqueTRXID=1;\n static generate():string{\n let uid = Buffer.from(\n parseInt(\n ((+new Date())-this.epoch)\n +\"\"\n +Math.round(Math.random()*1000)\n ).toString(16),'hex').toString('base64');\n\n uid=uid.replaceAll(\"=\",\"\")\n uid=uid.replaceAll(\"+\",\".\")\n uid=uid.replaceAll(\"/\",\"_\")\n \n return uid;\n }\n\n static generateRandomNumberBase(count:number):string{\n let base=\"\";\n for(let i=0;i<count;i++)\n base+=Math.round(Math.random()*9);\n return base;\n }\n\n static generateNumberic(year?:string):number{\n if(!year)\n year = new Date().getFullYear()+\"\";\n const nextID=UID.nextUniqueID++;\n if(UID.nextUniqueID>99)\n UID.nextUniqueID = 1\n return parseInt(year.substring(2)+\"\"+(+new Date() - this.epoch)+\"\"+(nextID+\"\").padStart(2,\"0\"));\n }\n\n static getNextDescendingIndex():number{\n return Number.MAX_SAFE_INTEGER - (+new Date());\n }\n\n static getNext():string{\n const nextID=UID.nextUniqueID++;\n if(UID.nextUniqueID>99)\n UID.nextUniqueID = 1\n return this.leadZero(nextID)\n }\n \n static getNextTRX():string{\n const nextID=UID.nextUniqueTRXID++;\n if(UID.nextUniqueTRXID>99)\n UID.nextUniqueTRXID = 1\n return this.leadZero(nextID)\n }\n\n \n\n static generateTrxUID(date?:Date){\n \n if(!date)\n date=new Date();\n\n const year = (new Date().getFullYear()+\"\").substring(2);\n const seconds = (date.getHours() * 3600 + date.getMinutes() * 60 + date.getSeconds())+\"\";\n\n const str=year\n +this.leadZero(date.getMonth()+1)\n +this.leadZero(date.getDate())\n +seconds.padStart(5,\"0\")\n +this.getNextTRX()\n\n return parseInt(str);\n \n }\n\n\n static sha256(str:string):string{\n let uid = crypto.createHash(\"sha256\").update(str).digest(\"base64\");\n uid=uid.replaceAll(\"=\",\"\")\n uid=uid.replaceAll(\"+\",\".\")\n uid=uid.replaceAll(\"/\",\"-\")\n return uid;\n }\n\n static leadZero(i:number):string{\n return (i+\"\").padStart(2,\"0\")\n }\n}"]}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"Validator.js","sourceRoot":"","sources":["../../../src/apiServer/helper/Validator.ts"],"names":[],"mappings":"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","sourcesContent":["export type TValidatorType=\"string\"|\"number\"|\"boolean\"|\"date\"|\"array\"|\"object\"|\"email\"|\"phone\"\n\nexport interface IValidatorOptions{\n min?:number,\n max?:number,\n type?:TValidatorType,\n regex?:RegExp\n}\n\nexport interface IValidaotrType{\n name:string,\n type:TValidatorType\n optional?:boolean,\n arrayType?:IValidaotrType,\n}\n\nexport enum ValidationReport{\n OK=1,\n VALUE_IS_NULL=2,\n TYPE_MISSMATCH=3,\n VALUE_TOO_BIG=4,\n VALUE_TOO_SHORT=5,\n VALUE_INCORRECT=6\n}\n\nexport class Validator{\n\n static validateObject(fields:string[],object:any):boolean{\n if(!object || typeof object!==\"object\")\n return false\n for(let i of fields){\n if(!(i in object) || object[i]===undefined)\n return false;\n }\n return true;\n }\n\n static convertToType<T>(value:any,type:\"string\"|\"number\"|\"boolean\"|\"date\"):T|null{\n if(value===null || value === undefined)\n return null;\n\n if(type===\"string\"){\n if(typeof value ===\"object\"){\n let result = null\n try{ result = JSON.stringify(value);}catch(e){}\n if(result!==null)\n return result as T\n }\n return value+\"\" as T\n }\n\n if(type===\"boolean\"){\n if(typeof value===\"boolean\")\n return value as T\n if(typeof value===\"number\")\n return value>0 as T\n if(typeof value===\"object\")\n return false as T\n if(typeof value === \"string\")\n return (value.toLowerCase()===\"true\") as T\n }\n\n if(type===\"date\"){\n if(typeof value===\"string\" || typeof value===\"number\")\n return new Date(value) as T\n return null;\n }\n\n // number\n if(typeof value===\"number\")\n return value as T\n\n if(typeof value===\"object\")\n return 0 as T\n\n const num = parseInt(value+\"\");\n return num as T\n }\n\n static validateValue(value:string|number|boolean,opt?:IValidatorOptions):ValidationReport{\n if(value===undefined || value === null)\n return ValidationReport.VALUE_IS_NULL;\n if(!opt)\n return ValidationReport.OK;\n \n\n if(!opt.type)\n opt.type=\"string\";\n\n if(opt.type===\"boolean\"){\n if(typeof value===\"boolean\")\n return ValidationReport.OK;\n if(typeof value ===\"number\" && (value === 1 || value === 0))\n return ValidationReport.OK\n return ValidationReport.TYPE_MISSMATCH\n }\n\n if(opt.type === \"number\"){\n if(typeof value !== \"number\")\n return ValidationReport.TYPE_MISSMATCH\n if(opt.max && value>opt.max)\n return ValidationReport.VALUE_TOO_BIG\n if(opt.min && value<opt.min)\n return ValidationReport.VALUE_TOO_BIG\n return ValidationReport.OK;\n }\n\n if(typeof value !== \"string\")\n return ValidationReport.TYPE_MISSMATCH\n\n if(opt.max && value.length>opt.max)\n return ValidationReport.VALUE_TOO_BIG\n\n if(opt.min && value.length<opt.min)\n return ValidationReport.VALUE_TOO_SHORT\n\n if(opt.type===\"email\" && !opt.regex){\n opt.regex = /^[\\w-\\.]+@([\\w-]+\\.)+[\\w-]{2,6}$/g;\n }\n\n if(opt.regex){\n const globalRegex = new RegExp(opt.regex.source, opt.regex.flags.includes('g') ? opt.regex.flags : opt.regex.flags + 'g');\n const tmp = value.replaceAll(globalRegex,\"\");\n if(tmp.length!==0)\n return ValidationReport.VALUE_INCORRECT\n }\n\n \n \n return ValidationReport.OK;\n }\n}"]}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"Monitor.js","sourceRoot":"","sources":["../../../src/apiServer/monitor/Monitor.ts"],"names":[],"mappings":";;;;;;AAAA,mDAAwC;AACxC,8CAA6C;AAC7C,kDAA+C;AAC/C,8CAAwC;AAExC,oDAA4B;AAC5B,4CAAmB;AAoBN,QAAA,2BAA2B,GAAC,IAAI,uBAAM,EAAe,CAAA;AAElE,MAAa,OAAQ,SAAQ,2BAAY;IAErC,iBAAiB,GAAC,IAAI,CAAA;IAEd,YAAY,GAAC,IAAI,GAAG,EAAkC,CAAC;IACvD,UAAU,GAAC,IAAI,GAAG,EAAkC,CAAC;IACrD,WAAW,GAAC,IAAI,GAAG,EAAyC,CAAC;IAC7D,iBAAiB,GAAC,CAAC,CAAC;IAE5B;QACI,KAAK,CAAC,aAAa,CAAC,CAAC;QAErB,mCAA2B,CAAC,SAAS,CAAC,IAAI,CAAA,EAAE,CAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAA;QAExE,IAAI,CAAC,iBAAiB,CAAC;YACnB,EAAC,iBAAiB,EAAC,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAC,OAAO,EAAC,IAAI,CAAC,IAAI,EAAC;YACzD,EAAC,iBAAiB,EAAC,IAAI,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,IAAI,CAAC,MAAM,EAAC;YAC9D,EAAC,iBAAiB,EAAC,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,IAAI,CAAC,OAAO,EAAC;YAChE,EAAC,iBAAiB,EAAC,IAAI,EAAC,QAAQ,EAAC,aAAa,EAAC,OAAO,EAAC,IAAI,CAAC,UAAU,EAAC;SAC1E,CAAC,CAAA;QAEF,WAAW,CAAC,GAAE,EAAE;YACZ,IAAI,CAAC,aAAa,EAAE,CAAC;QACzB,CAAC,EAAC,IAAI,GAAC,EAAE,GAAC,EAAE,CAAC,CAAC;QACd,IAAI,CAAC,aAAa,EAAE,CAAC;IACzB,CAAC;IAED,gBAAgB,CAAC,IAAgB;QAC7B,IAAG,CAAC,IAAI,CAAC,MAAM;YACX,OAAO;QACX,IAAG,OAAO,IAAI,CAAC,MAAM,KAAG,QAAQ;YAC5B,OAAO;QACX,IAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAC,EAAE;YACpB,IAAI,CAAC,MAAM,GAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAC,EAAE,CAAC,CAAC;QAE5C,MAAM,CAAC,GAAC,IAAI,IAAI,EAAE,CAAC;QACnB,MAAM,GAAG,GAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,GAAG,GAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAElC,IAAG,CAAC,GAAG,EAAC;YACJ,GAAG,GAAC,IAAI,GAAG,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAC,GAAG,CAAC,CAAC;YAC9B,IAAG,IAAI,CAAC,WAAW,CAAC,IAAI,GAAC,CAAC,EAAC;gBACvB,KAAI,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,EAAC;oBAC1B,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC7B,MAAM;iBACT;aACJ;SACJ;QAED,MAAM,MAAM,GAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACxB,IAAG,CAAC,CAAC,EAAC;YACF,CAAC,GAAC,IAAI,GAAG,EAAE,CAAC;YACZ,GAAG,CAAC,GAAG,CAAC,MAAM,EAAC,CAAC,CAAC,CAAC;SACrB;QAGD,IAAI,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,IAAG,CAAC,GAAG;YACH,GAAG,GAAC,CAAC,CAAC;QACV,GAAG,EAAE,CAAC;QACN,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAC,GAAG,CAAC,CAAC;IAE3B,CAAC;IAED,aAAa;QACT,MAAM,EAAE,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACtC,EAAE,CAAC,WAAW,GAAC,OAAO,CAAC,WAAW,EAAE,CAAA;QACpC,EAAE,CAAC,WAAW,GAAC,YAAE,CAAC,QAAQ,EAAE,CAAA;IAChC,CAAC;IAID,eAAe,CAAC,QAAe;QAC3B,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QAChC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,MAAM,EAAC,QAAQ,CAAC,CAAA;IACzC,CAAC;IAED,oBAAoB,CAAC,QAAe;QAChC,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QAChC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,WAAW,EAAC,QAAQ,CAAC,CAAA;IAC9C,CAAC;IAED,kBAAkB,CAAC,QAAe;QAC9B,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QAChC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,SAAS,EAAC,QAAQ,CAAC,CAAA;IAC5C,CAAC;IAED,kBAAkB,CAAC,QAAe,EAAC,YAAmB;QAClD,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QAChC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAC,QAAQ,CAAC,CAAA;IAC3C,CAAC;IAED,YAAY,CAAC,UAA6B,EAAC,QAAe;QACtD,IAAI,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrC,IAAG,CAAC,KAAK;YACL,KAAK,GAAC,CAAC,CAAA;QACX,KAAK,IAAE,CAAC,CAAC;QACT,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAC,KAAK,CAAC,CAAA;QAC9B,IAAI,CAAC,iBAAiB,EAAE,CAAA;IAC5B,CAAC;IAED,aAAa;QACT,MAAM,CAAC,GAAC,IAAI,IAAI,EAAE,CAAC;QACnB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,GAAG,GAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnC,IAAG,CAAC,GAAG,EAAC;YACJ,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;YAChB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAC,GAAG,CAAC,CAAC;YAC/B,IAAG,IAAI,CAAC,YAAY,CAAC,IAAI,GAAC,CAAC,EAAC;gBACxB,KAAI,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,EAAC;oBAC3B,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC9B,MAAM;iBACT;aACJ;SACJ;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAI,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC7B,IAAG,CAAC,EAAE,EAAC;YACH,EAAE,GAAG;gBACD,MAAM,EAAC,IAAI,GAAG,EAAE;gBAChB,QAAQ,EAAC,IAAI,GAAG,EAAE;gBAClB,WAAW,EAAC,IAAI,GAAG,EAAE;gBACrB,SAAS,EAAC,IAAI,GAAG,EAAE;aACtB,CAAA;YACD,GAAG,CAAC,GAAG,CAAC,UAAU,EAAC,EAAE,CAAC,CAAA;SACzB;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED,mBAAmB;QACf,MAAM,CAAC,GAAC,IAAI,IAAI,EAAE,CAAC;QACnB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,GAAG,GAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjC,IAAG,CAAC,GAAG,EAAC;YACJ,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;YAChB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAC,GAAG,CAAC,CAAC;YAC7B,IAAG,IAAI,CAAC,UAAU,CAAC,IAAI,GAAC,CAAC,EAAC;gBACtB,KAAI,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,EAAC;oBACzB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC5B,MAAM;iBACT;aACJ;SACJ;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAI,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC7B,IAAG,CAAC,EAAE,EAAC;YACH,EAAE,GAAG;gBACD,QAAQ,EAAC,CAAC;gBACV,WAAW,EAAC,CAAC;gBACb,WAAW,EAAC,EAAE;aACjB,CAAA;YACD,GAAG,CAAC,GAAG,CAAC,UAAU,EAAC,EAAE,CAAC,CAAA;SACzB;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED,YAAY,CAAC,CAAM;QACf,MAAM,GAAG,GAAG,CAAC,CAAC;QACd,OAAO,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,GAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAC,CAAC,CAAC,GAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;IAC3H,CAAC;IAED,kBAAkB,CAAC,CAAM;QACrB,MAAM,GAAG,GAAG,CAAC,CAAC;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,GAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAA;IACxE,CAAC;IAED,QAAQ,CAAC,CAAQ;QACb,IAAG,CAAC,GAAC,CAAC;YACF,OAAO,CAAC,GAAC,EAAE,CAAA;QACf,OAAO,GAAG,GAAC,CAAC,CAAC;IACjB,CAAC;IAGD,KAAK,CAAC,QAAQ,CAAC,GAAkB;QAE7B,IAAG,CAAC,GAAG,CAAC,OAAO;YACX,OAAO,EAAC,KAAK,EAAC,EAAC,IAAI,EAAC,KAAK,EAAC,OAAO,EAAC,kBAAkB,EAAC,UAAU,EAAC,GAAG,EAAC,EAAC,CAAA;QAEzE,IAAG,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC;YAC5B,OAAO,EAAC,KAAK,EAAC,EAAC,IAAI,EAAC,KAAK,EAAC,OAAO,EAAC,wBAAwB,EAAC,UAAU,EAAC,GAAG,EAAC,EAAC,CAAA;QAE/E,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAE1C,IAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAC;YAClD,OAAO,EAAC,KAAK,EAAC,EAAC,IAAI,EAAC,KAAK,EAAC,OAAO,EAAC,gCAAgC,EAAC,UAAU,EAAC,GAAG,EAAC,EAAC,CAAA;SACtF;QAGD,IAAI,UAAU,GAAC,KAAK,CAAC;QACrB,KAAI,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAC;YAC3B,IAAI,cAAc,GAAG,EAAE,CAAA;YACvB,cAAc,IAAE,GAAG,CAAC,QAAQ,CAAA;YAC5B,cAAc,IAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;YACjC,cAAc,IAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;YAC1C,cAAc,IAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACxC,cAAc,IAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;YAE1C,MAAM,WAAW,GAAG,SAAS,GAAC,gBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAE1G,IAAG,IAAI,KAAK,WAAW,EAAC;gBACpB,UAAU,GAAC,IAAI,CAAC;gBAChB,MAAK;aACR;SACJ;QAED,IAAG,CAAC,UAAU,EAAC;YACX,OAAO,CAAC,KAAK,CAAC,eAAe,GAAC,IAAI,CAAC,CAAA;YACnC,OAAO,EAAC,KAAK,EAAC,EAAC,IAAI,EAAC,KAAK,EAAC,OAAO,EAAC,qBAAqB,EAAC,UAAU,EAAC,GAAG,EAAC,EAAC,CAAA;SAC3E;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAiB;QACxB,MAAM,GAAG,GAAG,MAAM,oBAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACvC,OAAO,EAAC,IAAI,EAAC,GAAG,EAAC,CAAA;IACrB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAiB;QAC1B,MAAM,GAAG,GAAG,MAAM,yBAAY,CAAC,OAAO,EAAE,CAAA;QACxC,OAAO,EAAC,IAAI,EAAC,GAAG,EAAC,CAAA;IACrB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,GAAiB;QAG3B,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAKtC,IAAI,MAAM,GAAC,EAAE,CAAA;QACb,IAAG,IAAI,EAAC;YACJ,KAAI,IAAI,OAAO,IAAI,IAAI,EAAC;gBACpB,MAAM,CAAC,IAAI,CAAC;oBACR,CAAC,EAAC,OAAO,CAAC,CAAC,CAAC;oBACZ,EAAE,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC3C,CAAC,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBACvC,CAAC,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;oBACzC,EAAE,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;iBAChD,CAAC,CAAA;aACL;SACJ;QAED,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,QAAQ,GAAO,EAAE,CAAA;QACrB,IAAG,EAAE,EAAC;YACF,KAAI,IAAI,CAAC,IAAI,EAAE,EAAC;gBACZ,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBACrB,MAAM,MAAM,GAAO,EAAE,CAAA;gBACrB,KAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAC;oBACd,MAAM,CAAC,IAAI,CAAC;wBACR,MAAM,EAAC,CAAC,CAAC,CAAC,CAAC;wBACX,KAAK,EAAC,CAAC,CAAC,CAAC,CAAC;qBACb,CAAC,CAAA;iBACL;gBACD,MAAM,CAAC,IAAI,CAAC;oBACR,CAAC,EAAC,CAAC,CAAC,CAAC,CAAC;oBACN,IAAI,EAAC,MAAM;iBACd,CAAC,CAAA;aACL;SACJ;QAED,OAAO,EAAC,IAAI,EAAC,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,CAAC,IAAI,EAAC,WAAW,EAAC,QAAQ,EAAC,EAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,GAAiB;QAG9B,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACpC,IAAG,CAAC,IAAI;YACJ,OAAO,EAAC,IAAI,EAAC,EAAE,EAAC,CAAA;QAGpB,IAAI,MAAM,GAAC,EAAE,CAAA;QACb,KAAI,IAAI,OAAO,IAAI,IAAI,EAAC;YACpB,MAAM,CAAC,IAAI,CAAC;gBACR,CAAC,EAAC,OAAO,CAAC,CAAC,CAAC;gBACZ,EAAE,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW;gBACzB,EAAE,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW;gBACzB,EAAE,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ;aACzB,CAAC,CAAA;SACL;QAGD,OAAO,EAAC,IAAI,EAAC;gBACT,iBAAiB,EAAC,IAAI,CAAC,iBAAiB;gBACxC,MAAM,EAAC,OAAO,CAAC,MAAM,EAAE;gBACvB,QAAQ,EAAC,YAAE,CAAC,MAAM,EAAE;gBACpB,IAAI,EAAC,MAAM;aACd,EAAC,CAAA;IACN,CAAC;IAED,aAAa,CAAC,GAA6B;QACvC,MAAM,GAAG,GAAC,EAAE,CAAA;QACZ,KAAI,IAAI,CAAC,IAAI,GAAG;YACZ,GAAG,CAAC,IAAI,CAAC,EAAC,IAAI,EAAC,CAAC,CAAC,CAAC,CAAC,EAAC,KAAK,EAAC,CAAC,CAAC,CAAC,CAAC,EAAC,CAAC,CAAA;QACpC,OAAO,GAAG,CAAC;IACf,CAAC;CACJ;AAjTD,0BAiTC","sourcesContent":["import { Signal } from \"badmfck-signal\";\nimport { REQ_HTTP_LOG } from \"../APIService\";\nimport { BaseEndpoint } from \"../BaseEndpoint\";\nimport { REQ_LOG } from \"../LogService\";\nimport { HTTPRequestVO, TransferPacketVO } from \"../structures/Interfaces\";\nimport crypto from \"crypto\";\nimport os from \"os\"\n\n\nexport interface IUserAction{\n action:string;\n}\n\ninterface IStatObject{\n requests:Map<string,number>, //ep, count\n errors:Map<string,number>, // ep, count\n fatalErrors:Map<string,number>, // ep, count\n apiErrors:Map<string,number> // ep,count\n}\n\ninterface ISystemStat{\n cpuUsage:any,\n memoryTotal:number,\n memoryUsage:any,\n}\n\nexport const S_MONITOR_REGISTRATE_ACTION=new Signal<IUserAction>()\n\nexport class Monitor extends BaseEndpoint{\n\n ignoreHttpLogging=true\n \n private httpRequests=new Map<number,Map<string,IStatObject>>(); // day of year,hour,minute, count\n private systemStat=new Map<number,Map<string,ISystemStat>>(); // day of year,hour,minute, count\n private userActions=new Map<number,Map<string,Map<string,number>>>(); // day of year, hour+minute, action , count\n private registeredActions=0;\n \n constructor(){\n super(\"sys-monitor\");\n\n S_MONITOR_REGISTRATE_ACTION.subscribe(data=>this.registrateAction(data))\n\n this.registerEndpoints([\n {ignoreInterceptor:true,endpoint:\"log\",handler:this.logs},\n {ignoreInterceptor:true,endpoint:\"netlog\",handler:this.netlog},\n {ignoreInterceptor:true,endpoint:\"metrics\",handler:this.metrics},\n {ignoreInterceptor:true,endpoint:\"server/stat\",handler:this.serverStat}\n ])\n\n setInterval(()=>{\n this.addSystemStat();\n },1000*60*10);\n this.addSystemStat();\n }\n\n registrateAction(data:IUserAction){\n if(!data.action)\n return;\n if(typeof data.action!==\"string\")\n return;\n if(data.action.length>20)\n data.action=data.action.substring(0,20);\n\n const d=new Date();\n const doy=this.getDateIndex(d);\n let day=this.userActions.get(doy);\n \n if(!day){\n day=new Map(); // string,number\n this.userActions.set(doy,day);\n if(this.userActions.size>7){\n for(let i of this.userActions){\n this.userActions.delete(i[0])\n break;\n }\n }\n }\n\n const minute=this.getHourMinuteIndex(d);\n let m = day.get(minute);\n if(!m){\n m=new Map();\n day.set(minute,m);\n }\n\n\n let cnt = m.get(data.action);\n if(!cnt)\n cnt=0;\n cnt++;\n m.set(data.action,cnt);\n\n }\n\n addSystemStat(){\n const so = this.createSystemStatObj();\n so.memoryUsage=process.memoryUsage()\n so.memoryTotal=os.totalmem()\n }\n \n\n // METRIC!\n registrateError(endpoint:string){\n const so = this.createStatObj();\n this.increaseStat(so.errors,endpoint)\n }\n\n registrateFatalError(endpoint:string){\n const so = this.createStatObj();\n this.increaseStat(so.fatalErrors,endpoint)\n }\n\n registrateAPIError(endpoint:string){\n const so = this.createStatObj();\n this.increaseStat(so.apiErrors,endpoint)\n }\n\n registrateResponse(endpoint:string,responseTime:number){\n const so = this.createStatObj();\n this.increaseStat(so.requests,endpoint)\n }\n\n increaseStat(statObject:Map<string,number>,endpoint:string):void{\n let reqep = statObject.get(endpoint);\n if(!reqep)\n reqep=0 \n reqep+=1;\n statObject.set(endpoint,reqep)\n this.registeredActions++\n }\n\n createStatObj():IStatObject{\n const d=new Date();\n const dtm = this.getDateIndex(d);\n let day=this.httpRequests.get(dtm);\n if(!day){\n day = new Map();\n this.httpRequests.set(dtm,day);\n if(this.httpRequests.size>7){\n for(let i of this.httpRequests){\n this.httpRequests.delete(i[0])\n break;\n }\n }\n }\n const hourMinute = this.getHourMinuteIndex(d);\n let hm = day.get(hourMinute);\n if(!hm){\n hm = {\n errors:new Map(),\n requests:new Map(),\n fatalErrors:new Map(),\n apiErrors:new Map()\n }\n day.set(hourMinute,hm)\n }\n return hm;\n }\n\n createSystemStatObj():ISystemStat{\n const d=new Date();\n const dtm = this.getDateIndex(d);\n let day=this.systemStat.get(dtm);\n if(!day){\n day = new Map();\n this.systemStat.set(dtm,day);\n if(this.systemStat.size>7){\n for(let i of this.systemStat){\n this.systemStat.delete(i[0])\n break;\n }\n }\n }\n const hourMinute = this.getHourMinuteIndex(d);\n let hm = day.get(hourMinute);\n if(!hm){\n hm = {\n cpuUsage:0,\n memoryTotal:0,\n memoryUsage:{}\n }\n day.set(hourMinute,hm)\n }\n return hm;\n }\n\n getDateIndex(d:Date):number{\n const dtm = d;\n return parseInt(dtm.getFullYear().toString().substring(2)+this.leadZero(dtm.getMonth()+1)+this.leadZero(dtm.getDate()))\n }\n\n getHourMinuteIndex(d:Date):string{\n const dtm = d;\n return this.leadZero(dtm.getHours())+this.leadZero(dtm.getMinutes())\n }\n\n leadZero(i:number):string{\n if(i>9)\n return i+\"\"\n return \"0\"+i;\n }\n\n // PRECHECK BEFORE ANY EXECUTION\n async precheck(req: HTTPRequestVO): Promise<TransferPacketVO<any> | null> {\n \n if(!req.headers)\n return {error:{code:10001,message:\"No authorization\",httpStatus:400}}\n \n if(!req.headers['authorization'])\n return {error:{code:10002,message:\"No authorization found\",httpStatus:400}}\n\n const auth = req.headers['authorization'];\n \n if(!req.precheck || !Array.isArray(req.precheck.data)){\n return {error:{code:10003,message:\"No authorization records found\",httpStatus:400}}\n }\n \n\n let authorized=false;\n for(let i of req.precheck.data){\n let expectationStr = \"\"\n expectationStr+=req.endpoint\n expectationStr+=JSON.stringify(i)\n expectationStr+=JSON.stringify(req.method)\n expectationStr+=JSON.stringify(req.data)\n expectationStr+=JSON.stringify(req.params)\n \n const expectation = \"sha256 \"+crypto.createHash(\"sha256\").update(expectationStr).digest().toString(\"hex\");\n \n if(auth === expectation){\n authorized=true;\n break\n }\n }\n\n if(!authorized){\n console.error(\"Wrong token: \"+auth)\n return {error:{code:10004,message:\"Unauthorized access\",httpStatus:401}}\n }\n\n return null;\n }\n\n async logs(req:HTTPRequestVO):Promise<TransferPacketVO<any>>{\n const log = await REQ_LOG.request(null)\n return {data:log}\n }\n\n async netlog(req:HTTPRequestVO):Promise<TransferPacketVO<any>>{\n const log = await REQ_HTTP_LOG.request()\n return {data:log}\n }\n\n async metrics(req:HTTPRequestVO):Promise<TransferPacketVO<any>>{\n \n // get metric for current date\n const date = new Date();\n const di = this.getDateIndex(date);\n const stat = this.httpRequests.get(di)\n \n\n // prepare to plain array (map with minutes)\n \n let result=[]\n if(stat){\n for(let minutes of stat){\n result.push({\n m:minutes[0],\n ae:this.mapToKeyValue(minutes[1].apiErrors),\n e:this.mapToKeyValue(minutes[1].errors),\n r:this.mapToKeyValue(minutes[1].requests),\n fe:this.mapToKeyValue(minutes[1].fatalErrors),\n })\n }\n }\n \n const ua = this.userActions.get(di);\n let uaResult:any[]=[]\n if(ua){\n for(let i of ua){\n const minutes = i[1];\n const mArray:any[]=[]\n for(let j of i[0]){\n mArray.push({\n action:j[0],\n count:j[1]\n })\n }\n result.push({\n m:i[0],\n data:mArray\n })\n }\n }\n\n return {data:{stat:result,date:+date,userActions:uaResult}};\n }\n\n async serverStat(req:HTTPRequestVO):Promise<TransferPacketVO<any>>{\n\n // get metric for current date\n const date = new Date();\n const di = this.getDateIndex(date);\n const stat = this.systemStat.get(di)\n if(!stat)\n return {data:[]}\n\n // prepare to plain array (map with minutes)\n let result=[]\n for(let minutes of stat){\n result.push({\n m:minutes[0],\n mt:minutes[1].memoryTotal,\n mu:minutes[1].memoryUsage,\n cu:minutes[1].cpuUsage,\n })\n }\n\n\n return {data:{\n registeredActions:this.registeredActions,\n uptime:process.uptime(),\n osUptime:os.uptime(),\n stat:result\n }}\n }\n\n mapToKeyValue(map:Map<string,string|number>):{name:string,value:string|number}[]{\n const res=[]\n for(let i of map)\n res.push({name:i[0],value:i[1]})\n return res;\n }\n}\n\n/*function getCPUUsage(callback, free){ \n\t\n var stats1 = getCPUInfo();\n var startIdle = stats1.idle;\n var startTotal = stats1.total;\n\t\n setTimeout(function() {\n var stats2 = getCPUInfo();\n var endIdle = stats2.idle;\n var endTotal = stats2.total;\n\t\t\n var idle \t= endIdle - startIdle;\n var total \t= endTotal - startTotal;\n var perc\t= idle / total;\n\t \t\n if(free === true)\n callback( perc );\n else\n callback( (1 - perc) );\n\t \t\t\n }, 1000 );\n}\n\nfunction getCPUInfo(callback){ \n var cpus = _os.cpus();\n\t\n var user = 0;\n var nice = 0;\n var sys = 0;\n var idle = 0;\n var irq = 0;\n var total = 0;\n\t\n for(var cpu in cpus){\n if (!cpus.hasOwnProperty(cpu)) continue;\t\n user += cpus[cpu].times.user;\n nice += cpus[cpu].times.nice;\n sys += cpus[cpu].times.sys;\n irq += cpus[cpu].times.irq;\n idle += cpus[cpu].times.idle;\n }\n\t\n var total = user + nice + sys + idle + irq;\n\t\n return {\n 'idle': idle, \n 'total': total\n };\n}*/"]}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"Liveness.js","sourceRoot":"","sources":["../../../src/apiServer/routes/Liveness.ts"],"names":[],"mappings":";;;AAAA,8CAAwD;AACxD,kDAA+C;AAG/C,MAAa,QAAS,SAAQ,2BAAY;IACtC,OAAO,CAAM;IACb,YAAY,MAAW;QACnB,KAAK,CAAC,UAAU,CAAC,CAAA;QACjB,IAAI,CAAC,OAAO,GAAC,MAAM,CAAC;QACpB,IAAI,CAAC,iBAAiB,CAAC,CAAC,EAAC,QAAQ,EAAC,EAAE,EAAC,OAAO,EAAC,IAAI,CAAC,aAAa,EAAC,iBAAiB,EAAC,IAAI,EAAC,CAAC,CAAC,CAAA;IAC7F,CAAC;IAED,KAAK,CAAC,aAAa,CAAE,GAAiB;QAElC,MAAM,OAAO,GAAG,oCAAuB,CAAC,OAAO,EAAE,CAAA;QACjD,MAAM,IAAI,GAAG,EAAC,IAAI,EAAC,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,EAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAC,OAAO,EAAC,OAAO,EAAC,EAAC,CAAA;QAC5F,IAAI,EAAE,GAA+C,IAAI,CAAC;QAC1D,MAAM,CAAC,GAAG,IAAI,OAAO,CAAwB,CAAC,OAAO,EAAC,MAAM,EAAC,EAAE,GAAC,EAAE,GAAG,OAAO,CAAA,CAAA,CAAC,CAAC,CAAA;QAC9E,UAAU,CAAC,GAAE,EAAE;YACX,IAAG,EAAE;gBACD,EAAE,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC,EAAC,IAAI,GAAC,EAAE,CAAC,CAAA;QACV,OAAO,CAAC,CAAC;IACb,CAAC;CACJ;AApBD,4BAoBC","sourcesContent":["import { REQ_HTTP_REQUESTS_COUNT } from \"../APIService\";\nimport { BaseEndpoint } from \"../BaseEndpoint\";\nimport { HTTPRequestVO, TransferPacketVO } from \"../structures/Interfaces\";\n\nexport class Liveness extends BaseEndpoint{\n started:Date;\n constructor(stated:Date){\n super(\"liveness\")\n this.started=stated;\n this.registerEndpoints([{endpoint:\"\",handler:this.checkLiveness,ignoreInterceptor:true}])\n }\n\n async checkLiveness (req:HTTPRequestVO){\n // liveness probe - check if server is alive (wait for 10 sec and send response)\n const request = REQ_HTTP_REQUESTS_COUNT.request()\n const data = {data:{liveness:true,wakeTime:(+new Date()) - (+this.started),request:request}}\n let cb:((data:TransferPacketVO<any>)=>void) | null = null;\n const p = new Promise<TransferPacketVO<any>>((resolve,reject)=>{cb = resolve})\n setTimeout(()=>{\n if(cb)\n cb(data);\n },1000*10)\n return p;\n }\n}"]}
|
@@ -1,9 +0,0 @@
|
|
1
|
-
import { BaseEndpoint } from "../BaseEndpoint";
|
2
|
-
import { HTTPRequestVO, TransferPacketVO } from "../structures/Interfaces";
|
3
|
-
export declare class Monitor extends BaseEndpoint {
|
4
|
-
constructor();
|
5
|
-
getLogs(req: HTTPRequestVO): Promise<TransferPacketVO<any>>;
|
6
|
-
getNetLogs(req: HTTPRequestVO): Promise<TransferPacketVO<any>>;
|
7
|
-
getStat(req: HTTPRequestVO): Promise<TransferPacketVO<any>>;
|
8
|
-
checkAuthorization(req: HTTPRequestVO): Promise<boolean>;
|
9
|
-
}
|
@@ -1,77 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
-
if (k2 === undefined) k2 = k;
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
-
}
|
8
|
-
Object.defineProperty(o, k2, desc);
|
9
|
-
}) : (function(o, m, k, k2) {
|
10
|
-
if (k2 === undefined) k2 = k;
|
11
|
-
o[k2] = m[k];
|
12
|
-
}));
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
15
|
-
}) : function(o, v) {
|
16
|
-
o["default"] = v;
|
17
|
-
});
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
19
|
-
if (mod && mod.__esModule) return mod;
|
20
|
-
var result = {};
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
22
|
-
__setModuleDefault(result, mod);
|
23
|
-
return result;
|
24
|
-
};
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
26
|
-
exports.Monitor = void 0;
|
27
|
-
const APIService_1 = require("../APIService");
|
28
|
-
const BaseEndpoint_1 = require("../BaseEndpoint");
|
29
|
-
const LogService_1 = require("../LogService");
|
30
|
-
const DefaultErrors_1 = __importStar(require("../structures/DefaultErrors"));
|
31
|
-
class Monitor extends BaseEndpoint_1.BaseEndpoint {
|
32
|
-
constructor() {
|
33
|
-
super("-sys-monitor");
|
34
|
-
this.registerEndpoints([
|
35
|
-
{ ignoreInterceptor: true, endpoint: "log", handler: this.getLogs },
|
36
|
-
{ ignoreInterceptor: true, endpoint: "net", handler: this.getNetLogs },
|
37
|
-
]);
|
38
|
-
}
|
39
|
-
async getLogs(req) {
|
40
|
-
await this.checkAuthorization(req);
|
41
|
-
const logs = await LogService_1.REQ_LOG.request({ lastID: req.data.lasttID ? req.data.lastID : 0 });
|
42
|
-
if (DefaultErrors_1.ErrorUtils.isError(logs))
|
43
|
-
return { error: logs };
|
44
|
-
return { data: logs };
|
45
|
-
}
|
46
|
-
async getNetLogs(req) {
|
47
|
-
await this.checkAuthorization(req);
|
48
|
-
const logs = await APIService_1.REQ_HTTP_LOG.request();
|
49
|
-
if (DefaultErrors_1.ErrorUtils.isError(logs))
|
50
|
-
return { error: logs };
|
51
|
-
return { data: logs };
|
52
|
-
}
|
53
|
-
async getStat(req) {
|
54
|
-
await this.checkAuthorization(req);
|
55
|
-
const httpCount = await APIService_1.REQ_HTTP_REQUESTS_COUNT.request;
|
56
|
-
return { data: {
|
57
|
-
http: httpCount
|
58
|
-
} };
|
59
|
-
}
|
60
|
-
async checkAuthorization(req) {
|
61
|
-
if (!req.headers['authorization'])
|
62
|
-
throw { ...DefaultErrors_1.default.UNAUTHORIZED, details: "no authorization header found" };
|
63
|
-
let authorization = req.headers['authorization'];
|
64
|
-
if (!authorization)
|
65
|
-
throw { ...DefaultErrors_1.default.UNAUTHORIZED, details: "empty authorization header" };
|
66
|
-
authorization = authorization.split(" ").pop();
|
67
|
-
if (!authorization)
|
68
|
-
throw { ...DefaultErrors_1.default.UNAUTHORIZED, details: "wrong authorization header" };
|
69
|
-
const monitorUsers = await APIService_1.REQ_MONITOR_USERS.request({ authorization });
|
70
|
-
for (let i of monitorUsers)
|
71
|
-
if (i === authorization)
|
72
|
-
return true;
|
73
|
-
throw { ...DefaultErrors_1.default.UNAUTHORIZED, details: "wrong user" };
|
74
|
-
}
|
75
|
-
}
|
76
|
-
exports.Monitor = Monitor;
|
77
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9uaXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcGlTZXJ2ZXIvcm91dGVzL01vbml0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw4Q0FBeUY7QUFDekYsa0RBQStDO0FBQy9DLDhDQUF3QztBQUN4Qyw2RUFBd0U7QUFHeEUsTUFBYSxPQUFRLFNBQVEsMkJBQVk7SUFDckM7UUFDSSxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1lBQ25CLEVBQUMsaUJBQWlCLEVBQUMsSUFBSSxFQUFDLFFBQVEsRUFBQyxLQUFLLEVBQUMsT0FBTyxFQUFDLElBQUksQ0FBQyxPQUFPLEVBQUM7WUFDNUQsRUFBQyxpQkFBaUIsRUFBQyxJQUFJLEVBQUMsUUFBUSxFQUFDLEtBQUssRUFBQyxPQUFPLEVBQUMsSUFBSSxDQUFDLFVBQVUsRUFBQztTQUNsRSxDQUFDLENBQUE7SUFDTixDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFrQjtRQUM1QixNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUNsQyxNQUFNLElBQUksR0FBRyxNQUFNLG9CQUFPLENBQUMsT0FBTyxDQUFDLEVBQUMsTUFBTSxFQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFBLENBQUMsQ0FBQSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQSxDQUFDLENBQUEsQ0FBQyxFQUFDLENBQUMsQ0FBQztRQUNoRixJQUFHLDBCQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztZQUN2QixPQUFPLEVBQUMsS0FBSyxFQUFDLElBQXFCLEVBQUMsQ0FBQTtRQUN4QyxPQUFPLEVBQUMsSUFBSSxFQUFDLElBQUksRUFBQyxDQUFBO0lBQ3RCLENBQUM7SUFFRCxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQWtCO1FBQy9CLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ2xDLE1BQU0sSUFBSSxHQUFHLE1BQU0seUJBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMxQyxJQUFHLDBCQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztZQUN2QixPQUFPLEVBQUMsS0FBSyxFQUFDLElBQXFCLEVBQUMsQ0FBQTtRQUN4QyxPQUFPLEVBQUMsSUFBSSxFQUFDLElBQUksRUFBQyxDQUFBO0lBQ3RCLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQWtCO1FBQzVCLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ2xDLE1BQU0sU0FBUyxHQUFHLE1BQU0sb0NBQXVCLENBQUMsT0FBTyxDQUFBO1FBRXZELE9BQU8sRUFBQyxJQUFJLEVBQUM7Z0JBQ1QsSUFBSSxFQUFFLFNBQVM7YUFDbEIsRUFBQyxDQUFBO0lBQ04sQ0FBQztJQUVELEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxHQUFrQjtRQUN2QyxJQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUM7WUFDNUIsTUFBTSxFQUFDLEdBQUcsdUJBQWEsQ0FBQyxZQUFZLEVBQUMsT0FBTyxFQUFDLCtCQUErQixFQUFDLENBQUM7UUFDbEYsSUFBSSxhQUFhLEdBQXFCLEdBQUcsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUE7UUFDbEUsSUFBRyxDQUFDLGFBQWE7WUFDYixNQUFNLEVBQUMsR0FBRyx1QkFBYSxDQUFDLFlBQVksRUFBQyxPQUFPLEVBQUMsNEJBQTRCLEVBQUMsQ0FBQztRQUMvRSxhQUFhLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUMvQyxJQUFHLENBQUMsYUFBYTtZQUNiLE1BQU0sRUFBQyxHQUFHLHVCQUFhLENBQUMsWUFBWSxFQUFDLE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxDQUFDO1FBRS9FLE1BQU0sWUFBWSxHQUFHLE1BQU0sOEJBQWlCLENBQUMsT0FBTyxDQUFDLEVBQUMsYUFBYSxFQUFDLENBQUMsQ0FBQztRQUN0RSxLQUFJLElBQUksQ0FBQyxJQUFJLFlBQVk7WUFDckIsSUFBRyxDQUFDLEtBQUssYUFBYTtnQkFDbEIsT0FBTyxJQUFJLENBQUM7UUFFcEIsTUFBTSxFQUFDLEdBQUcsdUJBQWEsQ0FBQyxZQUFZLEVBQUMsT0FBTyxFQUFDLFlBQVksRUFBQyxDQUFDO0lBQy9ELENBQUM7Q0FFSjtBQXBERCwwQkFvREMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSRVFfSFRUUF9MT0csIFJFUV9IVFRQX1JFUVVFU1RTX0NPVU5ULCBSRVFfTU9OSVRPUl9VU0VSUyB9IGZyb20gXCIuLi9BUElTZXJ2aWNlXCI7XG5pbXBvcnQgeyBCYXNlRW5kcG9pbnQgfSBmcm9tIFwiLi4vQmFzZUVuZHBvaW50XCI7XG5pbXBvcnQgeyBSRVFfTE9HIH0gZnJvbSBcIi4uL0xvZ1NlcnZpY2VcIjtcbmltcG9ydCBEZWZhdWx0RXJyb3JzLCB7IEVycm9yVXRpbHMgfSBmcm9tIFwiLi4vc3RydWN0dXJlcy9EZWZhdWx0RXJyb3JzXCI7XG5pbXBvcnQgeyBIVFRQUmVxdWVzdFZPLCBJRXJyb3IsIFRyYW5zZmVyUGFja2V0Vk8gfSBmcm9tIFwiLi4vc3RydWN0dXJlcy9JbnRlcmZhY2VzXCI7XG5cbmV4cG9ydCBjbGFzcyBNb25pdG9yIGV4dGVuZHMgQmFzZUVuZHBvaW50e1xuICAgIGNvbnN0cnVjdG9yKCl7XG4gICAgICAgIHN1cGVyKFwiLXN5cy1tb25pdG9yXCIpO1xuICAgICAgICB0aGlzLnJlZ2lzdGVyRW5kcG9pbnRzKFtcbiAgICAgICAgICAgIHtpZ25vcmVJbnRlcmNlcHRvcjp0cnVlLGVuZHBvaW50OlwibG9nXCIsaGFuZGxlcjp0aGlzLmdldExvZ3N9LFxuICAgICAgICAgICAge2lnbm9yZUludGVyY2VwdG9yOnRydWUsZW5kcG9pbnQ6XCJuZXRcIixoYW5kbGVyOnRoaXMuZ2V0TmV0TG9nc30sXG4gICAgICAgIF0pXG4gICAgfVxuXG4gICAgYXN5bmMgZ2V0TG9ncyhyZXE6IEhUVFBSZXF1ZXN0Vk8pOiBQcm9taXNlPFRyYW5zZmVyUGFja2V0Vk88YW55Pj4ge1xuICAgICAgICBhd2FpdCB0aGlzLmNoZWNrQXV0aG9yaXphdGlvbihyZXEpXG4gICAgICAgIGNvbnN0IGxvZ3MgPSBhd2FpdCBSRVFfTE9HLnJlcXVlc3Qoe2xhc3RJRDpyZXEuZGF0YS5sYXN0dElEP3JlcS5kYXRhLmxhc3RJRDowfSk7XG4gICAgICAgIGlmKEVycm9yVXRpbHMuaXNFcnJvcihsb2dzKSlcbiAgICAgICAgICAgIHJldHVybiB7ZXJyb3I6bG9ncyBhcyBhbnkgYXMgSUVycm9yfVxuICAgICAgICByZXR1cm4ge2RhdGE6bG9nc31cbiAgICB9XG5cbiAgICBhc3luYyBnZXROZXRMb2dzKHJlcTogSFRUUFJlcXVlc3RWTyk6IFByb21pc2U8VHJhbnNmZXJQYWNrZXRWTzxhbnk+PiB7XG4gICAgICAgIGF3YWl0IHRoaXMuY2hlY2tBdXRob3JpemF0aW9uKHJlcSlcbiAgICAgICAgY29uc3QgbG9ncyA9IGF3YWl0IFJFUV9IVFRQX0xPRy5yZXF1ZXN0KCk7XG4gICAgICAgIGlmKEVycm9yVXRpbHMuaXNFcnJvcihsb2dzKSlcbiAgICAgICAgICAgIHJldHVybiB7ZXJyb3I6bG9ncyBhcyBhbnkgYXMgSUVycm9yfVxuICAgICAgICByZXR1cm4ge2RhdGE6bG9nc31cbiAgICB9XG5cbiAgICBhc3luYyBnZXRTdGF0KHJlcTogSFRUUFJlcXVlc3RWTyk6IFByb21pc2U8VHJhbnNmZXJQYWNrZXRWTzxhbnk+PiB7XG4gICAgICAgIGF3YWl0IHRoaXMuY2hlY2tBdXRob3JpemF0aW9uKHJlcSlcbiAgICAgICAgY29uc3QgaHR0cENvdW50ID0gYXdhaXQgUkVRX0hUVFBfUkVRVUVTVFNfQ09VTlQucmVxdWVzdFxuICAgICAgICAvLyB0b2RvIC0gc3RhdCBieSBhbGwgZW50cnlwb2ludHNcbiAgICAgICAgcmV0dXJuIHtkYXRhOntcbiAgICAgICAgICAgIGh0dHA6IGh0dHBDb3VudFxuICAgICAgICB9fVxuICAgIH1cblxuICAgIGFzeW5jIGNoZWNrQXV0aG9yaXphdGlvbihyZXE6IEhUVFBSZXF1ZXN0Vk8pOiBQcm9taXNlPGJvb2xlYW4+e1xuICAgICAgICBpZighcmVxLmhlYWRlcnNbJ2F1dGhvcml6YXRpb24nXSlcbiAgICAgICAgICAgIHRocm93IHsuLi5EZWZhdWx0RXJyb3JzLlVOQVVUSE9SSVpFRCxkZXRhaWxzOlwibm8gYXV0aG9yaXphdGlvbiBoZWFkZXIgZm91bmRcIn07XG4gICAgICAgIGxldCBhdXRob3JpemF0aW9uOnN0cmluZ3x1bmRlZmluZWQgID0gcmVxLmhlYWRlcnNbJ2F1dGhvcml6YXRpb24nXVxuICAgICAgICBpZighYXV0aG9yaXphdGlvbilcbiAgICAgICAgICAgIHRocm93IHsuLi5EZWZhdWx0RXJyb3JzLlVOQVVUSE9SSVpFRCxkZXRhaWxzOlwiZW1wdHkgYXV0aG9yaXphdGlvbiBoZWFkZXJcIn07XG4gICAgICAgIGF1dGhvcml6YXRpb24gPSBhdXRob3JpemF0aW9uLnNwbGl0KFwiIFwiKS5wb3AoKTtcbiAgICAgICAgaWYoIWF1dGhvcml6YXRpb24pXG4gICAgICAgICAgICB0aHJvdyB7Li4uRGVmYXVsdEVycm9ycy5VTkFVVEhPUklaRUQsZGV0YWlsczpcIndyb25nIGF1dGhvcml6YXRpb24gaGVhZGVyXCJ9O1xuXG4gICAgICAgIGNvbnN0IG1vbml0b3JVc2VycyA9IGF3YWl0IFJFUV9NT05JVE9SX1VTRVJTLnJlcXVlc3Qoe2F1dGhvcml6YXRpb259KTtcbiAgICAgICAgZm9yKGxldCBpIG9mIG1vbml0b3JVc2VycylcbiAgICAgICAgICAgIGlmKGkgPT09IGF1dGhvcml6YXRpb24pXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG5cbiAgICAgICAgdGhyb3cgey4uLkRlZmF1bHRFcnJvcnMuVU5BVVRIT1JJWkVELGRldGFpbHM6XCJ3cm9uZyB1c2VyXCJ9O1xuICAgIH1cblxufSJdfQ==
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"Readiness.js","sourceRoot":"","sources":["../../../src/apiServer/routes/Readiness.ts"],"names":[],"mappings":";;;AAAA,8CAAwD;AACxD,kDAA8C;AAG9C,MAAa,SAAU,SAAQ,2BAAY;IACvC,OAAO,CAAM;IACb,YAAY,MAAW;QACnB,KAAK,CAAC,WAAW,CAAC,CAAA;QAClB,IAAI,CAAC,OAAO,GAAC,MAAM,CAAC;QACpB,IAAI,CAAC,iBAAiB,CAAC,CAAC,EAAC,QAAQ,EAAC,EAAE,EAAC,OAAO,EAAC,IAAI,CAAC,cAAc,EAAC,iBAAiB,EAAC,IAAI,EAAC,CAAC,CAAC,CAAA;IAC9F,CAAC;IAED,KAAK,CAAC,cAAc,CAAE,GAAiB;QACnC,MAAM,OAAO,GAAG,oCAAuB,CAAC,OAAO,EAAE,CAAA;QACjD,OAAO,EAAC,IAAI,EAAC,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,EAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAC,OAAO,EAAC,OAAO,EAAC,EAAC,CAAA;IAC1F,CAAC;CACJ;AAZD,8BAYC","sourcesContent":["import { REQ_HTTP_REQUESTS_COUNT } from \"../APIService\";\nimport { BaseEndpoint } from \"../BaseEndpoint\"\nimport { HTTPRequestVO } from \"../structures/Interfaces\"\n\nexport class Readiness extends BaseEndpoint{\n started:Date;\n constructor(stated:Date){\n super(\"readiness\")\n this.started=stated;\n this.registerEndpoints([{endpoint:\"\",handler:this.checkReadiness,ignoreInterceptor:true}])\n }\n\n async checkReadiness (req:HTTPRequestVO){\n const request = REQ_HTTP_REQUESTS_COUNT.request()\n return {data:{liveness:true,wakeTime:(+new Date()) - (+this.started),request:request}}\n }\n}"]}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"DefaultErrors.js","sourceRoot":"","sources":["../../../src/apiServer/structures/DefaultErrors.ts"],"names":[],"mappings":";;;AAAA,mDAAiE;AAGjE,MAAM,aAAa;IACf,MAAM,CAAC,eAAe,GAAQ,EAAC,IAAI,EAAC,CAAC,EAAC,OAAO,EAAC,iBAAiB,EAAC,CAAA;IAChE,MAAM,CAAC,eAAe,GAAQ,EAAC,IAAI,EAAC,CAAC,EAAC,OAAO,EAAC,iBAAiB,EAAC,CAAA;IAChE,MAAM,CAAC,cAAc,GAAQ,EAAC,IAAI,EAAC,CAAC,EAAC,OAAO,EAAC,gBAAgB,EAAC,CAAA;IAC9D,MAAM,CAAC,cAAc,GAAQ,EAAC,IAAI,EAAC,CAAC,EAAC,OAAO,EAAC,mBAAmB,EAAC,CAAA;IACjE,MAAM,CAAC,cAAc,GAAQ,EAAC,IAAI,EAAC,CAAC,EAAC,OAAO,EAAC,iBAAiB,EAAC,CAAA;IAC/D,MAAM,CAAC,eAAe,GAAQ,EAAC,IAAI,EAAC,CAAC,EAAC,OAAO,EAAC,iBAAiB,EAAC,CAAA;IAChE,MAAM,CAAC,YAAY,GAAQ,EAAC,IAAI,EAAC,CAAC,EAAC,OAAO,EAAC,cAAc,EAAC,CAAA;IAC1D,MAAM,CAAC,WAAW,GAAQ,EAAC,IAAI,EAAC,CAAC,EAAC,OAAO,EAAC,aAAa,EAAC,UAAU,EAAC,GAAG,EAAC,CAAA;IACvE,MAAM,CAAC,mBAAmB,GAAQ,EAAC,IAAI,EAAC,CAAC,EAAC,OAAO,EAAC,qBAAqB,EAAC,CAAA;IACxE,MAAM,CAAC,OAAO,GAAQ,EAAC,IAAI,EAAC,CAAC,EAAC,OAAO,EAAC,SAAS,EAAC,CAAA;;AAGpD,MAAa,UAAU;IAEnB,MAAM,CAAC,OAAO,CAAC,GAAO;QAClB,MAAM,cAAc,GAAG,qBAAS,CAAC,cAAc,CAAC,CAAC,MAAM,EAAC,SAAS,CAAC,EAAC,GAAG,CAAC,CAAA;QAEvE,IAAG,CAAC,cAAc;YACd,OAAO,KAAK,CAAC;QAEjB,IAAG,qBAAS,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,CAAC,KAAG,4BAAgB,CAAC,EAAE;YACtE,OAAO,KAAK,CAAC;QAEjB,IAAG,qBAAS,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,CAAC,KAAG,4BAAgB,CAAC,EAAE;YACzE,OAAO,KAAK,CAAC;QAEjB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,KAAY,EAAC,KAAe;QAC3C,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QACpB,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ;AArBD,gCAqBC;AAED,kBAAe,aAAa,CAAA","sourcesContent":["import { ValidationReport, Validator } from \"../helper/Validator\"\nimport { IError } from \"./Interfaces\"\n\nclass DefaultErrors{\n static NOT_IMPLEMENTED:IError={code:1,message:\"Not implemented\"}\n static UNKNOWN_REQUEST:IError={code:2,message:\"Unknown request\"}\n static JSON_MALFORMED:IError={code:3,message:\"JSON malformed\"}\n static FILE_TOO_LARGE:IError={code:4,message:\"File is too large\"}\n static CANT_SEND_FILE:IError={code:5,message:\"Can't send file\"}\n static FILE_NOT_EXISTS:IError={code:5,message:\"File not exists\"}\n static UNAUTHORIZED:IError={code:6,message:\"Unauthorized\"}\n static BAD_REQUEST:IError={code:7,message:\"Bad request\",httpStatus:400}\n static SERVICE_NOT_WORKING:IError={code:8,message:\"Service not working\"}\n static TIMEOUT:IError={code:9,message:\"Timeout\"}\n}\n\nexport class ErrorUtils{\n\n static isError(obj:any):boolean{\n const isFieldsExists = Validator.validateObject(['code','message'],obj)\n \n if(!isFieldsExists)\n return false;\n \n if(Validator.validateValue(obj.code,{type:\"number\"})!==ValidationReport.OK)\n return false;\n \n if(Validator.validateValue(obj.message,{type:\"string\"})!==ValidationReport.OK)\n return false;\n \n return true;\n }\n\n static appendStack(error:IError,stack?:IError[]):IError{\n error.stack = stack;\n return error;\n }\n}\n\nexport default DefaultErrors"]}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"HTTPStatus.js","sourceRoot":"","sources":["../../../src/apiServer/structures/HTTPStatus.ts"],"names":[],"mappings":";;;AAAA,IAAY,WAMX;AAND,WAAY,WAAW;IACnB,2CAAM,CAAA;IACN,yDAAa,CAAA;IACb,+DAAgB,CAAA;IAChB,6DAAe,CAAA;IACf,+DAAgB,CAAA;AACpB,CAAC,EANW,WAAW,2BAAX,WAAW,QAMtB","sourcesContent":["export enum HTTP_STATUS{\n OK=200,\n NOT_FOUND=404,\n UNAUTHORIZED=401,\n BAD_REQUEST=400,\n SERVER_ERROR=500\n}"]}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"Interfaces.js","sourceRoot":"","sources":["../../../src/apiServer/structures/Interfaces.ts"],"names":[],"mappings":"","sourcesContent":["import { FileArray, UploadedFile } from \"express-fileupload\"\n\nexport interface TransferPacketVO<T=any>{\n data?:T|null,\n error?:IError|null,\n responseTime?:number\n version?:string,\n core?:string,\n endpoint?:string\n httpStatus?:number,\n redirect?:string\n rawResponse?:boolean\n headers?:{[key:string]:string}\n file?:string\n}\n\nexport interface HTTPRequestVO<T=any>{\n raw:any,\n method:string,\n data:T,\n params:{[key:string]:string},\n headers:{[key:string]:string},\n endpoint:string\n interceptorResult?:TransferPacketVO<any>\n preproducerResult?:any\n precheck?:TransferPacketVO<any>|null\n files:FileArray | null | undefined\n referer?:string\n unlocked?:boolean\n}\n\nexport interface IError{\n code:number,\n message:string,\n details?:string,\n httpStatus?:number\n stack?:IError[]\n}"]}
|
File without changes
|
File without changes
|