@resolveio/server-lib 12.5.53 → 12.5.54

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 (400) hide show
  1. package/.nodemon.json +5 -0
  2. package/.vscode/settings.json +3 -0
  3. package/README.md +22 -0
  4. package/compileDTS.pl +64 -0
  5. package/gulpfile.js +127 -0
  6. package/mongodbensurers.js +2 -0
  7. package/mongostop.js +3 -0
  8. package/package.json +1 -1
  9. package/settings.development.json +13 -0
  10. package/src/client-server-app.ts +7 -0
  11. package/src/collections/app-status.collection.ts +51 -0
  12. package/src/collections/counter.collection.ts +54 -0
  13. package/src/collections/cron-job-history.collection.ts +82 -0
  14. package/src/collections/cron-job.collection.ts +85 -0
  15. package/src/collections/email-history.collection.ts +66 -0
  16. package/src/collections/email-verified.collection.ts +61 -0
  17. package/src/collections/file.collection.ts +73 -0
  18. package/src/collections/flag.collection.ts +56 -0
  19. package/src/collections/log-method-latency.collection.ts +64 -0
  20. package/src/collections/log-subscription.collection.ts +68 -0
  21. package/src/collections/log-ts.collection.ts +78 -0
  22. package/src/collections/log.collection.ts +77 -0
  23. package/src/collections/logged-in-users.collection.ts +65 -0
  24. package/src/collections/method-response.collection.ts +66 -0
  25. package/src/collections/monitor-cpu.collection.ts +63 -0
  26. package/src/collections/monitor-memory.collection.ts +75 -0
  27. package/src/collections/monitor-mongo.collection.ts +69 -0
  28. package/src/collections/notification.collection.ts +51 -0
  29. package/src/collections/report-builder-dashboard-builder.collection.ts +109 -0
  30. package/src/collections/report-builder-library.collection.ts +89 -0
  31. package/src/collections/report-builder-report.collection.ts +149 -0
  32. package/src/collections/user-group.collection.ts +90 -0
  33. package/src/collections/user-guide.collection.ts +57 -0
  34. package/src/collections/user.collection.ts +259 -0
  35. package/src/cron/cron.ts +188 -0
  36. package/src/fixtures/cron-jobs.ts +25 -0
  37. package/src/fixtures/init.ts +10 -0
  38. package/src/http/auth.ts +732 -0
  39. package/src/http/health.ts +7 -0
  40. package/src/http/home.ts +71 -0
  41. package/src/index.ts +71 -0
  42. package/src/managers/cron.manager.ts +208 -0
  43. package/src/managers/method.manager.ts +607 -0
  44. package/src/managers/mongo.manager.ts +2282 -0
  45. package/src/managers/monitor.manager.ts +323 -0
  46. package/src/managers/subscription.manager.ts +1196 -0
  47. package/{managers/subscription.performance.js → src/managers/subscription.performance.ts} +68 -33
  48. package/src/methods/accounts.ts +202 -0
  49. package/src/methods/aws.ts +507 -0
  50. package/src/methods/collections.ts +512 -0
  51. package/src/methods/counters.ts +75 -0
  52. package/src/methods/cron-jobs.ts +1454 -0
  53. package/src/methods/flags.ts +7 -0
  54. package/src/methods/logs.ts +327 -0
  55. package/src/methods/monitor.ts +548 -0
  56. package/src/methods/pdf.ts +615 -0
  57. package/src/methods/report-builder.ts +876 -0
  58. package/src/methods/support.ts +146 -0
  59. package/{models/app-status.model.d.ts → src/models/app-status.model.ts} +3 -2
  60. package/{models/billing-logged-in-users.model.d.ts → src/models/billing-logged-in-users.model.ts} +5 -4
  61. package/src/models/collection-document.model.ts +22 -0
  62. package/{models/counter.model.d.ts → src/models/counter.model.ts} +4 -3
  63. package/src/models/cron-job-history.model.ts +13 -0
  64. package/src/models/cron-job.model.ts +14 -0
  65. package/src/models/dialog.model.ts +25 -0
  66. package/{models/email-history.model.d.ts → src/models/email-history.model.ts} +8 -7
  67. package/{models/email-verified.model.d.ts → src/models/email-verified.model.ts} +6 -5
  68. package/{models/file.model.d.ts → src/models/file.model.ts} +8 -7
  69. package/{models/flag.model.d.ts → src/models/flag.model.ts} +4 -3
  70. package/{models/log-method-latency.model.d.ts → src/models/log-method-latency.model.ts} +5 -4
  71. package/{models/log-subscription.model.d.ts → src/models/log-subscription.model.ts} +8 -6
  72. package/{models/log.model.d.ts → src/models/log.model.ts} +12 -10
  73. package/{models/logged-in-users.model.d.ts → src/models/logged-in-users.model.ts} +6 -5
  74. package/{models/method-response.model.d.ts → src/models/method-response.model.ts} +7 -6
  75. package/src/models/method.model.ts +11 -0
  76. package/{models/monitor-cpu.model.d.ts → src/models/monitor-cpu.model.ts} +9 -7
  77. package/src/models/monitor-memory.model.ts +17 -0
  78. package/src/models/monitor-mongo.model.ts +15 -0
  79. package/{models/notification.model.d.ts → src/models/notification.model.ts} +3 -2
  80. package/src/models/pagination.model.ts +30 -0
  81. package/src/models/permission.model.ts +14 -0
  82. package/src/models/report-builder-dashboard-builder.model.ts +29 -0
  83. package/src/models/report-builder-library.model.ts +20 -0
  84. package/src/models/report-builder-report.model.ts +110 -0
  85. package/src/models/report-builder.model.ts +68 -0
  86. package/src/models/select-data-label.model.ts +9 -0
  87. package/src/models/server-response.model.ts +5 -0
  88. package/src/models/subscription.model.ts +64 -0
  89. package/src/models/support-ticket.model.ts +81 -0
  90. package/src/models/user-group.model.ts +23 -0
  91. package/{models/user-guide.model.d.ts → src/models/user-guide.model.ts} +5 -4
  92. package/src/models/user.model.ts +79 -0
  93. package/{public_api.d.ts → src/public_api.ts} +1 -1
  94. package/src/publications/app-status.ts +13 -0
  95. package/src/publications/cron-jobs.ts +30 -0
  96. package/src/publications/files.ts +34 -0
  97. package/src/publications/flags.ts +20 -0
  98. package/src/publications/logs.ts +164 -0
  99. package/src/publications/method-responses.ts +13 -0
  100. package/src/publications/notifications.ts +13 -0
  101. package/src/publications/report-builder-dashboard-builders.ts +39 -0
  102. package/src/publications/report-builder-libraries.ts +41 -0
  103. package/src/publications/report-builder-reports.ts +48 -0
  104. package/src/publications/super-admin.ts +13 -0
  105. package/src/publications/user-groups.ts +12 -0
  106. package/src/publications/user-guides.ts +12 -0
  107. package/src/server-app.ts +769 -0
  108. package/src/util/common.ts +519 -0
  109. package/src/util/schema-report-builder.ts +413 -0
  110. package/tsconfig.json +30 -0
  111. package/tslint.json +143 -0
  112. package/client-server-app.d.ts +0 -1
  113. package/client-server-app.js +0 -48
  114. package/client-server-app.js.map +0 -1
  115. package/collections/app-status.collection.d.ts +0 -3
  116. package/collections/app-status.collection.js +0 -51
  117. package/collections/app-status.collection.js.map +0 -1
  118. package/collections/counter.collection.d.ts +0 -3
  119. package/collections/counter.collection.js +0 -54
  120. package/collections/counter.collection.js.map +0 -1
  121. package/collections/cron-job-history.collection.d.ts +0 -3
  122. package/collections/cron-job-history.collection.js +0 -82
  123. package/collections/cron-job-history.collection.js.map +0 -1
  124. package/collections/cron-job.collection.d.ts +0 -3
  125. package/collections/cron-job.collection.js +0 -85
  126. package/collections/cron-job.collection.js.map +0 -1
  127. package/collections/email-history.collection.d.ts +0 -3
  128. package/collections/email-history.collection.js +0 -66
  129. package/collections/email-history.collection.js.map +0 -1
  130. package/collections/email-verified.collection.d.ts +0 -3
  131. package/collections/email-verified.collection.js +0 -61
  132. package/collections/email-verified.collection.js.map +0 -1
  133. package/collections/file.collection.d.ts +0 -3
  134. package/collections/file.collection.js +0 -73
  135. package/collections/file.collection.js.map +0 -1
  136. package/collections/flag.collection.d.ts +0 -3
  137. package/collections/flag.collection.js +0 -56
  138. package/collections/flag.collection.js.map +0 -1
  139. package/collections/log-method-latency.collection.d.ts +0 -3
  140. package/collections/log-method-latency.collection.js +0 -64
  141. package/collections/log-method-latency.collection.js.map +0 -1
  142. package/collections/log-subscription.collection.d.ts +0 -3
  143. package/collections/log-subscription.collection.js +0 -68
  144. package/collections/log-subscription.collection.js.map +0 -1
  145. package/collections/log-ts.collection.d.ts +0 -3
  146. package/collections/log-ts.collection.js +0 -78
  147. package/collections/log-ts.collection.js.map +0 -1
  148. package/collections/log.collection.d.ts +0 -3
  149. package/collections/log.collection.js +0 -77
  150. package/collections/log.collection.js.map +0 -1
  151. package/collections/logged-in-users.collection.d.ts +0 -3
  152. package/collections/logged-in-users.collection.js +0 -65
  153. package/collections/logged-in-users.collection.js.map +0 -1
  154. package/collections/method-response.collection.d.ts +0 -3
  155. package/collections/method-response.collection.js +0 -66
  156. package/collections/method-response.collection.js.map +0 -1
  157. package/collections/monitor-cpu.collection.d.ts +0 -3
  158. package/collections/monitor-cpu.collection.js +0 -63
  159. package/collections/monitor-cpu.collection.js.map +0 -1
  160. package/collections/monitor-memory.collection.d.ts +0 -3
  161. package/collections/monitor-memory.collection.js +0 -75
  162. package/collections/monitor-memory.collection.js.map +0 -1
  163. package/collections/monitor-mongo.collection.d.ts +0 -3
  164. package/collections/monitor-mongo.collection.js +0 -69
  165. package/collections/monitor-mongo.collection.js.map +0 -1
  166. package/collections/notification.collection.d.ts +0 -3
  167. package/collections/notification.collection.js +0 -51
  168. package/collections/notification.collection.js.map +0 -1
  169. package/collections/report-builder-dashboard-builder.collection.d.ts +0 -3
  170. package/collections/report-builder-dashboard-builder.collection.js +0 -109
  171. package/collections/report-builder-dashboard-builder.collection.js.map +0 -1
  172. package/collections/report-builder-library.collection.d.ts +0 -3
  173. package/collections/report-builder-library.collection.js +0 -87
  174. package/collections/report-builder-library.collection.js.map +0 -1
  175. package/collections/report-builder-report.collection.d.ts +0 -4
  176. package/collections/report-builder-report.collection.js +0 -149
  177. package/collections/report-builder-report.collection.js.map +0 -1
  178. package/collections/user-group.collection.d.ts +0 -4
  179. package/collections/user-group.collection.js +0 -90
  180. package/collections/user-group.collection.js.map +0 -1
  181. package/collections/user-guide.collection.d.ts +0 -3
  182. package/collections/user-guide.collection.js +0 -57
  183. package/collections/user-guide.collection.js.map +0 -1
  184. package/collections/user.collection.d.ts +0 -4
  185. package/collections/user.collection.js +0 -259
  186. package/collections/user.collection.js.map +0 -1
  187. package/cron/cron.d.ts +0 -5
  188. package/cron/cron.js +0 -162
  189. package/cron/cron.js.map +0 -1
  190. package/fixtures/cron-jobs.d.ts +0 -1
  191. package/fixtures/cron-jobs.js +0 -73
  192. package/fixtures/cron-jobs.js.map +0 -1
  193. package/fixtures/init.d.ts +0 -1
  194. package/fixtures/init.js +0 -59
  195. package/fixtures/init.js.map +0 -1
  196. package/http/auth.d.ts +0 -2
  197. package/http/auth.js +0 -763
  198. package/http/auth.js.map +0 -1
  199. package/http/health.d.ts +0 -1
  200. package/http/health.js +0 -12
  201. package/http/health.js.map +0 -1
  202. package/http/home.d.ts +0 -2
  203. package/http/home.js +0 -66
  204. package/http/home.js.map +0 -1
  205. package/index.d.ts +0 -23
  206. package/index.js +0 -127
  207. package/index.js.map +0 -1
  208. package/managers/cron.manager.d.ts +0 -17
  209. package/managers/cron.manager.js +0 -242
  210. package/managers/cron.manager.js.map +0 -1
  211. package/managers/method.manager.d.ts +0 -38
  212. package/managers/method.manager.js +0 -595
  213. package/managers/method.manager.js.map +0 -1
  214. package/managers/mongo.manager.d.ts +0 -178
  215. package/managers/mongo.manager.js +0 -2221
  216. package/managers/mongo.manager.js.map +0 -1
  217. package/managers/monitor.manager.d.ts +0 -59
  218. package/managers/monitor.manager.js +0 -351
  219. package/managers/monitor.manager.js.map +0 -1
  220. package/managers/subscription.manager.d.ts +0 -50
  221. package/managers/subscription.manager.js +0 -1091
  222. package/managers/subscription.manager.js.map +0 -1
  223. package/managers/subscription.performance.d.ts +0 -1
  224. package/managers/subscription.performance.js.map +0 -1
  225. package/methods/accounts.d.ts +0 -2
  226. package/methods/accounts.js +0 -274
  227. package/methods/accounts.js.map +0 -1
  228. package/methods/aws.d.ts +0 -2
  229. package/methods/aws.js +0 -617
  230. package/methods/aws.js.map +0 -1
  231. package/methods/collections.d.ts +0 -2
  232. package/methods/collections.js +0 -499
  233. package/methods/collections.js.map +0 -1
  234. package/methods/counters.d.ts +0 -2
  235. package/methods/counters.js +0 -122
  236. package/methods/counters.js.map +0 -1
  237. package/methods/cron-jobs.d.ts +0 -2
  238. package/methods/cron-jobs.js +0 -1315
  239. package/methods/cron-jobs.js.map +0 -1
  240. package/methods/flags.d.ts +0 -2
  241. package/methods/flags.js +0 -9
  242. package/methods/flags.js.map +0 -1
  243. package/methods/logs.d.ts +0 -2
  244. package/methods/logs.js +0 -371
  245. package/methods/logs.js.map +0 -1
  246. package/methods/monitor.d.ts +0 -2
  247. package/methods/monitor.js +0 -565
  248. package/methods/monitor.js.map +0 -1
  249. package/methods/pdf.d.ts +0 -2
  250. package/methods/pdf.js +0 -468
  251. package/methods/pdf.js.map +0 -1
  252. package/methods/report-builder.d.ts +0 -2
  253. package/methods/report-builder.js +0 -858
  254. package/methods/report-builder.js.map +0 -1
  255. package/methods/support.d.ts +0 -2
  256. package/methods/support.js +0 -246
  257. package/methods/support.js.map +0 -1
  258. package/models/app-status.model.js +0 -4
  259. package/models/app-status.model.js.map +0 -1
  260. package/models/billing-logged-in-users.model.js +0 -4
  261. package/models/billing-logged-in-users.model.js.map +0 -1
  262. package/models/collection-document.model.d.ts +0 -19
  263. package/models/collection-document.model.js +0 -4
  264. package/models/collection-document.model.js.map +0 -1
  265. package/models/counter.model.js +0 -4
  266. package/models/counter.model.js.map +0 -1
  267. package/models/cron-job-history.model.d.ts +0 -12
  268. package/models/cron-job-history.model.js +0 -4
  269. package/models/cron-job-history.model.js.map +0 -1
  270. package/models/cron-job.model.d.ts +0 -13
  271. package/models/cron-job.model.js +0 -4
  272. package/models/cron-job.model.js.map +0 -1
  273. package/models/dialog.model.d.ts +0 -23
  274. package/models/dialog.model.js +0 -4
  275. package/models/dialog.model.js.map +0 -1
  276. package/models/email-history.model.js +0 -4
  277. package/models/email-history.model.js.map +0 -1
  278. package/models/email-verified.model.js +0 -4
  279. package/models/email-verified.model.js.map +0 -1
  280. package/models/file.model.js +0 -4
  281. package/models/file.model.js.map +0 -1
  282. package/models/flag.model.js +0 -4
  283. package/models/flag.model.js.map +0 -1
  284. package/models/log-method-latency.model.js +0 -4
  285. package/models/log-method-latency.model.js.map +0 -1
  286. package/models/log-subscription.model.js +0 -4
  287. package/models/log-subscription.model.js.map +0 -1
  288. package/models/log.model.js +0 -4
  289. package/models/log.model.js.map +0 -1
  290. package/models/logged-in-users.model.js +0 -4
  291. package/models/logged-in-users.model.js.map +0 -1
  292. package/models/method-response.model.js +0 -4
  293. package/models/method-response.model.js.map +0 -1
  294. package/models/method.model.d.ts +0 -9
  295. package/models/method.model.js +0 -4
  296. package/models/method.model.js.map +0 -1
  297. package/models/monitor-cpu.model.js +0 -4
  298. package/models/monitor-cpu.model.js.map +0 -1
  299. package/models/monitor-memory.model.d.ts +0 -15
  300. package/models/monitor-memory.model.js +0 -4
  301. package/models/monitor-memory.model.js.map +0 -1
  302. package/models/monitor-mongo.model.d.ts +0 -13
  303. package/models/monitor-mongo.model.js +0 -4
  304. package/models/monitor-mongo.model.js.map +0 -1
  305. package/models/notification.model.js +0 -4
  306. package/models/notification.model.js.map +0 -1
  307. package/models/pagination.model.d.ts +0 -10
  308. package/models/pagination.model.js +0 -24
  309. package/models/pagination.model.js.map +0 -1
  310. package/models/permission.model.d.ts +0 -12
  311. package/models/permission.model.js +0 -4
  312. package/models/permission.model.js.map +0 -1
  313. package/models/report-builder-dashboard-builder.model.d.ts +0 -25
  314. package/models/report-builder-dashboard-builder.model.js +0 -4
  315. package/models/report-builder-dashboard-builder.model.js.map +0 -1
  316. package/models/report-builder-library.model.d.ts +0 -17
  317. package/models/report-builder-library.model.js +0 -4
  318. package/models/report-builder-library.model.js.map +0 -1
  319. package/models/report-builder-report.model.d.ts +0 -98
  320. package/models/report-builder-report.model.js +0 -4
  321. package/models/report-builder-report.model.js.map +0 -1
  322. package/models/report-builder.model.d.ts +0 -61
  323. package/models/report-builder.model.js +0 -4
  324. package/models/report-builder.model.js.map +0 -1
  325. package/models/select-data-label.model.d.ts +0 -9
  326. package/models/select-data-label.model.js +0 -4
  327. package/models/select-data-label.model.js.map +0 -1
  328. package/models/server-response.model.d.ts +0 -5
  329. package/models/server-response.model.js +0 -4
  330. package/models/server-response.model.js.map +0 -1
  331. package/models/subscription.model.d.ts +0 -23
  332. package/models/subscription.model.js +0 -4
  333. package/models/subscription.model.js.map +0 -1
  334. package/models/support-ticket.model.d.ts +0 -72
  335. package/models/support-ticket.model.js +0 -4
  336. package/models/support-ticket.model.js.map +0 -1
  337. package/models/user-group.model.d.ts +0 -19
  338. package/models/user-group.model.js +0 -4
  339. package/models/user-group.model.js.map +0 -1
  340. package/models/user-guide.model.js +0 -4
  341. package/models/user-guide.model.js.map +0 -1
  342. package/models/user.model.d.ts +0 -70
  343. package/models/user.model.js +0 -4
  344. package/models/user.model.js.map +0 -1
  345. package/public_api.js +0 -75
  346. package/public_api.js.map +0 -1
  347. package/publications/app-status.d.ts +0 -2
  348. package/publications/app-status.js +0 -17
  349. package/publications/app-status.js.map +0 -1
  350. package/publications/cron-jobs.d.ts +0 -2
  351. package/publications/cron-jobs.js +0 -33
  352. package/publications/cron-jobs.js.map +0 -1
  353. package/publications/files.d.ts +0 -2
  354. package/publications/files.js +0 -37
  355. package/publications/files.js.map +0 -1
  356. package/publications/flags.d.ts +0 -2
  357. package/publications/flags.js +0 -23
  358. package/publications/flags.js.map +0 -1
  359. package/publications/logs.d.ts +0 -2
  360. package/publications/logs.js +0 -165
  361. package/publications/logs.js.map +0 -1
  362. package/publications/method-responses.d.ts +0 -2
  363. package/publications/method-responses.js +0 -17
  364. package/publications/method-responses.js.map +0 -1
  365. package/publications/notifications.d.ts +0 -2
  366. package/publications/notifications.js +0 -17
  367. package/publications/notifications.js.map +0 -1
  368. package/publications/report-builder-dashboard-builders.d.ts +0 -2
  369. package/publications/report-builder-dashboard-builders.js +0 -43
  370. package/publications/report-builder-dashboard-builders.js.map +0 -1
  371. package/publications/report-builder-libraries.d.ts +0 -2
  372. package/publications/report-builder-libraries.js +0 -90
  373. package/publications/report-builder-libraries.js.map +0 -1
  374. package/publications/report-builder-reports.d.ts +0 -2
  375. package/publications/report-builder-reports.js +0 -51
  376. package/publications/report-builder-reports.js.map +0 -1
  377. package/publications/super-admin.d.ts +0 -2
  378. package/publications/super-admin.js +0 -17
  379. package/publications/super-admin.js.map +0 -1
  380. package/publications/user-groups.d.ts +0 -1
  381. package/publications/user-groups.js +0 -17
  382. package/publications/user-groups.js.map +0 -1
  383. package/publications/user-guides.d.ts +0 -1
  384. package/publications/user-guides.js +0 -17
  385. package/publications/user-guides.js.map +0 -1
  386. package/server-app.d.ts +0 -52
  387. package/server-app.js +0 -739
  388. package/server-app.js.map +0 -1
  389. package/util/common.d.ts +0 -24
  390. package/util/common.js +0 -511
  391. package/util/common.js.map +0 -1
  392. package/util/schema-report-builder.d.ts +0 -6
  393. package/util/schema-report-builder.js +0 -453
  394. package/util/schema-report-builder.js.map +0 -1
  395. /package/{private → src/private}/email-templates/enrollment.html +0 -0
  396. /package/{private → src/private}/email-templates/forgot-password.html +0 -0
  397. /package/{private → src/private}/email-templates/support-ticket-deleted.html +0 -0
  398. /package/{private → src/private}/email-templates/support-ticket-modified.html +0 -0
  399. /package/{private → src/private}/email-templates/support-ticket.html +0 -0
  400. /package/{private → src/private}/images/ResolveIO.png +0 -0
@@ -0,0 +1,110 @@
1
+ import { CollectionDocument } from '../models/collection-document.model';
2
+
3
+ export interface ReportBuilderReportModel extends CollectionDocument {
4
+ collection_root: string;
5
+ report_name: string;
6
+ fields_sort: ReportBuilderReportFieldsSort[];
7
+ fields_filter: ReportBuilderReportFieldsFilterOrs[];
8
+ fields_custom?: ReportBuilderReportCustomField[];
9
+ fields_selected: ReportBuilderReportFieldsSelected[];
10
+ fields_total: ReportBuilderReportFieldsTotal[];
11
+ fields_link: ReportBuilderReportFieldsLink[];
12
+ id_user: string;
13
+ user: string;
14
+ date_created: Date;
15
+ shared_users: string[];
16
+ type: ReportBuilderReportType;
17
+ group_type: string;
18
+ groups_row: ReportBuilderGroupsRow[];
19
+ groups_column: ReportBuilderGroupsRow[];
20
+ id_date_field?: string;
21
+ date_interval?: string;
22
+ }
23
+
24
+ export interface ReportBuilderReportFieldsLink {
25
+ field_first: string;
26
+ field_second: string;
27
+ id: number;
28
+ }
29
+
30
+ export interface ReportBuilderReportFieldsTotal {
31
+ type: string;
32
+ fields: string[];
33
+ id: number;
34
+ }
35
+
36
+ export interface ReportBuilderGroupsRow {
37
+ field: string;
38
+ fieldPathName: string;
39
+ id: string;
40
+ columnName: string;
41
+ fill_color?: string;
42
+ font_color?: string;
43
+ treeItem?: any;
44
+ }
45
+
46
+ export type ReportBuilderReportType = 'List' | 'Group' | 'Dated';
47
+
48
+ export interface ReportBuilderReportFieldsSort {
49
+ field: string;
50
+ order: string;
51
+ }
52
+
53
+ export interface ReportBuilderReportFieldsFilterOrs {
54
+ ors: ReportBuilderReportFieldsFilter[];
55
+ }
56
+
57
+ export interface ReportBuilderReportFieldsFilter {
58
+ field: string;
59
+ fieldType: string;
60
+ condition: string;
61
+ value: any;
62
+ highValue: any;
63
+ dateValue: any;
64
+ highDateValue: any;
65
+ booleanValue: string;
66
+ is_rolling: boolean;
67
+ rolling_interval: string;
68
+ }
69
+
70
+ export interface ReportBuilderReportFieldsSelected {
71
+ collection_name: string;
72
+ columnName: string;
73
+ fieldName: string;
74
+ fieldType: string;
75
+ distinctFieldValues: string[];
76
+ fieldPath: string;
77
+ lookup_collection: string;
78
+ lookup_local_key: string;
79
+ lookup_foreign_key: string;
80
+ lookup_as: string;
81
+ text: string;
82
+ value: string;
83
+ isLeaf: boolean;
84
+ isActive: boolean;
85
+ isSelected: boolean;
86
+ depth: number;
87
+ leafValueType: string;
88
+ leafValueTypes: string[];
89
+ leafFormatType: string;
90
+ leafFormatTypes: string[];
91
+ id?: string;
92
+ show: boolean;
93
+ }
94
+
95
+ export interface ReportBuilderReportCustomField {
96
+ id: string;
97
+ columnName: string;
98
+ selFieldId: string;
99
+ leafValueType: string;
100
+ operations: ReportBuilderReportCustomOp[];
101
+ }
102
+
103
+ export interface ReportBuilderReportCustomOp {
104
+ fields: ReportBuilderReportCustomOpField[];
105
+ operation: string;
106
+ }
107
+
108
+ export interface ReportBuilderReportCustomOpField {
109
+ field: string;
110
+ }
@@ -0,0 +1,68 @@
1
+ export interface ReportBuilderQueryOptionsModel {
2
+ rootCollection: string;
3
+ searchString: string;
4
+ entriesPerPage: string;
5
+ pageNum: number;
6
+ sortColumn: string;
7
+ sortOrder: string;
8
+ filters?: Object;
9
+ }
10
+
11
+ export interface CollectionTree {
12
+ collection_name: string;
13
+ tree: any;
14
+ is_root: boolean;
15
+ }
16
+
17
+ export interface LookupTables {
18
+ lookup: string;
19
+ local_key: string; // MUST be type: String
20
+ }
21
+
22
+ export interface TreeItemLeafType {
23
+ text: string;
24
+ value: any;
25
+ }
26
+
27
+ export interface TreeItem {
28
+ text: string;
29
+ isLeaf: boolean;
30
+ children?: TreeItem[];
31
+ parent?: TreeItem;
32
+ isSelected?: boolean;
33
+ isActive?: boolean;
34
+ isVisible: boolean;
35
+ value: string;
36
+ depth?: number;
37
+ rowNumber?: number;
38
+ disabled?: boolean;
39
+ layers?: any[];
40
+ leafFieldTypeValue?: string;
41
+ leafValueTypeValue?: string;
42
+ }
43
+
44
+ export interface ReportTableColumn {
45
+ collection: string;
46
+ collectionAlias?: string;
47
+ lookupIsRootNode?: boolean;
48
+ columnName: string;
49
+ fieldPath: String;
50
+ localKey?: string;
51
+ lookupKey?: string;
52
+ }
53
+
54
+ export interface ReportTableModel {
55
+ rootCollection: string;
56
+ searchString: string;
57
+ entriesPerPage: string;
58
+ pageNum: number;
59
+ sortColumn: string;
60
+ sortOrder: string;
61
+ filters?: Object;
62
+ }
63
+
64
+ export interface UnwindPaths {
65
+ collectionName: string;
66
+ collectionNameAlias?: string;
67
+ paths: string[];
68
+ }
@@ -0,0 +1,9 @@
1
+ export interface SelectDataLabelModel {
2
+ data: string;
3
+ label: string;
4
+ selected: boolean;
5
+ type: string;
6
+ subData: string;
7
+ subtype: string;
8
+ subLabel: string;
9
+ }
@@ -0,0 +1,5 @@
1
+ export interface ServerResponseModel {
2
+ messageId: number;
3
+ hasError: boolean;
4
+ data: any;
5
+ }
@@ -0,0 +1,64 @@
1
+ import SimpleSchema from 'simpl-schema';
2
+
3
+
4
+ export interface SubscriptionModel {
5
+ [key: string]: SubscriptionPubModel;
6
+ }
7
+
8
+ export interface SubscriptionPubModel {
9
+ /*
10
+ Name: check
11
+ Type: SimpleSchema
12
+ Inputs: N/A
13
+ Outputs: N/A
14
+ Reason: Define schema - Checks publication parameters to make sure all are valid
15
+ Required: Only if function has publication parameters
16
+ */
17
+ check?: SimpleSchema;
18
+
19
+ /*
20
+ Name: function
21
+ Type: Function
22
+ Inputs: 0 or more publication parameters (ie: id_bulktank: string)
23
+ Outputs: Promise<any | any[]>
24
+ Reason: Runs publication query to get data to send to client
25
+ Required: Always
26
+ */
27
+ function: (...parameters: any[]) => Promise<any | any[]>;
28
+
29
+ /*
30
+ Name: collections
31
+ Type: Array
32
+ Inputs: N/A
33
+ Outputs: N/A
34
+ Reason: All collections which will be watching oplog to re-run this pub
35
+ Required: Always
36
+ */
37
+ collections: string[];
38
+
39
+ /*
40
+ Name: user_specific
41
+ Type: Boolean
42
+ Inputs: N/A
43
+ Outputs: N/A
44
+ Reason: Use if user is needed (ie 'users' publication, only send 'Admin' if 'super-admin' role)
45
+ Required: Only if function has parameter/s
46
+ - Low performance as if runs pub for each user, only use if needed
47
+ */
48
+ user_specific?: boolean;
49
+ }
50
+
51
+ export interface ActiveSubscriptionModel {
52
+ publication: string;
53
+ subscriptionData: any[];
54
+ collections: string[];
55
+ clients: ActiveSubscriptionClientModel[];
56
+ cacheId: number;
57
+ }
58
+
59
+ export interface ActiveSubscriptionClientModel {
60
+ id_user: string;
61
+ messageId: number;
62
+ id_socket: string;
63
+ messageRoute: string;
64
+ }
@@ -0,0 +1,81 @@
1
+ import { CollectionDocument } from './collection-document.model';
2
+
3
+ export interface SupportTicketModel extends CollectionDocument {
4
+ type: SupportTicketType;
5
+ priority: SupportTicketPriority;
6
+ issue: string;
7
+ support_ticket_number: number;
8
+ support_ticket_number_string: string;
9
+ status: SupportTicketStatus;
10
+ substatus: SupportTicketSubstatus;
11
+ client: string;
12
+ id_client: string;
13
+ messages: SupportTicketMessageModel[];
14
+ date_created: Date;
15
+ date_created_string: string;
16
+ id_user_created: string;
17
+ user_created: string;
18
+ billable: boolean;
19
+ date_investigation?: Date;
20
+ date_closed?: Date;
21
+ files: string[];
22
+ current_watchers: SupportTicketWatchersModel[];
23
+ client_user: SupportTicketClientUserModel;
24
+ users_assigned: SupportTicketUserAssignedModel[];
25
+ estimated_billable_hours?: number;
26
+ billable_hours?: number;
27
+ bill_description: string;
28
+ tasks: SupportTicketTaskModel[];
29
+ notes: SupportTicketNoteModel[];
30
+ difficulty: number;
31
+ }
32
+
33
+ export interface SupportTicketClientUserModel {
34
+ id_user: string;
35
+ user: string;
36
+ email: string;
37
+ }
38
+
39
+ export type SupportTicketPriority = 'High' | 'Low';
40
+
41
+ export type SupportTicketSubstatus = 'New' | 'Work In Progress' | 'Idle' | 'Awaiting Customer Interaction';
42
+ export type SupportTicketType = 'System Impairment' | 'Request New Feature' | 'General Inquery';
43
+ type SupportTicketStatus = 'Opened' | 'Resolved';
44
+
45
+ export interface SupportTicketMessageModel {
46
+ message: string;
47
+ id_user: string;
48
+ user: string;
49
+ date: Date;
50
+ type: SupportTicketMessageType;
51
+ }
52
+
53
+ type SupportTicketMessageType = 'ResolveIO' | 'Client';
54
+
55
+ export interface SupportTicketWatchersModel {
56
+ user: string;
57
+ id_user: string;
58
+ email: string;
59
+ }
60
+
61
+ export interface SupportTicketTaskModel {
62
+ description: string;
63
+ completed: boolean;
64
+ id_user?: string;
65
+ user?: string;
66
+ date_created: Date;
67
+ date_completed?: Date;
68
+ }
69
+
70
+ export interface SupportTicketNoteModel {
71
+ description: string;
72
+ id_user: string;
73
+ user: string;
74
+ date_created: Date;
75
+ }
76
+
77
+ export interface SupportTicketUserAssignedModel {
78
+ id_user: string;
79
+ user: string;
80
+ date_created: Date;
81
+ }
@@ -0,0 +1,23 @@
1
+ import { CollectionDocument } from './collection-document.model';
2
+
3
+ export interface UserGroupModel extends CollectionDocument {
4
+ name: string;
5
+ permissions: UserGroupPermissionModel[];
6
+ notifications: UserGroupNotificationModel[];
7
+ }
8
+
9
+ export interface UserGroupNotificationModel {
10
+ name: string;
11
+ selected: boolean;
12
+ }
13
+
14
+ export interface UserGroupPermissionModel {
15
+ name: string;
16
+ selected: boolean;
17
+ views: UserGroupViewModel[];
18
+ }
19
+
20
+ export interface UserGroupViewModel {
21
+ link: string;
22
+ selected: boolean;
23
+ }
@@ -1,6 +1,7 @@
1
1
  import { CollectionDocument } from './collection-document.model';
2
+
2
3
  export interface UserGuideModel extends CollectionDocument {
3
- link: string;
4
- label: string;
5
- message: string;
6
- }
4
+ link: string;
5
+ label: string;
6
+ message: string;
7
+ }
@@ -0,0 +1,79 @@
1
+ import { CollectionDocument } from './collection-document.model';
2
+
3
+ export interface UserModel extends CollectionDocument {
4
+ roles: UserRoleModel;
5
+ username: string;
6
+ email: string;
7
+ fullname: string;
8
+ active: boolean;
9
+ phonenumber: string;
10
+ readonly: boolean;
11
+ other: OtherObject;
12
+
13
+ //security
14
+ attempts: number;
15
+ salt: string;
16
+ hash: string;
17
+
18
+ last?: Date;
19
+ settings?: UserSettingsModel;
20
+ services?: Object;
21
+ }
22
+
23
+ export interface UserSettingsModel {
24
+ table_color: string;
25
+ table_font_color: string;
26
+ secondary_table_color: string;
27
+ secondary_table_font_color: string;
28
+ tertiary_table_color: string;
29
+ tertiary_table_font_color: string;
30
+ font_size: number;
31
+ collapsable_menu: boolean;
32
+ entries_per_page: string
33
+ warning_color: string;
34
+ warning_font_color: string;
35
+ warning_hover_color: string;
36
+ success_color: string;
37
+ success_font_color: string;
38
+ success_hover_color: string;
39
+ danger_color: string;
40
+ danger_font_color: string;
41
+ danger_hover_color: string;
42
+ info_color: string;
43
+ info_font_color: string;
44
+ info_hover_color: string;
45
+ primary_color: string;
46
+ primary_font_color: string;
47
+ primary_hover_color: string;
48
+ secondary_color: string;
49
+ secondary_font_color: string;
50
+ secondary_hover_color: string;
51
+ routing_preference: string;
52
+ opening_route: string;
53
+ }
54
+
55
+ export interface UserRoleModel {
56
+ super_admin: boolean;
57
+ approvals: UserRoleApprovalModel[];
58
+ groups: UserRoleGroupModel[];
59
+ notifications: string[];
60
+ miscs: string[];
61
+ }
62
+
63
+ export interface UserRoleApprovalModel {
64
+ type: string; // po or afe or chemical
65
+ key_1?: string; // department or accounting code
66
+ key_2?: string; // order type
67
+ key_3?: string; // other/additional
68
+ name: string; // approval name
69
+ }
70
+
71
+ export interface UserRoleGroupModel {
72
+ name: string;
73
+ views: string[];
74
+ yard?: string;
75
+ }
76
+
77
+ export interface OtherObject {
78
+ [key: string]: any;
79
+ }
@@ -54,4 +54,4 @@ export * from './models/user-group.model';
54
54
  export * from './models/user-guide.model';
55
55
  export * from './models/user.model';
56
56
  export * from './util/common';
57
- export * from './managers/mongo.manager';
57
+ export * from './managers/mongo.manager';
@@ -0,0 +1,13 @@
1
+ import { SubscriptionManager } from '../managers/subscription.manager';
2
+ import { AppStatus } from '../collections/app-status.collection';
3
+
4
+ export function loadAppStatusPublications(subscriptionManager: SubscriptionManager) {
5
+ subscriptionManager.publications({
6
+ appstatus: {
7
+ function: () => {
8
+ return AppStatus.findOne();
9
+ },
10
+ collections: ['app-statuses']
11
+ }
12
+ });
13
+ }
@@ -0,0 +1,30 @@
1
+ import SimpleSchema from 'simpl-schema';
2
+ import { SubscriptionManager } from '../managers/subscription.manager';
3
+ import { CronJobs } from '../collections/cron-job.collection';
4
+ import { CollectionDocument } from '../models/collection-document.model';
5
+
6
+ export function loadCronJobPublications(subscriptionManager: SubscriptionManager) {
7
+ subscriptionManager.publications({
8
+ cronjobs: {
9
+ function: () => {
10
+ return CronJobs.find({}, {sort: {name: 1}});
11
+ },
12
+ collections: ['cron-jobs']
13
+ },
14
+ cronjobsReportBuilderWithIdUser: {
15
+ function: (id_user: string) => {
16
+ return CronJobs.find({$and: [
17
+ {method_run_data: {$exists: 1}},
18
+ {'method_run_data.id_user': id_user},
19
+ {'method_run_data.type': 'Report Builder Scheduled Job'}
20
+ ]});
21
+ },
22
+ check: new SimpleSchema({
23
+ id_user: {
24
+ type: String
25
+ }
26
+ }),
27
+ collections: ['cron-jobs']
28
+ }
29
+ });
30
+ }
@@ -0,0 +1,34 @@
1
+ import SimpleSchema from 'simpl-schema';
2
+ import { Files } from '../collections/file.collection';
3
+ import { SubscriptionManager } from '../managers/subscription.manager';
4
+ import { CollectionDocument } from '../models/collection-document.model';
5
+
6
+ export function loadFilePublications(subscriptionManager: SubscriptionManager) {
7
+ subscriptionManager.publications({
8
+ fileWithId: {
9
+ function: (id_file: string) => {
10
+ return Files.findById(id_file);
11
+ },
12
+ check: new SimpleSchema({
13
+ id_file: {
14
+ type: String
15
+ }
16
+ }),
17
+ collections: ['files']
18
+ },
19
+ filesIn: {
20
+ function: (id_files: string[]) => {
21
+ return Files.find({_id: {$in: id_files}}, {sort: {name: 1}});
22
+ },
23
+ check: new SimpleSchema({
24
+ id_files: {
25
+ type: Array
26
+ },
27
+ 'id_files.$': {
28
+ type: String
29
+ }
30
+ }),
31
+ collections: ['files']
32
+ }
33
+ });
34
+ }
@@ -0,0 +1,20 @@
1
+ import SimpleSchema from 'simpl-schema';
2
+ import { SubscriptionManager } from '../managers/subscription.manager';
3
+ import { Flags } from '../collections/flag.collection';
4
+ import { CollectionDocument } from '../models/collection-document.model';
5
+
6
+ export function loadFlagsPublications(subscriptionManager: SubscriptionManager) {
7
+ subscriptionManager.publications({
8
+ flagWithType: {
9
+ function: (flagType: string) => {
10
+ return Flags.findOne({type: flagType});
11
+ },
12
+ check: new SimpleSchema({
13
+ flagType: {
14
+ type: String
15
+ }
16
+ }),
17
+ collections: ['flags']
18
+ }
19
+ });
20
+ }