@resolveio/server-lib 12.5.52 → 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 -324
  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 -25
  390. package/util/common.js +0 -524
  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
package/.nodemon.json ADDED
@@ -0,0 +1,5 @@
1
+ {
2
+ "events": {
3
+ "exit": "npm run stop-server"
4
+ }
5
+ }
@@ -0,0 +1,3 @@
1
+ // Place your settings in this file to overwrite default and user settings.
2
+ {
3
+ }
package/README.md ADDED
@@ -0,0 +1,22 @@
1
+ ## Copyright
2
+
3
+ Copyright © 2017-2019 ResolveIO, LLC. All Rights Reserved. This work is to be used/viewed by ResolveIO, LLC Employees ONLY.
4
+
5
+ ## ResolveIO Command Line
6
+
7
+ - `$ npm run server` - Run the server application.
8
+ - `$ npm run build-prod` - Build production (dist folder).
9
+ - `$ npm run package` - Build tarball for npm publish (version inside package json, must rebuild if changed)
10
+ - `$ npm publish ./resolveio-server-lib-x.x.x.tgz` - Publish tarball to npm
11
+
12
+ ## Contents
13
+
14
+ This package contains:
15
+
16
+ - ResolveIO Server Library
17
+
18
+ ### Server
19
+
20
+ The `server` folder contain single TypeScript (`.ts`) file which is the main file (`/server/src/index.ts`), and creates both connections to client-database and resolveio-support database, then creates the main server instance, and then starts it.
21
+
22
+ All other server files should be located under `/server/src/*`.
package/compileDTS.pl ADDED
@@ -0,0 +1,64 @@
1
+ use strict;
2
+ use warnings;
3
+ use JSON;
4
+
5
+ my @allIds;
6
+
7
+ my $dir = './dist';
8
+
9
+ my $extraFiles = '';
10
+
11
+ search_dir($dir);
12
+
13
+ sub search_dir {
14
+
15
+ my ($locdir) = @_;
16
+ # print "Entered search_dir sub, working with directory => $locdir \n";
17
+ my $dh; # handle
18
+
19
+ if ( !opendir ($dh, $locdir)) {
20
+ warn "Unable to open $locdir: $!\n";
21
+ return;
22
+ }
23
+
24
+ my @FILES = grep { $_ ne '.' && $_ ne '..' } readdir($dh);
25
+
26
+ foreach my $file (@FILES) {
27
+ my $path = "$locdir/$file";
28
+ if ( -d $path ) {
29
+ # print "Directory $path found\n";
30
+ search_dir ($path);
31
+ }
32
+ else {
33
+ if ($file =~ m/.d.ts/ and $file !~ m/index.d.ts/) {
34
+ # print "Open file $path\n";
35
+ open (FILE, "<", "$path");
36
+ my @lines = <FILE>;
37
+ close FILE;
38
+ chomp @lines;
39
+
40
+ for (my $k = 0; $k < scalar(@lines); $k++) {
41
+ if ($lines[$k] =~ m/^export / and $lines[$k] !~ m/export {};/) {
42
+ $extraFiles .= $lines[$k] . "\n";
43
+
44
+ if ($lines[$k] =~ m/\{\s*$/) {
45
+ while($lines[++$k] !~ m/^\};?\s*$/) {
46
+ $extraFiles .= $lines[$k] . "\n";
47
+ }
48
+
49
+ $extraFiles .= $lines[$k] . "\n";
50
+ }
51
+ }
52
+ }
53
+ }
54
+ }
55
+ }
56
+
57
+ closedir ($dh);
58
+ }
59
+
60
+ print "Extras\n\n$extraFiles";
61
+
62
+ open (FILE, ">>", "./dist/index.d.ts");
63
+ print FILE "\n$extraFiles";
64
+ close FILE;
package/gulpfile.js ADDED
@@ -0,0 +1,127 @@
1
+ var gulp = require("gulp");
2
+ var exec = require('child_process').exec;
3
+ var rename = require("gulp-rename");
4
+ var del = require('del');
5
+ var sourcemaps = require('gulp-sourcemaps');
6
+ var zip = require('gulp-zip');
7
+ var ts = require("gulp-typescript");
8
+ var tsProject = ts.createProject("tsconfig.json");
9
+ var nodemon = require("gulp-nodemon");
10
+ var mkdirs = require('mkdirs');
11
+ var merge = require('merge2');
12
+
13
+ var paths = {
14
+ src: 'src/**/*',
15
+ srcTS: 'src/**/*.ts',
16
+ srcPrivate: 'src/private/**/*',
17
+
18
+ tmp: 'tmp',
19
+ tmpJS: 'tmp/**/*.js',
20
+ tmpPrivate: 'tmp/private',
21
+
22
+ dist: 'dist',
23
+ distJS: 'dist/**/*.js',
24
+ distPrivate: 'dist/private',
25
+
26
+ dbDir: 'mongo/data/db',
27
+ dbLogs: 'mongo/log'
28
+ };
29
+ var shell = require('gulp-shell');
30
+
31
+ gulp.task('clean', function () {
32
+ return del([paths.tmp, paths.dist]);
33
+ });
34
+
35
+ gulp.task("mongo-start", function() {
36
+ mkdirs(paths.dbDir);
37
+ mkdirs(paths.dbLogs);
38
+
39
+ return gulp.src('.')
40
+ .pipe(shell('mongod --fork --dbpath '+paths.dbDir+'/ --logpath '+paths.dbLogs+'/mongo.log --port 3001 --replSet rs0'))
41
+ .pipe(shell(['mongo --port 3001 < mongodbensurers.js']));
42
+ });
43
+
44
+ gulp.task("mongo-stop", function() {
45
+ return gulp.src('.')
46
+ .pipe(shell(['killall mongod']));
47
+ });
48
+
49
+ gulp.task("config", gulp.series("clean", function() {
50
+ return gulp.src('./settings.development.json')
51
+ .pipe(rename('settings.json'))
52
+ .pipe(gulp.dest(paths.tmp));
53
+ }));
54
+
55
+ gulp.task("email-templates", function() {
56
+ return gulp.src(paths.srcPrivate)
57
+ .pipe(gulp.dest(paths.tmpPrivate));
58
+ });
59
+
60
+ gulp.task("compile", function () {
61
+ const tsResult = tsProject.src()
62
+ .pipe(sourcemaps.init())
63
+ .pipe(tsProject());
64
+
65
+ return tsResult.js.pipe(
66
+ sourcemaps.mapSources((sourcePath, file) => {
67
+ return sourcePath; // rewrite sourcePath to point to the correct TypeScript file paths
68
+ })
69
+ ).pipe(sourcemaps.write("./")).pipe(gulp.dest(paths.tmp));
70
+ });
71
+
72
+ gulp.task('watch', function (done) {
73
+ gulp.watch([paths.src, './node_modules'], gulp.series('compile'));
74
+
75
+ done();
76
+ });
77
+
78
+ gulp.task("default", gulp.parallel(gulp.series("config", "email-templates", 'compile', (done) => {
79
+ nodemon({
80
+ script: "tmp/client-server-app.js",
81
+ watch: "tmp",
82
+ // exec: 'node --inspect-brk --max-old-space-size=1800 --trace-warnings',
83
+ exec: 'node --inspect --max-old-space-size=1800 --trace-warnings',
84
+ delay: 500
85
+ });
86
+
87
+ done();
88
+ }), 'watch'));
89
+
90
+ gulp.task("config:dist", gulp.series("clean", function() {
91
+ return gulp.src('./settings.production.json')
92
+ .pipe(rename('settings.json'))
93
+ .pipe(gulp.dest(paths.dist));
94
+ }));
95
+
96
+ gulp.task("email-templates:dist", function() {
97
+ return gulp.src(paths.srcPrivate)
98
+ .pipe(gulp.dest(paths.distPrivate));
99
+ });
100
+
101
+ gulp.task("compile:dist", function () {
102
+ var tsResult = gulp.src('src/**/*.ts')
103
+ .pipe(sourcemaps.init())
104
+ .pipe(ts('tsconfig.json'));
105
+ return merge([tsResult.dts.pipe(gulp.dest(paths.dist)), tsResult.js.pipe(
106
+ sourcemaps.mapSources((sourcePath, file) => {
107
+ return sourcePath; // rewrite sourcePath to point to the correct TypeScript file paths
108
+ })
109
+ ).pipe(sourcemaps.write("./")).pipe(gulp.dest(paths.dist))]);
110
+
111
+ // return tsProject.src()
112
+ // .pipe(sourcemaps.init({loadMaps: true}))
113
+ // .pipe(tsProject())
114
+ // .js.pipe(uglify())
115
+ // .pipe(sourcemaps.write('./'))
116
+ // .pipe(gulp.dest(paths.dist));
117
+ });
118
+
119
+ gulp.task("packages:dist", function () {
120
+ return gulp.src("./package.json")
121
+ .pipe(gulp.dest(paths.dist));
122
+ });
123
+
124
+ // gulp.task("build-prod", ["config:dist", "email-templates:dist", "compile:dist", "packages:dist", "npm:dist", "eb:dist", "perl"], function () {
125
+ gulp.task("build-prod", gulp.series("config", "email-templates:dist", "compile:dist", "packages:dist", function () {
126
+ return gulp.src(paths.dist + "/**/*", {dot : true});
127
+ }));
@@ -0,0 +1,2 @@
1
+ rs.initiate();
2
+ exit;
package/mongostop.js ADDED
@@ -0,0 +1,3 @@
1
+ db.adminCommand( { replSetStepDown: 120, secondaryCatchUpPeriodSecs: 15, force: true } );
2
+ db.shutdownServer();
3
+ exit;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@resolveio/server-lib",
3
- "version": "12.5.52",
3
+ "version": "12.5.54",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "package": "npm run build-prod && npm pack ./dist",
@@ -0,0 +1,13 @@
1
+ {
2
+ "CLIENT_NAME": "ResolveIO",
3
+ "MONGO_URL": "mongodb://localhost:3001/resolveio",
4
+ "OPLOG_URL": "mongodb://localhost:3001/local",
5
+ "MAIL_URL": "smtps://AKIAISVPD3SREQHE523Q:Ar3qzozs3JFxu00Uw94FBatPKJydEZeBBvdqmpniVSt6@email-smtp.us-east-1.amazonaws.com:465/",
6
+ "MAIL_FROM": "dev@resolveio.com",
7
+ "ROOT_URL": "http://localhost:4200",
8
+ "SERVER_URL": "http://localhost:8080",
9
+ "TWILIO_SID": "AC6338adffd405964cf4d2cf0af59abd2e",
10
+ "TWILIO_AUTH_TOKEN": "8ae1086fff332e069f0b3582e6dafc72",
11
+ "TWILIO_PHONE_NUMBER": "+19097666028",
12
+ "JWT_SECRET": "tr3dkmoXWcWGAUxywETXqkpb"
13
+ }
@@ -0,0 +1,7 @@
1
+ let serverConfig = require('./settings.json');
2
+ import { ResolveIOServer } from './index';
3
+
4
+ new ResolveIOServer(serverConfig, [], 'ResolveIO Server Library', __dirname);
5
+ ResolveIOServer.connectAndRun().then(async () => {
6
+
7
+ });
@@ -0,0 +1,51 @@
1
+ import { ResolveIOServer } from '../index';
2
+ import { MongoManagerCollection, MongoManagerModel } from '../managers/mongo.manager';
3
+ import { AppStatusModel } from '../models/app-status.model';
4
+
5
+ let schema: any = {
6
+ _id: {
7
+ type: String,
8
+ optional: true
9
+ },
10
+ __v: {
11
+ type: Number,
12
+ optional: true
13
+ },
14
+ updatedAt: {
15
+ type: Date,
16
+ optional: true
17
+ },
18
+ createdAt: {
19
+ type: Date,
20
+ optional: true
21
+ },
22
+ message: {
23
+ type: String
24
+ }
25
+ };
26
+
27
+ export let AppStatus: MongoManagerCollection<AppStatusModel> = null;
28
+
29
+ initializeCollection();
30
+
31
+ function initializeCollection() {
32
+ if (ResolveIOServer && ResolveIOServer.getMainDB()) {
33
+ const model = new MongoManagerModel<AppStatusModel>({
34
+ collectionName: 'app-statuses',
35
+ schema: schema,
36
+ useVersionCollection: false,
37
+ useReportBuilder: false,
38
+ reportBuilderLookupTables: [],
39
+ timestamps: true,
40
+ createLogs: false,
41
+ checkSchema: true,
42
+ collectionOptions: null
43
+ });
44
+ AppStatus = model.collection_main;
45
+ }
46
+ else {
47
+ setTimeout(() => {
48
+ initializeCollection();
49
+ }, 1);
50
+ }
51
+ }
@@ -0,0 +1,54 @@
1
+ import { ResolveIOServer } from '../index';
2
+ import { MongoManagerCollection, MongoManagerModel } from '../managers/mongo.manager';
3
+ import { CounterModel } from '../models/counter.model';
4
+
5
+ let schema: any = {
6
+ _id: {
7
+ type: String,
8
+ optional: true
9
+ },
10
+ __v: {
11
+ type: Number,
12
+ optional: true
13
+ },
14
+ updatedAt: {
15
+ type: Date,
16
+ optional: true
17
+ },
18
+ createdAt: {
19
+ type: Date,
20
+ optional: true
21
+ },
22
+ type: {
23
+ type: String
24
+ },
25
+ count: {
26
+ type: Number
27
+ }
28
+ };
29
+
30
+ export let Counters: MongoManagerCollection<CounterModel> = null;
31
+
32
+ initializeCollection();
33
+
34
+ function initializeCollection() {
35
+ if (ResolveIOServer && ResolveIOServer.getMainDB()) {
36
+ const model = new MongoManagerModel<CounterModel>({
37
+ collectionName: 'counters',
38
+ schema: schema,
39
+ useVersionCollection: false,
40
+ useReportBuilder: false,
41
+ reportBuilderLookupTables: [],
42
+ timestamps: true,
43
+ createLogs: false,
44
+ checkSchema: true,
45
+ collectionOptions: null
46
+ });
47
+ Counters = model.collection_main;
48
+ }
49
+ else {
50
+ setTimeout(() => {
51
+ initializeCollection();
52
+ }, 1);
53
+ }
54
+ }
@@ -0,0 +1,82 @@
1
+ import { ResolveIOServer } from '../index';
2
+ import { MongoManagerCollection, MongoManagerModel } from '../managers/mongo.manager';
3
+ import { CronJobHistoryModel } from '../models/cron-job-history.model';
4
+
5
+ let schema: any = {
6
+ _id: {
7
+ type: String,
8
+ optional: true
9
+ },
10
+ __v: {
11
+ type: Number,
12
+ optional: true
13
+ },
14
+ updatedAt: {
15
+ type: Date,
16
+ optional: true
17
+ },
18
+ createdAt: {
19
+ type: Date,
20
+ optional: true
21
+ },
22
+ name: {
23
+ type: String
24
+ },
25
+ reoccuring: {
26
+ type: Boolean
27
+ },
28
+ time_to_run: {
29
+ type: String
30
+ },
31
+ method_name: {
32
+ type: String
33
+ },
34
+ last_run: {
35
+ type: Date
36
+ },
37
+ next_run: {
38
+ type: Date
39
+ },
40
+ id_cronjob: {
41
+ type: String
42
+ },
43
+ passed: {
44
+ type: Boolean
45
+ },
46
+ error: {
47
+ type: String
48
+ },
49
+ start_time: {
50
+ type: Date
51
+ },
52
+ end_time: {
53
+ type: Date
54
+ }
55
+ };
56
+
57
+ export let CronJobHistory: MongoManagerCollection<CronJobHistoryModel> = null;
58
+
59
+ initializeCollection();
60
+
61
+ function initializeCollection() {
62
+ if (ResolveIOServer && ResolveIOServer.getMainDB()) {
63
+ const model = new MongoManagerModel<CronJobHistoryModel>({
64
+ collectionName: 'cron-job-histories',
65
+ schema: schema,
66
+ useVersionCollection: false,
67
+ useReportBuilder: false,
68
+ reportBuilderLookupTables: [],
69
+ timestamps: true,
70
+ createLogs: false,
71
+ checkSchema: true,
72
+ collectionOptions: null
73
+ });
74
+ CronJobHistory = model.collection_main;
75
+ CronJobHistory.createIndex({createdAt: 1}, {expireAfterSeconds: 60 * 60 * 24 * 7});
76
+ }
77
+ else {
78
+ setTimeout(() => {
79
+ initializeCollection();
80
+ }, 1);
81
+ }
82
+ }
@@ -0,0 +1,85 @@
1
+ import { ResolveIOServer } from '../index';
2
+ import { MongoManagerCollection, MongoManagerModel } from '../managers/mongo.manager';
3
+ import { CronJobModel } from '../models/cron-job.model';
4
+
5
+ let schema: any = {
6
+ _id: {
7
+ type: String,
8
+ optional: true
9
+ },
10
+ __v: {
11
+ type: Number,
12
+ optional: true
13
+ },
14
+ updatedAt: {
15
+ type: Date,
16
+ optional: true
17
+ },
18
+ createdAt: {
19
+ type: Date,
20
+ optional: true
21
+ },
22
+ name: {
23
+ type: String
24
+ },
25
+ repeat: {
26
+ type: Boolean
27
+ },
28
+ time_to_run: {
29
+ type: String
30
+ },
31
+ method_run: {
32
+ type: String
33
+ },
34
+ method_run_data: {
35
+ type: Object,
36
+ blackbox: true,
37
+ optional: true
38
+ },
39
+ method_complete: {
40
+ type: String,
41
+ optional: true
42
+ },
43
+ method_complete_data: {
44
+ type: Object,
45
+ blackbox: true,
46
+ optional: true
47
+ },
48
+ running: {
49
+ type: Boolean
50
+ },
51
+ timezone: {
52
+ type: String,
53
+ optional: true
54
+ },
55
+ next_run: {
56
+ type: Date,
57
+ optional: true
58
+ }
59
+ };
60
+
61
+ export let CronJobs: MongoManagerCollection<CronJobModel> = null;
62
+
63
+ initializeCollection();
64
+
65
+ function initializeCollection() {
66
+ if (ResolveIOServer && ResolveIOServer.getMainDB()) {
67
+ const model = new MongoManagerModel<CronJobModel>({
68
+ collectionName: 'cron-jobs',
69
+ schema: schema,
70
+ useVersionCollection: false,
71
+ useReportBuilder: false,
72
+ reportBuilderLookupTables: [],
73
+ timestamps: true,
74
+ createLogs: false,
75
+ checkSchema: true,
76
+ collectionOptions: null
77
+ });
78
+ CronJobs = model.collection_main;
79
+ }
80
+ else {
81
+ setTimeout(() => {
82
+ initializeCollection();
83
+ }, 1);
84
+ }
85
+ }
@@ -0,0 +1,66 @@
1
+ import { ResolveIOServer } from '../index';
2
+ import { MongoManagerCollection, MongoManagerModel } from '../managers/mongo.manager';
3
+ import { EmailHistoryModel } from '../models/email-history.model';
4
+
5
+ let schema: any = {
6
+ _id: {
7
+ type: String,
8
+ optional: true
9
+ },
10
+ __v: {
11
+ type: Number,
12
+ optional: true
13
+ },
14
+ updatedAt: {
15
+ type: Date,
16
+ optional: true
17
+ },
18
+ createdAt: {
19
+ type: Date,
20
+ optional: true
21
+ },
22
+ date: {
23
+ type: Date
24
+ },
25
+ id_user: {
26
+ type: String
27
+ },
28
+ user: {
29
+ type: String
30
+ },
31
+ email: {
32
+ type: String
33
+ },
34
+ success: {
35
+ type: Boolean
36
+ },
37
+ verified: {
38
+ type: Boolean
39
+ }
40
+ };
41
+
42
+ export let EmailHistories: MongoManagerCollection<EmailHistoryModel> = null;
43
+
44
+ initializeCollection();
45
+
46
+ function initializeCollection() {
47
+ if (ResolveIOServer && ResolveIOServer.getMainDB()) {
48
+ const model = new MongoManagerModel<EmailHistoryModel>({
49
+ collectionName: 'email-histories',
50
+ schema: schema,
51
+ useVersionCollection: false,
52
+ useReportBuilder: false,
53
+ reportBuilderLookupTables: [],
54
+ timestamps: true,
55
+ createLogs: false,
56
+ checkSchema: true,
57
+ collectionOptions: null
58
+ });
59
+ EmailHistories = model.collection_main;
60
+ }
61
+ else {
62
+ setTimeout(() => {
63
+ initializeCollection();
64
+ }, 1);
65
+ }
66
+ }
@@ -0,0 +1,61 @@
1
+ import { ResolveIOServer } from '../index';
2
+ import { MongoManagerCollection, MongoManagerModel } from '../managers/mongo.manager';
3
+ import { EmailVerifiedModel } from '../models/email-verified.model';
4
+
5
+ let schema: any = {
6
+ _id: {
7
+ type: String,
8
+ optional: true
9
+ },
10
+ __v: {
11
+ type: Number,
12
+ optional: true
13
+ },
14
+ updatedAt: {
15
+ type: Date,
16
+ optional: true
17
+ },
18
+ createdAt: {
19
+ type: Date,
20
+ optional: true
21
+ },
22
+ date: {
23
+ type: Date
24
+ },
25
+ id_user: {
26
+ type: String
27
+ },
28
+ user: {
29
+ type: String
30
+ },
31
+ email: {
32
+ type: String
33
+ }
34
+ };
35
+
36
+ export let EmailVerifies: MongoManagerCollection<EmailVerifiedModel> = null;
37
+
38
+ initializeCollection();
39
+
40
+ function initializeCollection() {
41
+ if (ResolveIOServer && ResolveIOServer.getMainDB()) {
42
+ const model = new MongoManagerModel<EmailVerifiedModel>({
43
+ collectionName: 'email-verifies',
44
+ schema: schema,
45
+ useVersionCollection: false,
46
+ useReportBuilder: false,
47
+ reportBuilderLookupTables: [],
48
+ timestamps: true,
49
+ createLogs: false,
50
+ checkSchema: true,
51
+ collectionOptions: null
52
+ });
53
+ EmailVerifies = model.collection_main;
54
+ EmailVerifies.createIndex({email: 1});
55
+ }
56
+ else {
57
+ setTimeout(() => {
58
+ initializeCollection();
59
+ }, 1);
60
+ }
61
+ }