@prosopo/provider 2.1.6 → 2.1.7

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 (263) hide show
  1. package/package.json +11 -11
  2. package/.dockerignore +0 -5
  3. package/dist/api/admin.d.ts +0 -4
  4. package/dist/api/admin.d.ts.map +0 -1
  5. package/dist/api/admin.js +0 -36
  6. package/dist/api/admin.js.map +0 -1
  7. package/dist/api/authMiddleware.d.ts +0 -6
  8. package/dist/api/authMiddleware.d.ts.map +0 -1
  9. package/dist/api/authMiddleware.js +0 -66
  10. package/dist/api/authMiddleware.js.map +0 -1
  11. package/dist/api/captcha.d.ts +0 -4
  12. package/dist/api/captcha.d.ts.map +0 -1
  13. package/dist/api/captcha.js +0 -299
  14. package/dist/api/captcha.js.map +0 -1
  15. package/dist/api/captchaScheduler.d.ts +0 -4
  16. package/dist/api/captchaScheduler.d.ts.map +0 -1
  17. package/dist/api/captchaScheduler.js +0 -17
  18. package/dist/api/captchaScheduler.js.map +0 -1
  19. package/dist/api/errorHandler.d.ts +0 -11
  20. package/dist/api/errorHandler.d.ts.map +0 -1
  21. package/dist/api/errorHandler.js +0 -42
  22. package/dist/api/errorHandler.js.map +0 -1
  23. package/dist/api/verify.d.ts +0 -4
  24. package/dist/api/verify.d.ts.map +0 -1
  25. package/dist/api/verify.js +0 -98
  26. package/dist/api/verify.js.map +0 -1
  27. package/dist/batch/commitments.d.ts +0 -24
  28. package/dist/batch/commitments.d.ts.map +0 -1
  29. package/dist/batch/commitments.js +0 -130
  30. package/dist/batch/commitments.js.map +0 -1
  31. package/dist/batch/index.d.ts +0 -2
  32. package/dist/batch/index.d.ts.map +0 -1
  33. package/dist/batch/index.js +0 -2
  34. package/dist/batch/index.js.map +0 -1
  35. package/dist/cjs/api/admin.cjs +0 -37
  36. package/dist/cjs/api/authMiddleware.cjs +0 -66
  37. package/dist/cjs/api/captcha.cjs +0 -380
  38. package/dist/cjs/api/errorHandler.cjs +0 -42
  39. package/dist/cjs/api/verify.cjs +0 -120
  40. package/dist/cjs/index.cjs +0 -25
  41. package/dist/cjs/schedulers/captchaScheduler.cjs +0 -33
  42. package/dist/cjs/schedulers/getClientList.cjs +0 -31
  43. package/dist/cjs/tasks/client/clientTasks.cjs +0 -148
  44. package/dist/cjs/tasks/dataset/datasetTasks.cjs +0 -30
  45. package/dist/cjs/tasks/dataset/datasetTasksUtils.cjs +0 -34
  46. package/dist/cjs/tasks/detection/decodePayload.cjs +0 -549
  47. package/dist/cjs/tasks/detection/getBotScore.cjs +0 -18
  48. package/dist/cjs/tasks/imgCaptcha/imgCaptchaTasks.cjs +0 -313
  49. package/dist/cjs/tasks/imgCaptcha/imgCaptchaTasksUtils.cjs +0 -25
  50. package/dist/cjs/tasks/index.cjs +0 -4
  51. package/dist/cjs/tasks/powCaptcha/powTasks.cjs +0 -134
  52. package/dist/cjs/tasks/powCaptcha/powTasksUtils.cjs +0 -26
  53. package/dist/cjs/tasks/tasks.cjs +0 -40
  54. package/dist/cjs/util.cjs +0 -45
  55. package/dist/index.d.ts +0 -10
  56. package/dist/index.d.ts.map +0 -1
  57. package/dist/index.js +0 -10
  58. package/dist/index.js.map +0 -1
  59. package/dist/scheduler.d.ts +0 -4
  60. package/dist/scheduler.d.ts.map +0 -1
  61. package/dist/scheduler.js +0 -21
  62. package/dist/scheduler.js.map +0 -1
  63. package/dist/schedulers/captchaScheduler.d.ts +0 -4
  64. package/dist/schedulers/captchaScheduler.d.ts.map +0 -1
  65. package/dist/schedulers/captchaScheduler.js +0 -28
  66. package/dist/schedulers/captchaScheduler.js.map +0 -1
  67. package/dist/schedulers/getClientList.d.ts +0 -4
  68. package/dist/schedulers/getClientList.d.ts.map +0 -1
  69. package/dist/schedulers/getClientList.js +0 -28
  70. package/dist/schedulers/getClientList.js.map +0 -1
  71. package/dist/tasks/client/clientTasks.d.ts +0 -13
  72. package/dist/tasks/client/clientTasks.d.ts.map +0 -1
  73. package/dist/tasks/client/clientTasks.js +0 -87
  74. package/dist/tasks/client/clientTasks.js.map +0 -1
  75. package/dist/tasks/dataset/datasetTasks.d.ts +0 -13
  76. package/dist/tasks/dataset/datasetTasks.d.ts.map +0 -1
  77. package/dist/tasks/dataset/datasetTasks.js +0 -19
  78. package/dist/tasks/dataset/datasetTasks.js.map +0 -1
  79. package/dist/tasks/dataset/datasetTasksUtils.d.ts +0 -3
  80. package/dist/tasks/dataset/datasetTasksUtils.d.ts.map +0 -1
  81. package/dist/tasks/dataset/datasetTasksUtils.js +0 -34
  82. package/dist/tasks/dataset/datasetTasksUtils.js.map +0 -1
  83. package/dist/tasks/detection/decodePayload.d.ts +0 -3
  84. package/dist/tasks/detection/decodePayload.d.ts.map +0 -1
  85. package/dist/tasks/detection/decodePayload.js +0 -302
  86. package/dist/tasks/detection/decodePayload.js.map +0 -1
  87. package/dist/tasks/detection/getBotScore.d.ts +0 -2
  88. package/dist/tasks/detection/getBotScore.d.ts.map +0 -1
  89. package/dist/tasks/detection/getBotScore.js +0 -17
  90. package/dist/tasks/detection/getBotScore.js.map +0 -1
  91. package/dist/tasks/imgCaptcha/imgCaptchaTasks.d.ts +0 -29
  92. package/dist/tasks/imgCaptcha/imgCaptchaTasks.d.ts.map +0 -1
  93. package/dist/tasks/imgCaptcha/imgCaptchaTasks.js +0 -242
  94. package/dist/tasks/imgCaptcha/imgCaptchaTasks.js.map +0 -1
  95. package/dist/tasks/imgCaptcha/imgCaptchaTasksUtils.d.ts +0 -7
  96. package/dist/tasks/imgCaptcha/imgCaptchaTasksUtils.d.ts.map +0 -1
  97. package/dist/tasks/imgCaptcha/imgCaptchaTasksUtils.js +0 -18
  98. package/dist/tasks/imgCaptcha/imgCaptchaTasksUtils.js.map +0 -1
  99. package/dist/tasks/index.d.ts +0 -2
  100. package/dist/tasks/index.d.ts.map +0 -1
  101. package/dist/tasks/index.js +0 -2
  102. package/dist/tasks/index.js.map +0 -1
  103. package/dist/tasks/powCaptcha/powTasks.d.ts +0 -13
  104. package/dist/tasks/powCaptcha/powTasks.d.ts.map +0 -1
  105. package/dist/tasks/powCaptcha/powTasks.js +0 -84
  106. package/dist/tasks/powCaptcha/powTasks.js.map +0 -1
  107. package/dist/tasks/powCaptcha/powTasksUtils.d.ts +0 -3
  108. package/dist/tasks/powCaptcha/powTasksUtils.d.ts.map +0 -1
  109. package/dist/tasks/powCaptcha/powTasksUtils.js +0 -22
  110. package/dist/tasks/powCaptcha/powTasksUtils.js.map +0 -1
  111. package/dist/tasks/tasks.d.ts +0 -22
  112. package/dist/tasks/tasks.d.ts.map +0 -1
  113. package/dist/tasks/tasks.js +0 -24
  114. package/dist/tasks/tasks.js.map +0 -1
  115. package/dist/tests/accounts.d.ts +0 -12
  116. package/dist/tests/accounts.d.ts.map +0 -1
  117. package/dist/tests/accounts.js +0 -35
  118. package/dist/tests/accounts.js.map +0 -1
  119. package/dist/tests/contract/helpers.test.d.ts +0 -6
  120. package/dist/tests/contract/helpers.test.d.ts.map +0 -1
  121. package/dist/tests/contract/helpers.test.js +0 -54
  122. package/dist/tests/contract/helpers.test.js.map +0 -1
  123. package/dist/tests/dataUtils/DatabaseAccounts.d.ts +0 -35
  124. package/dist/tests/dataUtils/DatabaseAccounts.d.ts.map +0 -1
  125. package/dist/tests/dataUtils/DatabaseAccounts.js +0 -84
  126. package/dist/tests/dataUtils/DatabaseAccounts.js.map +0 -1
  127. package/dist/tests/dataUtils/DatabasePopulator.d.ts +0 -73
  128. package/dist/tests/dataUtils/DatabasePopulator.d.ts.map +0 -1
  129. package/dist/tests/dataUtils/DatabasePopulator.js +0 -326
  130. package/dist/tests/dataUtils/DatabasePopulator.js.map +0 -1
  131. package/dist/tests/dataUtils/dapp-example-contract/dapp.json +0 -648
  132. package/dist/tests/dataUtils/dapp-example-contract/loadFiles.d.ts +0 -4
  133. package/dist/tests/dataUtils/dapp-example-contract/loadFiles.d.ts.map +0 -1
  134. package/dist/tests/dataUtils/dapp-example-contract/loadFiles.js +0 -27
  135. package/dist/tests/dataUtils/dapp-example-contract/loadFiles.js.map +0 -1
  136. package/dist/tests/dataUtils/funds.d.ts +0 -9
  137. package/dist/tests/dataUtils/funds.d.ts.map +0 -1
  138. package/dist/tests/dataUtils/funds.js +0 -105
  139. package/dist/tests/dataUtils/funds.js.map +0 -1
  140. package/dist/tests/dataUtils/populateDatabase.d.ts +0 -16
  141. package/dist/tests/dataUtils/populateDatabase.d.ts.map +0 -1
  142. package/dist/tests/dataUtils/populateDatabase.js +0 -72
  143. package/dist/tests/dataUtils/populateDatabase.js.map +0 -1
  144. package/dist/tests/getUser.d.ts +0 -4
  145. package/dist/tests/getUser.d.ts.map +0 -1
  146. package/dist/tests/getUser.js +0 -18
  147. package/dist/tests/getUser.js.map +0 -1
  148. package/dist/tests/index.d.ts +0 -2
  149. package/dist/tests/index.d.ts.map +0 -1
  150. package/dist/tests/index.js +0 -2
  151. package/dist/tests/index.js.map +0 -1
  152. package/dist/tests/integration/imgCaptcha.integration.test.d.ts +0 -2
  153. package/dist/tests/integration/imgCaptcha.integration.test.d.ts.map +0 -1
  154. package/dist/tests/integration/imgCaptcha.integration.test.js +0 -137
  155. package/dist/tests/integration/imgCaptcha.integration.test.js.map +0 -1
  156. package/dist/tests/integration/imgCaptcha.test.d.ts +0 -2
  157. package/dist/tests/integration/imgCaptcha.test.d.ts.map +0 -1
  158. package/dist/tests/integration/imgCaptcha.test.js +0 -103
  159. package/dist/tests/integration/imgCaptcha.test.js.map +0 -1
  160. package/dist/tests/integration/mocks/solvedTestCaptchas.d.ts +0 -32
  161. package/dist/tests/integration/mocks/solvedTestCaptchas.d.ts.map +0 -1
  162. package/dist/tests/integration/mocks/solvedTestCaptchas.js +0 -1046
  163. package/dist/tests/integration/mocks/solvedTestCaptchas.js.map +0 -1
  164. package/dist/tests/integration/powCaptcha.integration.test.d.ts +0 -2
  165. package/dist/tests/integration/powCaptcha.integration.test.d.ts.map +0 -1
  166. package/dist/tests/integration/powCaptcha.integration.test.js +0 -222
  167. package/dist/tests/integration/powCaptcha.integration.test.js.map +0 -1
  168. package/dist/tests/integration/powCaptcha.test.d.ts +0 -2
  169. package/dist/tests/integration/powCaptcha.test.d.ts.map +0 -1
  170. package/dist/tests/integration/powCaptcha.test.js +0 -133
  171. package/dist/tests/integration/powCaptcha.test.js.map +0 -1
  172. package/dist/tests/integration/registerSitekey.d.ts +0 -2
  173. package/dist/tests/integration/registerSitekey.d.ts.map +0 -1
  174. package/dist/tests/integration/registerSitekey.js +0 -28
  175. package/dist/tests/integration/registerSitekey.js.map +0 -1
  176. package/dist/tests/tasks/tasks.test.d.ts +0 -6
  177. package/dist/tests/tasks/tasks.test.d.ts.map +0 -1
  178. package/dist/tests/tasks/tasks.test.js +0 -636
  179. package/dist/tests/tasks/tasks.test.js.map +0 -1
  180. package/dist/tests/unit/api/authMiddleware.test.d.ts +0 -2
  181. package/dist/tests/unit/api/authMiddleware.test.d.ts.map +0 -1
  182. package/dist/tests/unit/api/authMiddleware.test.js +0 -87
  183. package/dist/tests/unit/api/authMiddleware.test.js.map +0 -1
  184. package/dist/tests/unit/api/authMiddleware.unit.test.d.ts +0 -2
  185. package/dist/tests/unit/api/authMiddleware.unit.test.d.ts.map +0 -1
  186. package/dist/tests/unit/api/authMiddleware.unit.test.js +0 -108
  187. package/dist/tests/unit/api/authMiddleware.unit.test.js.map +0 -1
  188. package/dist/tests/unit/api/captchaScheduler.test.d.ts +0 -2
  189. package/dist/tests/unit/api/captchaScheduler.test.d.ts.map +0 -1
  190. package/dist/tests/unit/api/captchaScheduler.test.js +0 -47
  191. package/dist/tests/unit/api/captchaScheduler.test.js.map +0 -1
  192. package/dist/tests/unit/api/errorHandler.test.d.ts +0 -2
  193. package/dist/tests/unit/api/errorHandler.test.d.ts.map +0 -1
  194. package/dist/tests/unit/api/errorHandler.test.js +0 -65
  195. package/dist/tests/unit/api/errorHandler.test.js.map +0 -1
  196. package/dist/tests/unit/api/errorHandler.unit.test.d.ts +0 -2
  197. package/dist/tests/unit/api/errorHandler.unit.test.d.ts.map +0 -1
  198. package/dist/tests/unit/api/errorHandler.unit.test.js +0 -100
  199. package/dist/tests/unit/api/errorHandler.unit.test.js.map +0 -1
  200. package/dist/tests/unit/schedulers/captchaScheduler.unit.test.d.ts +0 -2
  201. package/dist/tests/unit/schedulers/captchaScheduler.unit.test.d.ts.map +0 -1
  202. package/dist/tests/unit/schedulers/captchaScheduler.unit.test.js +0 -63
  203. package/dist/tests/unit/schedulers/captchaScheduler.unit.test.js.map +0 -1
  204. package/dist/tests/unit/tasks/client/clientTasks.unit.test.d.ts +0 -2
  205. package/dist/tests/unit/tasks/client/clientTasks.unit.test.d.ts.map +0 -1
  206. package/dist/tests/unit/tasks/client/clientTasks.unit.test.js +0 -172
  207. package/dist/tests/unit/tasks/client/clientTasks.unit.test.js.map +0 -1
  208. package/dist/tests/unit/tasks/dataset/datasetTasks.test.d.ts +0 -2
  209. package/dist/tests/unit/tasks/dataset/datasetTasks.test.d.ts.map +0 -1
  210. package/dist/tests/unit/tasks/dataset/datasetTasks.test.js +0 -82
  211. package/dist/tests/unit/tasks/dataset/datasetTasks.test.js.map +0 -1
  212. package/dist/tests/unit/tasks/dataset/datasetTasks.unit.test.d.ts +0 -2
  213. package/dist/tests/unit/tasks/dataset/datasetTasks.unit.test.d.ts.map +0 -1
  214. package/dist/tests/unit/tasks/dataset/datasetTasks.unit.test.js +0 -86
  215. package/dist/tests/unit/tasks/dataset/datasetTasks.unit.test.js.map +0 -1
  216. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.test.d.ts +0 -2
  217. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.test.d.ts.map +0 -1
  218. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.test.js +0 -75
  219. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.test.js.map +0 -1
  220. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.d.ts +0 -2
  221. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.d.ts.map +0 -1
  222. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.js +0 -75
  223. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.js.map +0 -1
  224. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.test.d.ts +0 -2
  225. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.test.d.ts.map +0 -1
  226. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.test.js +0 -245
  227. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.test.js.map +0 -1
  228. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.d.ts +0 -2
  229. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.d.ts.map +0 -1
  230. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.js +0 -266
  231. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.js.map +0 -1
  232. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.test.d.ts +0 -2
  233. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.test.d.ts.map +0 -1
  234. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.test.js +0 -45
  235. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.test.js.map +0 -1
  236. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.unit.test.d.ts +0 -2
  237. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.unit.test.d.ts.map +0 -1
  238. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.unit.test.js +0 -46
  239. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.unit.test.js.map +0 -1
  240. package/dist/tests/unit/tasks/powCaptcha/powTasks.test.d.ts +0 -2
  241. package/dist/tests/unit/tasks/powCaptcha/powTasks.test.d.ts.map +0 -1
  242. package/dist/tests/unit/tasks/powCaptcha/powTasks.test.js +0 -121
  243. package/dist/tests/unit/tasks/powCaptcha/powTasks.test.js.map +0 -1
  244. package/dist/tests/unit/tasks/powCaptcha/powTasks.unit.test.d.ts +0 -2
  245. package/dist/tests/unit/tasks/powCaptcha/powTasks.unit.test.d.ts.map +0 -1
  246. package/dist/tests/unit/tasks/powCaptcha/powTasks.unit.test.js +0 -209
  247. package/dist/tests/unit/tasks/powCaptcha/powTasks.unit.test.js.map +0 -1
  248. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.test.d.ts +0 -2
  249. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.test.d.ts.map +0 -1
  250. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.test.js +0 -94
  251. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.test.js.map +0 -1
  252. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.unit.test.d.ts +0 -2
  253. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.unit.test.d.ts.map +0 -1
  254. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.unit.test.js +0 -65
  255. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.unit.test.js.map +0 -1
  256. package/dist/tests/util.test.d.ts +0 -2
  257. package/dist/tests/util.test.d.ts.map +0 -1
  258. package/dist/tests/util.test.js +0 -23
  259. package/dist/tests/util.test.js.map +0 -1
  260. package/dist/util.d.ts +0 -6
  261. package/dist/util.d.ts.map +0 -1
  262. package/dist/util.js +0 -34
  263. package/dist/util.js.map +0 -1
@@ -1,148 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const database = require("@prosopo/database");
4
- const types = require("@prosopo/types");
5
- class ClientTaskManager {
6
- constructor(config, logger, db) {
7
- this.config = config;
8
- this.logger = logger;
9
- this.providerDB = db;
10
- }
11
- /**
12
- * @description Store commitments externally in the database
13
- * @returns Promise<void>
14
- */
15
- async storeCommitmentsExternal() {
16
- if (!this.config.mongoCaptchaUri) {
17
- this.logger.info("Mongo env not set");
18
- return;
19
- }
20
- const lastTask = await this.providerDB.getLastScheduledTaskStatus(
21
- types.ScheduledTaskNames.StoreCommitmentsExternal,
22
- types.ScheduledTaskStatus.Completed
23
- );
24
- const taskID = await this.providerDB.createScheduledTaskStatus(
25
- types.ScheduledTaskNames.StoreCommitmentsExternal,
26
- types.ScheduledTaskStatus.Running
27
- );
28
- try {
29
- let commitments = await this.providerDB.getUnstoredDappUserCommitments();
30
- let powRecords = await this.providerDB.getUnstoredDappUserPoWCommitments();
31
- if (lastTask) {
32
- this.logger.info(
33
- `Filtering records to only get updated records: ${JSON.stringify(lastTask)}`
34
- );
35
- this.logger.info(
36
- "Last task ran at ",
37
- new Date(lastTask.updated || 0),
38
- "Task ID",
39
- taskID
40
- );
41
- commitments = commitments.filter(
42
- (commitment) => lastTask.updated && commitment.lastUpdatedTimestamp && (commitment.lastUpdatedTimestamp > lastTask.updated || !commitment.lastUpdatedTimestamp)
43
- );
44
- powRecords = powRecords.filter((commitment) => {
45
- return lastTask.updated && commitment.lastUpdatedTimestamp && // either the update stamp is more recent than the last time this task ran or there is no update stamp,
46
- // so it is a new record
47
- (commitment.lastUpdatedTimestamp > lastTask.updated || !commitment.lastUpdatedTimestamp);
48
- });
49
- }
50
- if (commitments.length || powRecords.length) {
51
- this.logger.info(
52
- `Storing ${commitments.length} commitments externally`
53
- );
54
- this.logger.info(
55
- `Storing ${powRecords.length} pow challenges externally`
56
- );
57
- const captchaDB = new database.CaptchaDatabase(
58
- this.config.mongoCaptchaUri,
59
- void 0,
60
- void 0,
61
- this.logger
62
- );
63
- await captchaDB.saveCaptchas(commitments, powRecords);
64
- await this.providerDB.markDappUserCommitmentsStored(
65
- commitments.map((commitment) => commitment.id)
66
- );
67
- await this.providerDB.markDappUserPoWCommitmentsStored(
68
- powRecords.map((powRecords2) => powRecords2.challenge)
69
- );
70
- }
71
- await this.providerDB.updateScheduledTaskStatus(
72
- taskID,
73
- types.ScheduledTaskStatus.Completed,
74
- {
75
- data: {
76
- commitments: commitments.map((c) => c.id),
77
- powRecords: powRecords.map((pr) => pr.challenge)
78
- }
79
- }
80
- );
81
- } catch (e) {
82
- this.logger.error(e);
83
- await this.providerDB.updateScheduledTaskStatus(
84
- taskID,
85
- types.ScheduledTaskStatus.Failed,
86
- { error: String(e) }
87
- );
88
- }
89
- }
90
- /**
91
- * @description Get a list of client accounts and their settings from the client database
92
- * @returns Promise<void>
93
- */
94
- async getClientList() {
95
- if (!this.config.mongoClientUri) {
96
- this.logger.info("Mongo env not set");
97
- return;
98
- }
99
- const lastTask = await this.providerDB.getLastScheduledTaskStatus(
100
- types.ScheduledTaskNames.GetClientList,
101
- types.ScheduledTaskStatus.Completed
102
- );
103
- const taskID = await this.providerDB.createScheduledTaskStatus(
104
- types.ScheduledTaskNames.GetClientList,
105
- types.ScheduledTaskStatus.Running
106
- );
107
- try {
108
- const clientDB = new database.ClientDatabase(
109
- this.config.mongoClientUri,
110
- void 0,
111
- // expected to come from URI
112
- void 0,
113
- // expected to come from URI
114
- this.logger
115
- );
116
- const updatedAtTimestamp = lastTask ? lastTask.updated || 0 : 0;
117
- const newClientRecords = await clientDB.getUpdatedClients(updatedAtTimestamp);
118
- if (newClientRecords) {
119
- await this.providerDB.updateClientRecords(newClientRecords);
120
- }
121
- await this.providerDB.updateScheduledTaskStatus(
122
- taskID,
123
- types.ScheduledTaskStatus.Completed,
124
- {
125
- data: {
126
- clientRecords: newClientRecords.map((c) => c.account)
127
- }
128
- }
129
- );
130
- } catch (e) {
131
- this.logger.error(e);
132
- await this.providerDB.updateScheduledTaskStatus(
133
- taskID,
134
- types.ScheduledTaskStatus.Failed,
135
- { error: String(e) }
136
- );
137
- }
138
- }
139
- async registerSiteKey(siteKey, settings) {
140
- await this.providerDB.updateClientRecords([
141
- {
142
- account: siteKey,
143
- settings
144
- }
145
- ]);
146
- }
147
- }
148
- exports.ClientTaskManager = ClientTaskManager;
@@ -1,30 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const datasets = require("@prosopo/datasets");
4
- const datasetTasksUtils = require("./datasetTasksUtils.cjs");
5
- class DatasetManager {
6
- constructor(config, logger, captchaConfig, db) {
7
- this.config = config;
8
- this.logger = logger;
9
- this.captchaConfig = captchaConfig;
10
- this.db = db;
11
- }
12
- /**
13
- * @description Set the provider dataset from a file
14
- *
15
- * @param file JSON of the captcha dataset
16
- */
17
- async providerSetDatasetFromFile(file) {
18
- const datasetRaw = datasets.parseCaptchaDataset(file);
19
- return await this.providerSetDataset(datasetRaw);
20
- }
21
- async providerSetDataset(datasetRaw) {
22
- const dataset = await datasetTasksUtils.providerValidateDataset(
23
- datasetRaw,
24
- this.captchaConfig.solved.count,
25
- this.captchaConfig.unsolved.count
26
- );
27
- await this.db?.storeDataset(dataset);
28
- }
29
- }
30
- exports.DatasetManager = DatasetManager;
@@ -1,34 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const common = require("@prosopo/common");
4
- const datasets = require("@prosopo/datasets");
5
- const providerValidateDataset = async (datasetRaw, minSolvedCaptchas, minUnsolvedCaptchas) => {
6
- if (datasetRaw.captchas.length < minSolvedCaptchas + minUnsolvedCaptchas) {
7
- throw new common.ProsopoEnvError("DATASET.CAPTCHAS_COUNT_LESS_THAN_CONFIGURED", {
8
- context: { failedFuncName: providerValidateDataset.name }
9
- });
10
- }
11
- const solutions = datasetRaw.captchas.map((captcha) => captcha.solution ? 1 : 0).reduce((partialSum, b) => partialSum + b, 0);
12
- if (solutions < minSolvedCaptchas) {
13
- throw new common.ProsopoEnvError("DATASET.SOLUTIONS_COUNT_LESS_THAN_CONFIGURED", {
14
- context: { failedFuncName: providerValidateDataset.name }
15
- });
16
- }
17
- if (solutions < minUnsolvedCaptchas) {
18
- throw new common.ProsopoEnvError("DATASET.SOLUTIONS_COUNT_LESS_THAN_CONFIGURED", {
19
- context: { failedFuncName: providerValidateDataset.name }
20
- });
21
- }
22
- const dataset = await datasets.buildDataset(datasetRaw);
23
- if (!dataset.datasetId || !dataset.datasetContentId) {
24
- throw new common.ProsopoEnvError("DATASET.DATASET_ID_UNDEFINED", {
25
- context: {
26
- failedFuncName: providerValidateDataset.name,
27
- datasetId: dataset.datasetId,
28
- datasetContentId: dataset.datasetContentId
29
- }
30
- });
31
- }
32
- return dataset;
33
- };
34
- exports.providerValidateDataset = providerValidateDataset;