@resolveio/server-lib 20.7.8 → 20.7.9

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 (47) hide show
  1. package/collections/cron-job.collection.js.map +1 -1
  2. package/collections/email-history.collection.js.map +1 -1
  3. package/collections/email-verified.collection.js.map +1 -1
  4. package/collections/file.collection.js.map +1 -1
  5. package/collections/flag-update.collection.js.map +1 -1
  6. package/collections/flag.collection.js.map +1 -1
  7. package/collections/log-method-latency.collection.js.map +1 -1
  8. package/collections/log-subscription.collection.js.map +1 -1
  9. package/collections/log.collection.js.map +1 -1
  10. package/collections/logged-in-users.collection.js.map +1 -1
  11. package/collections/method-response.collection.js.map +1 -1
  12. package/collections/monitor-cpu.collection.js.map +1 -1
  13. package/collections/monitor-function.collection.js.map +1 -1
  14. package/collections/monitor-memory.collection.js.map +1 -1
  15. package/collections/monitor-mongo.collection.js.map +1 -1
  16. package/collections/notification.collection.js.map +1 -1
  17. package/collections/report-builder-dashboard-builder.collection.js.map +1 -1
  18. package/collections/report-builder-library.collection.js.map +1 -1
  19. package/collections/report-builder-report.collection.js.map +1 -1
  20. package/collections/user-group.collection.js.map +1 -1
  21. package/collections/user.collection.js.map +1 -1
  22. package/cron/cron.d.ts +1 -1
  23. package/cron/cron.js +1 -1
  24. package/cron/cron.js.map +1 -1
  25. package/http/auth.js.map +1 -1
  26. package/http/health.d.ts +1 -1
  27. package/http/health.js +1 -1
  28. package/http/health.js.map +1 -1
  29. package/managers/method.manager.js +1 -1
  30. package/managers/method.manager.js.map +1 -1
  31. package/managers/mongo.manager.d.ts +1 -1
  32. package/managers/mongo.manager.js +1 -1
  33. package/managers/mongo.manager.js.map +1 -1
  34. package/managers/monitor.manager.js.map +1 -1
  35. package/managers/subscription.manager.js.map +1 -1
  36. package/methods/aws.js.map +1 -1
  37. package/methods/cron-jobs.js +1 -1
  38. package/methods/cron-jobs.js.map +1 -1
  39. package/methods/monitor.js.map +1 -1
  40. package/methods/support.js.map +1 -1
  41. package/package.json +1 -1
  42. package/publications/cron-jobs.js.map +1 -1
  43. package/publications/files.js.map +1 -1
  44. package/publications/report-builder-reports.js.map +1 -1
  45. package/server-app.js +1 -1
  46. package/server-app.js.map +1 -1
  47. package/util/schema-report-builder.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/methods/monitor.ts"],"names":["monitor_cpu_collection_1","require","monitor_memory_collection_1","monitor_mongo_collection_1","resolveio_server_app_1","common_1","loadMonitorMethods","methodManager","methods","superadminMonitorGraphData","function","date_start","date_end","collection","instance","client","graphInterval","variable","variableType","groupId","groupDate","second","$second","date","timezone","process","env","TZ_CLIENT","minute","$minute","hour","$hour","day","$dayOfMonth","month","$month","year","$year","query","$match","$and","$gte","$lte","push","metadata.client","metadata.instance","$group","_a","_id","$sum","_b","data","$push","k","$concat","v","$addFields","$arrayToObject","$replaceRoot","newRoot","$mergeObjects","$project","ResolveIOServer","getMongoManager","aggregate","allowDiskUse","readPreference","this","serverConfig","skipValidation","superadminMonitorTableData","Error","firstGroupId","deepCopy","$first","_c","_d","_e","monitorMongos","MonitorMongos","find","monitorCPUs","MonitorCPUs","monitorMemorys","MonitorMemorys","exports"],"mappings":"k8CAAAA,0B,yFAAAC,QAAA,uCAAA,GACAC,4BAAAD,QAAA,0CAAA,EACAE,2BAAAF,QAAA,yCAAA,EAEAG,uBAAAH,QAAA,yBAAA,EACAI,SAAAJ,QAAA,gBAAA,EAEA,SAAgBK,mBAAmBC,GAClCA,EAAcC,QAAQ,CACfC,2BAA4B,CACxBC,SAAU,SAAeC,EAAkBC,EAAgBC,EAAoBC,EAAkBC,EAAgBC,EAAuBC,EAAkBC,G,+FAgPlK,OA/OIC,EAAU,GACVC,EAAY,GA4CfA,EA1CqB,YAAlBJ,GACHG,EAAU,CACTE,OAAQ,CACPC,QAAS,CACRC,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCC,OAAQ,CACPC,QAAS,CACRN,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCG,KAAM,CACLC,MAAO,CACNR,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCK,IAAK,CACJC,YAAa,CACZV,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCO,MAAO,CACNC,OAAQ,CACPZ,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCS,KAAM,CACLC,MAAO,CACNd,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCZ,OAAQ,mBACRD,SAAU,oB,EAGC,CACXsB,KAAQ,YACRF,MAAS,aACTF,IAAO,WACPF,KAAQ,YACRF,OAAU,cACVP,OAAU,a,GAGe,YAAlBL,GACRG,EAAU,CACTS,OAAQ,CACPC,QAAS,CACRN,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCG,KAAM,CACLC,MAAO,CACNR,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCK,IAAK,CACJC,YAAa,CACZV,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCO,MAAO,CACNC,OAAQ,CACPZ,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCS,KAAM,CACLC,MAAO,CACNd,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCZ,OAAQ,mBACRD,SAAU,oB,EAGC,CACXsB,KAAQ,YACRF,MAAS,aACTF,IAAO,WACPF,KAAQ,YACRF,OAAU,a,GAGe,UAAlBZ,GACRG,EAAU,CACTW,KAAM,CACLC,MAAO,CACNR,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCK,IAAK,CACJC,YAAa,CACZV,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCO,MAAO,CACNC,OAAQ,CACPZ,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCS,KAAM,CACLC,MAAO,CACNd,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCZ,OAAQ,mBACRD,SAAU,oB,EAGC,CACXsB,KAAQ,YACRF,MAAS,aACTF,IAAO,WACPF,KAAQ,W,IAITX,EAAU,CACTa,IAAK,CACJC,YAAa,CACZV,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCO,MAAO,CACNC,OAAQ,CACPZ,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCS,KAAM,CACLC,MAAO,CACNd,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCZ,OAAQ,mBACRD,SAAU,oB,EAGC,CACXsB,KAAQ,YACRF,MAAS,aACTF,IAAO,U,GAILM,EAAa,CAChB,CACCC,OAAQ,CACPC,KAAM,CACL,CACCjB,KAAM,CAACkB,KAAM9B,CAAU,C,EAExB,CACCY,KAAM,CAACmB,KAAM9B,CAAQ,C,MAOtBG,GACHuB,EAAM,GAAW,OAAEE,KAAKG,KAAK,CAACC,kBAAmB7B,CAAM,CAAC,EAGrDD,GACHwB,EAAM,GAAW,OAAEE,KAAKG,KAAK,CAACE,oBAAqB/B,CAAQ,CAAC,EAG7DwB,EAAMK,KACL,CACCG,SAAMC,EAAA,CACLC,IAAK7B,C,GACJF,GAA4B,UAAjBC,EAA2B,CAAC+B,KAAM,CAAC,IAAGC,EAAA,IAChD,IAAMhC,GAAe,IAAMD,E,MAG9B,EAGFqB,EAAMK,KACL,CACCG,OAAQ,CACPE,IAAK5B,EACL+B,KAAM,CACLC,MAAO,CAACC,EAAG,CAACC,QAAS,CAAC,cAAe,MAAO,gBAAgB,EAAGC,EAAG,IAAMtC,CAAQ,C,GAGlF,EAGFqB,EAAMK,KACL,CACCa,WAAY,CACXL,KAAM,CACLM,eAAgB,O,GAGlB,EAGFnB,EAAMK,KACL,CACCe,aAAc,CACbC,QAAS,CACRC,cAAe,CAAC,QAAS,S,GAG3B,EAGFtB,EAAMK,KACL,CACCkB,SAAU,CACTV,KAAM,C,EAEP,EAGF,CAAA,EAAO/C,uBAAA0D,gBAAgBC,gBAAe,EAAGlD,WAAWA,CAAU,EAAEmD,UAAU1B,EAAO,CAAC2B,aAAc,CAAA,EAAMC,eAAkD,0BAAlCC,KAAKC,aAAuB,SAAgC,YAAc,SAAS,EAAG,CAAA,CAAI,E,MAEjNC,eAAgB,CAAA,C,EAEjBC,2BAA4B,CAClB5D,SAAU,SAASC,EAAkBC,EAAgBC,EAAoBC,EAAkBC,EAAgBC,EAAuBC,EAAkBC,G,IACxJC,EAAU,GACVC,EAAY,GAEhB,GAAmB,mBAAfP,EACH,MAAM,IAAI0D,MAAM,uEAAuE,EA+JxF,IAnHCnD,EAzCqB,YAAlBJ,GACHG,EAAU,CACTE,OAAQ,CACPC,QAAS,CACRC,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCC,OAAQ,CACPC,QAAS,CACRN,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCG,KAAM,CACLC,MAAO,CACNR,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCK,IAAK,CACJC,YAAa,CACZV,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCO,MAAO,CACNC,OAAQ,CACPZ,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCS,KAAM,CACLC,MAAO,CACNd,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,IAM1B,CACXS,KAAQ,YACRF,MAAS,aACTF,IAAO,WACPF,KAAQ,YACRF,OAAU,cACVP,OAAU,a,GAGe,YAAlBL,GACRG,EAAU,CACTS,OAAQ,CACPC,QAAS,CACRN,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCG,KAAM,CACLC,MAAO,CACNR,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCK,IAAK,CACJC,YAAa,CACZV,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCO,MAAO,CACNC,OAAQ,CACPZ,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCS,KAAM,CACLC,MAAO,CACNd,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,IAK1B,CACXS,KAAQ,YACRF,MAAS,aACTF,IAAO,WACPF,KAAQ,YACRF,OAAU,a,GAGe,UAAlBZ,GACRG,EAAU,CACTW,KAAM,CACLC,MAAO,CACNR,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCK,IAAK,CACJC,YAAa,CACZV,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCO,MAAO,CACNC,OAAQ,CACPZ,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCS,KAAM,CACLC,MAAO,CACNd,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,IAK1B,CACXS,KAAQ,YACRF,MAAS,aACTF,IAAO,WACPF,KAAQ,W,IAITX,EAAU,CACTa,IAAK,CACJC,YAAa,CACZV,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCO,MAAO,CACNC,OAAQ,CACPZ,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,GAGrCS,KAAM,CACLC,MAAO,CACNd,KAAM,QACNC,SAAUC,QAAQC,IAAIC,WAAa,iB,IAK1B,CACXS,KAAQ,YACRF,MAAS,aACTF,IAAO,U,GAILM,EAAa,CAChB,CACCC,OAAQ,CACPC,KAAM,CACL,CACCjB,KAAM,CAACkB,KAAM9B,CAAU,C,EAExB,CACCY,KAAM,CAACmB,KAAM9B,CAAQ,C,MAetB4D,GARAzD,GACHuB,EAAM,GAAW,OAAEE,KAAKG,KAAK,CAAC5B,OAAQ,iBAAiB,CAAC,EAGrDD,GACHwB,EAAM,GAAW,OAAEE,KAAKG,KAAK,CAAC7B,SAAU,mBAAmB,CAAC,GAG1C,EAAAT,SAAAoE,UAAStD,CAAO,GA4EnC,OA3EAqD,EAAqB,OAAI,mBACzBA,EAAuB,SAAI,qBAC3BA,EAAavD,GAAY,IAAMA,EAE/BG,EAAUH,GAAY,IAAMA,EAC5BG,EAAgB,KAAI,QACpBA,EAAgB,KAAI,QAEpBD,EAAgB,OAAI,cACpBA,EAAkB,SAAI,gBAEtBmB,EAAMK,KACL,CACCG,SAAMC,EAAA,CACLC,IAAKwB,C,GACJvD,GAAW,CACXgC,KAAQ,C,EAETF,EAAC9B,EAAW,SAAU,CACrByD,OAAQ,IAAM,CAACzD,E,EAEhB8B,EAAAxB,KAAM,CACLmD,OAAQ,O,KAGV,EAGFpC,EAAMK,KAAK,CACVa,WAAY,CACXL,OAAID,EAAA,IACFjC,GAAW,IAAMA,EAClBiC,EAACjC,EAAW,SAAU,IAAMA,EAAW,Q,IAGzC,EAEDqB,EAAMK,KAAK,CACVG,SAAM6B,EAAA,CACL3B,IAAK7B,C,GACJF,GAAW,CACXgC,KAAQ,SAAWhC,C,EAEpB0D,EAAApD,KAAM,CACLmD,OAAQ,O,EAETC,EAAAxB,KAAM,CACLC,MAAO,O,KAGT,EAEDd,EAAMK,KAAK,CACVa,aAAUoB,EAAA,IACR3D,GAAWG,E,GAEb,EAEDkB,EAAMK,KACL,CACCG,SAAM+B,EAAA,CACL7B,IAAK,CACJjC,OAAQ,cACRD,SAAU,e,EAEXqC,KAAM,CACLC,MAAO,IAAMnC,C,IAEbA,GAAW,CACXgC,KAAM,IAAMhC,EAAW,IAAMA,C,KAG/B,EAGKb,uBAAA0D,gBAAgBC,gBAAe,EAAGlD,WAAWA,CAAU,EAAEmD,UAAU1B,EAAO,CAAC2B,aAAc,CAAA,EAAMC,eAAkD,0BAAlCC,KAAKC,aAAuB,SAAgC,YAAc,SAAS,EAAG,CAAA,CAAI,CACjN,EACAC,eAAgB,CAAA,C,EAEXS,cAAe,CACXpE,SAAU,WACN,OAAOP,2BAAA4E,cAAcC,KAAK,GAAI,CAACd,eAAkD,0BAAlCC,KAAKC,aAAuB,SAAgC,YAAc,SAAS,EAAG,CAAA,CAAI,CAC7I,C,EAEJa,YAAa,CACTvE,SAAU,WACN,OAAOV,yBAAAkF,YAAYF,KAAK,GAAI,CAACd,eAAkD,0BAAlCC,KAAKC,aAAuB,SAAgC,YAAc,SAAS,EAAG,CAAA,CAAI,CAC3I,C,EAEJe,eAAgB,CACZzE,SAAU,WACN,OAAOR,4BAAAkF,eAAeJ,KAAK,GAAI,CAACd,eAAkD,0BAAlCC,KAAKC,aAAuB,SAAgC,YAAc,SAAS,EAAG,CAAA,CAAI,CAC9I,C,EAEV,CACF,CAnhBAiB,QAAA/E,mBAAAA","file":"monitor.js","sourcesContent":["import { MonitorCPUs } from '../collections/monitor-cpu.collection';\nimport { MonitorMemorys } from '../collections/monitor-memory.collection';\nimport { MonitorMongos } from '../collections/monitor-mongo.collection';\nimport { MethodManager } from '../managers/method.manager';\nimport { ResolveIOServer } from '../resolveio-server-app';\nimport { deepCopy } from '../util/common';\n\nexport function loadMonitorMethods(methodManager: MethodManager) {\n\tmethodManager.methods({\n superadminMonitorGraphData: {\n function: async function(date_start: Date, date_end: Date, collection: string, instance: string, client: string, graphInterval: string, variable: string, variableType: string) {\n\t\t\t\tlet groupId = {};\n\t\t\t\tlet groupDate = {};\n\n\t\t\t\tif (graphInterval === 'seconds') {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\tsecond: {\n\t\t\t\t\t\t\t$second: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tminute: {\n\t\t\t\t\t\t\t$minute: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\thour: {\n\t\t\t\t\t\t\t$hour: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tclient: '$metadata.client',\n\t\t\t\t\t\tinstance: '$metadata.instance'\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day',\n\t\t\t\t\t\t'hour': '$_id.hour',\n\t\t\t\t\t\t'minute': '$_id.minute',\n\t\t\t\t\t\t'second': '$_id.second'\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse if (graphInterval === 'minutes') {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\tminute: {\n\t\t\t\t\t\t\t$minute: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\thour: {\n\t\t\t\t\t\t\t$hour: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tclient: '$metadata.client',\n\t\t\t\t\t\tinstance: '$metadata.instance'\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day',\n\t\t\t\t\t\t'hour': '$_id.hour',\n\t\t\t\t\t\t'minute': '$_id.minute'\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse if (graphInterval === 'hours') {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\thour: {\n\t\t\t\t\t\t\t$hour: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tclient: '$metadata.client',\n\t\t\t\t\t\tinstance: '$metadata.instance'\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day',\n\t\t\t\t\t\t'hour': '$_id.hour'\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tclient: '$metadata.client',\n\t\t\t\t\t\tinstance: '$metadata.instance'\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day'\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tlet query = <any>[\n\t\t\t\t\t{\n\t\t\t\t\t\t$match: {\n\t\t\t\t\t\t\t$and: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdate: {$gte: date_start}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdate: {$lte: date_end}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t];\n\n\t\t\t\tif (client) {\n\t\t\t\t\tquery[0]['$match'].$and.push({'metadata.client': client});\n\t\t\t\t}\n\n\t\t\t\tif (instance) {\n\t\t\t\t\tquery[0]['$match'].$and.push({'metadata.instance': instance});\n\t\t\t\t}\n\n\t\t\t\tquery.push(\n\t\t\t\t\t{\n\t\t\t\t\t\t$group: {\n\t\t\t\t\t\t\t_id: groupId,\n\t\t\t\t\t\t\t[variable]: variableType === 'count' ? {$sum: 1} : {\n\t\t\t\t\t\t\t\t['$' + variableType]: '$' + variable\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\tquery.push(\n\t\t\t\t\t{\n\t\t\t\t\t\t$group: {\n\t\t\t\t\t\t\t_id: groupDate,\n\t\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t\t$push: {k: {$concat: ['$_id.client', ' - ', '$_id.instance']}, v: '$' + variable}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\tquery.push(\n\t\t\t\t\t{\n\t\t\t\t\t\t$addFields: {\n\t\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t\t$arrayToObject: '$data'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\tquery.push(\n\t\t\t\t\t{\n\t\t\t\t\t\t$replaceRoot: {\n\t\t\t\t\t\t\tnewRoot: {\n\t\t\t\t\t\t\t\t$mergeObjects: ['$data', '$$ROOT']\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\tquery.push(\n\t\t\t\t\t{\n\t\t\t\t\t\t$project: {\n\t\t\t\t\t\t\tdata: 0\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\treturn ResolveIOServer.getMongoManager().collection(collection).aggregate(query, {allowDiskUse: true, readPreference: this.serverConfig['ROOT_URL'] !== 'http://localhost:4200' ? 'secondary' : 'primary'}, true);\n\t\t\t},\n\t\t\tskipValidation: true\n },\n\t\tsuperadminMonitorTableData: {\n function: function(date_start: Date, date_end: Date, collection: string, instance: string, client: string, graphInterval: string, variable: string, variableType: string) {\n\t\t\t\tlet groupId = {};\n\t\t\t\tlet groupDate = {};\n\n\t\t\t\tif (collection !== 'monitor-mongos') {\n\t\t\t\t\tthrow new Error('Error in Super Admin Monitor Table Data: No monitor-mongos collection');\n\t\t\t\t}\n\n\t\t\t\tif (graphInterval === 'seconds') {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\tsecond: {\n\t\t\t\t\t\t\t$second: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tminute: {\n\t\t\t\t\t\t\t$minute: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\thour: {\n\t\t\t\t\t\t\t$hour: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day',\n\t\t\t\t\t\t'hour': '$_id.hour',\n\t\t\t\t\t\t'minute': '$_id.minute',\n\t\t\t\t\t\t'second': '$_id.second'\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse if (graphInterval === 'minutes') {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\tminute: {\n\t\t\t\t\t\t\t$minute: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\thour: {\n\t\t\t\t\t\t\t$hour: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day',\n\t\t\t\t\t\t'hour': '$_id.hour',\n\t\t\t\t\t\t'minute': '$_id.minute'\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse if (graphInterval === 'hours') {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\thour: {\n\t\t\t\t\t\t\t$hour: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day',\n\t\t\t\t\t\t'hour': '$_id.hour'\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day'\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tlet query = <any>[\n\t\t\t\t\t{\n\t\t\t\t\t\t$match: {\n\t\t\t\t\t\t\t$and: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdate: {$gte: date_start}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdate: {$lte: date_end}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t];\n\n\t\t\t\tif (client) {\n\t\t\t\t\tquery[0]['$match'].$and.push({client: 'metadata.client'});\n\t\t\t\t}\n\n\t\t\t\tif (instance) {\n\t\t\t\t\tquery[0]['$match'].$and.push({instance: 'metadata.instance'});\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tlet firstGroupId = deepCopy(groupId);\n\t\t\t\tfirstGroupId['client'] = '$metadata.client';\n\t\t\t\tfirstGroupId['instance'] = '$metadata.instance';\n\t\t\t\tfirstGroupId[variable] = '$' + variable;\n\t\t\t\t\n\t\t\t\tgroupDate[variable] = '$' + variable;\n\t\t\t\tgroupDate['date'] = '$date';\n\t\t\t\tgroupDate['data'] = '$data';\n\n\t\t\t\tgroupId['client'] = '$_id.client';\n\t\t\t\tgroupId['instance'] = '$_id.instance';\n\t\t\t\t\n\t\t\t\tquery.push(\n\t\t\t\t\t{\n\t\t\t\t\t\t$group: {\n\t\t\t\t\t\t\t_id: firstGroupId,\n\t\t\t\t\t\t\t[variable]: {\n\t\t\t\t\t\t\t\t'$sum': 1\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t[variable + '_name']: {\n\t\t\t\t\t\t\t\t$first: '$' + [variable]\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tdate: {\n\t\t\t\t\t\t\t\t$first: '$date'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\tquery.push({\n\t\t\t\t\t$addFields: {\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t[variable]: '$' + variable,\n\t\t\t\t\t\t\t[variable + '_name']: '$' + variable + '_name'\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tquery.push({\n\t\t\t\t\t$group: {\n\t\t\t\t\t\t_id: groupId,\n\t\t\t\t\t\t[variable]: {\n\t\t\t\t\t\t\t'$sum': '$data.' + variable\n\t\t\t\t\t\t},\n\t\t\t\t\t\tdate: {\n\t\t\t\t\t\t\t$first: '$date'\n\t\t\t\t\t\t},\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t$push: '$data'\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tquery.push({\n\t\t\t\t\t$addFields: {\n\t\t\t\t\t\t[variable]: groupDate\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tquery.push(\n\t\t\t\t\t{\n\t\t\t\t\t\t$group: {\n\t\t\t\t\t\t\t_id: {\n\t\t\t\t\t\t\t\tclient: '$_id.client',\n\t\t\t\t\t\t\t\tinstance: '$_id.instance'\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t\t$push: '$' + variable\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t[variable]: {\n\t\t\t\t\t\t\t\t$sum: '$' + variable + '.' + variable\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\treturn ResolveIOServer.getMongoManager().collection(collection).aggregate(query, {allowDiskUse: true, readPreference: this.serverConfig['ROOT_URL'] !== 'http://localhost:4200' ? 'secondary' : 'primary'}, true);\n\t\t\t},\n\t\t\tskipValidation: true\n },\n monitorMongos: {\n function: function() {\n return MonitorMongos.find({}, {readPreference: this.serverConfig['ROOT_URL'] !== 'http://localhost:4200' ? 'secondary' : 'primary'}, true);\n }\n },\n monitorCPUs: {\n function: function() {\n return MonitorCPUs.find({}, {readPreference: this.serverConfig['ROOT_URL'] !== 'http://localhost:4200' ? 'secondary' : 'primary'}, true);\n }\n },\n monitorMemorys: {\n function: function() {\n return MonitorMemorys.find({}, {readPreference: this.serverConfig['ROOT_URL'] !== 'http://localhost:4200' ? 'secondary' : 'primary'}, true);\n }\n }\n\t});\n}"]}
1
+ {"version":3,"sources":["../../src/methods/monitor.ts"],"names":["monitor_cpu_collection_1","require","monitor_memory_collection_1","monitor_mongo_collection_1","resolveio_server_app_1","common_1","loadMonitorMethods","methodManager","methods","superadminMonitorGraphData","function","date_start","date_end","collection","instance","client","graphInterval","variable","variableType","groupId","groupDate","second","$second","date","timezone","process","env","TZ_CLIENT","minute","$minute","hour","$hour","day","$dayOfMonth","month","$month","year","$year","query","$match","$and","$gte","$lte","push","metadata.client","metadata.instance","$group","_a","_id","$sum","_b","data","$push","k","$concat","v","$addFields","$arrayToObject","$replaceRoot","newRoot","$mergeObjects","$project","ResolveIOServer","getMongoManager","aggregate","allowDiskUse","readPreference","this","serverConfig","skipValidation","superadminMonitorTableData","Error","firstGroupId","deepCopy","$first","_c","_d","_e","monitorMongos","MonitorMongos","find","monitorCPUs","MonitorCPUs","monitorMemorys","MonitorMemorys","exports"],"mappings":"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","file":"monitor.js","sourcesContent":["import { MonitorCPUs } from '../collections/monitor-cpu.collection';\nimport { MonitorMemorys } from '../collections/monitor-memory.collection';\nimport { MonitorMongos } from '../collections/monitor-mongo.collection';\nimport { MethodManager } from '../managers/method.manager';\nimport { ResolveIOServer } from '../resolveio-server-app';\nimport { deepCopy } from '../util/common';\n\nexport function loadMonitorMethods(methodManager: MethodManager) {\n\tmethodManager.methods({\n superadminMonitorGraphData: {\n function: async function(date_start: Date, date_end: Date, collection: string, instance: string, client: string, graphInterval: string, variable: string, variableType: string) {\n\t\t\t\tlet groupId = {};\n\t\t\t\tlet groupDate = {};\n\n\t\t\t\tif (graphInterval === 'seconds') {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\tsecond: {\n\t\t\t\t\t\t\t$second: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tminute: {\n\t\t\t\t\t\t\t$minute: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\thour: {\n\t\t\t\t\t\t\t$hour: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tclient: '$metadata.client',\n\t\t\t\t\t\tinstance: '$metadata.instance'\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day',\n\t\t\t\t\t\t'hour': '$_id.hour',\n\t\t\t\t\t\t'minute': '$_id.minute',\n\t\t\t\t\t\t'second': '$_id.second'\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse if (graphInterval === 'minutes') {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\tminute: {\n\t\t\t\t\t\t\t$minute: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\thour: {\n\t\t\t\t\t\t\t$hour: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tclient: '$metadata.client',\n\t\t\t\t\t\tinstance: '$metadata.instance'\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day',\n\t\t\t\t\t\t'hour': '$_id.hour',\n\t\t\t\t\t\t'minute': '$_id.minute'\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse if (graphInterval === 'hours') {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\thour: {\n\t\t\t\t\t\t\t$hour: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tclient: '$metadata.client',\n\t\t\t\t\t\tinstance: '$metadata.instance'\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day',\n\t\t\t\t\t\t'hour': '$_id.hour'\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tclient: '$metadata.client',\n\t\t\t\t\t\tinstance: '$metadata.instance'\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day'\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tlet query = <any>[\n\t\t\t\t\t{\n\t\t\t\t\t\t$match: {\n\t\t\t\t\t\t\t$and: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdate: {$gte: date_start}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdate: {$lte: date_end}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t];\n\n\t\t\t\tif (client) {\n\t\t\t\t\tquery[0]['$match'].$and.push({'metadata.client': client});\n\t\t\t\t}\n\n\t\t\t\tif (instance) {\n\t\t\t\t\tquery[0]['$match'].$and.push({'metadata.instance': instance});\n\t\t\t\t}\n\n\t\t\t\tquery.push(\n\t\t\t\t\t{\n\t\t\t\t\t\t$group: {\n\t\t\t\t\t\t\t_id: groupId,\n\t\t\t\t\t\t\t[variable]: variableType === 'count' ? {$sum: 1} : {\n\t\t\t\t\t\t\t\t['$' + variableType]: '$' + variable\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\tquery.push(\n\t\t\t\t\t{\n\t\t\t\t\t\t$group: {\n\t\t\t\t\t\t\t_id: groupDate,\n\t\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t\t$push: {k: {$concat: ['$_id.client', ' - ', '$_id.instance']}, v: '$' + variable}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\tquery.push(\n\t\t\t\t\t{\n\t\t\t\t\t\t$addFields: {\n\t\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t\t$arrayToObject: '$data'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\tquery.push(\n\t\t\t\t\t{\n\t\t\t\t\t\t$replaceRoot: {\n\t\t\t\t\t\t\tnewRoot: {\n\t\t\t\t\t\t\t\t$mergeObjects: ['$data', '$$ROOT']\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\tquery.push(\n\t\t\t\t\t{\n\t\t\t\t\t\t$project: {\n\t\t\t\t\t\t\tdata: 0\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\treturn ResolveIOServer.getMongoManager().collection(collection).aggregate(query, {allowDiskUse: true, readPreference: this.serverConfig['ROOT_URL'] !== 'http://localhost:4200' ? 'secondary' : 'primary'}, true);\n\t\t\t},\n\t\t\tskipValidation: true\n },\n\t\tsuperadminMonitorTableData: {\n // eslint-disable-next-line no-unused-vars\n function: function(date_start: Date, date_end: Date, collection: string, instance: string, client: string, graphInterval: string, variable: string, variableType: string) {\n\t\t\t\tlet groupId = {};\n\t\t\t\tlet groupDate = {};\n\n\t\t\t\tif (collection !== 'monitor-mongos') {\n\t\t\t\t\tthrow new Error('Error in Super Admin Monitor Table Data: No monitor-mongos collection');\n\t\t\t\t}\n\n\t\t\t\tif (graphInterval === 'seconds') {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\tsecond: {\n\t\t\t\t\t\t\t$second: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tminute: {\n\t\t\t\t\t\t\t$minute: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\thour: {\n\t\t\t\t\t\t\t$hour: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day',\n\t\t\t\t\t\t'hour': '$_id.hour',\n\t\t\t\t\t\t'minute': '$_id.minute',\n\t\t\t\t\t\t'second': '$_id.second'\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse if (graphInterval === 'minutes') {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\tminute: {\n\t\t\t\t\t\t\t$minute: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\thour: {\n\t\t\t\t\t\t\t$hour: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day',\n\t\t\t\t\t\t'hour': '$_id.hour',\n\t\t\t\t\t\t'minute': '$_id.minute'\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse if (graphInterval === 'hours') {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\thour: {\n\t\t\t\t\t\t\t$hour: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day',\n\t\t\t\t\t\t'hour': '$_id.hour'\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tgroupId = {\n\t\t\t\t\t\tday: {\n\t\t\t\t\t\t\t$dayOfMonth: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tmonth: {\n\t\t\t\t\t\t\t$month: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t},\n\t\t\t\t\t\tyear: {\n\t\t\t\t\t\t\t$year: {\n\t\t\t\t\t\t\t\tdate: '$date',\n\t\t\t\t\t\t\t\ttimezone: process.env.TZ_CLIENT || 'America/Chicago'\n\t\t\t\t\t\t\t} \n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\n\t\t\t\t\tgroupDate = {\n\t\t\t\t\t\t'year': '$_id.year',\n\t\t\t\t\t\t'month': '$_id.month',\n\t\t\t\t\t\t'day': '$_id.day'\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tlet query = <any>[\n\t\t\t\t\t{\n\t\t\t\t\t\t$match: {\n\t\t\t\t\t\t\t$and: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdate: {$gte: date_start}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdate: {$lte: date_end}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t];\n\n\t\t\t\tif (client) {\n\t\t\t\t\tquery[0]['$match'].$and.push({client: 'metadata.client'});\n\t\t\t\t}\n\n\t\t\t\tif (instance) {\n\t\t\t\t\tquery[0]['$match'].$and.push({instance: 'metadata.instance'});\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tlet firstGroupId = deepCopy(groupId);\n\t\t\t\tfirstGroupId['client'] = '$metadata.client';\n\t\t\t\tfirstGroupId['instance'] = '$metadata.instance';\n\t\t\t\tfirstGroupId[variable] = '$' + variable;\n\t\t\t\t\n\t\t\t\tgroupDate[variable] = '$' + variable;\n\t\t\t\tgroupDate['date'] = '$date';\n\t\t\t\tgroupDate['data'] = '$data';\n\n\t\t\t\tgroupId['client'] = '$_id.client';\n\t\t\t\tgroupId['instance'] = '$_id.instance';\n\t\t\t\t\n\t\t\t\tquery.push(\n\t\t\t\t\t{\n\t\t\t\t\t\t$group: {\n\t\t\t\t\t\t\t_id: firstGroupId,\n\t\t\t\t\t\t\t[variable]: {\n\t\t\t\t\t\t\t\t'$sum': 1\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t[variable + '_name']: {\n\t\t\t\t\t\t\t\t$first: '$' + [variable]\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tdate: {\n\t\t\t\t\t\t\t\t$first: '$date'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\tquery.push({\n\t\t\t\t\t$addFields: {\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t[variable]: '$' + variable,\n\t\t\t\t\t\t\t[variable + '_name']: '$' + variable + '_name'\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tquery.push({\n\t\t\t\t\t$group: {\n\t\t\t\t\t\t_id: groupId,\n\t\t\t\t\t\t[variable]: {\n\t\t\t\t\t\t\t'$sum': '$data.' + variable\n\t\t\t\t\t\t},\n\t\t\t\t\t\tdate: {\n\t\t\t\t\t\t\t$first: '$date'\n\t\t\t\t\t\t},\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t$push: '$data'\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tquery.push({\n\t\t\t\t\t$addFields: {\n\t\t\t\t\t\t[variable]: groupDate\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tquery.push(\n\t\t\t\t\t{\n\t\t\t\t\t\t$group: {\n\t\t\t\t\t\t\t_id: {\n\t\t\t\t\t\t\t\tclient: '$_id.client',\n\t\t\t\t\t\t\t\tinstance: '$_id.instance'\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t\t$push: '$' + variable\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t[variable]: {\n\t\t\t\t\t\t\t\t$sum: '$' + variable + '.' + variable\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\treturn ResolveIOServer.getMongoManager().collection(collection).aggregate(query, {allowDiskUse: true, readPreference: this.serverConfig['ROOT_URL'] !== 'http://localhost:4200' ? 'secondary' : 'primary'}, true);\n\t\t\t},\n\t\t\tskipValidation: true\n },\n monitorMongos: {\n function: function() {\n return MonitorMongos.find({}, {readPreference: this.serverConfig['ROOT_URL'] !== 'http://localhost:4200' ? 'secondary' : 'primary'}, true);\n }\n },\n monitorCPUs: {\n function: function() {\n return MonitorCPUs.find({}, {readPreference: this.serverConfig['ROOT_URL'] !== 'http://localhost:4200' ? 'secondary' : 'primary'}, true);\n }\n },\n monitorMemorys: {\n function: function() {\n return MonitorMemorys.find({}, {readPreference: this.serverConfig['ROOT_URL'] !== 'http://localhost:4200' ? 'secondary' : 'primary'}, true);\n }\n }\n\t});\n}"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/methods/support.ts"],"names":["axios_1","require","simpl_schema_1","loadSupportMethods","methodManager","methods","supportCreateBillingUser","check","default","user","type","Object","blackbox","function","post","_a","sent","data","result","supportGetSupportTicketWithId","id_support_ticket","String","message","concat","error_2","supportInsertSupportTicket","skipValidation","supportTicket","error_3","supportUpdateSupportTicket","error_4","supportticketsWithOptions","options","options.limit","Number","options.skip","options.sort","options.fields","searchString","filters","Array","filters.$","error_5","supportticketCount","error_6","exports"],"mappings":"k8CAAAA,S,yFAAAC,QAAA,OAAA,GACAC,eAAAD,QAAA,cAAA,EAGA,SAAgBE,mBAAmBC,GAClCA,EAAcC,QAAQ,CACfC,yBAA0B,CACzBC,MAAO,IAAIL,eAAAM,QAAa,CAC7BC,KAAM,CACLC,KAAMC,OACNC,SAAU,CAAA,C,EAEF,EACDC,SAAU,SAAeJ,G,0GAEN,O,sBAAA,CAAA,EAAMT,QAAAQ,QAAMM,KAAK,yDAA0DL,CAAI,G,OAC1F,MAAA,CAAA,EADWM,EAAAC,KAAA,EACCC,KAAKC,Q,OAGjB,O,SAAA,CAAA,EAAO,CAAA,G,wBAIzBC,8BAA+B,CACxBZ,MAAO,IAAIL,eAAAM,QAAa,CAC7BY,kBAAmB,CAClBV,KAAMW,M,EAEE,EACDR,SAAU,SAAeO,G,gHAEN,O,sBAAA,CAAA,EAAMpB,QAAAQ,QAAMM,KAAK,gEAAiE,CAACM,kBAAmBA,CAAiB,CAAC,G,OAEnI,MAAA,CAAA,EAFWL,EAAAC,KAAA,EAECC,KAAKC,Q,OAIjB,M,YADMI,QAAU,gDAAAC,OAAgDC,EAAMF,OAAO,EACvEE,E,wBAIxBC,2BAA4B,CACrBC,eAAgB,CAAA,EACbb,SAAU,SAAec,G,gHAEN,O,sBAAA,CAAA,EAAM3B,QAAAQ,QAAMM,KAAK,gEAAiEa,CAAa,G,OAE1G,MAAA,CAAA,EAFWZ,EAAAC,KAAA,EAECC,KAAKC,Q,OAIjB,M,YADMI,QAAU,2CAAAC,OAA2CK,EAAMN,OAAO,EAClEM,E,wBAIxBC,2BAA4B,CAC3BH,eAAgB,CAAA,EACPb,SAAU,SAAec,G,gHAEN,O,sBAAA,CAAA,EAAM3B,QAAAQ,QAAMM,KAAK,gEAAiEa,CAAa,G,OAE1G,MAAA,CAAA,EAFWZ,EAAAC,KAAA,EAECC,KAAKC,Q,OAIjB,M,YADMI,QAAU,2CAAAC,OAA2CO,EAAMR,OAAO,EAClEQ,E,wBAIxBC,0BAA2B,CAC1BxB,MAAO,IAAIL,eAAAM,QAAa,CACvBwB,QAAS,CACRtB,KAAMC,M,EAEPsB,gBAAiB,CAChBvB,KAAMwB,M,EAEPC,eAAgB,CACfzB,KAAMwB,M,EAEPE,eAAgB,CACf1B,KAAMC,OACNC,SAAU,CAAA,C,EAEXyB,iBAAkB,CACjB3B,KAAMC,OACNC,SAAU,CAAA,C,EAEX0B,aAAc,CACb5B,KAAMW,M,EAEPkB,QAAS,CACR7B,KAAM8B,K,EAEPC,YAAa,CACZ/B,KAAMC,OACNC,SAAU,CAAA,C,EAEF,EACDC,SAAU,SAAemB,EAASM,EAAcC,G,gHAE7B,O,sBAAA,CAAA,EAAMvC,QAAAQ,QAAMM,KAAK,sEAAuE,CAACkB,EAASM,EAAcC,EAAQ,G,OAEnI,MAAA,CAAA,EAFWxB,EAAAC,KAAA,EAECC,KAAKC,Q,OAIjB,M,YADMI,QAAU,0CAAAC,OAA0CmB,EAAMpB,OAAO,EACjEoB,E,wBAIxBC,mBAAoB,CACnBpC,MAAO,IAAIL,eAAAM,QAAa,CACvB8B,aAAc,CACb5B,KAAMW,M,EAEPkB,QAAS,CACR7B,KAAM8B,K,EAEPC,YAAa,CACZ/B,KAAMC,OACNC,SAAU,CAAA,C,EAEF,EACDC,SAAU,SAAeyB,EAAcC,G,gHAEpB,O,sBAAA,CAAA,EAAMvC,QAAAQ,QAAMM,KAAK,gEAAiE,CAACwB,EAAcC,EAAQ,G,OAEpH,MAAA,CAAA,EAFWxB,EAAAC,KAAA,EAECC,KAAKC,Q,OAIjB,M,YADMI,QAAU,kCAAAC,OAAkCqB,EAAMtB,OAAO,EACzDsB,E,wBAIxB,CACF,CArIAC,QAAA1C,mBAAAA","file":"support.js","sourcesContent":["import axios from 'axios';\nimport SimpleSchema from 'simpl-schema';\nimport { MethodManager } from '../managers/method.manager';\n\nexport function loadSupportMethods(methodManager: MethodManager) {\n\tmethodManager.methods({\n supportCreateBillingUser: {\n \tcheck: new SimpleSchema({\n\t\t\t\tuser: {\n\t\t\t\t\ttype: Object,\n\t\t\t\t\tblackbox: true\n\t\t\t\t}\n }),\n function: async function(user) {\n try {\n let body = await axios.post('https://backend.resolveio.com/api/support/billing-user', user);\n return body.data.result;\n }\n catch(error) {\n return false;\n }\n }\n\t\t},\n\t\tsupportGetSupportTicketWithId: {\n \tcheck: new SimpleSchema({\n\t\t\t\tid_support_ticket: {\n\t\t\t\t\ttype: String\n\t\t\t\t}\n }),\n function: async function(id_support_ticket) {\n try {\n let body = await axios.post('https://backend.resolveio.com/api/support/supportTicketWithId', {id_support_ticket: id_support_ticket});\n\n return body.data.result;\n }\n catch(error) {\n error.message = `Error in Support Get Support Ticket With Id: ${error.message}`;\n throw error;\n }\n }\n\t\t},\n\t\tsupportInsertSupportTicket: {\n \tskipValidation: true,\n function: async function(supportTicket) {\n try {\n let body = await axios.post('https://backend.resolveio.com/api/support/supportInsertTicket', supportTicket);\n\n return body.data.result;\n }\n catch(error) {\n error.message = `Error in Support Insert Support Ticket: ${error.message}`;\n throw error;\n }\n }\n\t\t},\n\t\tsupportUpdateSupportTicket: {\n\t\t\tskipValidation: true,\n function: async function(supportTicket) {\n try {\n let body = await axios.post('https://backend.resolveio.com/api/support/supportUpdateTicket', supportTicket);\n\n return body.data.result;\n }\n catch(error) {\n error.message = `Error in Support Update Support Ticket: ${error.message}`;\n throw error;\n }\n }\n\t\t},\n\t\tsupportticketsWithOptions: {\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\toptions: {\n\t\t\t\t\ttype: Object\n\t\t\t\t},\n\t\t\t\t'options.limit': {\n\t\t\t\t\ttype: Number\n\t\t\t\t},\n\t\t\t\t'options.skip': {\n\t\t\t\t\ttype: Number\n\t\t\t\t},\n\t\t\t\t'options.sort': {\n\t\t\t\t\ttype: Object,\n\t\t\t\t\tblackbox: true\n\t\t\t\t},\n\t\t\t\t'options.fields': {\n\t\t\t\t\ttype: Object,\n\t\t\t\t\tblackbox: true\n\t\t\t\t},\n\t\t\t\tsearchString: {\n\t\t\t\t\ttype: String\n\t\t\t\t},\n\t\t\t\tfilters: {\n\t\t\t\t\ttype: Array\n\t\t\t\t},\n\t\t\t\t'filters.$': {\n\t\t\t\t\ttype: Object,\n\t\t\t\t\tblackbox: true\n\t\t\t\t}\n }),\n function: async function(options, searchString, filters) {\n try {\n let body = await axios.post('https://backend.resolveio.com/api/support/supportticketsWithOptions', [options, searchString, filters]);\n\n return body.data.result;\n }\n catch(error) {\n error.message = `Error in Support Tickets With Options: ${error.message}`;\n throw error;\n }\n }\n\t\t},\n\t\tsupportticketCount: {\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\tsearchString: {\n\t\t\t\t\ttype: String\n\t\t\t\t},\n\t\t\t\tfilters: {\n\t\t\t\t\ttype: Array\n\t\t\t\t},\n\t\t\t\t'filters.$': {\n\t\t\t\t\ttype: Object,\n\t\t\t\t\tblackbox: true\n\t\t\t\t}\n }),\n function: async function(searchString, filters) {\n try {\n let body = await axios.post('https://backend.resolveio.com/api/support/supportCountTickets', [searchString, filters]);\n\n return body.data.result;\n }\n catch(error) {\n error.message = `Error in Support Ticket Count: ${error.message}`;\n throw error;\n }\n }\n\t\t}\n\t});\n}"]}
1
+ {"version":3,"sources":["../../src/methods/support.ts"],"names":["axios_1","require","simpl_schema_1","loadSupportMethods","methodManager","methods","supportCreateBillingUser","check","default","user","type","Object","blackbox","function","post","_b","sent","data","result","supportGetSupportTicketWithId","id_support_ticket","String","_a","message","concat","error_1","supportInsertSupportTicket","skipValidation","supportTicket","error_2","supportUpdateSupportTicket","error_3","supportticketsWithOptions","options","options.limit","Number","options.skip","options.sort","options.fields","searchString","filters","Array","filters.$","error_4","supportticketCount","error_5","exports"],"mappings":"k8CAAAA,S,yFAAAC,QAAA,OAAA,GACAC,eAAAD,QAAA,cAAA,EAGA,SAAgBE,mBAAmBC,GAClCA,EAAcC,QAAQ,CACfC,yBAA0B,CACzBC,MAAO,IAAIL,eAAAM,QAAa,CAC7BC,KAAM,CACLC,KAAMC,OACNC,SAAU,CAAA,C,EAEF,EACDC,SAAU,SAAeJ,G,0GAEN,O,sBAAA,CAAA,EAAMT,QAAAQ,QAAMM,KAAK,yDAA0DL,CAAI,G,OAC1F,MAAA,CAAA,EADWM,EAAAC,KAAA,EACCC,KAAKC,Q,OAGjB,O,SAAA,CAAA,EAAO,CAAA,G,wBAIzBC,8BAA+B,CACxBZ,MAAO,IAAIL,eAAAM,QAAa,CAC7BY,kBAAmB,CAClBV,KAAMW,M,EAEE,EACDR,SAAU,SAAeO,G,gHAEN,O,sBAAA,CAAA,EAAMpB,QAAAQ,QAAMM,KAAK,gEAAiE,CAACM,kBAAmBA,CAAiB,CAAC,G,OAEnI,MAAA,CAAA,EAFWE,EAAAN,KAAA,EAECC,KAAKC,Q,OAIjB,M,YADMK,QAAU,gDAAAC,OAAgDC,EAAMF,OAAO,EACvEE,E,wBAIxBC,2BAA4B,CACrBC,eAAgB,CAAA,EACbd,SAAU,SAAee,G,gHAEN,O,sBAAA,CAAA,EAAM5B,QAAAQ,QAAMM,KAAK,gEAAiEc,CAAa,G,OAE1G,MAAA,CAAA,EAFWN,EAAAN,KAAA,EAECC,KAAKC,Q,OAIjB,M,YADMK,QAAU,2CAAAC,OAA2CK,EAAMN,OAAO,EAClEM,E,wBAIxBC,2BAA4B,CAC3BH,eAAgB,CAAA,EACPd,SAAU,SAAee,G,gHAEN,O,sBAAA,CAAA,EAAM5B,QAAAQ,QAAMM,KAAK,gEAAiEc,CAAa,G,OAE1G,MAAA,CAAA,EAFWN,EAAAN,KAAA,EAECC,KAAKC,Q,OAIjB,M,YADMK,QAAU,2CAAAC,OAA2CO,EAAMR,OAAO,EAClEQ,E,wBAIxBC,0BAA2B,CAC1BzB,MAAO,IAAIL,eAAAM,QAAa,CACvByB,QAAS,CACRvB,KAAMC,M,EAEPuB,gBAAiB,CAChBxB,KAAMyB,M,EAEPC,eAAgB,CACf1B,KAAMyB,M,EAEPE,eAAgB,CACf3B,KAAMC,OACNC,SAAU,CAAA,C,EAEX0B,iBAAkB,CACjB5B,KAAMC,OACNC,SAAU,CAAA,C,EAEX2B,aAAc,CACb7B,KAAMW,M,EAEPmB,QAAS,CACR9B,KAAM+B,K,EAEPC,YAAa,CACZhC,KAAMC,OACNC,SAAU,CAAA,C,EAEF,EACDC,SAAU,SAAeoB,EAASM,EAAcC,G,gHAE7B,O,sBAAA,CAAA,EAAMxC,QAAAQ,QAAMM,KAAK,sEAAuE,CAACmB,EAASM,EAAcC,EAAQ,G,OAEnI,MAAA,CAAA,EAFWlB,EAAAN,KAAA,EAECC,KAAKC,Q,OAIjB,M,YADMK,QAAU,0CAAAC,OAA0CmB,EAAMpB,OAAO,EACjEoB,E,wBAIxBC,mBAAoB,CACnBrC,MAAO,IAAIL,eAAAM,QAAa,CACvB+B,aAAc,CACb7B,KAAMW,M,EAEPmB,QAAS,CACR9B,KAAM+B,K,EAEPC,YAAa,CACZhC,KAAMC,OACNC,SAAU,CAAA,C,EAEF,EACDC,SAAU,SAAe0B,EAAcC,G,gHAEpB,O,sBAAA,CAAA,EAAMxC,QAAAQ,QAAMM,KAAK,gEAAiE,CAACyB,EAAcC,EAAQ,G,OAEpH,MAAA,CAAA,EAFWlB,EAAAN,KAAA,EAECC,KAAKC,Q,OAIjB,M,YADMK,QAAU,kCAAAC,OAAkCqB,EAAMtB,OAAO,EACzDsB,E,wBAIxB,CACF,CArIAC,QAAA3C,mBAAAA","file":"support.js","sourcesContent":["import axios from 'axios';\nimport SimpleSchema from 'simpl-schema';\nimport { MethodManager } from '../managers/method.manager';\n\nexport function loadSupportMethods(methodManager: MethodManager) {\n\tmethodManager.methods({\n supportCreateBillingUser: {\n \tcheck: new SimpleSchema({\n\t\t\t\tuser: {\n\t\t\t\t\ttype: Object,\n\t\t\t\t\tblackbox: true\n\t\t\t\t}\n }),\n function: async function(user) {\n try {\n let body = await axios.post('https://backend.resolveio.com/api/support/billing-user', user);\n return body.data.result;\n }\n catch {\n return false;\n }\n }\n\t\t},\n\t\tsupportGetSupportTicketWithId: {\n \tcheck: new SimpleSchema({\n\t\t\t\tid_support_ticket: {\n\t\t\t\t\ttype: String\n\t\t\t\t}\n }),\n function: async function(id_support_ticket) {\n try {\n let body = await axios.post('https://backend.resolveio.com/api/support/supportTicketWithId', {id_support_ticket: id_support_ticket});\n\n return body.data.result;\n }\n catch(error) {\n error.message = `Error in Support Get Support Ticket With Id: ${error.message}`;\n throw error;\n }\n }\n\t\t},\n\t\tsupportInsertSupportTicket: {\n \tskipValidation: true,\n function: async function(supportTicket) {\n try {\n let body = await axios.post('https://backend.resolveio.com/api/support/supportInsertTicket', supportTicket);\n\n return body.data.result;\n }\n catch(error) {\n error.message = `Error in Support Insert Support Ticket: ${error.message}`;\n throw error;\n }\n }\n\t\t},\n\t\tsupportUpdateSupportTicket: {\n\t\t\tskipValidation: true,\n function: async function(supportTicket) {\n try {\n let body = await axios.post('https://backend.resolveio.com/api/support/supportUpdateTicket', supportTicket);\n\n return body.data.result;\n }\n catch(error) {\n error.message = `Error in Support Update Support Ticket: ${error.message}`;\n throw error;\n }\n }\n\t\t},\n\t\tsupportticketsWithOptions: {\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\toptions: {\n\t\t\t\t\ttype: Object\n\t\t\t\t},\n\t\t\t\t'options.limit': {\n\t\t\t\t\ttype: Number\n\t\t\t\t},\n\t\t\t\t'options.skip': {\n\t\t\t\t\ttype: Number\n\t\t\t\t},\n\t\t\t\t'options.sort': {\n\t\t\t\t\ttype: Object,\n\t\t\t\t\tblackbox: true\n\t\t\t\t},\n\t\t\t\t'options.fields': {\n\t\t\t\t\ttype: Object,\n\t\t\t\t\tblackbox: true\n\t\t\t\t},\n\t\t\t\tsearchString: {\n\t\t\t\t\ttype: String\n\t\t\t\t},\n\t\t\t\tfilters: {\n\t\t\t\t\ttype: Array\n\t\t\t\t},\n\t\t\t\t'filters.$': {\n\t\t\t\t\ttype: Object,\n\t\t\t\t\tblackbox: true\n\t\t\t\t}\n }),\n function: async function(options, searchString, filters) {\n try {\n let body = await axios.post('https://backend.resolveio.com/api/support/supportticketsWithOptions', [options, searchString, filters]);\n\n return body.data.result;\n }\n catch(error) {\n error.message = `Error in Support Tickets With Options: ${error.message}`;\n throw error;\n }\n }\n\t\t},\n\t\tsupportticketCount: {\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\tsearchString: {\n\t\t\t\t\ttype: String\n\t\t\t\t},\n\t\t\t\tfilters: {\n\t\t\t\t\ttype: Array\n\t\t\t\t},\n\t\t\t\t'filters.$': {\n\t\t\t\t\ttype: Object,\n\t\t\t\t\tblackbox: true\n\t\t\t\t}\n }),\n function: async function(searchString, filters) {\n try {\n let body = await axios.post('https://backend.resolveio.com/api/support/supportCountTickets', [searchString, filters]);\n\n return body.data.result;\n }\n catch(error) {\n error.message = `Error in Support Ticket Count: ${error.message}`;\n throw error;\n }\n }\n\t\t}\n\t});\n}"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@resolveio/server-lib",
3
- "version": "20.7.8",
3
+ "version": "20.7.9",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "package": "./build_package.sh",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/publications/cron-jobs.ts"],"names":["simpl_schema_1","require","cron_job_collection_1","loadCronJobPublications","subscriptionManager","publications","cronjobs","function","CronJobs","find","sort","name","collections","cronjobsReportBuilderWithIdUser","id_user","$and","method_run_data","$exists","method_run_data.id_user","method_run_data.type","check","default","type","String","exports"],"mappings":"2GAAA,IAAAA,eAAAC,QAAA,cAAA,EAEAC,sBAAAD,QAAA,oCAAA,EAGA,SAAgBE,wBAAwBC,GACvCA,EAAoBC,aAAa,CAChCC,SAAU,CACTC,SAAU,WACT,OAAOL,sBAAAM,SAASC,KAAK,GAAI,CAACC,KAAM,CAACC,KAAM,CAAC,CAAC,CAAC,CAC3C,EACAC,YAAa,CAAC,Y,EAEfC,gCAAiC,CAChCN,SAAU,SAASO,GAClB,OAAOZ,sBAAAM,SAASC,KAAK,CAACM,KAAM,CAC3B,CAACC,gBAAiB,CAACC,QAAS,CAAC,CAAC,EAC9B,CAACC,0BAA2BJ,CAAO,EACnC,CAACK,uBAAwB,8BAA8B,EACvD,CAAC,CACH,EACAC,MAAO,IAAIpB,eAAAqB,QAAa,CACvBP,QAAS,CACRQ,KAAMC,M,EAEP,EACDX,YAAa,CAAC,Y,EAEf,CACF,CAxBAY,QAAArB,wBAAAA","file":"cron-jobs.js","sourcesContent":["import SimpleSchema from 'simpl-schema';\nimport { SubscriptionManager } from '../managers/subscription.manager';\nimport { CronJobs } from '../collections/cron-job.collection';\nimport { CollectionDocument } from '../models/collection-document.model';\n\nexport function loadCronJobPublications(subscriptionManager: SubscriptionManager) {\n\tsubscriptionManager.publications({\n\t\tcronjobs: {\n\t\t\tfunction: function() {\n\t\t\t\treturn CronJobs.find({}, {sort: {name: 1}});\n\t\t\t},\n\t\t\tcollections: ['cron-jobs']\n\t\t},\n\t\tcronjobsReportBuilderWithIdUser: {\n\t\t\tfunction: function(id_user: string) {\n\t\t\t\treturn CronJobs.find({$and: [\n\t\t\t\t\t{method_run_data: {$exists: 1}},\n\t\t\t\t\t{'method_run_data.id_user': id_user},\n\t\t\t\t\t{'method_run_data.type': 'Report Builder Scheduled Job'}\n\t\t\t\t]});\n\t\t\t},\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\tid_user: {\n\t\t\t\t\ttype: String\n\t\t\t\t}\n\t\t\t}),\n\t\t\tcollections: ['cron-jobs']\n\t\t}\n\t});\n}"]}
1
+ {"version":3,"sources":["../../src/publications/cron-jobs.ts"],"names":["simpl_schema_1","require","cron_job_collection_1","loadCronJobPublications","subscriptionManager","publications","cronjobs","function","CronJobs","find","sort","name","collections","cronjobsReportBuilderWithIdUser","id_user","$and","method_run_data","$exists","method_run_data.id_user","method_run_data.type","check","default","type","String","exports"],"mappings":"2GAAA,IAAAA,eAAAC,QAAA,cAAA,EACAC,sBAAAD,QAAA,oCAAA,EAGA,SAAgBE,wBAAwBC,GACvCA,EAAoBC,aAAa,CAChCC,SAAU,CACTC,SAAU,WACT,OAAOL,sBAAAM,SAASC,KAAK,GAAI,CAACC,KAAM,CAACC,KAAM,CAAC,CAAC,CAAC,CAC3C,EACAC,YAAa,CAAC,Y,EAEfC,gCAAiC,CAChCN,SAAU,SAASO,GAClB,OAAOZ,sBAAAM,SAASC,KAAK,CAACM,KAAM,CAC3B,CAACC,gBAAiB,CAACC,QAAS,CAAC,CAAC,EAC9B,CAACC,0BAA2BJ,CAAO,EACnC,CAACK,uBAAwB,8BAA8B,EACvD,CAAC,CACH,EACAC,MAAO,IAAIpB,eAAAqB,QAAa,CACvBP,QAAS,CACRQ,KAAMC,M,EAEP,EACDX,YAAa,CAAC,Y,EAEf,CACF,CAxBAY,QAAArB,wBAAAA","file":"cron-jobs.js","sourcesContent":["import SimpleSchema from 'simpl-schema';\nimport { CronJobs } from '../collections/cron-job.collection';\nimport { SubscriptionManager } from '../managers/subscription.manager';\n\nexport function loadCronJobPublications(subscriptionManager: SubscriptionManager) {\n\tsubscriptionManager.publications({\n\t\tcronjobs: {\n\t\t\tfunction: function() {\n\t\t\t\treturn CronJobs.find({}, {sort: {name: 1}});\n\t\t\t},\n\t\t\tcollections: ['cron-jobs']\n\t\t},\n\t\tcronjobsReportBuilderWithIdUser: {\n\t\t\tfunction: function(id_user: string) {\n\t\t\t\treturn CronJobs.find({$and: [\n\t\t\t\t\t{method_run_data: {$exists: 1}},\n\t\t\t\t\t{'method_run_data.id_user': id_user},\n\t\t\t\t\t{'method_run_data.type': 'Report Builder Scheduled Job'}\n\t\t\t\t]});\n\t\t\t},\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\tid_user: {\n\t\t\t\t\ttype: String\n\t\t\t\t}\n\t\t\t}),\n\t\t\tcollections: ['cron-jobs']\n\t\t}\n\t});\n}"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/publications/files.ts"],"names":["simpl_schema_1","require","file_collection_1","loadFilePublications","subscriptionManager","publications","fileWithId","function","id_file","Files","findById","check","default","type","String","collections","filesIn","id_files","find","_id","$in","sort","name","Array","id_files.$","exports"],"mappings":"wGAAA,IAAAA,eAAAC,QAAA,cAAA,EACAC,kBAAAD,QAAA,gCAAA,EAIA,SAAgBE,qBAAqBC,GACpCA,EAAoBC,aAAa,CAChCC,WAAY,CACXC,SAAU,SAASC,GAClB,OAAON,kBAAAO,MAAMC,SAASF,CAAO,CAC9B,EACAG,MAAO,IAAIX,eAAAY,QAAa,CACvBJ,QAAS,CACRK,KAAMC,M,EAEP,EACDC,YAAa,CAAC,Q,EAEfC,QAAS,CACRT,SAAU,SAASU,GAClB,OAAOf,kBAAAO,MAAMS,KAAK,CAACC,IAAK,CAACC,IAAKH,CAAQ,CAAC,EAAG,CAACI,KAAM,CAACC,KAAM,CAAC,CAAC,CAAC,CAC5D,EACAX,MAAO,IAAIX,eAAAY,QAAa,CACvBK,SAAU,CACTJ,KAAMU,K,EAEPC,aAAc,CACbX,KAAMC,M,EAEP,EACDC,YAAa,CAAC,Q,EAEf,CACF,CA5BAU,QAAAtB,qBAAAA","file":"files.js","sourcesContent":["import SimpleSchema from 'simpl-schema';\nimport { Files } from '../collections/file.collection';\nimport { SubscriptionManager } from '../managers/subscription.manager';\nimport { CollectionDocument } from '../models/collection-document.model';\n\nexport function loadFilePublications(subscriptionManager: SubscriptionManager) {\n\tsubscriptionManager.publications({\n\t\tfileWithId: {\n\t\t\tfunction: function(id_file: string) {\n\t\t\t\treturn Files.findById(id_file);\n\t\t\t},\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\tid_file: {\n\t\t\t\t\ttype: String\n\t\t\t\t}\n\t\t\t}),\n\t\t\tcollections: ['files']\n\t\t},\n\t\tfilesIn: {\n\t\t\tfunction: function(id_files: string[]) {\n\t\t\t\treturn Files.find({_id: {$in: id_files}}, {sort: {name: 1}});\n\t\t\t},\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\tid_files: {\n\t\t\t\t\ttype: Array\n\t\t\t\t},\n\t\t\t\t'id_files.$': {\n\t\t\t\t\ttype: String\n\t\t\t\t}\n\t\t\t}),\n\t\t\tcollections: ['files']\n\t\t}\n\t});\n}"]}
1
+ {"version":3,"sources":["../../src/publications/files.ts"],"names":["simpl_schema_1","require","file_collection_1","loadFilePublications","subscriptionManager","publications","fileWithId","function","id_file","Files","findById","check","default","type","String","collections","filesIn","id_files","find","_id","$in","sort","name","Array","id_files.$","exports"],"mappings":"wGAAA,IAAAA,eAAAC,QAAA,cAAA,EACAC,kBAAAD,QAAA,gCAAA,EAGA,SAAgBE,qBAAqBC,GACpCA,EAAoBC,aAAa,CAChCC,WAAY,CACXC,SAAU,SAASC,GAClB,OAAON,kBAAAO,MAAMC,SAASF,CAAO,CAC9B,EACAG,MAAO,IAAIX,eAAAY,QAAa,CACvBJ,QAAS,CACRK,KAAMC,M,EAEP,EACDC,YAAa,CAAC,Q,EAEfC,QAAS,CACRT,SAAU,SAASU,GAClB,OAAOf,kBAAAO,MAAMS,KAAK,CAACC,IAAK,CAACC,IAAKH,CAAQ,CAAC,EAAG,CAACI,KAAM,CAACC,KAAM,CAAC,CAAC,CAAC,CAC5D,EACAX,MAAO,IAAIX,eAAAY,QAAa,CACvBK,SAAU,CACTJ,KAAMU,K,EAEPC,aAAc,CACbX,KAAMC,M,EAEP,EACDC,YAAa,CAAC,Q,EAEf,CACF,CA5BAU,QAAAtB,qBAAAA","file":"files.js","sourcesContent":["import SimpleSchema from 'simpl-schema';\nimport { Files } from '../collections/file.collection';\nimport { SubscriptionManager } from '../managers/subscription.manager';\n\nexport function loadFilePublications(subscriptionManager: SubscriptionManager) {\n\tsubscriptionManager.publications({\n\t\tfileWithId: {\n\t\t\tfunction: function(id_file: string) {\n\t\t\t\treturn Files.findById(id_file);\n\t\t\t},\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\tid_file: {\n\t\t\t\t\ttype: String\n\t\t\t\t}\n\t\t\t}),\n\t\t\tcollections: ['files']\n\t\t},\n\t\tfilesIn: {\n\t\t\tfunction: function(id_files: string[]) {\n\t\t\t\treturn Files.find({_id: {$in: id_files}}, {sort: {name: 1}});\n\t\t\t},\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\tid_files: {\n\t\t\t\t\ttype: Array\n\t\t\t\t},\n\t\t\t\t'id_files.$': {\n\t\t\t\t\ttype: String\n\t\t\t\t}\n\t\t\t}),\n\t\t\tcollections: ['files']\n\t\t}\n\t});\n}"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/publications/report-builder-reports.ts"],"names":["simpl_schema_1","require","report_builder_report_collection_1","loadReportBuilderReportPublications","subscriptionManager","publications","reportbuilderreports","function","ReportBuilderReports","find","sort","report_name","collections","reportbuilderreportsWithIdUser","check","default","id_user","type","String","reportbuilderreportWithId","id","findOne","_id","reportbuilderreportsWithCustomerId","shared_users","$in","exports"],"mappings":"uHAAA,IAAAA,eAAAC,QAAA,cAAA,EACAC,mCAAAD,QAAA,iDAAA,EAIA,SAAgBE,oCAAoCC,GACnDA,EAAoBC,aAAa,CAChCC,qBAAsB,CACrBC,SAAU,WACT,OAAOL,mCAAAM,qBAAqBC,KAAK,GAAI,CAACC,KAAM,CAACC,YAAa,CAAC,CAAC,CAAC,CAC9D,EACAC,YAAa,CAAC,yB,EAEfC,+BAAgC,CAC/BC,MAAO,IAAId,eAAAe,QAAa,CACvBC,QAAS,CACRC,KAAMC,M,EAEP,EACDX,SAAU,SAASS,GAClB,OAAOd,mCAAAM,qBAAqBC,KAAK,CAACO,QAAUA,CAAO,CAAC,CACrD,EACAJ,YAAa,CAAC,yB,EAEfO,0BAA2B,CAC1BL,MAAO,IAAId,eAAAe,QAAa,CACvBK,GAAI,CACHH,KAAMC,M,EAEP,EACDX,SAAU,SAASa,GAClB,OAAOlB,mCAAAM,qBAAqBa,QAAQ,CAACC,IAAKF,CAAE,CAAC,CAC9C,EACAR,YAAa,CAAC,yB,EAEfW,mCAAoC,CACnCT,MAAO,IAAId,eAAAe,QAAa,CACvBK,GAAI,CACHH,KAAMC,M,EAEP,EACDX,SAAU,SAASa,GAClB,OAAOlB,mCAAAM,qBAAqBC,KAAK,CAACe,aAAc,CAACC,IAAK,CAACL,EAAG,CAAC,CAAC,CAC7D,EACAR,YAAa,CAAC,yB,EAEf,CACF,CA1CAc,QAAAvB,oCAAAA","file":"report-builder-reports.js","sourcesContent":["import SimpleSchema from 'simpl-schema';\nimport { ReportBuilderReports } from '../collections/report-builder-report.collection';\nimport { CollectionDocument } from '../models/collection-document.model';\nimport { SubscriptionManager } from '../managers/subscription.manager';\n\nexport function loadReportBuilderReportPublications(subscriptionManager: SubscriptionManager) {\n\tsubscriptionManager.publications({\n\t\treportbuilderreports: {\n\t\t\tfunction: function() {\n\t\t\t\treturn ReportBuilderReports.find({}, {sort: {report_name: 1}});\n\t\t\t},\n\t\t\tcollections: ['report-builder-reports']\n\t\t},\n\t\treportbuilderreportsWithIdUser: {\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\tid_user: {\n\t\t\t\t\ttype: String\n\t\t\t\t}\n\t\t\t}),\n\t\t\tfunction: function(id_user: string) {\n\t\t\t\treturn ReportBuilderReports.find({id_user : id_user});\n\t\t\t},\n\t\t\tcollections: ['report-builder-reports']\n\t\t},\n\t\treportbuilderreportWithId: {\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\tid: {\n\t\t\t\t\ttype: String\n\t\t\t\t}\n\t\t\t}),\n\t\t\tfunction: function(id: string) {\n\t\t\t\treturn ReportBuilderReports.findOne({_id: id});\n\t\t\t},\n\t\t\tcollections: ['report-builder-reports']\n\t\t},\n\t\treportbuilderreportsWithCustomerId: {\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\tid: {\n\t\t\t\t\ttype: String\n\t\t\t\t}\n\t\t\t}),\n\t\t\tfunction: function(id: string) {\n\t\t\t\treturn ReportBuilderReports.find({shared_users: {$in: [id]}});\n\t\t\t},\n\t\t\tcollections: ['report-builder-reports']\n\t\t}\n\t});\n}"]}
1
+ {"version":3,"sources":["../../src/publications/report-builder-reports.ts"],"names":["simpl_schema_1","require","report_builder_report_collection_1","loadReportBuilderReportPublications","subscriptionManager","publications","reportbuilderreports","function","ReportBuilderReports","find","sort","report_name","collections","reportbuilderreportsWithIdUser","check","default","id_user","type","String","reportbuilderreportWithId","id","findOne","_id","reportbuilderreportsWithCustomerId","shared_users","$in","exports"],"mappings":"uHAAA,IAAAA,eAAAC,QAAA,cAAA,EACAC,mCAAAD,QAAA,iDAAA,EAGA,SAAgBE,oCAAoCC,GACnDA,EAAoBC,aAAa,CAChCC,qBAAsB,CACrBC,SAAU,WACT,OAAOL,mCAAAM,qBAAqBC,KAAK,GAAI,CAACC,KAAM,CAACC,YAAa,CAAC,CAAC,CAAC,CAC9D,EACAC,YAAa,CAAC,yB,EAEfC,+BAAgC,CAC/BC,MAAO,IAAId,eAAAe,QAAa,CACvBC,QAAS,CACRC,KAAMC,M,EAEP,EACDX,SAAU,SAASS,GAClB,OAAOd,mCAAAM,qBAAqBC,KAAK,CAACO,QAAUA,CAAO,CAAC,CACrD,EACAJ,YAAa,CAAC,yB,EAEfO,0BAA2B,CAC1BL,MAAO,IAAId,eAAAe,QAAa,CACvBK,GAAI,CACHH,KAAMC,M,EAEP,EACDX,SAAU,SAASa,GAClB,OAAOlB,mCAAAM,qBAAqBa,QAAQ,CAACC,IAAKF,CAAE,CAAC,CAC9C,EACAR,YAAa,CAAC,yB,EAEfW,mCAAoC,CACnCT,MAAO,IAAId,eAAAe,QAAa,CACvBK,GAAI,CACHH,KAAMC,M,EAEP,EACDX,SAAU,SAASa,GAClB,OAAOlB,mCAAAM,qBAAqBC,KAAK,CAACe,aAAc,CAACC,IAAK,CAACL,EAAG,CAAC,CAAC,CAC7D,EACAR,YAAa,CAAC,yB,EAEf,CACF,CA1CAc,QAAAvB,oCAAAA","file":"report-builder-reports.js","sourcesContent":["import SimpleSchema from 'simpl-schema';\nimport { ReportBuilderReports } from '../collections/report-builder-report.collection';\nimport { SubscriptionManager } from '../managers/subscription.manager';\n\nexport function loadReportBuilderReportPublications(subscriptionManager: SubscriptionManager) {\n\tsubscriptionManager.publications({\n\t\treportbuilderreports: {\n\t\t\tfunction: function() {\n\t\t\t\treturn ReportBuilderReports.find({}, {sort: {report_name: 1}});\n\t\t\t},\n\t\t\tcollections: ['report-builder-reports']\n\t\t},\n\t\treportbuilderreportsWithIdUser: {\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\tid_user: {\n\t\t\t\t\ttype: String\n\t\t\t\t}\n\t\t\t}),\n\t\t\tfunction: function(id_user: string) {\n\t\t\t\treturn ReportBuilderReports.find({id_user : id_user});\n\t\t\t},\n\t\t\tcollections: ['report-builder-reports']\n\t\t},\n\t\treportbuilderreportWithId: {\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\tid: {\n\t\t\t\t\ttype: String\n\t\t\t\t}\n\t\t\t}),\n\t\t\tfunction: function(id: string) {\n\t\t\t\treturn ReportBuilderReports.findOne({_id: id});\n\t\t\t},\n\t\t\tcollections: ['report-builder-reports']\n\t\t},\n\t\treportbuilderreportsWithCustomerId: {\n\t\t\tcheck: new SimpleSchema({\n\t\t\t\tid: {\n\t\t\t\t\ttype: String\n\t\t\t\t}\n\t\t\t}),\n\t\t\tfunction: function(id: string) {\n\t\t\t\treturn ReportBuilderReports.find({shared_users: {$in: [id]}});\n\t\t\t},\n\t\t\tcollections: ['report-builder-reports']\n\t\t}\n\t});\n}"]}
package/server-app.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";var __awaiter=this&&this.__awaiter||function(e,n,s,o){return new(s=s||Promise)(function(t,r){function fulfilled(e){try{step(o.next(e))}catch(e){r(e)}}function rejected(e){try{step(o.throw(e))}catch(e){r(e)}}function step(e){var r;e.done?t(e.value):((r=e.value)instanceof s?r:new s(function(e){e(r)})).then(fulfilled,rejected)}step((o=o.apply(e,n||[])).next())})},__generator=this&&this.__generator||function(n,s){var o,i,a,c={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]},l={next:verb(0),throw:verb(1),return:verb(2)};return"function"==typeof Symbol&&(l[Symbol.iterator]=function(){return this}),l;function verb(t){return function(e){var r=[t,e];if(o)throw new TypeError("Generator is already executing.");for(;c=l&&r[l=0]?0:c;)try{if(o=1,i&&(a=2&r[0]?i.return:r[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,r[1])).done)return a;switch(i=0,(r=a?[2&r[0],a.value]:r)[0]){case 0:case 1:a=r;break;case 4:return c.label++,{value:r[1],done:!1};case 5:c.label++,i=r[1],r=[0];continue;case 7:r=c.ops.pop(),c.trys.pop();continue;default:if(!(a=0<(a=c.trys).length&&a[a.length-1])&&(6===r[0]||2===r[0])){c=0;continue}if(3===r[0]&&(!a||r[1]>a[0]&&r[1]<a[3]))c.label=r[1];else if(6===r[0]&&c.label<a[1])c.label=a[1],a=r;else{if(!(a&&c.label<a[2])){a[2]&&c.ops.pop(),c.trys.pop();continue}c.label=a[2],c.ops.push(r)}}r=s.call(n,c)}catch(e){r=[6,e],i=0}finally{o=a=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}}},__read=this&&this.__read||function(e,r){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var n,s,o=t.call(e),i=[];try{for(;(void 0===r||0<r--)&&!(n=o.next()).done;)i.push(n.value)}catch(e){s={error:e}}finally{try{n&&!n.done&&(t=o.return)&&t.call(o)}finally{if(s)throw s.error}}return i},__spreadArray=this&&this.__spreadArray||function(e,r,t){if(t||2===arguments.length)for(var n,s=0,o=r.length;s<o;s++)!n&&s in r||((n=n||Array.prototype.slice.call(r,0,s))[s]=r[s]);return e.concat(n||Array.prototype.slice.call(r))},__values=this&&this.__values||function(e){var r="function"==typeof Symbol&&Symbol.iterator,t=r&&e[r],n=0;if(t)return t.call(e);if(e&&"number"==typeof e.length)return{next:function(){return{value:(e=e&&n>=e.length?void 0:e)&&e[n++],done:!e}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")},bodyParser=(Object.defineProperty(exports,"__esModule",{value:!0}),exports.ResolveIOMainServer=void 0,require("body-parser")),express=require("express"),xmlParser=require("express-xml-bodyparser"),http_1=require("http"),jwt=require("jsonwebtoken"),moment=require("moment-timezone"),WebSocket=require("ws"),log_collection_1=require("./collections/log.collection"),user_collection_1=require("./collections/user.collection"),cron_manager_1=require("./managers/cron.manager"),method_manager_1=require("./managers/method.manager"),monitor_manager_1=require("./managers/monitor.manager"),subscription_manager_1=require("./managers/subscription.manager"),common_1=require("./util/common"),mongodb_1=require("mongodb"),auth_1=require("./http/auth"),health_1=require("./http/health"),home_1=require("./http/home"),websocket_manager_1=require("./managers/websocket.manager"),resolveio_server_app_1=require("./resolveio-server-app"),ResolveIOMainServer=function(){function ResolveIOMainServer(){this._offlineUpdates=[],this.sesMail=!1,this.standardProgram=!1,this.publicProgram=!1,this._rebootFlag=!1,this._runningTasks=[],this.LOGGER="ERROR",this._clientRoutes=[],this._lastErrorMsg=null,this._debugMsgRecv=0,this._debugMsgQueue=0,this._isWorkersEnabled=!1,this._isWorkerInstance=!1,this._safeShutdown=!1,this._workers=[],this._taskQueue=[],this._inFlightRequests={}}return ResolveIOMainServer.create=function(){var e=new ResolveIOMainServer;return e.initialize(),e},ResolveIOMainServer.prototype.initialize=function(){var e=this,o=(this._serverStartTime=new Date,this._lastErrorMsg=null,this._monitorManager=new monitor_manager_1.MonitorManager,this._monitorManagerFunction=new monitor_manager_1.MonitorManagerFunction,this._isWorkersEnabled="true"===process.env.IS_WORKERS_ENABLED,this._isWorkerInstance="true"===process.env.IS_WORKER_INSTANCE,setInterval(function(){e._subscriptionManager&&e._subscriptionManager.getEnableDebug()&&(console.log(new Date,"Server App","Msg Recv Hits",e._debugMsgRecv),console.log(new Date,"Server App","Msg Queue Hits",e._debugMsgQueue)),e._debugMsgQueue=0,e._debugMsgRecv=0},6e4),!1);setTimeout(function(){o=!0},5e3),process.on("unhandledRejection",function(n,s){return __awaiter(e,void 0,void 0,function(){var r,t=this;return __generator(this,function(e){switch(e.label){case 0:return n&&"MongoError"===n.name&&48===n.code?[2]:n&&"MongoServerError"===n.name&&!o?[2]:(console.error(new Date,"Unhandled Rejection at Promise",[n,s]),r=moment().diff(this._serverStartTime,"seconds"),n&&("MongoNetworkTimeoutError"===n.name||n instanceof mongodb_1.MongoNetworkTimeoutError)?60<r&&!this._lastErrorMsg?(this._lastErrorMsg=new Date,setTimeout(function(){t._lastErrorMsg=null},6e4),[4,this._methodManager.sendEmail("dev@resolveio.com","SERVER - MongoNetworkTimeoutError - Quitting NodeJS - "+resolveio_server_app_1.ResolveIOServer.getServerConfig().CLIENT_NAME,JSON.stringify({name:n.name,message:n.message,stack:n.stack},null,2))]):[3,2]:[3,3]);case 1:e.sent(),process.exit(1),e.label=2;case 2:return[3,11];case 3:return n&&"MongoError"===n.name&&"not master"===n.message?60<r&&!this._lastErrorMsg?(this._lastErrorMsg=new Date,setTimeout(function(){t._lastErrorMsg=null},6e4),[4,this._methodManager.sendEmail("dev@resolveio.com","SERVER - Unhandled Rejection - Quitting NodeJS - "+resolveio_server_app_1.ResolveIOServer.getServerConfig().CLIENT_NAME,JSON.stringify([n.name,n.message,n.stack],null,2))]):[3,5]:[3,6];case 4:e.sent(),e.label=5;case 5:return process.exit(1),[3,11];case 6:return n&&"MongoError"===n.name&&"not master and slaveOk=false"===n.message?60<r&&!this._lastErrorMsg?(this._lastErrorMsg=new Date,setTimeout(function(){t._lastErrorMsg=null},6e4),[4,this._methodManager.sendEmail("dev@resolveio.com","SERVER - Unhandled Rejection - Quitting NodeJS - "+resolveio_server_app_1.ResolveIOServer.getServerConfig().CLIENT_NAME,JSON.stringify([n.name,n.message,n.stack],null,2))]):[3,8]:[3,9];case 7:e.sent(),e.label=8;case 8:return process.exit(1),[3,11];case 9:return n?"StatusError"!==n.name&&""!==n.message&&60<r&&!this._lastErrorMsg?(this._lastErrorMsg=new Date,setTimeout(function(){t._lastErrorMsg=null},6e4),[4,this._methodManager.sendEmail("dev@resolveio.com","SERVER - Unhandled Rejection - "+resolveio_server_app_1.ResolveIOServer.getServerConfig().CLIENT_NAME,JSON.stringify([n.name,n.message,n.stack],null,2))]):[3,11]:[3,11];case 10:e.sent(),e.label=11;case 11:return[2]}})})}),process.on("uncaughtException",function(t){return __awaiter(e,void 0,void 0,function(){var r=this;return __generator(this,function(e){switch(e.label){case 0:return(console.error(t,"Uncaught Exception thrown"),60<moment().diff(this._serverStartTime,"seconds")&&!this._lastErrorMsg)?(this._lastErrorMsg=new Date,setTimeout(function(){r._lastErrorMsg=null},6e4),[4,this._methodManager.sendEmail("dev@resolveio.com","SERVER - Unhandled Exception - "+resolveio_server_app_1.ResolveIOServer.getServerConfig().CLIENT_NAME,JSON.stringify([t.name,t.message,t.stack],null,2))]):[3,2];case 1:e.sent(),e.label=2;case 2:return[2]}})})}),process.on("SIGINT",function(){return __awaiter(e,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return this._rebootFlag=!0,this._serverHTTP&&this._serverHTTP.close(),[4,this.safeShutdown()];case 1:return e.sent(),[2]}})})}),process.on("SIGTERM",function(){return __awaiter(e,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return this._rebootFlag=!0,this._serverHTTP&&this._serverHTTP.close(),[4,this.safeShutdown()];case 1:return e.sent(),[2]}})})}),process.on("SIGQUIT",function(){return __awaiter(e,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return this._rebootFlag=!0,this._serverHTTP&&this._serverHTTP.close(),[4,this.safeShutdown()];case 1:return e.sent(),[2]}})})}),"DEBUG"===this.LOGGER&&console.log("Starting ResolveIO Server"),this._isWorkersEnabled?this._isWorkerInstance?(console.log("Running as a Worker instance"),this._methodManager=method_manager_1.MethodManager.create(null,this._monitorManagerFunction,this._isWorkersEnabled,this._isWorkerInstance),this._cronManager=cron_manager_1.CronManager.create(),this.startWorkerInstance()):(console.log("Running as a Server instance"),this._websocketManager=websocket_manager_1.WebSocketManager.create(this),this.startServerInstance(),this._methodManager=method_manager_1.MethodManager.create(this._websocketManager,this._monitorManagerFunction,this._isWorkersEnabled,this._isWorkerInstance),this._subscriptionManager=subscription_manager_1.SubscriptionManager.create(this._serverWSS,resolveio_server_app_1.ResolveIOServer.getServerConfig(),this._monitorManagerFunction),this.listen()):(console.log("Running with Workers Disabled"),this._websocketManager=websocket_manager_1.WebSocketManager.create(this),this.startServerInstance(),this._methodManager=method_manager_1.MethodManager.create(this._websocketManager,this._monitorManagerFunction,this._isWorkersEnabled,this._isWorkerInstance),this._subscriptionManager=subscription_manager_1.SubscriptionManager.create(this._serverWSS,resolveio_server_app_1.ResolveIOServer.getServerConfig(),this._monitorManagerFunction),this._cronManager=cron_manager_1.CronManager.create(),this.listen())},ResolveIOMainServer.prototype.startServerInstance=function(){this._app=express(),this._app.use(bodyParser.json({limit:"50mb",reviver:common_1.dateReviver})),this._app.use(bodyParser.urlencoded({limit:"50mb",extended:!0,parameterLimit:1e6})),this._app.use(xmlParser()),this._portHTTP=process.env.PORT_HTTP||resolveio_server_app_1.ResolveIOServer.getServerConfig().PORT_HTTP||8080,this._portWSS=process.env.PORT_WSS||resolveio_server_app_1.ResolveIOServer.getServerConfig().PORT_WSS||8081,"DEBUG"===this.LOGGER&&console.log("Setup ports"),this.createServer(),"DEBUG"===this.LOGGER&&console.log("Create server"),this._app.use(function(e,r,t){r.setHeader("Access-Control-Allow-Origin","*"),r.setHeader("Access-Control-Allow-Methods","GET, POST"),r.setHeader("Access-Control-Allow-Headers","X-Requested-With,content-type"),r.setHeader("Access-Control-Allow-Credentials","false"),t()}),"DEBUG"===this.LOGGER&&console.log("Setup cors"),(0,auth_1.setupAuthRoutes)(this,this._app,resolveio_server_app_1.ResolveIOServer.getServerConfig()),(0,health_1.setupHealthRoutes)(this._app,resolveio_server_app_1.ResolveIOServer.getServerConfig()),"ResolveIO"!==resolveio_server_app_1.ResolveIOServer.getServerConfig().CLIENT_NAME&&!this.standardProgram||(0,home_1.setupHomeRoutes)(this,this._app,resolveio_server_app_1.ResolveIOServer.getServerConfig()),"DEBUG"===this.LOGGER&&console.log("Setup express routes")},ResolveIOMainServer.prototype.startWorkerInstance=function(){var e=this,r=(console.log(new Date,"Worker instance started, connecting to main server via WebSocket..."),resolveio_server_app_1.ResolveIOServer.getServerConfig().SERVER_URL+"/websocket?workerToken="+resolveio_server_app_1.ResolveIOServer.getServerConfig().WORKER_TOKEN),n=new WebSocket(r),s=null,t=null;n.on("open",function(){console.log(new Date,"Connected to main server as worker",process.env.WORKER_INDEX,process.env.NODE_APP_INSTANCE),e.sendWorkerResponse(n,"ping"),t=setInterval(function(){s?(s=null,e.sendWorkerResponse(n,"ping")):n.close()},15e3)}),n.on("message",function(t){return __awaiter(e,void 0,void 0,function(){var r;return __generator(this,function(e){switch(e.label){case 0:return"ping"!==(t="string"!=typeof t?t.toString():t)?[3,1]:(this.sendWorkerResponse(n,"pong"),[3,4]);case 1:return"pong"!==t?[3,2]:(s=new Date,[3,4]);case 2:r=void 0;try{r=JSON.parse(t,common_1.dateReviver)}catch(e){return console.error("Worker parse error",e),[2]}return"task"!==r.type?[3,4]:[4,this.handleIncomingTask(n,r)];case 3:e.sent(),e.label=4;case 4:return[2]}})})}),n.on("close",function(){console.log(new Date,"Disconnected from main server. Reconnecting in 5s..."),setTimeout(e.startWorkerInstance,5e3),t&&clearInterval(t)}),n.on("error",function(e){console.error(new Date,"Worker WS error:",e),n.close()})},ResolveIOMainServer.prototype.handleIncomingTask=function(u,_){return __awaiter(this,void 0,void 0,function(){var r,t,n,s,o,i,a,c,l=this;return __generator(this,function(e){switch(e.label){case 0:if(r=_.taskId,t=_.method,n=_.params,s=_.userContext,this._runningTasks.push(r),!r||!t)return console.log("Invalid task message received",_),[2];o=!1,i=setTimeout(function(){return __awaiter(l,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return o=!0,console.error("Worker timed out on task:",r),this.sendWorkerResponse(u,{type:"taskComplete",taskId:r,error:!0,message:"Task timed out"}),[4,this._methodManager.callMethod("insertErrorLog","Timeout in Method: ".concat(t," - ").concat(JSON.stringify(_,null,2)))];case 1:return e.sent(),[2]}})})},12e4),e.label=1;case 1:return e.trys.push([1,3,,5]),a=Object.assign({},this._methodManager,method_manager_1.MethodManager.prototype,{id_user:(null==s?void 0:s.id_user)||"",user:(null==s?void 0:s.user)||"",id_ws:(null==s?void 0:s.id_ws)||""}),[4,(c=this._methodManager.callMethod).call.apply(c,__spreadArray([a,t],__read(n),!1))];case 2:return c=e.sent(),o||(clearTimeout(i),this.sendWorkerResponse(u,{type:"taskComplete",taskId:r,error:!1,result:c})),this._runningTasks=this._runningTasks.filter(function(e){return e!==r}),[3,5];case 3:return a=e.sent(),o||(clearTimeout(i),console.error("Worker failed task:",r,a),this.sendWorkerResponse(u,{type:"taskComplete",taskId:r,error:!0,message:a||"Unknown error"})),[4,this._methodManager.callMethod("insertErrorLog","Error in Method: ".concat(t," - ").concat(JSON.stringify(_,null,2)))];case 4:return e.sent(),this._runningTasks=this._runningTasks.filter(function(e){return e!==r}),[3,5];case 5:return[2]}})})},ResolveIOMainServer.prototype.sendWorkerResponse=function(e,r){if("string"!=typeof r&&(r=JSON.stringify(r)),e&&e.readyState===e.OPEN)try{e.send(r)}catch(e){console.error("Failed to send worker response:",e)}else e&&e.close()},ResolveIOMainServer.prototype.safeShutdown=function(){return __awaiter(this,void 0,void 0,function(){var r=this;return __generator(this,function(e){switch(e.label){case 0:if(this._safeShutdown||console.log(new Date,"Safe Shutdown Command Received"),this._monitorManagerFunction.getActiveMonitorFunctions().length||this._offlineUpdates.length||this._taskQueue.length||this._runningTasks.length)return[3,7];if(!resolveio_server_app_1.ResolveIOServer.getMongoConnection())return[3,5];e.label=1;case 1:return e.trys.push([1,3,,4]),[4,resolveio_server_app_1.ResolveIOServer.getMongoConnection().close(!1)];case 2:return e.sent(),console.log(new Date,"Safe Exit Complete, Process Exit"),process.exit(0),[3,4];case 3:return e.sent(),process.exit(1),[3,4];case 4:return[3,6];case 5:process.exit(0),e.label=6;case 6:return[3,8];case 7:this._safeShutdown||(this._safeShutdown=!0,setTimeout(function(){r._safeShutdown=!1},1e3),console.log(new Date,"Safe Exit In Progress",this._monitorManagerFunction.getActiveMonitorFunctions().length,this._offlineUpdates.length)),setImmediate(function(){return __awaiter(r,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return[4,this.safeShutdown()];case 1:return e.sent(),[2]}})})}),e.label=8;case 8:return[2]}})})},ResolveIOMainServer.prototype.getIsWorkersEnabled=function(){return this._isWorkersEnabled},ResolveIOMainServer.prototype.getIsWorkerInstance=function(){return this._isWorkerInstance},ResolveIOMainServer.prototype.getWSList=function(){var r=[];return this._serverWSS.clients.forEach(function(e){r.push(e.id_socket)}),r},ResolveIOMainServer.prototype.getWSUserList=function(){var r=[];return this._serverWSS.clients.forEach(function(e){r.push(e.id_user)}),r},ResolveIOMainServer.prototype.getHTTPServer=function(){return this._serverHTTP},ResolveIOMainServer.prototype.getCronManager=function(){return this._cronManager},ResolveIOMainServer.prototype.getMethodManager=function(){return this._methodManager},ResolveIOMainServer.prototype.getSubscriptionManager=function(){return this._subscriptionManager},ResolveIOMainServer.prototype.getMonitorManager=function(){return this._monitorManager},ResolveIOMainServer.prototype.getRebootFlag=function(){return this._rebootFlag},ResolveIOMainServer.prototype.getWebSocketManager=function(){return this._websocketManager},ResolveIOMainServer.prototype.createServer=function(){var r=this;this._serverHTTP=(0,http_1.createServer)(this._app),this._serverHTTP.keepAliveTimeout=65e3,this._serverHTTP.headersTimeout=66e3,this._serverWSS=new WebSocket.Server({port:this._portWSS,verifyClient:this.publicProgram?null:function(s,o){var e;r._rebootFlag?o(!1,409,"Unable To Process"):("DEBUG"===r.LOGGER&&console.log("Verify Client",s,o),s.req.url&&s.req.url.includes("workerToken=")?(s.req.url.split("workerToken=")[1]||"")===resolveio_server_app_1.ResolveIOServer.getServerConfig().WORKER_TOKEN?o(!0):o(!1,401,"Unauthorized"):(e=s.req.headers["sec-websocket-protocol"].split(/,/),(s.origin===resolveio_server_app_1.ResolveIOServer.getServerConfig().ROOT_URL||s.origin===resolveio_server_app_1.ResolveIOServer.getServerConfig().SEC_ROOT_URL||s.origin===resolveio_server_app_1.ResolveIOServer.getServerConfig().RESOLVEIO_URL||s.origin===resolveio_server_app_1.ResolveIOServer.getServerConfig().RESOLVEIO_SECONDARY_URL)&&(e=e[0])?jwt.verify(e,resolveio_server_app_1.ResolveIOServer.getServerConfig().JWT_SECRET,function(t,n){return __awaiter(r,void 0,void 0,function(){var r;return __generator(this,function(e){switch(e.label){case 0:return t?(o(!1,401,"Unauthorized"),[3,5]):[3,1];case 1:s.req.id_user=n.id_user,e.label=2;case 2:return e.trys.push([2,4,,5]),[4,user_collection_1.Users.findById(n.id_user)];case 3:return(r=e.sent())?(s.req.user=r.fullname,s.req.user_readonly=r.readonly||!1,s.req.doc_user=r,o(!0)):o(!1),[3,5];case 4:return e.sent(),o(!1),[3,5];case 5:return[2]}})})}):o(!1,401,"Unauthorized")))}})},ResolveIOMainServer.prototype.listen=function(){var e=this;this._serverHTTP.listen(this._portHTTP,function(){console.log("Running server on port %s",e._portHTTP)}),this._serverWSS.on("listening",function(){console.log("Running server on port %s",e._portWSS)}),this._serverWSS.on("connection",function(o,i){return __awaiter(e,void 0,void 0,function(){var r,t,n,s=this;return __generator(this,function(e){switch(e.label){case 0:return i.url&&i.url.includes("workerToken=")?(r=(0,common_1.objectIdHexString)(),o.id_worker=r,this._workers.push({id:r,ws:o,activeTasks:0,maxConcurrency:2}),n=t=null,o.on("open",function(){s.sendWorkerResponse(o,"ping"),t=setInterval(function(){n?(n=null,s.sendWorkerResponse(o,"ping")):o.close()},15e3)}),console.log(new Date,"Worker connected:",r),o.on("message",function(e){"ping"===(e="string"!=typeof e?e.toString():e)?s.sendWorkerResponse(o,"pong"):"pong"===e?n=new Date:s.handleWorkerMessage(r,e)}),o.on("close",function(){console.log(new Date,"Worker disconnected:",r),s._workers=s._workers.filter(function(e){return e.id!==r}),t&&clearInterval(t)}),o.on("error",function(e){console.error("Error on WS Worker",e),o.close()}),[3,3]):[3,1];case 1:return o.id_socket=(0,common_1.objectIdHexString)(),o.id_user=i.id_user,o.user=i.user,o.user_readonly=i.user_readonly,o.doc_user=i.doc_user,this._websocketManager.addWebSocket(o),[4,this._subscriptionManager.createLoggedInUser(o.id_socket)];case 2:e.sent(),setTimeout(function(){o.pingTime=new Date,o.send("ping",function(r){return __awaiter(s,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return r?(this._subscriptionManager.getEnableDebug()&&console.log(new Date,"Server App","Error WS Ping"),[4,this.unsubscribeWS(o)]):[3,2];case 1:e.sent(),e.label=2;case 2:return[2]}})})})},5e3),"DEBUG"===this.LOGGER&&console.log("Connection from user: "+i.user),o.isAlive=!0,o.retryCnt=0,o.on("message",function(n){return __awaiter(s,void 0,void 0,function(){var r,t;return __generator(this,function(e){switch(e.label){case 0:this._debugMsgRecv+=1,r=[],e.label=1;case 1:return e.trys.push([1,2,,4]),r=JSON.parse(n,common_1.dateReviver),[3,4];case 2:return t=e.sent(),console.log("Error - JSON.parse",n),[4,this._methodManager.sendEmail("dev@resolveio.com","SERVER - JSON Parse Error - "+resolveio_server_app_1.ResolveIOServer.getServerConfig().CLIENT_NAME,JSON.stringify([n,t]))];case 3:return e.sent(),[2];case 4:return[4,this.processSocketMessage(o,r)];case 5:return e.sent(),[2]}})})}).on("end",function(){o.close()}).on("error",function(e){o.close()}).on("close",function(){return __awaiter(s,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return[4,this.unsubscribeWS(o)];case 1:return e.sent(),[2]}})})}),e.label=3;case 3:return[2]}})})}),setInterval(function(){return __awaiter(e,void 0,void 0,function(){var r,n,t,s,o,i,a,c=this;return __generator(this,function(e){switch(e.label){case 0:r=function(t){return __generator(this,function(e){switch(e.label){case 0:return t.pingTime&&2e4<=Date.now()-t.pingTime.getTime()?!1!==t.isAlive?[3,4]:(t.retryCnt++,3<=t.retryCnt?[4,n.unsubscribeWS(t)]:[3,2]):[3,5];case 1:return e.sent(),[3,3];case 2:t.pingTime=new Date,t.send("ping",function(r){return __awaiter(c,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return r?(this._subscriptionManager.getEnableDebug()&&console.log(new Date,"Server App","Error WS Ping"),[4,this.unsubscribeWS(t)]):[3,2];case 1:e.sent(),e.label=2;case 2:return[2]}})})}),e.label=3;case 3:return[3,5];case 4:t.retryCnt=0,t.isAlive=!1,t.pingTime=new Date,t.send("ping",function(r){return __awaiter(c,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return r?(this._subscriptionManager.getEnableDebug()&&console.log(new Date,"Server App","Error WS Ping"),[4,this.unsubscribeWS(t)]):[3,2];case 1:e.sent(),e.label=2;case 2:return[2]}})})}),e.label=5;case 5:return[2]}})},n=this,e.label=1;case 1:e.trys.push([1,6,7,8]),t=__values(this._serverWSS.clients),s=t.next(),e.label=2;case 2:return s.done?[3,5]:(o=s.value,[5,r(o)]);case 3:e.sent(),e.label=4;case 4:return s=t.next(),[3,2];case 5:return[3,8];case 6:return o=e.sent(),i={error:o},[3,8];case 7:try{s&&!s.done&&(a=t.return)&&a.call(t)}finally{if(i)throw i.error}return[7];case 8:return[2]}})})},2e4)},ResolveIOMainServer.prototype.processSocketMessage=function(i,a){return __awaiter(this,void 0,void 0,function(){var r,t,n,s,o;return __generator(this,function(e){switch(e.label){case 0:if("string"==typeof a&&"ping"===a)return i&&i.readyState===i.OPEN&&i.send("pong"),[2];if("string"==typeof a&&"pong"===a)return i.isAlive=!0,i.pongTime=new Date,i.latency=moment.duration(moment(i.pongTime).diff(i.pingTime)).asMilliseconds(),this._subscriptionManager.loggedInLatency(i),[2];if(!Array.isArray(a[0]))return console.log("Invalid message format (expected array of arrays)",a),[2];e.label=1;case 1:e.trys.push([1,6,7,8]),r=__values(a),t=r.next(),e.label=2;case 2:return t.done?[3,5]:(n=t.value,[4,this.handleClientMessage(i,n)]);case 3:e.sent(),e.label=4;case 4:return t=r.next(),[3,2];case 5:return[3,8];case 6:return n=e.sent(),s={error:n},[3,8];case 7:try{t&&!t.done&&(o=r.return)&&o.call(r)}finally{if(s)throw s.error}return[7];case 8:return[2]}})})},ResolveIOMainServer.prototype.handleClientMessage=function(f,m){return __awaiter(this,void 0,void 0,function(){var r,t,n,s,o,i,a,c,l,u,_,g,h,v,d,p;return __generator(this,function(e){switch(e.label){case 0:return(r=m[0],t=m[1],n=m[2],s=m[3],this.publicProgram||!this._clientRoutes.some(function(e){return r.includes(e)})||f.doc_user.roles.groups.some(function(e){return e.views.some(function(e){return r.includes(e)||e.includes(r)})})||f.doc_user.roles.super_admin)?"subscription"!==s?[3,4]:(i=m[4],o=m[5],"sub"!==i?[3,2]:[4,this._subscriptionManager.subscribe(r,t,f,n,o,m.slice(6))]):[2];case 1:return e.sent(),[3,3];case 2:this._subscriptionManager.unsubscribe(r,t,f,n,o,m.slice(6)),e.label=3;case 3:return[3,22];case 4:if(this.publicProgram||"offline"!==s)return[3,16];i={messageId:n,hasError:!1,data:"ACK"},f&&f.readyState===f.OPEN&&this._websocketManager.send(f,i),this._offlineUpdates.push(f),a=m[4],c=0,e.label=5;case 5:if(!(c<a.length))return[3,15];if(l=a[c],l=l.data,l.shift(),l.shift(),p=l.shift(),l.shift(),u=l.shift(),p={messageId:p,hasError:!1,data:"ACK"},f&&f.readyState===f.OPEN&&this._websocketManager.send(f,p),"insertDocument"===u&&"driver-gps"===l[0])return[3,14];if("reportBuilderGetResults"!==u&&"reportBuilderGetDistinctValue"!==u&&"reportBuilderBuildTree"!==u&&"generatePDF"!==u&&"getWOOfflineData"!==u&&"countQuery"!==u&&"countWithQuery"!==u&&"countCollectionWithQuery"!==u&&"find"!==u&&"findOne"!==u&&"findWithOptions"!==u&&"getDrivers"!==u&&"processAirdropDistribution"!==u){if("https://resolveio.com"===resolveio_server_app_1.ResolveIOServer.getServerConfig().ROOT_URL||"http://localhost:4200"===resolveio_server_app_1.ResolveIOServer.getServerConfig().ROOT_URL)return[3,6];resolveio_server_app_1.ResolveIOServer.getLocalLogManager().writeLog({type:"log",data:{_id:(0,common_1.objectIdHexString)(),createdAt:new Date,type:"client-request",collection:"",id_document:"",payload:(0,common_1.getBinarySize)(JSON.stringify(l))<2e5?JSON.stringify(l,null,2):"Too Big",method:u,id_user:f.id_user||"",user:f.user||"",messageId:n,route:r}})}return[3,8];case 6:return[4,log_collection_1.Logs.insertOne({_id:(0,common_1.objectIdHexString)(),type:"client-request",collection:"",id_document:"",payload:(0,common_1.getBinarySize)(JSON.stringify(l))<2e5?JSON.stringify(l,null,2):"Too Big",method:u,id_user:f.id_user||"",user:f.user||"",messageId:n,route:r,client:"ResolveIO",instance:"backend.resolveio.com",instance_index:process.env.NODE_APP_INSTANCE||""})];case 7:e.sent(),e.label=8;case 8:if(!this._methodManager._methods[u])return[3,13];e.label=9;case 9:return e.trys.push([9,11,,12]),[4,(p=this._methodManager.callMethod).call.apply(p,__spreadArray([Object.assign({},this._methodManager,method_manager_1.MethodManager.prototype,{id_user:f.id_user,user:f.user,id_ws:f.id_socket}),u],__read(l),!1))];case 10:return e.sent(),[3,12];case 11:return v=e.sent(),console.log(new Date,"Offline Error",JSON.stringify(v,null,2)),[3,12];case 12:return"updateDocumentOffline"!==u&&"updateDocumentPropsOffline"!==u||resolveio_server_app_1.ResolveIOServer.getMongoManager().invalidateQueryCache(l[0]),[3,14];case 13:console.log("Offline - Could not find method: "+u),e.label=14;case 14:return c++,[3,5];case 15:return this._offlineUpdates.splice(this._offlineUpdates.map(function(e){return e.id_socket}).indexOf(f.id_socket),1),[3,22];case 16:if(_=__spreadArray([],__read(m),!1),_.shift(),_.shift(),g=_.shift(),"method"!==_.shift())return[3,22];if(h=_.shift(),f.user_readonly)return[2];if("reportBuilderGetResults"!==h&&"reportBuilderGetDistinctValue"!==h&&"reportBuilderBuildTree"!==h&&"generatePDF"!==h&&"getWOOfflineData"!==h&&"countQuery"!==h&&"countWithQuery"!==h&&"countCollectionWithQuery"!==h&&"find"!==h&&"findOne"!==h&&"findWithOptions"!==h&&"getDrivers"!==h&&"processAirdropDistribution"!==h){if("https://resolveio.com"===resolveio_server_app_1.ResolveIOServer.getServerConfig().ROOT_URL||"http://localhost:4200"===resolveio_server_app_1.ResolveIOServer.getServerConfig().ROOT_URL)return[3,17];resolveio_server_app_1.ResolveIOServer.getLocalLogManager().writeLog({type:"log",data:{_id:(0,common_1.objectIdHexString)(),createdAt:new Date,type:"client-request",collection:"",id_document:"",payload:(0,common_1.getBinarySize)(JSON.stringify(_))<2e5?JSON.stringify(_,null,2):"Too Big",method:h,id_user:f.id_user||"",user:f.user||"",messageId:n,route:r}})}return[3,19];case 17:return[4,log_collection_1.Logs.insertOne({_id:(0,common_1.objectIdHexString)(),type:"client-request",collection:"",id_document:"",payload:(0,common_1.getBinarySize)(JSON.stringify(_))<2e5?JSON.stringify(_,null,2):"Too Big",method:h,id_user:f.id_user||"",user:f.user||"",messageId:n,route:r,client:"ResolveIO",instance:"backend.resolveio.com",instance_index:process.env.NODE_APP_INSTANCE||""})];case 18:e.sent(),e.label=19;case 19:return(v={messageId:g,hasError:!1,data:"ACK"},f&&f.readyState===f.OPEN&&this._websocketManager.send(f,v),d=this.findAvailableWorker(),this._isWorkersEnabled&&d&&"find"!==h&&"insertDocument"!==h&&"countWithQuery"!==h&&"findOne"!==h&&"updateDocumentProps"!==h&&"findWithOptions"!==h&&"updateDocument"!==h&&"insertErrorLog"!==h&&"removeDocument"!==h&&"supportCreateBillingUser"!==h&&"getSignedUrl"!==h&&"getSignedUrls"!==h&&"getSignedUrlWithId"!==h&&"incorrectUser"!==h&&"reloadWS"!==h&&"reconnectWS"!==h&&"disconnectWS"!==h)?(d="task-"+(0,common_1.objectIdHexString)(),this._inFlightRequests[d]={ws:f,messageId:g,method:h},this.queueTask(d,h,_,{id_user:f.id_user,user:f.user,id_ws:f.id_socket}),[3,22]):[3,20];case 20:return[4,this.callMethodLocally(f,g,h,_)];case 21:e.sent(),e.label=22;case 22:return[2]}})})},ResolveIOMainServer.prototype.callMethodLocally=function(s,o,i,a){return __awaiter(this,void 0,void 0,function(){var r,t,n;return __generator(this,function(e){switch(e.label){case 0:r={messageId:o,hasError:!1,data:null},e.label=1;case 1:return e.trys.push([1,3,,4]),[4,(n=this._methodManager.callMethod).call.apply(n,__spreadArray([Object.assign({},this._methodManager,method_manager_1.MethodManager.prototype,{id_user:s.id_user,user:s.user,id_ws:s.id_socket}),i],__read(a),!1))];case 2:return n=e.sent(),r.data=n,[3,4];case 3:return t=e.sent(),r.hasError=!0,r.data=t||"Unknown error",[3,4];case 4:return s&&s.readyState===s.OPEN&&this._websocketManager.send(s,r),[2]}})})},ResolveIOMainServer.prototype.queueTask=function(e,r,t,n){this._taskQueue.push({taskId:e,method:r,params:t,userContext:n}),this.dispatchQueue()},ResolveIOMainServer.prototype.dispatchQueue=function(){if(this._taskQueue.length)for(var e=0;e<9999;e++){var r=this._taskQueue[0];if(!r)break;var t=this.findAvailableWorker();if(!t)break;this._taskQueue.shift(),this.assignTaskToWorker(t,r)}},ResolveIOMainServer.prototype.findAvailableWorker=function(){var e=this._workers.filter(function(e){return e.activeTasks<e.maxConcurrency});return e.length?(e.sort(function(e,r){return e.activeTasks-r.activeTasks}),e[0]):null},ResolveIOMainServer.prototype.assignTaskToWorker=function(r,t){r.activeTasks++;var e={type:"task",taskId:t.taskId,method:t.method,params:t.params,userContext:t.userContext};try{r.ws.send(JSON.stringify(e))}catch(e){console.error("Failed to send task to worker:",e),r.activeTasks=Math.max(0,r.activeTasks-1),this._taskQueue.unshift(t)}},ResolveIOMainServer.prototype.handleWorkerMessage=function(r,t){var e,n,s,o;try{o=JSON.parse(t,common_1.dateReviver)}catch(e){return void console.error("Failed to parse worker message:",t)}"taskComplete"===o.type&&((t=this._workers.find(function(e){return e.id===r}))?(t.activeTasks=Math.max(0,t.activeTasks-1),t=o.taskId,e=o.error,n=o.message,o=o.result,(s=this._inFlightRequests[t])?(delete this._inFlightRequests[t],o={messageId:s.messageId,hasError:!1,data:o},e&&(o.hasError=!0,o.data=n),s.ws&&s.ws.readyState===s.ws.OPEN&&this._websocketManager.send(s.ws,o)):console.error("No in-flight request found for task:",t),this.dispatchQueue()):console.error("Unknown worker for taskComplete:",r))},ResolveIOMainServer.prototype.unsubscribeWS=function(r){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return this._subscriptionManager&&this._subscriptionManager.getEnableDebug()&&console.log(new Date,"Server App","Unsub WS",r.user,r.id_socket),[4,this._subscriptionManager.unsubscribeAll(r)];case 1:return e.sent(),r.removeAllListeners(),r=null,[2]}})})},ResolveIOMainServer.prototype.getApp=function(){return this._app},ResolveIOMainServer.prototype.getServerConfig=function(){return resolveio_server_app_1.ResolveIOServer.getServerConfig()},ResolveIOMainServer}();exports.ResolveIOMainServer=ResolveIOMainServer;
1
+ "use strict";var __awaiter=this&&this.__awaiter||function(e,n,s,o){return new(s=s||Promise)(function(t,r){function fulfilled(e){try{step(o.next(e))}catch(e){r(e)}}function rejected(e){try{step(o.throw(e))}catch(e){r(e)}}function step(e){var r;e.done?t(e.value):((r=e.value)instanceof s?r:new s(function(e){e(r)})).then(fulfilled,rejected)}step((o=o.apply(e,n||[])).next())})},__generator=this&&this.__generator||function(n,s){var o,i,a,c={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]},l={next:verb(0),throw:verb(1),return:verb(2)};return"function"==typeof Symbol&&(l[Symbol.iterator]=function(){return this}),l;function verb(t){return function(e){var r=[t,e];if(o)throw new TypeError("Generator is already executing.");for(;c=l&&r[l=0]?0:c;)try{if(o=1,i&&(a=2&r[0]?i.return:r[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,r[1])).done)return a;switch(i=0,(r=a?[2&r[0],a.value]:r)[0]){case 0:case 1:a=r;break;case 4:return c.label++,{value:r[1],done:!1};case 5:c.label++,i=r[1],r=[0];continue;case 7:r=c.ops.pop(),c.trys.pop();continue;default:if(!(a=0<(a=c.trys).length&&a[a.length-1])&&(6===r[0]||2===r[0])){c=0;continue}if(3===r[0]&&(!a||r[1]>a[0]&&r[1]<a[3]))c.label=r[1];else if(6===r[0]&&c.label<a[1])c.label=a[1],a=r;else{if(!(a&&c.label<a[2])){a[2]&&c.ops.pop(),c.trys.pop();continue}c.label=a[2],c.ops.push(r)}}r=s.call(n,c)}catch(e){r=[6,e],i=0}finally{o=a=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}}},__read=this&&this.__read||function(e,r){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var n,s,o=t.call(e),i=[];try{for(;(void 0===r||0<r--)&&!(n=o.next()).done;)i.push(n.value)}catch(e){s={error:e}}finally{try{n&&!n.done&&(t=o.return)&&t.call(o)}finally{if(s)throw s.error}}return i},__spreadArray=this&&this.__spreadArray||function(e,r,t){if(t||2===arguments.length)for(var n,s=0,o=r.length;s<o;s++)!n&&s in r||((n=n||Array.prototype.slice.call(r,0,s))[s]=r[s]);return e.concat(n||Array.prototype.slice.call(r))},__values=this&&this.__values||function(e){var r="function"==typeof Symbol&&Symbol.iterator,t=r&&e[r],n=0;if(t)return t.call(e);if(e&&"number"==typeof e.length)return{next:function(){return{value:(e=e&&n>=e.length?void 0:e)&&e[n++],done:!e}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")},bodyParser=(Object.defineProperty(exports,"__esModule",{value:!0}),exports.ResolveIOMainServer=void 0,require("body-parser")),express=require("express"),xmlParser=require("express-xml-bodyparser"),http_1=require("http"),jwt=require("jsonwebtoken"),moment=require("moment-timezone"),WebSocket=require("ws"),log_collection_1=require("./collections/log.collection"),user_collection_1=require("./collections/user.collection"),cron_manager_1=require("./managers/cron.manager"),method_manager_1=require("./managers/method.manager"),monitor_manager_1=require("./managers/monitor.manager"),subscription_manager_1=require("./managers/subscription.manager"),common_1=require("./util/common"),mongodb_1=require("mongodb"),auth_1=require("./http/auth"),health_1=require("./http/health"),home_1=require("./http/home"),websocket_manager_1=require("./managers/websocket.manager"),resolveio_server_app_1=require("./resolveio-server-app"),ResolveIOMainServer=function(){function ResolveIOMainServer(){this._offlineUpdates=[],this.sesMail=!1,this.standardProgram=!1,this.publicProgram=!1,this._rebootFlag=!1,this._runningTasks=[],this.LOGGER="ERROR",this._clientRoutes=[],this._lastErrorMsg=null,this._debugMsgRecv=0,this._debugMsgQueue=0,this._isWorkersEnabled=!1,this._isWorkerInstance=!1,this._safeShutdown=!1,this._workers=[],this._taskQueue=[],this._inFlightRequests={}}return ResolveIOMainServer.create=function(){var e=new ResolveIOMainServer;return e.initialize(),e},ResolveIOMainServer.prototype.initialize=function(){var e=this,o=(this._serverStartTime=new Date,this._lastErrorMsg=null,this._monitorManager=new monitor_manager_1.MonitorManager,this._monitorManagerFunction=new monitor_manager_1.MonitorManagerFunction,this._isWorkersEnabled="true"===process.env.IS_WORKERS_ENABLED,this._isWorkerInstance="true"===process.env.IS_WORKER_INSTANCE,setInterval(function(){e._subscriptionManager&&e._subscriptionManager.getEnableDebug()&&(console.log(new Date,"Server App","Msg Recv Hits",e._debugMsgRecv),console.log(new Date,"Server App","Msg Queue Hits",e._debugMsgQueue)),e._debugMsgQueue=0,e._debugMsgRecv=0},6e4),!1);setTimeout(function(){o=!0},5e3),process.on("unhandledRejection",function(n,s){return __awaiter(e,void 0,void 0,function(){var r,t=this;return __generator(this,function(e){switch(e.label){case 0:return n&&"MongoError"===n.name&&48===n.code?[2]:n&&"MongoServerError"===n.name&&!o?[2]:(console.error(new Date,"Unhandled Rejection at Promise",[n,s]),r=moment().diff(this._serverStartTime,"seconds"),n&&("MongoNetworkTimeoutError"===n.name||n instanceof mongodb_1.MongoNetworkTimeoutError)?60<r&&!this._lastErrorMsg?(this._lastErrorMsg=new Date,setTimeout(function(){t._lastErrorMsg=null},6e4),[4,this._methodManager.sendEmail("dev@resolveio.com","SERVER - MongoNetworkTimeoutError - Quitting NodeJS - "+resolveio_server_app_1.ResolveIOServer.getServerConfig().CLIENT_NAME,JSON.stringify({name:n.name,message:n.message,stack:n.stack},null,2))]):[3,2]:[3,3]);case 1:e.sent(),process.exit(1),e.label=2;case 2:return[3,11];case 3:return n&&"MongoError"===n.name&&"not master"===n.message?60<r&&!this._lastErrorMsg?(this._lastErrorMsg=new Date,setTimeout(function(){t._lastErrorMsg=null},6e4),[4,this._methodManager.sendEmail("dev@resolveio.com","SERVER - Unhandled Rejection - Quitting NodeJS - "+resolveio_server_app_1.ResolveIOServer.getServerConfig().CLIENT_NAME,JSON.stringify([n.name,n.message,n.stack],null,2))]):[3,5]:[3,6];case 4:e.sent(),e.label=5;case 5:return process.exit(1),[3,11];case 6:return n&&"MongoError"===n.name&&"not master and slaveOk=false"===n.message?60<r&&!this._lastErrorMsg?(this._lastErrorMsg=new Date,setTimeout(function(){t._lastErrorMsg=null},6e4),[4,this._methodManager.sendEmail("dev@resolveio.com","SERVER - Unhandled Rejection - Quitting NodeJS - "+resolveio_server_app_1.ResolveIOServer.getServerConfig().CLIENT_NAME,JSON.stringify([n.name,n.message,n.stack],null,2))]):[3,8]:[3,9];case 7:e.sent(),e.label=8;case 8:return process.exit(1),[3,11];case 9:return n?"StatusError"!==n.name&&""!==n.message&&60<r&&!this._lastErrorMsg?(this._lastErrorMsg=new Date,setTimeout(function(){t._lastErrorMsg=null},6e4),[4,this._methodManager.sendEmail("dev@resolveio.com","SERVER - Unhandled Rejection - "+resolveio_server_app_1.ResolveIOServer.getServerConfig().CLIENT_NAME,JSON.stringify([n.name,n.message,n.stack],null,2))]):[3,11]:[3,11];case 10:e.sent(),e.label=11;case 11:return[2]}})})}),process.on("uncaughtException",function(t){return __awaiter(e,void 0,void 0,function(){var r=this;return __generator(this,function(e){switch(e.label){case 0:return(console.error(t,"Uncaught Exception thrown"),60<moment().diff(this._serverStartTime,"seconds")&&!this._lastErrorMsg)?(this._lastErrorMsg=new Date,setTimeout(function(){r._lastErrorMsg=null},6e4),[4,this._methodManager.sendEmail("dev@resolveio.com","SERVER - Unhandled Exception - "+resolveio_server_app_1.ResolveIOServer.getServerConfig().CLIENT_NAME,JSON.stringify([t.name,t.message,t.stack],null,2))]):[3,2];case 1:e.sent(),e.label=2;case 2:return[2]}})})}),process.on("SIGINT",function(){return __awaiter(e,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return this._rebootFlag=!0,this._serverHTTP&&this._serverHTTP.close(),[4,this.safeShutdown()];case 1:return e.sent(),[2]}})})}),process.on("SIGTERM",function(){return __awaiter(e,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return this._rebootFlag=!0,this._serverHTTP&&this._serverHTTP.close(),[4,this.safeShutdown()];case 1:return e.sent(),[2]}})})}),process.on("SIGQUIT",function(){return __awaiter(e,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return this._rebootFlag=!0,this._serverHTTP&&this._serverHTTP.close(),[4,this.safeShutdown()];case 1:return e.sent(),[2]}})})}),"DEBUG"===this.LOGGER&&console.log("Starting ResolveIO Server"),this._isWorkersEnabled?this._isWorkerInstance?(console.log("Running as a Worker instance"),this._methodManager=method_manager_1.MethodManager.create(null,this._monitorManagerFunction,this._isWorkersEnabled,this._isWorkerInstance),this._cronManager=cron_manager_1.CronManager.create(),this.startWorkerInstance()):(console.log("Running as a Server instance"),this._websocketManager=websocket_manager_1.WebSocketManager.create(this),this.startServerInstance(),this._methodManager=method_manager_1.MethodManager.create(this._websocketManager,this._monitorManagerFunction,this._isWorkersEnabled,this._isWorkerInstance),this._subscriptionManager=subscription_manager_1.SubscriptionManager.create(this._serverWSS,resolveio_server_app_1.ResolveIOServer.getServerConfig(),this._monitorManagerFunction),this.listen()):(console.log("Running with Workers Disabled"),this._websocketManager=websocket_manager_1.WebSocketManager.create(this),this.startServerInstance(),this._methodManager=method_manager_1.MethodManager.create(this._websocketManager,this._monitorManagerFunction,this._isWorkersEnabled,this._isWorkerInstance),this._subscriptionManager=subscription_manager_1.SubscriptionManager.create(this._serverWSS,resolveio_server_app_1.ResolveIOServer.getServerConfig(),this._monitorManagerFunction),this._cronManager=cron_manager_1.CronManager.create(),this.listen())},ResolveIOMainServer.prototype.startServerInstance=function(){this._app=express(),this._app.use(bodyParser.json({limit:"50mb",reviver:common_1.dateReviver})),this._app.use(bodyParser.urlencoded({limit:"50mb",extended:!0,parameterLimit:1e6})),this._app.use(xmlParser()),this._portHTTP=process.env.PORT_HTTP||resolveio_server_app_1.ResolveIOServer.getServerConfig().PORT_HTTP||8080,this._portWSS=process.env.PORT_WSS||resolveio_server_app_1.ResolveIOServer.getServerConfig().PORT_WSS||8081,"DEBUG"===this.LOGGER&&console.log("Setup ports"),this.createServer(),"DEBUG"===this.LOGGER&&console.log("Create server"),this._app.use(function(e,r,t){r.setHeader("Access-Control-Allow-Origin","*"),r.setHeader("Access-Control-Allow-Methods","GET, POST"),r.setHeader("Access-Control-Allow-Headers","X-Requested-With,content-type"),r.setHeader("Access-Control-Allow-Credentials","false"),t()}),"DEBUG"===this.LOGGER&&console.log("Setup cors"),(0,auth_1.setupAuthRoutes)(this,this._app,resolveio_server_app_1.ResolveIOServer.getServerConfig()),(0,health_1.setupHealthRoutes)(this._app),"ResolveIO"!==resolveio_server_app_1.ResolveIOServer.getServerConfig().CLIENT_NAME&&!this.standardProgram||(0,home_1.setupHomeRoutes)(this,this._app,resolveio_server_app_1.ResolveIOServer.getServerConfig()),"DEBUG"===this.LOGGER&&console.log("Setup express routes")},ResolveIOMainServer.prototype.startWorkerInstance=function(){var e=this,r=(console.log(new Date,"Worker instance started, connecting to main server via WebSocket..."),resolveio_server_app_1.ResolveIOServer.getServerConfig().SERVER_URL+"/websocket?workerToken="+resolveio_server_app_1.ResolveIOServer.getServerConfig().WORKER_TOKEN),n=new WebSocket(r),s=null,t=null;n.on("open",function(){console.log(new Date,"Connected to main server as worker",process.env.WORKER_INDEX,process.env.NODE_APP_INSTANCE),e.sendWorkerResponse(n,"ping"),t=setInterval(function(){s?(s=null,e.sendWorkerResponse(n,"ping")):n.close()},15e3)}),n.on("message",function(t){return __awaiter(e,void 0,void 0,function(){var r;return __generator(this,function(e){switch(e.label){case 0:return"ping"!==(t="string"!=typeof t?t.toString():t)?[3,1]:(this.sendWorkerResponse(n,"pong"),[3,4]);case 1:return"pong"!==t?[3,2]:(s=new Date,[3,4]);case 2:r=void 0;try{r=JSON.parse(t,common_1.dateReviver)}catch(e){return console.error("Worker parse error",e),[2]}return"task"!==r.type?[3,4]:[4,this.handleIncomingTask(n,r)];case 3:e.sent(),e.label=4;case 4:return[2]}})})}),n.on("close",function(){console.log(new Date,"Disconnected from main server. Reconnecting in 5s..."),setTimeout(e.startWorkerInstance,5e3),t&&clearInterval(t)}),n.on("error",function(e){console.error(new Date,"Worker WS error:",e),n.close()})},ResolveIOMainServer.prototype.handleIncomingTask=function(u,_){return __awaiter(this,void 0,void 0,function(){var r,t,n,s,o,i,a,c,l=this;return __generator(this,function(e){switch(e.label){case 0:if(r=_.taskId,t=_.method,n=_.params,s=_.userContext,this._runningTasks.push(r),!r||!t)return console.log("Invalid task message received",_),[2];o=!1,i=setTimeout(function(){return __awaiter(l,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return o=!0,console.error("Worker timed out on task:",r),this.sendWorkerResponse(u,{type:"taskComplete",taskId:r,error:!0,message:"Task timed out"}),[4,this._methodManager.callMethod("insertErrorLog","Timeout in Method: ".concat(t," - ").concat(JSON.stringify(_,null,2)))];case 1:return e.sent(),[2]}})})},12e4),e.label=1;case 1:return e.trys.push([1,3,,5]),a=Object.assign({},this._methodManager,method_manager_1.MethodManager.prototype,{id_user:(null==s?void 0:s.id_user)||"",user:(null==s?void 0:s.user)||"",id_ws:(null==s?void 0:s.id_ws)||""}),[4,(c=this._methodManager.callMethod).call.apply(c,__spreadArray([a,t],__read(n),!1))];case 2:return c=e.sent(),o||(clearTimeout(i),this.sendWorkerResponse(u,{type:"taskComplete",taskId:r,error:!1,result:c})),this._runningTasks=this._runningTasks.filter(function(e){return e!==r}),[3,5];case 3:return a=e.sent(),o||(clearTimeout(i),console.error("Worker failed task:",r,a),this.sendWorkerResponse(u,{type:"taskComplete",taskId:r,error:!0,message:a||"Unknown error"})),[4,this._methodManager.callMethod("insertErrorLog","Error in Method: ".concat(t," - ").concat(JSON.stringify(_,null,2)))];case 4:return e.sent(),this._runningTasks=this._runningTasks.filter(function(e){return e!==r}),[3,5];case 5:return[2]}})})},ResolveIOMainServer.prototype.sendWorkerResponse=function(e,r){if("string"!=typeof r&&(r=JSON.stringify(r)),e&&e.readyState===e.OPEN)try{e.send(r)}catch(e){console.error("Failed to send worker response:",e)}else e&&e.close()},ResolveIOMainServer.prototype.safeShutdown=function(){return __awaiter(this,void 0,void 0,function(){var r=this;return __generator(this,function(e){switch(e.label){case 0:if(this._safeShutdown||console.log(new Date,"Safe Shutdown Command Received"),this._monitorManagerFunction.getActiveMonitorFunctions().length||this._offlineUpdates.length||this._taskQueue.length||this._runningTasks.length)return[3,7];if(!resolveio_server_app_1.ResolveIOServer.getMongoConnection())return[3,5];e.label=1;case 1:return e.trys.push([1,3,,4]),[4,resolveio_server_app_1.ResolveIOServer.getMongoConnection().close(!1)];case 2:return e.sent(),console.log(new Date,"Safe Exit Complete, Process Exit"),process.exit(0),[3,4];case 3:return e.sent(),process.exit(1),[3,4];case 4:return[3,6];case 5:process.exit(0),e.label=6;case 6:return[3,8];case 7:this._safeShutdown||(this._safeShutdown=!0,setTimeout(function(){r._safeShutdown=!1},1e3),console.log(new Date,"Safe Exit In Progress",this._monitorManagerFunction.getActiveMonitorFunctions().length,this._offlineUpdates.length)),setImmediate(function(){return __awaiter(r,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return[4,this.safeShutdown()];case 1:return e.sent(),[2]}})})}),e.label=8;case 8:return[2]}})})},ResolveIOMainServer.prototype.getIsWorkersEnabled=function(){return this._isWorkersEnabled},ResolveIOMainServer.prototype.getIsWorkerInstance=function(){return this._isWorkerInstance},ResolveIOMainServer.prototype.getWSList=function(){var r=[];return this._serverWSS.clients.forEach(function(e){r.push(e.id_socket)}),r},ResolveIOMainServer.prototype.getWSUserList=function(){var r=[];return this._serverWSS.clients.forEach(function(e){r.push(e.id_user)}),r},ResolveIOMainServer.prototype.getHTTPServer=function(){return this._serverHTTP},ResolveIOMainServer.prototype.getCronManager=function(){return this._cronManager},ResolveIOMainServer.prototype.getMethodManager=function(){return this._methodManager},ResolveIOMainServer.prototype.getSubscriptionManager=function(){return this._subscriptionManager},ResolveIOMainServer.prototype.getMonitorManager=function(){return this._monitorManager},ResolveIOMainServer.prototype.getRebootFlag=function(){return this._rebootFlag},ResolveIOMainServer.prototype.getWebSocketManager=function(){return this._websocketManager},ResolveIOMainServer.prototype.createServer=function(){var r=this;this._serverHTTP=(0,http_1.createServer)(this._app),this._serverHTTP.keepAliveTimeout=65e3,this._serverHTTP.headersTimeout=66e3,this._serverWSS=new WebSocket.Server({port:this._portWSS,verifyClient:this.publicProgram?null:function(s,o){var e;r._rebootFlag?o(!1,409,"Unable To Process"):("DEBUG"===r.LOGGER&&console.log("Verify Client",s,o),s.req.url&&s.req.url.includes("workerToken=")?(s.req.url.split("workerToken=")[1]||"")===resolveio_server_app_1.ResolveIOServer.getServerConfig().WORKER_TOKEN?o(!0):o(!1,401,"Unauthorized"):(e=s.req.headers["sec-websocket-protocol"].split(/,/),(s.origin===resolveio_server_app_1.ResolveIOServer.getServerConfig().ROOT_URL||s.origin===resolveio_server_app_1.ResolveIOServer.getServerConfig().SEC_ROOT_URL||s.origin===resolveio_server_app_1.ResolveIOServer.getServerConfig().RESOLVEIO_URL||s.origin===resolveio_server_app_1.ResolveIOServer.getServerConfig().RESOLVEIO_SECONDARY_URL)&&(e=e[0])?jwt.verify(e,resolveio_server_app_1.ResolveIOServer.getServerConfig().JWT_SECRET,function(t,n){return __awaiter(r,void 0,void 0,function(){var r;return __generator(this,function(e){switch(e.label){case 0:return t?(o(!1,401,"Unauthorized"),[3,5]):[3,1];case 1:s.req.id_user=n.id_user,e.label=2;case 2:return e.trys.push([2,4,,5]),[4,user_collection_1.Users.findById(n.id_user)];case 3:return(r=e.sent())?(s.req.user=r.fullname,s.req.user_readonly=r.readonly||!1,s.req.doc_user=r,o(!0)):o(!1),[3,5];case 4:return e.sent(),o(!1),[3,5];case 5:return[2]}})})}):o(!1,401,"Unauthorized")))}})},ResolveIOMainServer.prototype.listen=function(){var e=this;this._serverHTTP.listen(this._portHTTP,function(){console.log("Running server on port %s",e._portHTTP)}),this._serverWSS.on("listening",function(){console.log("Running server on port %s",e._portWSS)}),this._serverWSS.on("connection",function(o,i){return __awaiter(e,void 0,void 0,function(){var r,t,n,s=this;return __generator(this,function(e){switch(e.label){case 0:return i.url&&i.url.includes("workerToken=")?(r=(0,common_1.objectIdHexString)(),o.id_worker=r,this._workers.push({id:r,ws:o,activeTasks:0,maxConcurrency:2}),n=t=null,o.on("open",function(){s.sendWorkerResponse(o,"ping"),t=setInterval(function(){n?(n=null,s.sendWorkerResponse(o,"ping")):o.close()},15e3)}),console.log(new Date,"Worker connected:",r),o.on("message",function(e){"ping"===(e="string"!=typeof e?e.toString():e)?s.sendWorkerResponse(o,"pong"):"pong"===e?n=new Date:s.handleWorkerMessage(r,e)}),o.on("close",function(){console.log(new Date,"Worker disconnected:",r),s._workers=s._workers.filter(function(e){return e.id!==r}),t&&clearInterval(t)}),o.on("error",function(e){console.error("Error on WS Worker",e),o.close()}),[3,3]):[3,1];case 1:return o.id_socket=(0,common_1.objectIdHexString)(),o.id_user=i.id_user,o.user=i.user,o.user_readonly=i.user_readonly,o.doc_user=i.doc_user,this._websocketManager.addWebSocket(o),[4,this._subscriptionManager.createLoggedInUser(o.id_socket)];case 2:e.sent(),setTimeout(function(){o.pingTime=new Date,o.send("ping",function(r){return __awaiter(s,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return r?(this._subscriptionManager.getEnableDebug()&&console.log(new Date,"Server App","Error WS Ping"),[4,this.unsubscribeWS(o)]):[3,2];case 1:e.sent(),e.label=2;case 2:return[2]}})})})},5e3),"DEBUG"===this.LOGGER&&console.log("Connection from user: "+i.user),o.isAlive=!0,o.retryCnt=0,o.on("message",function(n){return __awaiter(s,void 0,void 0,function(){var r,t;return __generator(this,function(e){switch(e.label){case 0:this._debugMsgRecv+=1,r=[],e.label=1;case 1:return e.trys.push([1,2,,4]),r=JSON.parse(n,common_1.dateReviver),[3,4];case 2:return t=e.sent(),console.log("Error - JSON.parse",n),[4,this._methodManager.sendEmail("dev@resolveio.com","SERVER - JSON Parse Error - "+resolveio_server_app_1.ResolveIOServer.getServerConfig().CLIENT_NAME,JSON.stringify([n,t]))];case 3:return e.sent(),[2];case 4:return[4,this.processSocketMessage(o,r)];case 5:return e.sent(),[2]}})})}).on("end",function(){o.close()}).on("error",function(){o.close()}).on("close",function(){return __awaiter(s,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return[4,this.unsubscribeWS(o)];case 1:return e.sent(),[2]}})})}),e.label=3;case 3:return[2]}})})}),setInterval(function(){return __awaiter(e,void 0,void 0,function(){var r,n,t,s,o,i,a,c=this;return __generator(this,function(e){switch(e.label){case 0:r=function(t){return __generator(this,function(e){switch(e.label){case 0:return t.pingTime&&2e4<=Date.now()-t.pingTime.getTime()?!1!==t.isAlive?[3,4]:(t.retryCnt++,3<=t.retryCnt?[4,n.unsubscribeWS(t)]:[3,2]):[3,5];case 1:return e.sent(),[3,3];case 2:t.pingTime=new Date,t.send("ping",function(r){return __awaiter(c,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return r?(this._subscriptionManager.getEnableDebug()&&console.log(new Date,"Server App","Error WS Ping"),[4,this.unsubscribeWS(t)]):[3,2];case 1:e.sent(),e.label=2;case 2:return[2]}})})}),e.label=3;case 3:return[3,5];case 4:t.retryCnt=0,t.isAlive=!1,t.pingTime=new Date,t.send("ping",function(r){return __awaiter(c,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return r?(this._subscriptionManager.getEnableDebug()&&console.log(new Date,"Server App","Error WS Ping"),[4,this.unsubscribeWS(t)]):[3,2];case 1:e.sent(),e.label=2;case 2:return[2]}})})}),e.label=5;case 5:return[2]}})},n=this,e.label=1;case 1:e.trys.push([1,6,7,8]),t=__values(this._serverWSS.clients),s=t.next(),e.label=2;case 2:return s.done?[3,5]:(o=s.value,[5,r(o)]);case 3:e.sent(),e.label=4;case 4:return s=t.next(),[3,2];case 5:return[3,8];case 6:return o=e.sent(),i={error:o},[3,8];case 7:try{s&&!s.done&&(a=t.return)&&a.call(t)}finally{if(i)throw i.error}return[7];case 8:return[2]}})})},2e4)},ResolveIOMainServer.prototype.processSocketMessage=function(i,a){return __awaiter(this,void 0,void 0,function(){var r,t,n,s,o;return __generator(this,function(e){switch(e.label){case 0:if("string"==typeof a&&"ping"===a)return i&&i.readyState===i.OPEN&&i.send("pong"),[2];if("string"==typeof a&&"pong"===a)return i.isAlive=!0,i.pongTime=new Date,i.latency=moment.duration(moment(i.pongTime).diff(i.pingTime)).asMilliseconds(),this._subscriptionManager.loggedInLatency(i),[2];if(!Array.isArray(a[0]))return console.log("Invalid message format (expected array of arrays)",a),[2];e.label=1;case 1:e.trys.push([1,6,7,8]),r=__values(a),t=r.next(),e.label=2;case 2:return t.done?[3,5]:(n=t.value,[4,this.handleClientMessage(i,n)]);case 3:e.sent(),e.label=4;case 4:return t=r.next(),[3,2];case 5:return[3,8];case 6:return n=e.sent(),s={error:n},[3,8];case 7:try{t&&!t.done&&(o=r.return)&&o.call(r)}finally{if(s)throw s.error}return[7];case 8:return[2]}})})},ResolveIOMainServer.prototype.handleClientMessage=function(f,m){return __awaiter(this,void 0,void 0,function(){var r,t,n,s,o,i,a,c,l,u,_,g,h,d,v,p;return __generator(this,function(e){switch(e.label){case 0:return(r=m[0],t=m[1],n=m[2],s=m[3],this.publicProgram||!this._clientRoutes.some(function(e){return r.includes(e)})||f.doc_user.roles.groups.some(function(e){return e.views.some(function(e){return r.includes(e)||e.includes(r)})})||f.doc_user.roles.super_admin)?"subscription"!==s?[3,4]:(i=m[4],o=m[5],"sub"!==i?[3,2]:[4,this._subscriptionManager.subscribe(r,t,f,n,o,m.slice(6))]):[2];case 1:return e.sent(),[3,3];case 2:this._subscriptionManager.unsubscribe(r,t,f,n,o,m.slice(6)),e.label=3;case 3:return[3,22];case 4:if(this.publicProgram||"offline"!==s)return[3,16];i={messageId:n,hasError:!1,data:"ACK"},f&&f.readyState===f.OPEN&&this._websocketManager.send(f,i),this._offlineUpdates.push(f),a=m[4],c=0,e.label=5;case 5:if(!(c<a.length))return[3,15];if(l=a[c],l=l.data,l.shift(),l.shift(),p=l.shift(),l.shift(),u=l.shift(),p={messageId:p,hasError:!1,data:"ACK"},f&&f.readyState===f.OPEN&&this._websocketManager.send(f,p),"insertDocument"===u&&"driver-gps"===l[0])return[3,14];if("reportBuilderGetResults"!==u&&"reportBuilderGetDistinctValue"!==u&&"reportBuilderBuildTree"!==u&&"generatePDF"!==u&&"getWOOfflineData"!==u&&"countQuery"!==u&&"countWithQuery"!==u&&"countCollectionWithQuery"!==u&&"find"!==u&&"findOne"!==u&&"findWithOptions"!==u&&"getDrivers"!==u&&"processAirdropDistribution"!==u){if("https://resolveio.com"===resolveio_server_app_1.ResolveIOServer.getServerConfig().ROOT_URL||"http://localhost:4200"===resolveio_server_app_1.ResolveIOServer.getServerConfig().ROOT_URL)return[3,6];resolveio_server_app_1.ResolveIOServer.getLocalLogManager().writeLog({type:"log",data:{_id:(0,common_1.objectIdHexString)(),createdAt:new Date,type:"client-request",collection:"",id_document:"",payload:(0,common_1.getBinarySize)(JSON.stringify(l))<2e5?JSON.stringify(l,null,2):"Too Big",method:u,id_user:f.id_user||"",user:f.user||"",messageId:n,route:r}})}return[3,8];case 6:return[4,log_collection_1.Logs.insertOne({_id:(0,common_1.objectIdHexString)(),type:"client-request",collection:"",id_document:"",payload:(0,common_1.getBinarySize)(JSON.stringify(l))<2e5?JSON.stringify(l,null,2):"Too Big",method:u,id_user:f.id_user||"",user:f.user||"",messageId:n,route:r,client:"ResolveIO",instance:"backend.resolveio.com",instance_index:process.env.NODE_APP_INSTANCE||""})];case 7:e.sent(),e.label=8;case 8:if(!this._methodManager._methods[u])return[3,13];e.label=9;case 9:return e.trys.push([9,11,,12]),[4,(p=this._methodManager.callMethod).call.apply(p,__spreadArray([Object.assign({},this._methodManager,method_manager_1.MethodManager.prototype,{id_user:f.id_user,user:f.user,id_ws:f.id_socket}),u],__read(l),!1))];case 10:return e.sent(),[3,12];case 11:return d=e.sent(),console.log(new Date,"Offline Error",JSON.stringify(d,null,2)),[3,12];case 12:return"updateDocumentOffline"!==u&&"updateDocumentPropsOffline"!==u||resolveio_server_app_1.ResolveIOServer.getMongoManager().invalidateQueryCache(l[0]),[3,14];case 13:console.log("Offline - Could not find method: "+u),e.label=14;case 14:return c++,[3,5];case 15:return this._offlineUpdates.splice(this._offlineUpdates.map(function(e){return e.id_socket}).indexOf(f.id_socket),1),[3,22];case 16:if(_=__spreadArray([],__read(m),!1),_.shift(),_.shift(),g=_.shift(),"method"!==_.shift())return[3,22];if(h=_.shift(),f.user_readonly)return[2];if("reportBuilderGetResults"!==h&&"reportBuilderGetDistinctValue"!==h&&"reportBuilderBuildTree"!==h&&"generatePDF"!==h&&"getWOOfflineData"!==h&&"countQuery"!==h&&"countWithQuery"!==h&&"countCollectionWithQuery"!==h&&"find"!==h&&"findOne"!==h&&"findWithOptions"!==h&&"getDrivers"!==h&&"processAirdropDistribution"!==h){if("https://resolveio.com"===resolveio_server_app_1.ResolveIOServer.getServerConfig().ROOT_URL||"http://localhost:4200"===resolveio_server_app_1.ResolveIOServer.getServerConfig().ROOT_URL)return[3,17];resolveio_server_app_1.ResolveIOServer.getLocalLogManager().writeLog({type:"log",data:{_id:(0,common_1.objectIdHexString)(),createdAt:new Date,type:"client-request",collection:"",id_document:"",payload:(0,common_1.getBinarySize)(JSON.stringify(_))<2e5?JSON.stringify(_,null,2):"Too Big",method:h,id_user:f.id_user||"",user:f.user||"",messageId:n,route:r}})}return[3,19];case 17:return[4,log_collection_1.Logs.insertOne({_id:(0,common_1.objectIdHexString)(),type:"client-request",collection:"",id_document:"",payload:(0,common_1.getBinarySize)(JSON.stringify(_))<2e5?JSON.stringify(_,null,2):"Too Big",method:h,id_user:f.id_user||"",user:f.user||"",messageId:n,route:r,client:"ResolveIO",instance:"backend.resolveio.com",instance_index:process.env.NODE_APP_INSTANCE||""})];case 18:e.sent(),e.label=19;case 19:return(d={messageId:g,hasError:!1,data:"ACK"},f&&f.readyState===f.OPEN&&this._websocketManager.send(f,d),v=this.findAvailableWorker(),this._isWorkersEnabled&&v&&"find"!==h&&"insertDocument"!==h&&"countWithQuery"!==h&&"findOne"!==h&&"updateDocumentProps"!==h&&"findWithOptions"!==h&&"updateDocument"!==h&&"insertErrorLog"!==h&&"removeDocument"!==h&&"supportCreateBillingUser"!==h&&"getSignedUrl"!==h&&"getSignedUrls"!==h&&"getSignedUrlWithId"!==h&&"incorrectUser"!==h&&"reloadWS"!==h&&"reconnectWS"!==h&&"disconnectWS"!==h)?(v="task-"+(0,common_1.objectIdHexString)(),this._inFlightRequests[v]={ws:f,messageId:g,method:h},this.queueTask(v,h,_,{id_user:f.id_user,user:f.user,id_ws:f.id_socket}),[3,22]):[3,20];case 20:return[4,this.callMethodLocally(f,g,h,_)];case 21:e.sent(),e.label=22;case 22:return[2]}})})},ResolveIOMainServer.prototype.callMethodLocally=function(s,o,i,a){return __awaiter(this,void 0,void 0,function(){var r,t,n;return __generator(this,function(e){switch(e.label){case 0:r={messageId:o,hasError:!1,data:null},e.label=1;case 1:return e.trys.push([1,3,,4]),[4,(n=this._methodManager.callMethod).call.apply(n,__spreadArray([Object.assign({},this._methodManager,method_manager_1.MethodManager.prototype,{id_user:s.id_user,user:s.user,id_ws:s.id_socket}),i],__read(a),!1))];case 2:return n=e.sent(),r.data=n,[3,4];case 3:return t=e.sent(),r.hasError=!0,r.data=t||"Unknown error",[3,4];case 4:return s&&s.readyState===s.OPEN&&this._websocketManager.send(s,r),[2]}})})},ResolveIOMainServer.prototype.queueTask=function(e,r,t,n){this._taskQueue.push({taskId:e,method:r,params:t,userContext:n}),this.dispatchQueue()},ResolveIOMainServer.prototype.dispatchQueue=function(){if(this._taskQueue.length)for(var e=0;e<9999;e++){var r=this._taskQueue[0];if(!r)break;var t=this.findAvailableWorker();if(!t)break;this._taskQueue.shift(),this.assignTaskToWorker(t,r)}},ResolveIOMainServer.prototype.findAvailableWorker=function(){var e=this._workers.filter(function(e){return e.activeTasks<e.maxConcurrency});return e.length?(e.sort(function(e,r){return e.activeTasks-r.activeTasks}),e[0]):null},ResolveIOMainServer.prototype.assignTaskToWorker=function(r,t){r.activeTasks++;var e={type:"task",taskId:t.taskId,method:t.method,params:t.params,userContext:t.userContext};try{r.ws.send(JSON.stringify(e))}catch(e){console.error("Failed to send task to worker:",e),r.activeTasks=Math.max(0,r.activeTasks-1),this._taskQueue.unshift(t)}},ResolveIOMainServer.prototype.handleWorkerMessage=function(r,t){var e,n,s,o;try{o=JSON.parse(t,common_1.dateReviver)}catch(e){return void console.error("Failed to parse worker message:",t)}"taskComplete"===o.type&&((t=this._workers.find(function(e){return e.id===r}))?(t.activeTasks=Math.max(0,t.activeTasks-1),t=o.taskId,e=o.error,n=o.message,o=o.result,(s=this._inFlightRequests[t])?(delete this._inFlightRequests[t],o={messageId:s.messageId,hasError:!1,data:o},e&&(o.hasError=!0,o.data=n),s.ws&&s.ws.readyState===s.ws.OPEN&&this._websocketManager.send(s.ws,o)):console.error("No in-flight request found for task:",t),this.dispatchQueue()):console.error("Unknown worker for taskComplete:",r))},ResolveIOMainServer.prototype.unsubscribeWS=function(r){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(e){switch(e.label){case 0:return this._subscriptionManager&&this._subscriptionManager.getEnableDebug()&&console.log(new Date,"Server App","Unsub WS",r.user,r.id_socket),[4,this._subscriptionManager.unsubscribeAll(r)];case 1:return e.sent(),r.removeAllListeners(),r=null,[2]}})})},ResolveIOMainServer.prototype.getApp=function(){return this._app},ResolveIOMainServer.prototype.getServerConfig=function(){return resolveio_server_app_1.ResolveIOServer.getServerConfig()},ResolveIOMainServer}();exports.ResolveIOMainServer=ResolveIOMainServer;
2
2
  //# sourceMappingURL=server-app.js.map