@syngrisi/syngrisi 2.2.2 → 2.2.6-alpha.0

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 (613) hide show
  1. package/README.md +49 -27
  2. package/dist/server/api-docs/openAPIDocumentGenerator.js +6489 -0
  3. package/dist/server/api-docs/openAPIDocumentGenerator.js.map +1 -0
  4. package/dist/server/api-docs/openAPIResponseBuilders.js +89 -0
  5. package/dist/server/api-docs/openAPIResponseBuilders.js.map +1 -0
  6. package/dist/server/api-docs/openAPIRouter.js +6505 -0
  7. package/dist/server/api-docs/openAPIRouter.js.map +1 -0
  8. package/dist/server/api-docs/serviceResponse.js +39 -0
  9. package/dist/server/api-docs/serviceResponse.js.map +1 -0
  10. package/dist/server/app.js +6751 -0
  11. package/dist/server/app.js.map +1 -0
  12. package/dist/server/config.js +1055 -0
  13. package/dist/server/config.js.map +1 -0
  14. package/dist/server/controllers/app.controller.js +1949 -0
  15. package/dist/server/controllers/app.controller.js.map +1 -0
  16. package/dist/server/controllers/auth.controller.js +2079 -0
  17. package/dist/server/controllers/auth.controller.js.map +1 -0
  18. package/dist/server/controllers/baseline.controller.js +1976 -0
  19. package/dist/server/controllers/baseline.controller.js.map +1 -0
  20. package/dist/server/controllers/check.controller.js +2289 -0
  21. package/dist/server/controllers/check.controller.js.map +1 -0
  22. package/dist/server/controllers/client.controller.js +2994 -0
  23. package/dist/server/controllers/client.controller.js.map +1 -0
  24. package/dist/server/controllers/index.js +4289 -0
  25. package/dist/server/controllers/index.js.map +1 -0
  26. package/dist/server/controllers/logs.controller.js +1954 -0
  27. package/dist/server/controllers/logs.controller.js.map +1 -0
  28. package/dist/server/controllers/runs.controller.js +2293 -0
  29. package/dist/server/controllers/runs.controller.js.map +1 -0
  30. package/dist/server/controllers/settings.controller.js +843 -0
  31. package/dist/server/controllers/settings.controller.js.map +1 -0
  32. package/dist/server/controllers/snapshots.controller.js +1953 -0
  33. package/dist/server/controllers/snapshots.controller.js.map +1 -0
  34. package/dist/server/controllers/suite.controller.js +2288 -0
  35. package/dist/server/controllers/suite.controller.js.map +1 -0
  36. package/dist/server/controllers/tasks.controller.js +2378 -0
  37. package/dist/server/controllers/tasks.controller.js.map +1 -0
  38. package/dist/server/controllers/test.controller.js +2312 -0
  39. package/dist/server/controllers/test.controller.js.map +1 -0
  40. package/dist/server/controllers/users.controller.js +2056 -0
  41. package/dist/server/controllers/users.controller.js.map +1 -0
  42. package/dist/server/envConfig.js +70 -0
  43. package/dist/server/envConfig.js.map +1 -0
  44. package/dist/server/lib/AppSettings/AppSettings.js +814 -0
  45. package/dist/server/lib/AppSettings/AppSettings.js.map +1 -0
  46. package/dist/server/lib/AppSettings/index.js +814 -0
  47. package/dist/server/lib/AppSettings/index.js.map +1 -0
  48. package/dist/server/lib/connectDb.js +1873 -0
  49. package/dist/server/lib/connectDb.js.map +1 -0
  50. package/dist/server/lib/dbItems/createAppIfNotExist.js +1878 -0
  51. package/dist/server/lib/dbItems/createAppIfNotExist.js.map +1 -0
  52. package/dist/server/lib/dbItems/createItemIfNotExist.js +1883 -0
  53. package/dist/server/lib/dbItems/createItemIfNotExist.js.map +1 -0
  54. package/dist/server/lib/dbItems/createItemProm.js +1877 -0
  55. package/dist/server/lib/dbItems/createItemProm.js.map +1 -0
  56. package/dist/server/lib/dbItems/createRunIfNotExist.js +1898 -0
  57. package/dist/server/lib/dbItems/createRunIfNotExist.js.map +1 -0
  58. package/dist/server/lib/dbItems/createSuiteIfNotExist.js +1878 -0
  59. package/dist/server/lib/dbItems/createSuiteIfNotExist.js.map +1 -0
  60. package/dist/server/lib/dbItems/createTest.js +1884 -0
  61. package/dist/server/lib/dbItems/createTest.js.map +1 -0
  62. package/dist/server/lib/dbItems/createUser.js +1884 -0
  63. package/dist/server/lib/dbItems/createUser.js.map +1 -0
  64. package/dist/server/lib/dbItems/index.js +2043 -0
  65. package/dist/server/lib/dbItems/index.js.map +1 -0
  66. package/dist/server/lib/dbItems/updateItem.js +1873 -0
  67. package/dist/server/lib/dbItems/updateItem.js.map +1 -0
  68. package/dist/server/lib/dbItems/updateItemDate.js +1872 -0
  69. package/dist/server/lib/dbItems/updateItemDate.js.map +1 -0
  70. package/dist/server/lib/httpLogger.js +1066 -0
  71. package/dist/server/lib/httpLogger.js.map +1 -0
  72. package/dist/server/lib/logger.js +1852 -0
  73. package/dist/server/lib/logger.js.map +1 -0
  74. package/dist/server/lib/startup/createBasicUsers.js +1901 -0
  75. package/dist/server/lib/startup/createBasicUsers.js.map +1 -0
  76. package/dist/server/lib/startup/createInitialSettings.js +820 -0
  77. package/dist/server/lib/startup/createInitialSettings.js.map +1 -0
  78. package/dist/server/lib/startup/createTempDir.js +1066 -0
  79. package/dist/server/lib/startup/createTempDir.js.map +1 -0
  80. package/dist/server/lib/startup/createTestsUsers.js +1916 -0
  81. package/dist/server/lib/startup/createTestsUsers.js.map +1 -0
  82. package/dist/server/lib/startup/index.js +2071 -0
  83. package/dist/server/lib/startup/index.js.map +1 -0
  84. package/dist/server/lib//321/201omparison/comparator.js +1955 -0
  85. package/dist/server/lib//321/201omparison/comparator.js.map +1 -0
  86. package/dist/server/lib//321/201omparison/compareImagesNode.js +91 -0
  87. package/dist/server/lib//321/201omparison/compareImagesNode.js.map +1 -0
  88. package/dist/server/lib//321/201omparison/index.js +1955 -0
  89. package/dist/server/lib//321/201omparison/index.js.map +1 -0
  90. package/dist/server/middlewares/authorization.js +1994 -0
  91. package/dist/server/middlewares/authorization.js.map +1 -0
  92. package/dist/server/middlewares/compressionFilter.js +47 -0
  93. package/dist/server/middlewares/compressionFilter.js.map +1 -0
  94. package/dist/server/middlewares/disableCors.js +1073 -0
  95. package/dist/server/middlewares/disableCors.js.map +1 -0
  96. package/dist/server/middlewares/ensureLogin/ensureLoggedIn.js +2103 -0
  97. package/dist/server/middlewares/ensureLogin/ensureLoggedIn.js.map +1 -0
  98. package/dist/server/middlewares/ensureLogin/index.js +2087 -0
  99. package/dist/server/middlewares/ensureLogin/index.js.map +1 -0
  100. package/dist/server/middlewares/errorHandler.js +1886 -0
  101. package/dist/server/middlewares/errorHandler.js.map +1 -0
  102. package/dist/server/middlewares/index.js +2025 -0
  103. package/dist/server/middlewares/index.js.map +1 -0
  104. package/dist/server/models/App.model.js +145 -0
  105. package/dist/server/models/App.model.js.map +1 -0
  106. package/dist/server/models/AppSettings.model.js +105 -0
  107. package/dist/server/models/AppSettings.model.js.map +1 -0
  108. package/dist/server/models/Baseline.model.js +187 -0
  109. package/dist/server/models/Baseline.model.js.map +1 -0
  110. package/dist/server/models/Check.model.js +241 -0
  111. package/dist/server/models/Check.model.js.map +1 -0
  112. package/dist/server/models/Log.model.js +139 -0
  113. package/dist/server/models/Log.model.js.map +1 -0
  114. package/dist/server/models/Run.model.js +154 -0
  115. package/dist/server/models/Run.model.js.map +1 -0
  116. package/dist/server/models/Snapshot.model.js +148 -0
  117. package/dist/server/models/Snapshot.model.js.map +1 -0
  118. package/dist/server/models/Suite.model.js +151 -0
  119. package/dist/server/models/Suite.model.js.map +1 -0
  120. package/dist/server/models/Test.model.js +248 -0
  121. package/dist/server/models/Test.model.js.map +1 -0
  122. package/dist/server/models/User.model.js +169 -0
  123. package/dist/server/models/User.model.js.map +1 -0
  124. package/dist/server/models/index.js +720 -0
  125. package/dist/server/models/index.js.map +1 -0
  126. package/dist/server/models/plugins/index.js +159 -0
  127. package/dist/server/models/plugins/index.js.map +1 -0
  128. package/dist/server/models/plugins/paginate.plugin.js +68 -0
  129. package/dist/server/models/plugins/paginate.plugin.js.map +1 -0
  130. package/dist/server/models/plugins/paginateDistinct.plugin.js +73 -0
  131. package/dist/server/models/plugins/paginateDistinct.plugin.js.map +1 -0
  132. package/dist/server/models/plugins/toJSON.plugin.js +56 -0
  133. package/dist/server/models/plugins/toJSON.plugin.js.map +1 -0
  134. package/dist/server/models/plugins/utils.js +19 -0
  135. package/dist/server/models/plugins/utils.js.map +1 -0
  136. package/dist/server/routes/ui/admin.js +2082 -0
  137. package/dist/server/routes/ui/admin.js.map +1 -0
  138. package/dist/server/routes/ui/auth.js +711 -0
  139. package/dist/server/routes/ui/auth.js.map +1 -0
  140. package/dist/server/routes/ui/index.js +2036 -0
  141. package/dist/server/routes/ui/index.js.map +1 -0
  142. package/dist/server/routes/v1/app.route.js +4372 -0
  143. package/dist/server/routes/v1/app.route.js.map +1 -0
  144. package/dist/server/routes/v1/auth.route.js +2325 -0
  145. package/dist/server/routes/v1/auth.route.js.map +1 -0
  146. package/dist/server/routes/v1/baselines.route.js +2487 -0
  147. package/dist/server/routes/v1/baselines.route.js.map +1 -0
  148. package/dist/server/routes/v1/checks.route.js +2840 -0
  149. package/dist/server/routes/v1/checks.route.js.map +1 -0
  150. package/dist/server/routes/v1/client.route.js +3764 -0
  151. package/dist/server/routes/v1/client.route.js.map +1 -0
  152. package/dist/server/routes/v1/index.route.js +6536 -0
  153. package/dist/server/routes/v1/index.route.js.map +1 -0
  154. package/dist/server/routes/v1/logs.route.js +2426 -0
  155. package/dist/server/routes/v1/logs.route.js.map +1 -0
  156. package/dist/server/routes/v1/runs.route.js +2771 -0
  157. package/dist/server/routes/v1/runs.route.js.map +1 -0
  158. package/dist/server/routes/v1/settings.route.js +2349 -0
  159. package/dist/server/routes/v1/settings.route.js.map +1 -0
  160. package/dist/server/routes/v1/snapshots.route.js +2361 -0
  161. package/dist/server/routes/v1/snapshots.route.js.map +1 -0
  162. package/dist/server/routes/v1/suites.route.js +2713 -0
  163. package/dist/server/routes/v1/suites.route.js.map +1 -0
  164. package/dist/server/routes/v1/tasks.route.js +2761 -0
  165. package/dist/server/routes/v1/tasks.route.js.map +1 -0
  166. package/dist/server/routes/v1/test_distinct.route.js +2714 -0
  167. package/dist/server/routes/v1/test_distinct.route.js.map +1 -0
  168. package/dist/server/routes/v1/tests.route.js +2895 -0
  169. package/dist/server/routes/v1/tests.route.js.map +1 -0
  170. package/dist/server/routes/v1/users.route.js +4619 -0
  171. package/dist/server/routes/v1/users.route.js.map +1 -0
  172. package/dist/server/schemas/App.schema.js +102 -0
  173. package/dist/server/schemas/App.schema.js.map +1 -0
  174. package/dist/server/schemas/Auth.schema.js +116 -0
  175. package/dist/server/schemas/Auth.schema.js.map +1 -0
  176. package/dist/server/schemas/Baseline.schema.js +183 -0
  177. package/dist/server/schemas/Baseline.schema.js.map +1 -0
  178. package/dist/server/schemas/Check.schema.js +198 -0
  179. package/dist/server/schemas/Check.schema.js.map +1 -0
  180. package/dist/server/schemas/Client.schema.js +455 -0
  181. package/dist/server/schemas/Client.schema.js.map +1 -0
  182. package/dist/server/schemas/CreateCheck.shema.js +47 -0
  183. package/dist/server/schemas/CreateCheck.shema.js.map +1 -0
  184. package/dist/server/schemas/GetBaseline.shema.js +56 -0
  185. package/dist/server/schemas/GetBaseline.shema.js.map +1 -0
  186. package/dist/server/schemas/Logs.schema.js +140 -0
  187. package/dist/server/schemas/Logs.schema.js.map +1 -0
  188. package/dist/server/schemas/Runs.schema.js +128 -0
  189. package/dist/server/schemas/Runs.schema.js.map +1 -0
  190. package/dist/server/schemas/Settings.schema.js +156 -0
  191. package/dist/server/schemas/Settings.schema.js.map +1 -0
  192. package/dist/server/schemas/SkipValid.schema.js +32 -0
  193. package/dist/server/schemas/SkipValid.schema.js.map +1 -0
  194. package/dist/server/schemas/SnapshotDiff.schema.js +44 -0
  195. package/dist/server/schemas/SnapshotDiff.schema.js.map +1 -0
  196. package/dist/server/schemas/Snapshots.schema.js +115 -0
  197. package/dist/server/schemas/Snapshots.schema.js.map +1 -0
  198. package/dist/server/schemas/Suite.schema.js +114 -0
  199. package/dist/server/schemas/Suite.schema.js.map +1 -0
  200. package/dist/server/schemas/Test.schema.js +204 -0
  201. package/dist/server/schemas/Test.schema.js.map +1 -0
  202. package/dist/server/schemas/TestDistinct.schema.js +63 -0
  203. package/dist/server/schemas/TestDistinct.schema.js.map +1 -0
  204. package/dist/server/schemas/User.schema.js +139 -0
  205. package/dist/server/schemas/User.schema.js.map +1 -0
  206. package/dist/server/schemas/common/ApiError.schema.js +51 -0
  207. package/dist/server/schemas/common/ApiError.schema.js.map +1 -0
  208. package/dist/server/schemas/common/Error.schema.js +47 -0
  209. package/dist/server/schemas/common/Error.schema.js.map +1 -0
  210. package/dist/server/schemas/common/RequestPagination.schema.js +121 -0
  211. package/dist/server/schemas/common/RequestPagination.schema.js.map +1 -0
  212. package/dist/server/schemas/common/Version.schema.js +36 -0
  213. package/dist/server/schemas/common/Version.schema.js.map +1 -0
  214. package/dist/server/schemas/common/requestQueryFilterSchema.schema.js +53 -0
  215. package/dist/server/schemas/common/requestQueryFilterSchema.schema.js.map +1 -0
  216. package/dist/server/schemas/index.js +155 -0
  217. package/dist/server/schemas/index.js.map +1 -0
  218. package/dist/server/schemas/utils/commonValidations.js +82 -0
  219. package/dist/server/schemas/utils/commonValidations.js.map +1 -0
  220. package/dist/server/schemas/utils/createRequestBodySchema.js +32 -0
  221. package/dist/server/schemas/utils/createRequestBodySchema.js.map +1 -0
  222. package/dist/server/schemas/utils/createRequestOpenApiBodySchema.js +35 -0
  223. package/dist/server/schemas/utils/createRequestOpenApiBodySchema.js.map +1 -0
  224. package/dist/server/schemas/utils/createRequestParamsSchema.js +93 -0
  225. package/dist/server/schemas/utils/createRequestParamsSchema.js.map +1 -0
  226. package/dist/server/schemas/utils/createRequestQuerySchema.js +32 -0
  227. package/dist/server/schemas/utils/createRequestQuerySchema.js.map +1 -0
  228. package/dist/server/schemas/utils/index.js +84 -0
  229. package/dist/server/schemas/utils/index.js.map +1 -0
  230. package/dist/server/server.js +6921 -0
  231. package/dist/server/server.js.map +1 -0
  232. package/dist/server/server_old.js +7284 -0
  233. package/dist/server/server_old.js.map +1 -0
  234. package/dist/server/services/app.service.js +696 -0
  235. package/dist/server/services/app.service.js.map +1 -0
  236. package/dist/server/services/auth.service.js +2025 -0
  237. package/dist/server/services/auth.service.js.map +1 -0
  238. package/dist/server/services/check.service.js +2149 -0
  239. package/dist/server/services/check.service.js.map +1 -0
  240. package/dist/server/services/client.service.js +2648 -0
  241. package/dist/server/services/client.service.js.map +1 -0
  242. package/dist/server/services/generic.service.js +1888 -0
  243. package/dist/server/services/generic.service.js.map +1 -0
  244. package/dist/server/services/index.js +3548 -0
  245. package/dist/server/services/index.js.map +1 -0
  246. package/dist/server/services/logs.service.js +1875 -0
  247. package/dist/server/services/logs.service.js.map +1 -0
  248. package/dist/server/services/run.service.js +2221 -0
  249. package/dist/server/services/run.service.js.map +1 -0
  250. package/dist/server/services/snapshot.service.js +1921 -0
  251. package/dist/server/services/snapshot.service.js.map +1 -0
  252. package/dist/server/services/suite.service.js +2218 -0
  253. package/dist/server/services/suite.service.js.map +1 -0
  254. package/dist/server/services/tasks.service.js +2288 -0
  255. package/dist/server/services/tasks.service.js.map +1 -0
  256. package/dist/server/services/test.service.js +2230 -0
  257. package/dist/server/services/test.service.js.map +1 -0
  258. package/dist/server/services/user.service.js +1925 -0
  259. package/dist/server/services/user.service.js.map +1 -0
  260. package/dist/server/utils/ApiError.js +39 -0
  261. package/dist/server/utils/ApiError.js.map +1 -0
  262. package/dist/server/utils/ProgressBar.js +54 -0
  263. package/dist/server/utils/ProgressBar.js.map +1 -0
  264. package/dist/server/utils/ServiceResponse.js +45 -0
  265. package/dist/server/utils/ServiceResponse.js.map +1 -0
  266. package/dist/server/utils/buildIdentObject.js +52 -0
  267. package/dist/server/utils/buildIdentObject.js.map +1 -0
  268. package/dist/server/utils/calculateAcceptedStatus.js +710 -0
  269. package/dist/server/utils/calculateAcceptedStatus.js.map +1 -0
  270. package/dist/server/utils/catchAsync.js +32 -0
  271. package/dist/server/utils/catchAsync.js.map +1 -0
  272. package/dist/server/utils/checkIdent.js +36 -0
  273. package/dist/server/utils/checkIdent.js.map +1 -0
  274. package/dist/server/utils/dateToISO8601.js +30 -0
  275. package/dist/server/utils/dateToISO8601.js.map +1 -0
  276. package/dist/server/utils/deserializeIfJSON.js +706 -0
  277. package/dist/server/utils/deserializeIfJSON.js.map +1 -0
  278. package/dist/server/utils/errMsg.js +33 -0
  279. package/dist/server/utils/errMsg.js.map +1 -0
  280. package/dist/server/utils/formatISOToDateTime.js +31 -0
  281. package/dist/server/utils/formatISOToDateTime.js.map +1 -0
  282. package/dist/server/utils/ident.js +31 -0
  283. package/dist/server/utils/ident.js.map +1 -0
  284. package/dist/server/utils/index.js +910 -0
  285. package/dist/server/utils/index.js.map +1 -0
  286. package/dist/server/utils/isJSON.js +34 -0
  287. package/dist/server/utils/isJSON.js.map +1 -0
  288. package/dist/server/utils/paramsGuard.js +45 -0
  289. package/dist/server/utils/paramsGuard.js.map +1 -0
  290. package/dist/server/utils/pick.js +35 -0
  291. package/dist/server/utils/pick.js.map +1 -0
  292. package/dist/server/utils/prettyCheckParams.js +37 -0
  293. package/dist/server/utils/prettyCheckParams.js.map +1 -0
  294. package/dist/server/utils/removeEmptyProperties.js +34 -0
  295. package/dist/server/utils/removeEmptyProperties.js.map +1 -0
  296. package/dist/server/utils/subDays.js +32 -0
  297. package/dist/server/utils/subDays.js.map +1 -0
  298. package/dist/server/utils/validateRequest.js +1922 -0
  299. package/dist/server/utils/validateRequest.js.map +1 -0
  300. package/dist/server/utils/waitUntil.js +43 -0
  301. package/dist/server/utils/waitUntil.js.map +1 -0
  302. package/dist/tasks/backup.js +1085 -0
  303. package/dist/tasks/backup.js.map +1 -0
  304. package/dist/tasks/lib/index.js +717 -0
  305. package/dist/tasks/lib/index.js.map +1 -0
  306. package/dist/tasks/lib/utils.js +1070 -0
  307. package/dist/tasks/lib/utils.js.map +1 -0
  308. package/dist/tasks/migrations/2.0.migration.js +908 -0
  309. package/dist/tasks/migrations/2.0.migration.js.map +1 -0
  310. package/dist/tasks/reindex.js +1742 -0
  311. package/dist/tasks/reindex.js.map +1 -0
  312. package/dist/tasks/restore.js +1097 -0
  313. package/dist/tasks/restore.js.map +1 -0
  314. package/docker-compose.yml +3 -3
  315. package/mvc/views/react/admin/index.html +4 -4
  316. package/mvc/views/react/assets/{LogicalGroup.6c0a9f4a.js → LogicalGroup.80e37bbf.js} +1 -22
  317. package/mvc/views/react/assets/{PasswordInput.b97a4ef7.js → PasswordInput.eb05d2ed.js} +1 -1
  318. package/mvc/views/react/assets/{admin.6d843d1b.js → admin.d6aa02f7.js} +3 -3
  319. package/mvc/views/react/assets/{auth.ecf25364.js → auth.e49d0968.js} +3 -2
  320. package/mvc/views/react/assets/{root.25abcc85.js → root.b071750f.js} +7 -9
  321. package/mvc/views/react/assets/{use-form.10003abf.js → use-form.c4a2cf47.js} +203 -151
  322. package/mvc/views/react/auth/index.html +3 -3
  323. package/mvc/views/react/index2/index.html +3 -3
  324. package/package.json +45 -14
  325. package/src/seeds/testAdmin.json +10 -0
  326. package/src/server/api-docs/openAPIDocumentGenerator.ts +48 -0
  327. package/src/server/api-docs/openAPIResponseBuilders.ts +38 -0
  328. package/src/server/api-docs/openAPIRouter.ts +18 -0
  329. package/src/server/api-docs/serviceResponse.ts +11 -0
  330. package/src/server/app.ts +77 -0
  331. package/src/server/config.ts +57 -0
  332. package/src/server/controllers/app.controller.ts +23 -0
  333. package/src/server/controllers/auth.controller.ts +149 -0
  334. package/src/server/controllers/baseline.controller.ts +32 -0
  335. package/src/server/controllers/{check.controller.js → check.controller.ts} +17 -14
  336. package/src/server/controllers/client.controller.ts +134 -0
  337. package/src/server/controllers/index.ts +27 -0
  338. package/src/server/controllers/logs.controller.ts +36 -0
  339. package/src/server/controllers/runs.controller.ts +32 -0
  340. package/src/server/controllers/settings.controller.ts +28 -0
  341. package/src/server/controllers/snapshots.controller.ts +24 -0
  342. package/src/server/controllers/suite.controller.ts +30 -0
  343. package/src/server/controllers/tasks.controller.ts +47 -0
  344. package/src/server/controllers/test.controller.ts +62 -0
  345. package/src/server/controllers/users.controller.ts +89 -0
  346. package/src/server/envConfig.ts +36 -0
  347. package/src/server/lib/AppSettings/AppSettings.ts +88 -0
  348. package/src/server/lib/AppSettings/index.ts +1 -0
  349. package/src/server/lib/connectDb.ts +18 -0
  350. package/src/server/lib/dbItems/createAppIfNotExist.ts +26 -0
  351. package/src/server/lib/dbItems/createItemIfNotExist.ts +29 -0
  352. package/src/server/lib/dbItems/createItemProm.ts +22 -0
  353. package/src/server/lib/dbItems/createRunIfNotExist.ts +44 -0
  354. package/src/server/lib/dbItems/createSuiteIfNotExist.ts +26 -0
  355. package/src/server/lib/dbItems/createTest.ts +7 -0
  356. package/src/server/lib/dbItems/createUser.ts +7 -0
  357. package/src/server/lib/dbItems/index.ts +12 -0
  358. package/src/server/lib/dbItems/updateItem.ts +17 -0
  359. package/src/server/lib/dbItems/updateItemDate.ts +18 -0
  360. package/src/server/lib/httpLogger.ts +14 -0
  361. package/src/server/lib/logger.ts +147 -0
  362. package/src/server/lib/startup/createBasicUsers.ts +25 -0
  363. package/src/server/lib/startup/createInitialSettings.ts +8 -0
  364. package/src/server/lib/startup/createTempDir.ts +9 -0
  365. package/src/server/lib/startup/createTestsUsers.ts +17 -0
  366. package/src/server/lib/startup/index.ts +4 -0
  367. package/src/server/lib//321/201omparison/comparator.ts +49 -0
  368. package/src/server/lib//321/201omparison/compareImagesNode.ts +61 -0
  369. package/src/server/lib//321/201omparison/index.ts +1 -0
  370. package/src/server/middlewares/{authorization.js → authorization.ts} +23 -14
  371. package/src/server/middlewares/compressionFilter.ts +9 -0
  372. package/src/server/middlewares/disableCors.ts +32 -0
  373. package/src/server/{lib/ensureLogin/ensureLoggedIn.js → middlewares/ensureLogin/ensureLoggedIn.ts} +60 -63
  374. package/src/server/middlewares/ensureLogin/index.ts +2 -0
  375. package/src/server/middlewares/errorHandler.ts +42 -0
  376. package/src/server/middlewares/index.ts +4 -0
  377. package/src/server/models/App.model.ts +42 -0
  378. package/src/server/models/AppSettings.model.ts +48 -0
  379. package/src/server/models/Baseline.model.ts +98 -0
  380. package/src/server/models/Check.model.ts +166 -0
  381. package/src/server/models/Log.model.ts +36 -0
  382. package/src/server/models/Run.model.ts +55 -0
  383. package/src/server/models/Snapshot.model.ts +47 -0
  384. package/src/server/models/Suite.model.ts +50 -0
  385. package/src/server/models/Test.model.ts +117 -0
  386. package/src/server/models/User.model.ts +77 -0
  387. package/src/server/models/index.ts +11 -0
  388. package/src/server/models/plugins/index.ts +3 -0
  389. package/src/server/models/plugins/paginate.plugin.ts +74 -0
  390. package/src/server/models/plugins/paginateDistinct.plugin.ts +90 -0
  391. package/src/server/models/plugins/toJSON.plugin.ts +41 -0
  392. package/src/server/models/plugins/utils.ts +34 -0
  393. package/src/server/routes/ui/admin.ts +29 -0
  394. package/src/server/routes/ui/auth.ts +22 -0
  395. package/src/server/routes/ui/index.ts +25 -0
  396. package/src/server/routes/v1/app.route.ts +48 -0
  397. package/src/server/routes/v1/auth.route.ts +88 -0
  398. package/src/server/routes/v1/baselines.route.ts +52 -0
  399. package/src/server/routes/v1/checks.route.ts +85 -0
  400. package/src/server/routes/v1/client.route.ts +123 -0
  401. package/src/server/routes/v1/{index.js → index.route.ts} +16 -16
  402. package/src/server/routes/v1/logs.route.ts +65 -0
  403. package/src/server/routes/v1/runs.route.ts +55 -0
  404. package/src/server/routes/v1/settings.route.ts +54 -0
  405. package/src/server/routes/v1/snapshots.route.ts +32 -0
  406. package/src/server/routes/v1/suites.route.ts +52 -0
  407. package/src/server/routes/v1/tasks.route.ts +121 -0
  408. package/src/server/routes/v1/test_distinct.route.ts +32 -0
  409. package/src/server/routes/v1/tests.route.ts +90 -0
  410. package/src/server/routes/v1/users.route.ts +115 -0
  411. package/src/server/schemas/App.schema.ts +19 -0
  412. package/src/server/schemas/Auth.schema.ts +27 -0
  413. package/src/server/schemas/Baseline.schema.ts +106 -0
  414. package/src/server/schemas/Check.schema.ts +117 -0
  415. package/src/server/schemas/Client.schema.ts +380 -0
  416. package/src/server/schemas/GetBaseline.shema.ts +34 -0
  417. package/src/server/schemas/Logs.schema.ts +61 -0
  418. package/src/server/schemas/Runs.schema.ts +45 -0
  419. package/src/server/schemas/Settings.schema.ts +71 -0
  420. package/src/server/schemas/SkipValid.schema.ts +2 -0
  421. package/src/server/schemas/SnapshotDiff.schema.ts +18 -0
  422. package/src/server/schemas/Snapshots.schema.ts +42 -0
  423. package/src/server/schemas/Suite.schema.ts +34 -0
  424. package/src/server/schemas/Test.schema.ts +126 -0
  425. package/src/server/schemas/TestDistinct.schema.ts +36 -0
  426. package/src/server/schemas/User.schema.ts +59 -0
  427. package/src/server/schemas/common/ApiError.schema.ts +23 -0
  428. package/src/server/schemas/common/Error.schema.ts +19 -0
  429. package/src/server/schemas/common/RequestPagination.schema.ts +16 -0
  430. package/src/server/schemas/common/Version.schema.ts +14 -0
  431. package/src/server/schemas/common/requestQueryFilterSchema.schema.ts +32 -0
  432. package/src/server/schemas/index.ts +4 -0
  433. package/src/server/schemas/utils/commonValidations.ts +51 -0
  434. package/src/server/schemas/utils/createRequestBodySchema.ts +2 -0
  435. package/src/server/schemas/utils/createRequestOpenApiBodySchema.ts +6 -0
  436. package/src/server/schemas/utils/createRequestParamsSchema.ts +7 -0
  437. package/src/server/schemas/utils/createRequestQuerySchema.ts +2 -0
  438. package/src/server/schemas/utils/index.ts +3 -0
  439. package/src/server/server.ts +54 -0
  440. package/src/server/server_old.ts +185 -0
  441. package/src/server/services/app.service.ts +9 -0
  442. package/src/server/services/auth.service.ts +94 -0
  443. package/src/server/services/check.service.ts +241 -0
  444. package/src/server/services/client.service.ts +691 -0
  445. package/src/server/services/generic.service.ts +37 -0
  446. package/src/server/services/index.ts +24 -0
  447. package/src/server/services/logs.service.ts +27 -0
  448. package/src/server/services/run.service.ts +32 -0
  449. package/src/server/services/snapshot.service.ts +78 -0
  450. package/src/server/services/suite.service.ts +30 -0
  451. package/src/server/services/{tasks.service.js → tasks.service.ts} +157 -228
  452. package/src/server/services/test.service.ts +65 -0
  453. package/src/server/services/user.service.ts +90 -0
  454. package/src/server/utils/{ApiError.js → ApiError.ts} +5 -2
  455. package/src/server/utils/ProgressBar.ts +35 -0
  456. package/src/server/utils/ServiceResponse.ts +18 -0
  457. package/src/server/utils/buildIdentObject.ts +34 -0
  458. package/src/server/utils/calculateAcceptedStatus.ts +22 -0
  459. package/src/server/utils/catchAsync.ts +11 -0
  460. package/src/server/utils/checkIdent.ts +4 -0
  461. package/src/server/utils/dateToISO8601.ts +5 -0
  462. package/src/server/utils/deserializeIfJSON.ts +9 -0
  463. package/src/server/utils/errMsg.ts +3 -0
  464. package/src/server/utils/{formatISOToDateTime.js → formatISOToDateTime.ts} +2 -2
  465. package/src/server/utils/ident.ts +1 -0
  466. package/src/server/utils/index.ts +24 -0
  467. package/src/server/utils/isJSON.ts +14 -0
  468. package/src/server/utils/paramsGuard.ts +7 -6
  469. package/src/server/utils/pick.ts +17 -0
  470. package/src/server/utils/prettyCheckParams.ts +18 -0
  471. package/src/server/utils/removeEmptyProperties.ts +5 -0
  472. package/src/server/utils/{subDays.js → subDays.ts} +2 -2
  473. package/src/server/utils/validateRequest.ts +56 -0
  474. package/src/server/utils/waitUntil.ts +14 -0
  475. package/src/tasks/backup.ts +1 -1
  476. package/src/tasks/lib/index.ts +13 -0
  477. package/src/tasks/lib/utils.ts +14 -0
  478. package/src/tasks/migrations/2.0.migration.ts +2 -2
  479. package/src/tasks/reindex.ts +34 -0
  480. package/src/tasks/restore.ts +1 -1
  481. package/src/types/ExtRequest.ts +10 -0
  482. package/src/types/LogOpts.ts +20 -0
  483. package/src/types/Midleware.ts +3 -0
  484. package/src/types/RequestUser.ts +14 -0
  485. package/src/types/index.ts +4 -0
  486. package/src/ui-app/README.md +2 -2
  487. package/src/ui-app/auth/components/ChangePasswordForm.tsx +1 -1
  488. package/src/ui-app/index2/components/Tests/Table/Checks/CheckDetails/Canvas/mainView.ts +3 -3
  489. package/src/ui-app/index2/components/Tests/Table/Checks/Checks.tsx +30 -2
  490. package/src/ui-app/package-lock.json +10 -16
  491. package/src/ui-app/package.json +2 -2
  492. package/src/ui-app/shared/services/checks.service.ts +1 -1
  493. package/src/ui-app/shared/services/generic.service.ts +0 -28
  494. package/src/ui-app/tsconfig.json +3 -2
  495. package/config.js +0 -17
  496. package/dist/config.js +0 -16
  497. package/dist/src/server/models/index.js +0 -508
  498. package/dist/src/server/models/plugins/index.js +0 -4
  499. package/dist/src/server/models/plugins/paginate.plugin.js +0 -76
  500. package/dist/src/server/models/plugins/paginateDistinct.plugin.js +0 -76
  501. package/dist/src/server/models/plugins/toJSON.plugin.js +0 -39
  502. package/dist/src/server/schemas/createCheck.shema.js +0 -17
  503. package/dist/src/server/schemas/getBaseline.shema.js +0 -12
  504. package/dist/src/server/utils/paramsGuard.js +0 -18
  505. package/dist/src/tasks/backup.js +0 -68
  506. package/dist/src/tasks/lib/common.js +0 -14
  507. package/dist/src/tasks/lib/utils.js +0 -14
  508. package/dist/src/tasks/migrations/2.0.migration.js +0 -86
  509. package/dist/src/tasks/migrations/2.0.migration_mql.js +0 -57
  510. package/dist/src/tasks/reindex.js +0 -28
  511. package/dist/src/tasks/restore.js +0 -86
  512. package/dist/tsconfig.tsbuildinfo +0 -1
  513. package/mvc/views/react/index.html +0 -19
  514. package/server.js +0 -166
  515. package/src/server/controllers/app.controller.js +0 -21
  516. package/src/server/controllers/auth.controller.js +0 -156
  517. package/src/server/controllers/baseline.controller.js +0 -24
  518. package/src/server/controllers/client.controller.js +0 -173
  519. package/src/server/controllers/index.js +0 -12
  520. package/src/server/controllers/logs.controller.js +0 -30
  521. package/src/server/controllers/runs.controller.js +0 -25
  522. package/src/server/controllers/settings.controller.js +0 -23
  523. package/src/server/controllers/snapshots.controller.js +0 -17
  524. package/src/server/controllers/suite.controller.js +0 -24
  525. package/src/server/controllers/tasks.controller.js +0 -47
  526. package/src/server/controllers/test.controller.js +0 -70
  527. package/src/server/controllers/users.controller.js +0 -79
  528. package/src/server/data/custom_devices.json +0 -8
  529. package/src/server/lib/AppSettings.js +0 -56
  530. package/src/server/lib/comparator.js +0 -147
  531. package/src/server/lib/compareImagesNode.js +0 -60
  532. package/src/server/lib/dbItems.js +0 -215
  533. package/src/server/lib/ensureLogin/ensureLoggedOut.js +0 -44
  534. package/src/server/lib/getElementsByPixPositionsFromDump.js +0 -72
  535. package/src/server/lib/logger.js +0 -95
  536. package/src/server/lib/onStart.js +0 -53
  537. package/src/server/lib/parseDiff.js.bak +0 -72
  538. package/src/server/middlewares/disableCors.js +0 -19
  539. package/src/server/models/index.js +0 -534
  540. package/src/server/models/plugins/index.js +0 -3
  541. package/src/server/models/plugins/paginate.plugin.js +0 -83
  542. package/src/server/models/plugins/paginateDistinct.plugin.js +0 -80
  543. package/src/server/models/plugins/toJSON.plugin.js +0 -44
  544. package/src/server/routes/ui/admin.js +0 -20
  545. package/src/server/routes/ui/auth.js +0 -15
  546. package/src/server/routes/ui/index.js +0 -19
  547. package/src/server/routes/v1/app.route.js +0 -9
  548. package/src/server/routes/v1/auth.route.js +0 -12
  549. package/src/server/routes/v1/baselines.route.js +0 -14
  550. package/src/server/routes/v1/checks.route.js +0 -25
  551. package/src/server/routes/v1/client.route.js +0 -39
  552. package/src/server/routes/v1/logs.route.js +0 -16
  553. package/src/server/routes/v1/runs.route.js +0 -15
  554. package/src/server/routes/v1/settings.route.js +0 -23
  555. package/src/server/routes/v1/snapshots.route.js +0 -11
  556. package/src/server/routes/v1/suites.route.js +0 -15
  557. package/src/server/routes/v1/tasks.route.js +0 -59
  558. package/src/server/routes/v1/test.route.js +0 -20
  559. package/src/server/routes/v1/test_distinct.route.js +0 -14
  560. package/src/server/routes/v1/users.route.js +0 -36
  561. package/src/server/schemas/getBaseline.shema.ts +0 -12
  562. package/src/server/services/app.service.js +0 -23
  563. package/src/server/services/check.service.js +0 -178
  564. package/src/server/services/client.service.js +0 -648
  565. package/src/server/services/generic.service.js +0 -51
  566. package/src/server/services/index.js +0 -12
  567. package/src/server/services/logs.service.js +0 -38
  568. package/src/server/services/run.service.js +0 -40
  569. package/src/server/services/suite.service.js +0 -39
  570. package/src/server/services/test.service.js +0 -72
  571. package/src/server/services/user.service.js +0 -128
  572. package/src/server/utils/catchAsync.js +0 -8
  573. package/src/server/utils/check.js +0 -58
  574. package/src/server/utils/dateToISO8601.js +0 -2
  575. package/src/server/utils/deserializeIfJSON.js +0 -9
  576. package/src/server/utils/index.js +0 -10
  577. package/src/server/utils/isJSON.js +0 -6
  578. package/src/server/utils/pick.js +0 -15
  579. package/src/server/utils/prettyCheckParams.js +0 -13
  580. package/src/server/utils/snapshots.js +0 -73
  581. package/src/server/utils/tests.js +0 -36
  582. package/src/server/utils/utils.js +0 -146
  583. package/src/tasks/backup.js.bak +0 -84
  584. package/src/tasks/lib/common.js +0 -24
  585. package/src/tasks/lib/utils.js +0 -15
  586. package/src/tasks/reindex.js +0 -36
  587. package/src/tasks/restore.js.bak +0 -100
  588. package/src/ui-app/tsconfig.node.json +0 -12
  589. package/static/js/canvasjs.min.js.bak +0 -957
  590. package/static/js/chart.js.bak +0 -92
  591. package/static/js/jquery-3.3.1.slim.js.bak +0 -8269
  592. package/static/js/jquery-3.3.1.slim.min.js.bak +0 -2
  593. package/static/js/moment.min.js.bak +0 -2
  594. /package/src/{server/lib → seeds}/admin.json +0 -0
  595. /package/src/{server/lib → seeds}/guest.json +0 -0
  596. /package/src/{server/lib → seeds}/initialAppSettings.json +0 -0
  597. /package/src/{server/lib/testAdmin.json → seeds/testAdmin copy.json} +0 -0
  598. /package/src/{server/lib → seeds}/testUsers.json +0 -0
  599. /package/src/server/schemas/{createCheck.shema.ts → CreateCheck.shema.ts} +0 -0
  600. /package/{static → src/server/static/static}/A.png +0 -0
  601. /package/{static → src/server/static/static}/B.png +0 -0
  602. /package/{static → src/server/static/static}/affected.html +0 -0
  603. /package/{static → src/server/static/static}/affected_2.html +0 -0
  604. /package/{static → src/server/static/static}/data/custom_devices.json +0 -0
  605. /package/{static → src/server/static/static}/grids/desktop-higher.html +0 -0
  606. /package/{static → src/server/static/static}/grids/desktop-wider.html +0 -0
  607. /package/{static → src/server/static/static}/grids/desktop.html +0 -0
  608. /package/{static → src/server/static/static}/grids/fit-in-view.html +0 -0
  609. /package/{static → src/server/static/static}/low_diff_0.png +0 -0
  610. /package/{static → src/server/static/static}/low_diff_1.png +0 -0
  611. /package/{static → src/server/static/static}/vShift.png +0 -0
  612. /package/{static → src/server/static/static}/vShift_bottom.png +0 -0
  613. /package/{static → src/server/static/static}/vShift_top.png +0 -0
@@ -1,37 +1,45 @@
1
+ /* eslint-disable @typescript-eslint/ban-ts-comment */
2
+ /* eslint-disable @typescript-eslint/no-explicit-any */
1
3
  /* eslint-disable camelcase */
2
- const { promises: fs } = require('fs');
3
- const stringTable = require('string-table');
4
- const fss = require('fs');
5
- const { config } = require('../../../config');
6
- const { subDays, dateToISO8601 } = require('../utils');
7
- const { ProgressBar } = require('../utils/utils');
8
- const {
4
+ import { Response } from "express";
5
+ import { env } from "@/server/envConfig";
6
+
7
+ interface StringTable {
8
+ create(data: { [key: string]: any }[]): string;
9
+ }
10
+
11
+ import fs, { promises as fsp } from 'fs';
12
+ // @ts-ignore
13
+ import st from 'string-table';
14
+ import { config } from '@config';
15
+ import { subDays, dateToISO8601 } from '@utils';
16
+ import { ProgressBar } from '@utils';
17
+ import log from "../lib/logger";
18
+ import testAdminUser from '../../seeds/testAdmin.json'
19
+ const stringTable: StringTable = st;
20
+
21
+ import {
9
22
  Snapshot,
10
23
  Check,
11
24
  Test,
12
25
  Run,
13
- Log,
14
26
  Suite,
15
27
  User,
28
+ Log,
16
29
  Baseline,
17
- } = require('../models');
18
-
19
- const $this = this;
20
- $this.logMeta = {
21
- scope: 'app_service',
22
- msgType: 'APP',
23
- };
30
+ } from '@models';
31
+ import { ExtRequest } from '@types';
24
32
 
25
- function taskOutput(msg, res) {
33
+ function taskOutput(msg: any, res: any) {
26
34
  res.write(`${msg.toString()}\n`);
27
- log.debug(msg.toString(), $this);
35
+ log.debug(msg.toString());
28
36
  }
29
37
 
30
- function parseHrtimeToSeconds(hrtime) {
38
+ function parseHrtimeToSeconds(hrtime: any) {
31
39
  return (hrtime[0] + (hrtime[1] / 1e9)).toFixed(3);
32
40
  }
33
41
 
34
- const status = async (currentUser) => {
42
+ const status = async (currentUser: any) => {
35
43
  const count = await User.countDocuments().exec();
36
44
 
37
45
  log.silly(`server status: check users counts: ${count}`);
@@ -42,7 +50,7 @@ const status = async (currentUser) => {
42
50
  };
43
51
 
44
52
  const screenshots = async () => {
45
- const files = fss.readdirSync(config.defaultImagesPath);
53
+ const files = fs.readdirSync(config.defaultImagesPath);
46
54
  return files;
47
55
  };
48
56
 
@@ -52,126 +60,99 @@ const loadTestUser = async () => {
52
60
  msgType: 'LOAD',
53
61
  ref: 'Administrator',
54
62
  };
55
- if (process.env.SYNGRISI_TEST_MODE !== '1') {
63
+ if (!env.SYNGRISI_TEST_MODE) {
56
64
  return { message: 'the feature works only in test mode' };
57
65
  }
58
66
  const testAdmin = await User.findOne({ username: 'Test' }).exec();
59
67
  if (!testAdmin) {
60
- log.info('create the test Administrator', $this, logOpts);
61
- const adminData = JSON.parse(fss.readFileSync('./src/server/lib/testAdmin.json'));
62
- const admin = await User.create(adminData);
63
- log.info(`test Administrator with id: '${admin._id}' was created`, $this, logOpts);
68
+ log.info('create the test Administrator', logOpts);
69
+ const admin = await User.create(testAdminUser);
70
+ log.info(`test Administrator with id: '${admin._id}' was created`, logOpts);
64
71
  return admin;
65
72
  }
66
73
 
67
- log.info(`test admin is exists: ${JSON.stringify(testAdmin, null, 2)}`, $this, logOpts);
74
+ log.info(`test admin is exists: ${JSON.stringify(testAdmin, null, 2)}`, logOpts);
68
75
  return { msg: `already exist '${testAdmin}'` };
69
76
  };
70
77
 
71
- const task_handle_database_consistency = async (options, res) => {
72
- // this header to response with chunks data
78
+ const task_handle_database_consistency = async (options: any, res: any) => {
73
79
  res.writeHead(200, {
74
80
  'Content-Type': 'text/event-stream',
75
81
  'Cache-Control': 'no-cache',
76
82
  'Content-Encoding': 'none',
77
83
  'x-no-compression': 'true',
78
84
  });
79
- // res.setHeader('x-no-compression', 'true');
80
85
  try {
81
86
  const startTime = process.hrtime();
82
87
  taskOutput('- starting...\n', res);
83
88
  taskOutput('---------------------------------', res);
84
89
  taskOutput('STAGE #1: Calculate Common stats', res);
85
90
  taskOutput('get runs data', res);
86
- const allRunsBefore = await Run.find()
87
- .exec();
91
+ const allRunsBefore = await Run.find().exec();
88
92
  taskOutput('get suites data', res);
89
- const allSuitesBefore = await Suite.find()
90
- .exec();
93
+ const allSuitesBefore = await Suite.find().exec();
91
94
  taskOutput('get tests data', res);
92
- const allTestsBefore = await Test.find()
93
- .lean()
94
- .exec();
95
+ const allTestsBefore = await Test.find().lean().exec();
95
96
  taskOutput('get checks data', res);
96
- const allChecksBefore = await Check.find()
97
- .lean()
98
- .exec();
97
+ const allChecksBefore = await Check.find().lean().exec();
99
98
  taskOutput('get snapshots data', res);
100
- const allSnapshotsBefore = await Snapshot.find()
101
- .lean()
102
- .exec();
99
+ const allSnapshotsBefore = await Snapshot.find().lean().exec();
103
100
  taskOutput('get files data', res);
104
- const allFilesBefore = (await fs.readdir(config.defaultImagesPath, { withFileTypes: true }))
105
- .filter((item) => !item.isDirectory())
106
- .map(((x) => x.name))
107
- .filter((x) => x.includes('.png'));
101
+ const allFilesBefore = (await fsp.readdir(config.defaultImagesPath, { withFileTypes: true }))
102
+ .filter((item: any) => !item.isDirectory())
103
+ .map((x: any) => x.name)
104
+ .filter((x: any) => x.includes('.png'));
108
105
 
109
106
  taskOutput('-----------------------------', res);
110
- const beforeStatTable = stringTable.create(
111
- [
112
- { item: 'suites', count: allSuitesBefore.length },
113
- { item: 'runs', count: allRunsBefore.length },
114
- { item: 'tests', count: allTestsBefore.length },
115
- { item: 'checks', count: allChecksBefore.length },
116
- { item: 'snapshots', count: allSnapshotsBefore.length },
117
- { item: 'files', count: allFilesBefore.length },
118
- ]
119
- );
107
+ const beforeStatTable = stringTable.create([
108
+ { item: 'suites', count: allSuitesBefore.length },
109
+ { item: 'runs', count: allRunsBefore.length },
110
+ { item: 'tests', count: allTestsBefore.length },
111
+ { item: 'checks', count: allChecksBefore.length },
112
+ { item: 'snapshots', count: allSnapshotsBefore.length },
113
+ { item: 'files', count: allFilesBefore.length },
114
+ ]);
120
115
  res.flush();
121
116
  taskOutput(beforeStatTable, res);
122
117
 
123
118
  taskOutput('---------------------------------', res);
124
119
  taskOutput('STAGE #2: Calculate Inconsistent Items', res);
125
120
  taskOutput('> calculate abandoned snapshots', res);
126
- // eslint-disable-next-line
127
- const abandonedSnapshots = allSnapshotsBefore.filter((sn) => {
128
- return !fss.existsSync(`${config.defaultImagesPath}/${sn.filename}`);
129
- });
121
+ const abandonedSnapshots = allSnapshotsBefore.filter((sn: any) => !fs.existsSync(`${config.defaultImagesPath}/${sn.filename}`));
130
122
 
131
123
  taskOutput('> calculate abandoned files', res);
132
- const snapshotsUniqueFiles = Array.from(new Set(allSnapshotsBefore.map((x) => x.filename)));
133
- const abandonedFiles = [];
124
+ const snapshotsUniqueFiles = Array.from(new Set(allSnapshotsBefore.map((x: any) => x.filename)));
125
+ const abandonedFiles: any[] = [];
134
126
  const progress = new ProgressBar(allFilesBefore.length);
135
- // eslint-disable-next-line no-restricted-syntax
136
127
  for (const [index, file] of allFilesBefore.entries()) {
137
128
  setTimeout(() => {
138
129
  progress.writeIfChange(index, allFilesBefore.length, taskOutput, res);
139
130
  }, 10);
140
131
 
141
- if (!(snapshotsUniqueFiles.includes(file.toString()))) {
132
+ if (!snapshotsUniqueFiles.includes(file.toString())) {
142
133
  abandonedFiles.push(file);
143
134
  }
144
135
  }
145
- // we don't remove the abandoned checks yet, need more statistics
146
136
  taskOutput('> calculate abandoned checks', res);
147
- const allSnapshotsBeforeIds = allSnapshotsBefore.map((x) => x._id.valueOf());
137
+ const allSnapshotsBeforeIds = allSnapshotsBefore.map((x: any) => x._id.valueOf());
148
138
 
149
- const allChecksBeforeLight = allChecksBefore.map((x) => ({
139
+ const allChecksBeforeLight = allChecksBefore.map((x: any) => ({
150
140
  _id: x._id.valueOf(), baselineId: x.baselineId.valueOf(), actualSnapshotId: x.actualSnapshotId.valueOf(),
151
141
  }));
152
- const abandonedChecks = [];
142
+ const abandonedChecks: any[] = [];
153
143
  const progressChecks = new ProgressBar(allChecksBefore.length);
154
- // eslint-disable-next-line no-restricted-syntax
155
144
  for (const [index, check] of allChecksBeforeLight.entries()) {
156
145
  progressChecks.writeIfChange(index, allChecksBeforeLight.length, taskOutput, res);
157
- if (
158
- !(allSnapshotsBeforeIds.includes(check.baselineId))
159
- || !(allSnapshotsBeforeIds.includes(check.actualSnapshotId.valueOf()))
160
- ) {
146
+ if (!allSnapshotsBeforeIds.includes(check.baselineId) || !allSnapshotsBeforeIds.includes(check.actualSnapshotId.valueOf())) {
161
147
  abandonedChecks.push(check._id.valueOf());
162
148
  }
163
149
  }
164
150
 
165
151
  taskOutput('> calculate empty tests', res);
166
- const checksUniqueTests = (await Check.find()
167
- .lean()
168
- .distinct('test')
169
- .exec())
170
- .map((x) => x.valueOf());
171
-
172
- const emptyTests = [];
152
+ const checksUniqueTests = (await Check.find().lean().distinct('test').exec()).map((x: any) => x.valueOf());
173
153
 
174
- // eslint-disable-next-line no-restricted-syntax,no-unused-vars
154
+ const emptyTests: any[] = [];
155
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
175
156
  for (const [index, test] of allTestsBefore.entries()) {
176
157
  if (!checksUniqueTests.includes(test._id.valueOf())) {
177
158
  emptyTests.push(test._id.valueOf());
@@ -180,14 +161,10 @@ const task_handle_database_consistency = async (options, res) => {
180
161
 
181
162
  taskOutput('> calculate empty runs', res);
182
163
 
183
- const checksUniqueRuns = (await Check.find()
184
- .distinct('run')
185
- .exec()).map((x) => x.valueOf());
164
+ const checksUniqueRuns = (await Check.find().distinct('run').exec()).map((x: any) => x.valueOf());
186
165
 
187
- const emptyRuns = [];
188
- // eslint-disable-next-line no-restricted-syntax
166
+ const emptyRuns: any[] = [];
189
167
  for (const run of allRunsBefore) {
190
- // eslint-disable-next-line no-await-in-loop
191
168
  if (!checksUniqueRuns.includes(run._id.valueOf())) {
192
169
  emptyRuns.push(run._id.valueOf());
193
170
  }
@@ -195,30 +172,24 @@ const task_handle_database_consistency = async (options, res) => {
195
172
 
196
173
  taskOutput('> calculate empty suites', res);
197
174
 
198
- const checksUniqueSuites = (await Check.find()
199
- .distinct('suite')
200
- .exec()).map((x) => x.valueOf());
175
+ const checksUniqueSuites = (await Check.find().distinct('suite').exec()).map((x: any) => x.valueOf());
201
176
 
202
- const emptySuites = [];
203
- // eslint-disable-next-line no-restricted-syntax
177
+ const emptySuites: any[] = [];
204
178
  for (const suite of allSuitesBefore) {
205
- // eslint-disable-next-line no-await-in-loop
206
179
  if (!checksUniqueSuites.includes(suite._id.valueOf())) {
207
180
  emptySuites.push(suite._id.valueOf());
208
181
  }
209
182
  }
210
183
  taskOutput('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', res);
211
184
  taskOutput('Current inconsistent items:', res);
212
- const inconsistentStatTable = stringTable.create(
213
- [
214
- { item: 'empty suites', count: emptySuites.length },
215
- { item: 'empty runs', count: emptyRuns.length },
216
- { item: 'empty tests', count: emptyTests.length },
217
- { item: 'abandoned checks', count: abandonedChecks.length },
218
- { item: 'abandoned snapshots', count: abandonedSnapshots.length },
219
- { item: 'abandoned files', count: abandonedFiles.length },
220
- ]
221
- );
185
+ const inconsistentStatTable = stringTable.create([
186
+ { item: 'empty suites', count: emptySuites.length },
187
+ { item: 'empty runs', count: emptyRuns.length },
188
+ { item: 'empty tests', count: emptyTests.length },
189
+ { item: 'abandoned checks', count: abandonedChecks.length },
190
+ { item: 'abandoned snapshots', count: abandonedSnapshots.length },
191
+ { item: 'abandoned files', count: abandonedFiles.length },
192
+ ]);
222
193
  taskOutput(inconsistentStatTable, res);
223
194
 
224
195
  if (options.clean) {
@@ -236,41 +207,39 @@ const task_handle_database_consistency = async (options, res) => {
236
207
  taskOutput('> remove abandoned snapshots', res);
237
208
  await Snapshot.deleteMany({ _id: { $in: abandonedSnapshots } });
238
209
  taskOutput('> remove abandoned files', res);
239
- await Promise.all(abandonedFiles.map((filename) => fs.unlink(`${config.defaultImagesPath}/${filename}`)));
240
- const allFilesAfter = fss.readdirSync(config.defaultImagesPath, { withFileTypes: true })
241
- .filter((item) => !item.isDirectory())
242
- .map(((x) => x.name))
243
- .filter((x) => x.includes('.png'));
210
+ await Promise.all(abandonedFiles.map((filename) => fsp.unlink(`${config.defaultImagesPath}/${filename}`)));
211
+ const allFilesAfter = fs.readdirSync(config.defaultImagesPath, { withFileTypes: true })
212
+ .filter((item: any) => !item.isDirectory())
213
+ .map((x: any) => x.name)
214
+ .filter((x: any) => x.includes('.png'));
244
215
 
245
216
  taskOutput('STAGE #4: Calculate Common stats after cleaning', res);
246
217
  taskOutput('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', res);
247
218
  taskOutput('Current items:', res);
248
- const afterStatTable = stringTable.create(
249
- [
250
- { item: 'suites', count: await Suite.countDocuments() },
251
- { item: 'runs', count: await Run.countDocuments() },
252
- { item: 'tests', count: await Test.countDocuments() },
253
- { item: 'checks', count: await Check.countDocuments() },
254
- { item: 'snapshots', count: await Snapshot.countDocuments() },
255
- { item: 'files', count: allFilesAfter.length },
256
- ]
257
- );
219
+ const afterStatTable = stringTable.create([
220
+ { item: 'suites', count: await Suite.countDocuments() },
221
+ { item: 'runs', count: await Run.countDocuments() },
222
+ { item: 'tests', count: await Test.countDocuments() },
223
+ { item: 'checks', count: await Check.countDocuments() },
224
+ { item: 'snapshots', count: await Snapshot.countDocuments() },
225
+ { item: 'files', count: allFilesAfter.length },
226
+ ]);
258
227
  taskOutput(afterStatTable, res);
259
228
  }
260
229
 
261
230
  const elapsedSeconds = parseHrtimeToSeconds(process.hrtime(startTime));
262
231
  taskOutput(`> Done in ${elapsedSeconds} seconds, ${elapsedSeconds / 60} min`, res);
263
232
  taskOutput('- end...\n', res);
264
- } catch (e) {
265
- log.error(e.stack || e.toString());
266
- taskOutput(e.stack || e, res);
233
+ } catch (e: unknown) {
234
+ const errMsg = e instanceof Error ? e.message : String(e);
235
+ log.error(errMsg);
236
+ taskOutput(errMsg, res);
267
237
  } finally {
268
238
  res.end();
269
239
  }
270
240
  };
271
241
 
272
- const task_remove_old_logs = async (options, res) => {
273
- // this header to response with chunks data
242
+ const task_remove_old_logs = async (options: any, res: any) => {
274
243
  res.writeHead(200, {
275
244
  'Content-Type': 'text/event-stream',
276
245
  'Cache-Control': 'no-cache',
@@ -278,21 +247,14 @@ const task_remove_old_logs = async (options, res) => {
278
247
  });
279
248
  const trashHoldDate = subDays(new Date(), parseInt(options.days, 10));
280
249
  const filter = { timestamp: { $lt: trashHoldDate } };
281
- const allLogsCountBefore = await Log.find({})
282
- .countDocuments();
283
- const oldLogsCount = await Log.find(filter)
284
- .countDocuments();
250
+ const allLogsCountBefore = await Log.find({}).countDocuments();
251
+ const oldLogsCount = await Log.find(filter).countDocuments();
285
252
  taskOutput(`- the count of all documents is: '${allLogsCountBefore}'\n`, res);
286
253
  taskOutput(`- the count of documents to be removed is: '${oldLogsCount}'\n`, res);
287
254
  if (options.statistics === 'false') {
288
- taskOutput(
289
- `- will remove all logs older that: '${options.days}' days,`
290
- + ` '${dateToISO8601(trashHoldDate)}'\n`,
291
- res
292
- );
255
+ taskOutput(`- will remove all logs older that: '${options.days}' days, '${dateToISO8601(trashHoldDate)}'\n`, res);
293
256
  await Log.deleteMany(filter);
294
- const allLogsCountAfter = await Log.find({})
295
- .countDocuments();
257
+ const allLogsCountAfter = await Log.find({}).countDocuments();
296
258
  taskOutput(`- the count of all documents now is: '${allLogsCountAfter}'\n`, res);
297
259
  }
298
260
 
@@ -300,8 +262,7 @@ const task_remove_old_logs = async (options, res) => {
300
262
  res.end();
301
263
  };
302
264
 
303
- const task_handle_old_checks = async (options, res) => {
304
- // this header to response with chunks data
265
+ const task_handle_old_checks = async (options: any, res: any) => {
305
266
  res.writeHead(200, {
306
267
  'Content-Type': 'text/event-stream',
307
268
  'Cache-Control': 'no-cache',
@@ -316,66 +277,51 @@ const task_handle_old_checks = async (options, res) => {
316
277
  const trashHoldDate = subDays(new Date(), parseInt(options.days, 10));
317
278
 
318
279
  taskOutput('> get all checks data', res);
319
- const allChecksBefore = await Check.find()
320
- .lean()
321
- .exec();
280
+ const allChecksBefore = await Check.find().lean().exec();
322
281
  taskOutput('> get snapshots data', res);
323
- const allSnapshotsBefore = await Snapshot.find()
324
- .lean()
325
- .exec();
282
+ const allSnapshotsBefore = await Snapshot.find().lean().exec();
326
283
  taskOutput('> get files data', res);
327
- const allFilesBefore = (await fs.readdir(config.defaultImagesPath, { withFileTypes: true }))
328
- .filter((item) => !item.isDirectory())
329
- .map(((x) => x.name))
330
- .filter((x) => x.includes('.png'));
284
+ const allFilesBefore = (await fsp.readdir(config.defaultImagesPath, { withFileTypes: true }))
285
+ .filter((item: any) => !item.isDirectory())
286
+ .map((x: any) => x.name)
287
+ .filter((x: any) => x.includes('.png'));
331
288
 
332
289
  taskOutput('> get old checks data', res);
333
- const oldChecks = await Check.find({ createdDate: { $lt: trashHoldDate } })
334
- .lean()
335
- .exec();
290
+ const oldChecks = await Check.find({ createdDate: { $lt: trashHoldDate } }).lean().exec();
336
291
 
337
292
  taskOutput('>>> collect all baselineIds for old Checks ', res);
338
- const oldSnapshotsBaselineIdIds = oldChecks.map((x) => x.baselineId)
339
- .filter((x) => x);
293
+ const oldSnapshotsBaselineIdIds = oldChecks.map((x: any) => x.baselineId).filter((x: any) => x);
340
294
 
341
295
  taskOutput('>>> collect all actualSnapshotId for old Checks ', res);
342
- const oldSnapshotsActualSnapshotIdIds = oldChecks.map((x) => x.actualSnapshotId)
343
- .filter((x) => x);
296
+ const oldSnapshotsActualSnapshotIdIds = oldChecks.map((x: any) => x.actualSnapshotId).filter((x: any) => x);
344
297
 
345
298
  taskOutput('>>> collect all diffId for old Checks ', res);
346
- const oldSnapshotsDiffIds = oldChecks.map((x) => x.diffId)
347
- .filter((x) => x);
299
+ const oldSnapshotsDiffIds = oldChecks.map((x: any) => x.diffId).filter((x: any) => x);
348
300
 
349
301
  taskOutput('>>> calculate all unique snapshots ids for old Checks ', res);
350
302
 
351
- const allOldSnapshotsUniqueIds = Array.from(
352
- new Set([...oldSnapshotsBaselineIdIds, ...oldSnapshotsActualSnapshotIdIds, ...oldSnapshotsDiffIds])
353
- )
354
- .map((x) => x.valueOf());
303
+ const allOldSnapshotsUniqueIds = Array.from(new Set([...oldSnapshotsBaselineIdIds, ...oldSnapshotsActualSnapshotIdIds, ...oldSnapshotsDiffIds]))
304
+ .map((x: any) => x.valueOf());
355
305
 
356
306
  taskOutput('>>> collect all old snapshots', res);
357
- const oldSnapshots = await Snapshot.find({ _id: { $in: allOldSnapshotsUniqueIds } })
358
- .lean();
359
-
360
- const outTable = stringTable.create(
361
- [
362
- { item: 'all checks', count: allChecksBefore.length },
363
- { item: 'all snapshots', count: allSnapshotsBefore.length },
364
- { item: 'all files', count: allFilesBefore.length },
365
- { item: `checks older than: '${options.days}' days`, count: oldChecks.length },
366
- { item: 'old snapshots baseline ids', count: oldSnapshotsBaselineIdIds.length },
367
- { item: 'old snapshots actual snapshotId', count: oldSnapshotsActualSnapshotIdIds.length },
368
- { item: 'old snapshots diffIds', count: oldSnapshotsDiffIds.length },
369
- { item: 'all old snapshots unique Ids', count: allOldSnapshotsUniqueIds.length },
370
- { item: 'all old snapshots', count: oldSnapshots.length },
371
- ]
372
- );
307
+ const oldSnapshots = await Snapshot.find({ _id: { $in: allOldSnapshotsUniqueIds } }).lean();
308
+
309
+ const outTable = stringTable.create([
310
+ { item: 'all checks', count: allChecksBefore.length },
311
+ { item: 'all snapshots', count: allSnapshotsBefore.length },
312
+ { item: 'all files', count: allFilesBefore.length },
313
+ { item: `checks older than: '${options.days}' days`, count: oldChecks.length },
314
+ { item: 'old snapshots baseline ids', count: oldSnapshotsBaselineIdIds.length },
315
+ { item: 'old snapshots actual snapshotId', count: oldSnapshotsActualSnapshotIdIds.length },
316
+ { item: 'old snapshots diffIds', count: oldSnapshotsDiffIds.length },
317
+ { item: 'all old snapshots unique Ids', count: allOldSnapshotsUniqueIds.length },
318
+ { item: 'all old snapshots', count: oldSnapshots.length },
319
+ ]);
373
320
 
374
321
  taskOutput(outTable, res);
375
322
 
376
323
  if (options.remove === 'true') {
377
- taskOutput(`STAGE #2 Remove checks that older that: '${options.days}' days,`
378
- + ` '${dateToISO8601(trashHoldDate)}'\n`, res);
324
+ taskOutput(`STAGE #2 Remove checks that older that: '${options.days}' days, '${dateToISO8601(trashHoldDate)}'\n`, res);
379
325
 
380
326
  taskOutput('> remove checks', res);
381
327
  const checkRemovingResult = await Check.deleteMany({ createdDate: { $lt: trashHoldDate } });
@@ -385,17 +331,13 @@ const task_handle_old_checks = async (options, res) => {
385
331
 
386
332
  taskOutput('>> collect data to removing', res);
387
333
  taskOutput('>>> get all baselines snapshots id`s', res);
388
- const baselinesSnapshotsIds = (await Baseline.find({})
389
- .distinct('snapshootId'));
334
+ const baselinesSnapshotsIds = (await Baseline.find({}).distinct('snapshootId'));
390
335
 
391
- // get baselineIds after removing
392
336
  taskOutput('>>> get all checks snapshots baselineId', res);
393
- const checksSnapshotsBaselineId = (await Check.find({})
394
- .distinct('baselineId'));
337
+ const checksSnapshotsBaselineId = (await Check.find({}).distinct('baselineId'));
395
338
 
396
339
  taskOutput('>>> get all checks snapshots actualSnapshotId', res);
397
- const checksSnapshotsActualSnapshotId = (await Check.find({})
398
- .distinct('actualSnapshotId'));
340
+ const checksSnapshotsActualSnapshotId = (await Check.find({}).distinct('actualSnapshotId'));
399
341
 
400
342
  taskOutput('>> remove baselines snapshots', res);
401
343
 
@@ -411,8 +353,6 @@ const task_handle_old_checks = async (options, res) => {
411
353
  taskOutput(`>>> removed: '${removedByBaselineSnapshotsResult.deletedCount}'`, res);
412
354
 
413
355
  taskOutput('>> remove actual snapshots', res);
414
- // here we give all old checks and then exclude all baselines
415
- // and all checks related to new checks with actual and baseline snapshots with such baselineId
416
356
  taskOutput('>> remove all old snapshots that not related to new baseline and check items', res);
417
357
  const removedByActualSnapshotsResult = await Snapshot.deleteMany({
418
358
  $and: [
@@ -434,66 +374,59 @@ const task_handle_old_checks = async (options, res) => {
434
374
 
435
375
  taskOutput('> remove files', res);
436
376
  taskOutput('>>> collect all old snapshots filenames', res);
437
- const oldSnapshotsUniqueFilenames = Array.from(new Set(oldSnapshots.map((x) => x.filename)));
377
+ const oldSnapshotsUniqueFilenames = Array.from(new Set(oldSnapshots.map((x: any) => x.filename)));
438
378
  taskOutput(`>> found: ${oldSnapshotsUniqueFilenames.length}`, res);
439
379
 
440
380
  taskOutput('> get all current snapshots filenames', res);
441
- const allCurrentSnapshotsFilenames = await Snapshot.find()
442
- .distinct('filename')
443
- .exec();
381
+ const allCurrentSnapshotsFilenames = await Snapshot.find().distinct('filename').exec();
444
382
 
445
383
  taskOutput('>> calculate interception between all current snapshot filenames and old shapshots filenames', res);
446
- const arrayIntersection = (arr1, arr2) => arr1.filter((x) => arr2.includes(x));
384
+ const arrayIntersection = (arr1: any, arr2: any) => arr1.filter((x: any) => arr2.includes(x));
447
385
  const filesInterception = arrayIntersection(allCurrentSnapshotsFilenames, oldSnapshotsUniqueFilenames);
448
386
  taskOutput(`>> found: ${filesInterception.length}`, res);
449
387
 
450
388
  taskOutput('>> calculate filenames to remove', res);
451
- const arrayDiff = (arr1, arr2) => arr1.filter((x) => !arr2.includes(x));
389
+ const arrayDiff = (arr1: any, arr2: any) => arr1.filter((x: any) => !arr2.includes(x));
452
390
  const filesToDelete = arrayDiff(oldSnapshotsUniqueFilenames, filesInterception);
453
391
  taskOutput(`>> found: ${filesToDelete.length}`, res);
454
392
 
455
393
  taskOutput(`>> remove these files: ${filesToDelete.length}`, res);
456
- await Promise.all(filesToDelete.map((filename) => fs.unlink(`${config.defaultImagesPath}/${filename}`)));
394
+ await Promise.all(filesToDelete.map((filename: string) => fsp.unlink(`${config.defaultImagesPath}/${filename}`)));
457
395
  taskOutput(`>> done: ${filesToDelete.length}`, res);
458
396
 
459
397
  taskOutput('STAGE #3 Calculate common stats after Removing', res);
460
398
 
461
399
  taskOutput('> get all checks data', res);
462
- const allChecksAfter = await Check.find()
463
- .lean()
464
- .exec();
400
+ const allChecksAfter = await Check.find().lean().exec();
465
401
  taskOutput('> get snapshots data', res);
466
- const allSnapshotsAfter = await Snapshot.find()
467
- .lean()
468
- .exec();
402
+ const allSnapshotsAfter = await Snapshot.find().lean().exec();
469
403
  taskOutput('> get files data', res);
470
- const allFilesAfter = (await fs.readdir(config.defaultImagesPath, { withFileTypes: true }))
471
- .filter((item) => !item.isDirectory())
472
- .map(((x) => x.name))
473
- .filter((x) => x.includes('.png'));
474
-
475
- const outTableAfter = stringTable.create(
476
- [
477
- { item: 'all checks', count: allChecksAfter.length },
478
- { item: 'all snapshots', count: allSnapshotsAfter.length },
479
- { item: 'all files', count: allFilesAfter.length },
480
- ]
481
- );
404
+ const allFilesAfter = (await fsp.readdir(config.defaultImagesPath, { withFileTypes: true }))
405
+ .filter((item: any) => !item.isDirectory())
406
+ .map((x: any) => x.name)
407
+ .filter((x: any) => x.includes('.png'));
408
+
409
+ const outTableAfter = stringTable.create([
410
+ { item: 'all checks', count: allChecksAfter.length },
411
+ { item: 'all snapshots', count: allSnapshotsAfter.length },
412
+ { item: 'all files', count: allFilesAfter.length },
413
+ ]);
482
414
 
483
415
  taskOutput(outTableAfter, res);
484
416
  }
485
417
  const elapsedSeconds = parseHrtimeToSeconds(process.hrtime(startTime));
486
418
 
487
419
  taskOutput(`> done in ${elapsedSeconds} seconds ${elapsedSeconds / 60} min`, res);
488
- } catch (e) {
489
- log.error(e.stack.toString() || e);
490
- taskOutput(e.stack || e, res);
420
+ } catch (e: unknown) {
421
+ const errMsg = e instanceof Error ? e.message : String(e);
422
+ log.error(errMsg);
423
+ taskOutput(errMsg, res);
491
424
  } finally {
492
425
  res.end();
493
426
  }
494
427
  };
495
- const task_test = async (options = 'empty', req, res) => {
496
- // this header to response with chunks data
428
+
429
+ const task_test = async (options = 'empty', req: ExtRequest, res: Response) => {
497
430
  res.writeHead(200, {
498
431
  'Content-Type': 'text/event-stream',
499
432
  'Cache-Control': 'no-cache',
@@ -501,31 +434,27 @@ const task_test = async (options = 'empty', req, res) => {
501
434
  });
502
435
 
503
436
  const x = 1000;
504
- const interval = 30;
437
+ // const interval = 30;
505
438
  let isAborted = false;
506
439
 
507
- req.on(
508
- 'close',
509
- () => {
510
- isAborted = true;
511
- }
512
- );
440
+ req.on('close', () => {
441
+ isAborted = true;
442
+ });
513
443
 
514
444
  for (let i = 0; i < x; i += 1) {
515
- // eslint-disable-next-line no-await-in-loop
516
- await new Promise((r) => setTimeout(() => r(), interval));
445
+ // await new Promise((r) => setTimeout(() => r(), interval));
517
446
  taskOutput(`- Task Output: '${i}', options: ${options}\n`, res);
518
447
  if (isAborted) {
519
448
  taskOutput('the task was aborted\n', res);
520
- log.warn('the task was aborted', $this);
521
- res.flush();
449
+ log.warn('the task was aborted');
450
+ (res as any).flush();
522
451
  return res.end();
523
452
  }
524
453
  }
525
454
  return res.end();
526
455
  };
527
456
 
528
- module.exports = {
457
+ export {
529
458
  task_test,
530
459
  task_handle_old_checks,
531
460
  task_handle_database_consistency,