@prosopo/provider 2.1.1 → 2.1.2

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 (162) hide show
  1. package/package.json +11 -11
  2. package/.dockerignore +0 -5
  3. package/coverage/base.css +0 -224
  4. package/coverage/block-navigation.js +0 -87
  5. package/coverage/clover.xml +0 -6
  6. package/coverage/coverage-final.json +0 -1
  7. package/coverage/favicon.png +0 -0
  8. package/coverage/index.html +0 -101
  9. package/coverage/prettify.css +0 -1
  10. package/coverage/prettify.js +0 -2
  11. package/coverage/sort-arrow-sprite.png +0 -0
  12. package/coverage/sorter.js +0 -196
  13. package/dist/api/admin.d.ts +0 -4
  14. package/dist/api/admin.d.ts.map +0 -1
  15. package/dist/api/admin.js +0 -37
  16. package/dist/api/admin.js.map +0 -1
  17. package/dist/api/authMiddleware.d.ts +0 -6
  18. package/dist/api/authMiddleware.d.ts.map +0 -1
  19. package/dist/api/authMiddleware.js +0 -57
  20. package/dist/api/authMiddleware.js.map +0 -1
  21. package/dist/api/captcha.d.ts +0 -4
  22. package/dist/api/captcha.d.ts.map +0 -1
  23. package/dist/api/captcha.js +0 -161
  24. package/dist/api/captcha.js.map +0 -1
  25. package/dist/api/errorHandler.d.ts +0 -5
  26. package/dist/api/errorHandler.d.ts.map +0 -1
  27. package/dist/api/errorHandler.js +0 -14
  28. package/dist/api/errorHandler.js.map +0 -1
  29. package/dist/api/verify.d.ts +0 -4
  30. package/dist/api/verify.d.ts.map +0 -1
  31. package/dist/api/verify.js +0 -127
  32. package/dist/api/verify.js.map +0 -1
  33. package/dist/cjs/api/admin.cjs +0 -38
  34. package/dist/cjs/api/authMiddleware.cjs +0 -57
  35. package/dist/cjs/api/captcha.cjs +0 -210
  36. package/dist/cjs/api/errorHandler.cjs +0 -14
  37. package/dist/cjs/api/verify.cjs +0 -140
  38. package/dist/cjs/index.cjs +0 -21
  39. package/dist/cjs/schedulers/captchaScheduler.cjs +0 -33
  40. package/dist/cjs/schedulers/getClientList.cjs +0 -31
  41. package/dist/cjs/tasks/client/clientTasks.cjs +0 -148
  42. package/dist/cjs/tasks/dataset/datasetTasks.cjs +0 -30
  43. package/dist/cjs/tasks/dataset/datasetTasksUtils.cjs +0 -34
  44. package/dist/cjs/tasks/imgCaptcha/imgCaptchaTasks.cjs +0 -281
  45. package/dist/cjs/tasks/imgCaptcha/imgCaptchaTasksUtils.cjs +0 -25
  46. package/dist/cjs/tasks/index.cjs +0 -4
  47. package/dist/cjs/tasks/powCaptcha/powTasks.cjs +0 -133
  48. package/dist/cjs/tasks/powCaptcha/powTasksUtils.cjs +0 -26
  49. package/dist/cjs/tasks/tasks.cjs +0 -40
  50. package/dist/cjs/util.cjs +0 -45
  51. package/dist/index.d.ts +0 -9
  52. package/dist/index.d.ts.map +0 -1
  53. package/dist/index.js +0 -9
  54. package/dist/index.js.map +0 -1
  55. package/dist/schedulers/captchaScheduler.d.ts +0 -4
  56. package/dist/schedulers/captchaScheduler.d.ts.map +0 -1
  57. package/dist/schedulers/captchaScheduler.js +0 -28
  58. package/dist/schedulers/captchaScheduler.js.map +0 -1
  59. package/dist/schedulers/getClientList.d.ts +0 -4
  60. package/dist/schedulers/getClientList.d.ts.map +0 -1
  61. package/dist/schedulers/getClientList.js +0 -28
  62. package/dist/schedulers/getClientList.js.map +0 -1
  63. package/dist/tasks/client/clientTasks.d.ts +0 -13
  64. package/dist/tasks/client/clientTasks.d.ts.map +0 -1
  65. package/dist/tasks/client/clientTasks.js +0 -87
  66. package/dist/tasks/client/clientTasks.js.map +0 -1
  67. package/dist/tasks/dataset/datasetTasks.d.ts +0 -13
  68. package/dist/tasks/dataset/datasetTasks.d.ts.map +0 -1
  69. package/dist/tasks/dataset/datasetTasks.js +0 -19
  70. package/dist/tasks/dataset/datasetTasks.js.map +0 -1
  71. package/dist/tasks/dataset/datasetTasksUtils.d.ts +0 -3
  72. package/dist/tasks/dataset/datasetTasksUtils.d.ts.map +0 -1
  73. package/dist/tasks/dataset/datasetTasksUtils.js +0 -34
  74. package/dist/tasks/dataset/datasetTasksUtils.js.map +0 -1
  75. package/dist/tasks/imgCaptcha/imgCaptchaTasks.d.ts +0 -28
  76. package/dist/tasks/imgCaptcha/imgCaptchaTasks.d.ts.map +0 -1
  77. package/dist/tasks/imgCaptcha/imgCaptchaTasks.js +0 -208
  78. package/dist/tasks/imgCaptcha/imgCaptchaTasks.js.map +0 -1
  79. package/dist/tasks/imgCaptcha/imgCaptchaTasksUtils.d.ts +0 -7
  80. package/dist/tasks/imgCaptcha/imgCaptchaTasksUtils.d.ts.map +0 -1
  81. package/dist/tasks/imgCaptcha/imgCaptchaTasksUtils.js +0 -18
  82. package/dist/tasks/imgCaptcha/imgCaptchaTasksUtils.js.map +0 -1
  83. package/dist/tasks/index.d.ts +0 -2
  84. package/dist/tasks/index.d.ts.map +0 -1
  85. package/dist/tasks/index.js +0 -2
  86. package/dist/tasks/index.js.map +0 -1
  87. package/dist/tasks/powCaptcha/powTasks.d.ts +0 -13
  88. package/dist/tasks/powCaptcha/powTasks.d.ts.map +0 -1
  89. package/dist/tasks/powCaptcha/powTasks.js +0 -83
  90. package/dist/tasks/powCaptcha/powTasks.js.map +0 -1
  91. package/dist/tasks/powCaptcha/powTasksUtils.d.ts +0 -3
  92. package/dist/tasks/powCaptcha/powTasksUtils.d.ts.map +0 -1
  93. package/dist/tasks/powCaptcha/powTasksUtils.js +0 -22
  94. package/dist/tasks/powCaptcha/powTasksUtils.js.map +0 -1
  95. package/dist/tasks/tasks.d.ts +0 -22
  96. package/dist/tasks/tasks.d.ts.map +0 -1
  97. package/dist/tasks/tasks.js +0 -24
  98. package/dist/tasks/tasks.js.map +0 -1
  99. package/dist/tests/index.d.ts +0 -2
  100. package/dist/tests/index.d.ts.map +0 -1
  101. package/dist/tests/index.js +0 -2
  102. package/dist/tests/index.js.map +0 -1
  103. package/dist/tests/integration/imgCaptcha.integration.test.d.ts +0 -2
  104. package/dist/tests/integration/imgCaptcha.integration.test.d.ts.map +0 -1
  105. package/dist/tests/integration/imgCaptcha.integration.test.js +0 -133
  106. package/dist/tests/integration/imgCaptcha.integration.test.js.map +0 -1
  107. package/dist/tests/integration/mocks/solvedTestCaptchas.d.ts +0 -32
  108. package/dist/tests/integration/mocks/solvedTestCaptchas.d.ts.map +0 -1
  109. package/dist/tests/integration/mocks/solvedTestCaptchas.js +0 -1046
  110. package/dist/tests/integration/mocks/solvedTestCaptchas.js.map +0 -1
  111. package/dist/tests/integration/powCaptcha.integration.test.d.ts +0 -2
  112. package/dist/tests/integration/powCaptcha.integration.test.d.ts.map +0 -1
  113. package/dist/tests/integration/powCaptcha.integration.test.js +0 -229
  114. package/dist/tests/integration/powCaptcha.integration.test.js.map +0 -1
  115. package/dist/tests/integration/registerSitekey.d.ts +0 -2
  116. package/dist/tests/integration/registerSitekey.d.ts.map +0 -1
  117. package/dist/tests/integration/registerSitekey.js +0 -17
  118. package/dist/tests/integration/registerSitekey.js.map +0 -1
  119. package/dist/tests/unit/api/authMiddleware.unit.test.d.ts +0 -2
  120. package/dist/tests/unit/api/authMiddleware.unit.test.d.ts.map +0 -1
  121. package/dist/tests/unit/api/authMiddleware.unit.test.js +0 -87
  122. package/dist/tests/unit/api/authMiddleware.unit.test.js.map +0 -1
  123. package/dist/tests/unit/api/errorHandler.unit.test.d.ts +0 -2
  124. package/dist/tests/unit/api/errorHandler.unit.test.d.ts.map +0 -1
  125. package/dist/tests/unit/api/errorHandler.unit.test.js +0 -65
  126. package/dist/tests/unit/api/errorHandler.unit.test.js.map +0 -1
  127. package/dist/tests/unit/schedulers/captchaScheduler.unit.test.d.ts +0 -2
  128. package/dist/tests/unit/schedulers/captchaScheduler.unit.test.d.ts.map +0 -1
  129. package/dist/tests/unit/schedulers/captchaScheduler.unit.test.js +0 -63
  130. package/dist/tests/unit/schedulers/captchaScheduler.unit.test.js.map +0 -1
  131. package/dist/tests/unit/tasks/client/clientTasks.unit.test.d.ts +0 -2
  132. package/dist/tests/unit/tasks/client/clientTasks.unit.test.d.ts.map +0 -1
  133. package/dist/tests/unit/tasks/client/clientTasks.unit.test.js +0 -172
  134. package/dist/tests/unit/tasks/client/clientTasks.unit.test.js.map +0 -1
  135. package/dist/tests/unit/tasks/dataset/datasetTasks.unit.test.d.ts +0 -2
  136. package/dist/tests/unit/tasks/dataset/datasetTasks.unit.test.d.ts.map +0 -1
  137. package/dist/tests/unit/tasks/dataset/datasetTasks.unit.test.js +0 -86
  138. package/dist/tests/unit/tasks/dataset/datasetTasks.unit.test.js.map +0 -1
  139. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.d.ts +0 -2
  140. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.d.ts.map +0 -1
  141. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.js +0 -75
  142. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.js.map +0 -1
  143. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.d.ts +0 -2
  144. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.d.ts.map +0 -1
  145. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.js +0 -266
  146. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.js.map +0 -1
  147. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.unit.test.d.ts +0 -2
  148. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.unit.test.d.ts.map +0 -1
  149. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.unit.test.js +0 -46
  150. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.unit.test.js.map +0 -1
  151. package/dist/tests/unit/tasks/powCaptcha/powTasks.unit.test.d.ts +0 -2
  152. package/dist/tests/unit/tasks/powCaptcha/powTasks.unit.test.d.ts.map +0 -1
  153. package/dist/tests/unit/tasks/powCaptcha/powTasks.unit.test.js +0 -209
  154. package/dist/tests/unit/tasks/powCaptcha/powTasks.unit.test.js.map +0 -1
  155. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.unit.test.d.ts +0 -2
  156. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.unit.test.d.ts.map +0 -1
  157. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.unit.test.js +0 -65
  158. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.unit.test.js.map +0 -1
  159. package/dist/util.d.ts +0 -6
  160. package/dist/util.d.ts.map +0 -1
  161. package/dist/util.js +0 -34
  162. package/dist/util.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"solvedTestCaptchas.js","sourceRoot":"","sources":["../../../../src/tests/integration/mocks/solvedTestCaptchas.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=powCaptcha.integration.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"powCaptcha.integration.test.d.ts","sourceRoot":"","sources":["../../../src/tests/integration/powCaptcha.integration.test.ts"],"names":[],"mappings":""}
@@ -1,229 +0,0 @@
1
- import { sha256 } from "@noble/hashes/sha256";
2
- import { u8aToHex } from "@polkadot/util/u8a";
3
- import { getPairAsync } from "@prosopo/contract";
4
- import { ApiParams, ApiPaths, } from "@prosopo/types";
5
- import fetch from "node-fetch";
6
- import { beforeAll, describe, expect, it } from "vitest";
7
- import { dummyDappAccount, dummyUserAccount, } from "./mocks/solvedTestCaptchas.js";
8
- import { registerSiteKey } from "./registerSitekey.js";
9
- const baseUrl = "http://localhost:9229";
10
- const getPowCaptchaChallengePath = ApiPaths.GetPowCaptchaChallenge;
11
- const dappAccount = "5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY";
12
- const userAccount = "5FHneW46xGXgs5mUiveU4sbTyGBzmstUspZC92UhjJM694ty";
13
- const bufferToHex = (buffer) => Array.from(buffer)
14
- .map((byte) => byte.toString(16).padStart(2, "0"))
15
- .join("");
16
- const solvePoW = (data, difficulty) => {
17
- let nonce = 0;
18
- const prefix = "0".repeat(difficulty);
19
- while (true) {
20
- const message = new TextEncoder().encode(nonce + data);
21
- const hashHex = bufferToHex(sha256(message));
22
- if (hashHex.startsWith(prefix)) {
23
- return nonce;
24
- }
25
- nonce += 1;
26
- }
27
- };
28
- const failPoW = (data, difficulty) => {
29
- let nonce = 0;
30
- const prefix = "0".repeat(difficulty);
31
- while (true) {
32
- const message = new TextEncoder().encode(nonce + data);
33
- const hashHex = bufferToHex(sha256(message));
34
- if (!hashHex.startsWith(prefix)) {
35
- return nonce;
36
- }
37
- nonce += 1;
38
- }
39
- };
40
- describe("PoW Integration Tests", () => {
41
- describe("GetPowCaptchaChallenge", () => {
42
- beforeAll(async () => {
43
- await registerSiteKey(dappAccount);
44
- });
45
- it("should supply a PoW challenge to a Dapp User", async () => {
46
- const origin = "http://localhost";
47
- const body = {
48
- user: userAccount,
49
- dapp: dappAccount,
50
- };
51
- const response = await fetch(`${baseUrl}${getPowCaptchaChallengePath}`, {
52
- method: "POST",
53
- headers: {
54
- Connection: "close",
55
- "Content-Type": "application/json",
56
- Origin: origin,
57
- },
58
- body: JSON.stringify(body),
59
- });
60
- expect(response.status).toBe(200);
61
- const data = await response.json();
62
- expect(data).toHaveProperty("challenge");
63
- expect(data).toHaveProperty("difficulty");
64
- expect(data).toHaveProperty("signature");
65
- });
66
- it("should return an error if origin header is not provided", async () => {
67
- const response = await fetch(`${baseUrl}${getPowCaptchaChallengePath}`, {
68
- method: "POST",
69
- headers: {
70
- Connection: "close",
71
- "Content-Type": "application/json",
72
- },
73
- body: JSON.stringify({ user: userAccount, dapp: dappAccount }),
74
- });
75
- expect(response.status).toBe(400);
76
- });
77
- });
78
- describe("SubmitPowCaptchaSolution", () => {
79
- it("should verify a correctly completed PoW captcha as true", async () => {
80
- const userPair = await getPairAsync(dummyUserAccount.seed, undefined, "sr25519", 42);
81
- const dappPair = await getPairAsync(dummyDappAccount.seed, undefined, "sr25519", 42);
82
- const dappAccount = dappPair.address;
83
- await registerSiteKey(dappAccount);
84
- const origin = "http://localhost";
85
- const requestBody = {
86
- user: userPair.address,
87
- dapp: dappAccount,
88
- };
89
- const captchaRes = await fetch(`${baseUrl}${getPowCaptchaChallengePath}`, {
90
- method: "POST",
91
- headers: {
92
- Connection: "close",
93
- "Content-Type": "application/json",
94
- Origin: origin,
95
- },
96
- body: JSON.stringify(requestBody),
97
- });
98
- const challengeBody = (await captchaRes.json());
99
- const challenge = challengeBody.challenge;
100
- const difficulty = challengeBody.difficulty;
101
- const signature = challengeBody.signature;
102
- const nonce = solvePoW(challenge, difficulty);
103
- const verifiedTimeout = 120000;
104
- const submitBody = {
105
- challenge,
106
- difficulty,
107
- signature: {
108
- [ApiParams.provider]: signature[ApiParams.provider],
109
- [ApiParams.user]: {
110
- [ApiParams.timestamp]: u8aToHex(userPair.sign(challengeBody[ApiParams.timestamp].toString())),
111
- },
112
- },
113
- nonce,
114
- verifiedTimeout,
115
- user: userPair.address,
116
- dapp: dappAccount,
117
- };
118
- const response = await fetch(`${baseUrl}${ApiPaths.SubmitPowCaptchaSolution}`, {
119
- method: "POST",
120
- headers: {
121
- Connection: "close",
122
- "Content-Type": "application/json",
123
- Origin: origin,
124
- },
125
- body: JSON.stringify(submitBody),
126
- });
127
- expect(response.status).toBe(200);
128
- const data = (await response.json());
129
- expect(data).toHaveProperty("verified");
130
- expect(data.verified).toBe(true);
131
- });
132
- it("should return false for incorrectly completed PoW captcha", async () => {
133
- const userPair = await getPairAsync(dummyUserAccount.seed, undefined, "sr25519", 42);
134
- const userAccount = userPair.address;
135
- const origin = "http://localhost";
136
- const captchaRes = await fetch(`${baseUrl}${getPowCaptchaChallengePath}`, {
137
- method: "POST",
138
- headers: {
139
- Connection: "close",
140
- "Content-Type": "application/json",
141
- Origin: origin,
142
- },
143
- body: JSON.stringify({ user: userAccount, dapp: dappAccount }),
144
- });
145
- const challengeBody = (await captchaRes.json());
146
- const challenge = challengeBody.challenge;
147
- const difficulty = challengeBody.difficulty;
148
- const signature = challengeBody.signature;
149
- const nonce = failPoW(challenge, difficulty);
150
- const verifiedTimeout = 120000;
151
- const dapp = "5C7bfXYwachNuvmasEFtWi9BMS41uBvo6KpYHVSQmad4nWzw";
152
- await registerSiteKey(dapp);
153
- const body = {
154
- challenge,
155
- difficulty,
156
- [ApiParams.signature]: {
157
- [ApiParams.provider]: signature[ApiParams.provider],
158
- [ApiParams.user]: {
159
- [ApiParams.timestamp]: u8aToHex(userPair.sign(challengeBody[ApiParams.timestamp].toString())),
160
- },
161
- },
162
- nonce,
163
- verifiedTimeout,
164
- user: userPair.address,
165
- dapp,
166
- };
167
- const response = await fetch(`${baseUrl}${ApiPaths.SubmitPowCaptchaSolution}`, {
168
- method: "POST",
169
- headers: {
170
- Connection: "close",
171
- "Content-Type": "application/json",
172
- },
173
- body: JSON.stringify(body),
174
- });
175
- expect(response.status).toBe(200);
176
- const data = (await response.json());
177
- expect(data).toHaveProperty("verified");
178
- expect(data.verified).toBe(false);
179
- });
180
- it("should return an error for an unregistered site key", async () => {
181
- const userPair = await getPairAsync(dummyUserAccount.seed, undefined, "sr25519", 42);
182
- const userAccount = userPair.address;
183
- const origin = "http://localhost";
184
- const captchaRes = await fetch(`${baseUrl}${getPowCaptchaChallengePath}`, {
185
- method: "POST",
186
- headers: {
187
- Connection: "close",
188
- "Content-Type": "application/json",
189
- Origin: origin,
190
- },
191
- body: JSON.stringify({ user: userAccount, dapp: dappAccount }),
192
- });
193
- const challengeBody = (await captchaRes.json());
194
- const challenge = challengeBody.challenge;
195
- const difficulty = challengeBody.difficulty;
196
- const signature = challengeBody.signature;
197
- const nonce = failPoW(challenge, difficulty);
198
- const verifiedTimeout = 120000;
199
- const dapp = "5FLSigC9HGRKVhB9FiEo4Y3koPsNmBmLJbpXg2mp1hXcS59Y";
200
- const body = {
201
- challenge,
202
- difficulty,
203
- [ApiParams.signature]: {
204
- [ApiParams.provider]: signature[ApiParams.provider],
205
- [ApiParams.user]: {
206
- [ApiParams.timestamp]: u8aToHex(userPair.sign(challengeBody[ApiParams.timestamp].toString())),
207
- },
208
- },
209
- nonce,
210
- verifiedTimeout,
211
- user: userPair.address,
212
- dapp,
213
- };
214
- const response = await fetch(`${baseUrl}${ApiPaths.SubmitPowCaptchaSolution}`, {
215
- method: "POST",
216
- headers: {
217
- Connection: "close",
218
- "Content-Type": "application/json",
219
- },
220
- body: JSON.stringify(body),
221
- });
222
- expect(response.status).toBe(200);
223
- const data = (await response.json());
224
- expect(data).toHaveProperty("error");
225
- expect(data.error).toBe("Site key not registered");
226
- });
227
- });
228
- });
229
- //# sourceMappingURL=powCaptcha.integration.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"powCaptcha.integration.test.js","sourceRoot":"","sources":["../../../src/tests/integration/powCaptcha.integration.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export declare const registerSiteKey: (siteKey: string) => Promise<void>;
2
- //# sourceMappingURL=registerSitekey.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registerSitekey.d.ts","sourceRoot":"","sources":["../../../src/tests/integration/registerSitekey.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,eAAe,YAAmB,MAAM,KAAG,OAAO,CAAC,IAAI,CAkBnE,CAAC"}
@@ -1,17 +0,0 @@
1
- import { ProviderDatabase } from "@prosopo/database";
2
- export const registerSiteKey = async (siteKey) => {
3
- const username = process.env.PROSOPO_DATABASE_USERNAME || "root";
4
- const pw = process.env.PROSOPO_DATABASE_PASSWORD || "root";
5
- const host = process.env.PROSOPO_DATABASE_HOST || "localhost";
6
- const port = process.env.PROSOPO_DATABASE_PORT || 27017;
7
- const db = new ProviderDatabase(`mongodb://${username}:${pw}@${host}:${port}`, process.env.PROSOPO_DATABASE_NAME || "prosopo", process.env.PROSOPO_DATABASE_AUTH_SOURCE || "admin");
8
- await db.connect();
9
- console.log("Registering site key", siteKey);
10
- await db.updateClientRecords([
11
- {
12
- account: siteKey,
13
- },
14
- ]);
15
- await db.connection?.close();
16
- };
17
- //# sourceMappingURL=registerSitekey.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registerSitekey.js","sourceRoot":"","sources":["../../../src/tests/integration/registerSitekey.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAGrD,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,OAAe,EAAiB,EAAE;IACvE,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,MAAM,CAAC;IACjE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,MAAM,CAAC;IAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,WAAW,CAAC;IAC9D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,KAAK,CAAC;IACxD,MAAM,EAAE,GAAG,IAAI,gBAAgB,CAC9B,aAAa,QAAQ,IAAI,EAAE,IAAI,IAAI,IAAI,IAAI,EAAE,EAC7C,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,SAAS,EAC9C,OAAO,CAAC,GAAG,CAAC,4BAA4B,IAAI,OAAO,CACnD,CAAC;IACF,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;IACnB,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;IAC7C,MAAM,EAAE,CAAC,mBAAmB,CAAC;QAC5B;YACC,OAAO,EAAE,OAAO;SACA;KACjB,CAAC,CAAC;IACH,MAAM,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC;AAC9B,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=authMiddleware.unit.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"authMiddleware.unit.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/unit/api/authMiddleware.unit.test.ts"],"names":[],"mappings":""}
@@ -1,87 +0,0 @@
1
- import { hexToU8a, isHex } from "@polkadot/util";
2
- import { ProsopoApiError, ProsopoEnvError } from "@prosopo/common";
3
- import { describe, expect, it, vi } from "vitest";
4
- import { authMiddleware } from "../../../api/authMiddleware.js";
5
- vi.mock("@polkadot/util", () => ({
6
- hexToU8a: vi.fn(),
7
- isHex: vi.fn(),
8
- }));
9
- const mockTasks = {};
10
- const mockPair = {
11
- publicKey: "mockPublicKey",
12
- verify: vi.fn(),
13
- };
14
- const mockEnv = {
15
- pair: mockPair,
16
- };
17
- describe("authMiddleware", () => {
18
- it("should call next() if signature is valid", async () => {
19
- const mockReq = {
20
- headers: {
21
- signature: "0x1234",
22
- timestamp: new Date().getTime(),
23
- },
24
- };
25
- const mockRes = {
26
- status: vi.fn().mockReturnThis(),
27
- json: vi.fn(),
28
- };
29
- const mockNext = vi.fn();
30
- vi.mocked(isHex).mockReturnValue(true);
31
- vi.mocked(hexToU8a).mockReturnValue(new Uint8Array());
32
- vi.mocked(mockPair.verify).mockReturnValue(true);
33
- const middleware = authMiddleware(mockEnv);
34
- await middleware(mockReq, mockRes, mockNext);
35
- expect(mockNext).toHaveBeenCalled();
36
- expect(mockRes.status).not.toHaveBeenCalled();
37
- });
38
- it("should return 401 if signature is invalid", async () => {
39
- const mockReq = {
40
- headers: {
41
- signature: "0x1234",
42
- timestamp: new Date().getTime(),
43
- },
44
- };
45
- const mockRes = {
46
- status: vi.fn().mockReturnThis(),
47
- json: vi.fn(),
48
- };
49
- const mockNext = vi.fn();
50
- vi.mocked(isHex).mockReturnValue(true);
51
- vi.mocked(hexToU8a).mockReturnValue(new Uint8Array());
52
- vi.mocked(mockPair.verify).mockReturnValue(false);
53
- const middleware = authMiddleware(mockEnv);
54
- await middleware(mockReq, mockRes, mockNext);
55
- expect(mockNext).not.toHaveBeenCalled();
56
- expect(mockRes.status).toHaveBeenCalledWith(401);
57
- expect(mockRes.json).toHaveBeenCalledWith({
58
- error: "Unauthorized",
59
- message: expect.any(ProsopoApiError),
60
- });
61
- });
62
- it("should return 401 if key pair is missing", async () => {
63
- const mockReq = {
64
- headers: {
65
- signature: "0x1234",
66
- timestamp: new Date().getTime(),
67
- },
68
- };
69
- const mockRes = {
70
- status: vi.fn().mockReturnThis(),
71
- json: vi.fn(),
72
- };
73
- const mockNext = vi.fn();
74
- const invalidEnv = {
75
- pair: null,
76
- };
77
- const middleware = authMiddleware(invalidEnv);
78
- await middleware(mockReq, mockRes, mockNext);
79
- expect(mockNext).not.toHaveBeenCalled();
80
- expect(mockRes.status).toHaveBeenCalledWith(401);
81
- expect(mockRes.json).toHaveBeenCalledWith({
82
- error: "Unauthorized",
83
- message: expect.any(ProsopoEnvError),
84
- });
85
- });
86
- });
87
- //# sourceMappingURL=authMiddleware.unit.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"authMiddleware.unit.test.js","sourceRoot":"","sources":["../../../../src/tests/unit/api/authMiddleware.unit.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=errorHandler.unit.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errorHandler.unit.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/unit/api/errorHandler.unit.test.ts"],"names":[],"mappings":""}
@@ -1,65 +0,0 @@
1
- import { ProsopoApiError, ProsopoEnvError, } from "@prosopo/common";
2
- import { describe, expect, it, vi } from "vitest";
3
- import { ZodError } from "zod";
4
- import { handleErrors } from "../../../api/errorHandler.js";
5
- describe("handleErrors", () => {
6
- it("should handle ProsopoApiError", () => {
7
- const mockRequest = {};
8
- const mockResponse = {
9
- writeHead: vi.fn().mockReturnThis(),
10
- end: vi.fn(),
11
- };
12
- const mockNext = vi.fn();
13
- const error = new ProsopoApiError("CONTRACT.INVALID_DATA_FORMAT");
14
- handleErrors(error, mockRequest, mockResponse, mockNext);
15
- expect(mockResponse.writeHead).toHaveBeenCalledWith(500, JSON.stringify("Invalid data format"), {
16
- "content-type": "application/json",
17
- });
18
- expect(mockResponse.end).toHaveBeenCalled();
19
- });
20
- it("should handle SyntaxError", () => {
21
- const mockRequest = {};
22
- const mockResponse = {
23
- writeHead: vi.fn().mockReturnThis(),
24
- end: vi.fn(),
25
- };
26
- const mockNext = vi.fn();
27
- const [len, max] = [100, 50];
28
- const error = new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`);
29
- handleErrors(error, mockRequest, mockResponse, mockNext);
30
- expect(mockResponse.writeHead).toHaveBeenCalledWith(400, JSON.stringify(`Input length: ${len}, exceeds maximum allowed length: ${max}`), {
31
- "content-type": "application/json",
32
- });
33
- expect(mockResponse.end).toHaveBeenCalled();
34
- });
35
- it("should handle ZodError", () => {
36
- const mockRequest = {};
37
- const mockResponse = {
38
- writeHead: vi.fn().mockReturnThis(),
39
- end: vi.fn(),
40
- };
41
- const mockNext = vi.fn();
42
- const error = new ZodError([]);
43
- handleErrors(error, mockRequest, mockResponse, mockNext);
44
- expect(mockResponse.writeHead).toHaveBeenCalledWith(400, `\"[]\"`, {
45
- "content-type": "application/json",
46
- });
47
- expect(mockResponse.end).toHaveBeenCalled();
48
- });
49
- it("should unwrap nested ProsopoBaseError", () => {
50
- const mockRequest = {};
51
- const mockResponse = {
52
- writeHead: vi.fn().mockReturnThis(),
53
- end: vi.fn(),
54
- };
55
- const mockNext = vi.fn();
56
- const envError = new ProsopoEnvError("GENERAL.ENVIRONMENT_NOT_READY");
57
- const apiError = new ProsopoApiError(envError);
58
- handleErrors(apiError, mockRequest, mockResponse, mockNext);
59
- expect(mockResponse.writeHead).toHaveBeenCalledWith(500, JSON.stringify("Environment not ready"), {
60
- "content-type": "application/json",
61
- });
62
- expect(mockResponse.end).toHaveBeenCalled();
63
- });
64
- });
65
- //# sourceMappingURL=errorHandler.unit.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errorHandler.unit.test.js","sourceRoot":"","sources":["../../../../src/tests/unit/api/errorHandler.unit.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=captchaScheduler.unit.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"captchaScheduler.unit.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/unit/schedulers/captchaScheduler.unit.test.ts"],"names":[],"mappings":""}
@@ -1,63 +0,0 @@
1
- import { ProviderEnvironment } from "@prosopo/env";
2
- import { CronJob } from "cron";
3
- import { beforeEach, describe, expect, it, vi } from "vitest";
4
- import { storeCaptchasExternally } from "../../../schedulers/captchaScheduler.js";
5
- import { Tasks } from "../../../tasks/tasks.js";
6
- vi.mock("@prosopo/env", () => ({
7
- ProviderEnvironment: vi.fn().mockImplementation(() => ({
8
- isReady: vi.fn().mockResolvedValue(true),
9
- logger: {
10
- debug: vi.fn().mockImplementation(console.debug),
11
- log: vi.fn().mockImplementation(console.log),
12
- info: vi.fn().mockImplementation(console.info),
13
- error: vi.fn().mockImplementation(console.error),
14
- },
15
- getDb: vi.fn().mockReturnValue({
16
- getLastScheduledTaskStatus: vi.fn().mockResolvedValue(undefined),
17
- }),
18
- db: {
19
- getLastScheduledTaskStatus: vi.fn().mockResolvedValue(undefined),
20
- },
21
- })),
22
- }));
23
- vi.mock("../../../tasks/tasks.js", () => ({
24
- Tasks: vi.fn().mockImplementation(() => ({
25
- clientTaskManager: {
26
- storeCommitmentsExternal: vi.fn().mockResolvedValue(undefined),
27
- },
28
- })),
29
- }));
30
- vi.mock("cron", () => ({
31
- CronJob: vi.fn().mockImplementation((cronTime, onTick) => ({
32
- start: vi.fn().mockImplementation(onTick),
33
- })),
34
- }));
35
- vi.mock("../../../util.js", () => ({
36
- checkIfTaskIsRunning: vi.fn().mockResolvedValue(false),
37
- }));
38
- describe("storeCaptchasExternally", () => {
39
- let mockPair;
40
- let mockConfig;
41
- beforeEach(() => {
42
- mockPair = {};
43
- mockConfig = {
44
- scheduledTasks: {
45
- captchaScheduler: {
46
- schedule: "0 * * * *",
47
- },
48
- },
49
- };
50
- });
51
- it("should initialize environment and start cron job", async () => {
52
- await storeCaptchasExternally(mockPair, mockConfig);
53
- expect(ProviderEnvironment).toHaveBeenCalledWith(mockConfig, mockPair);
54
- expect(Tasks).toHaveBeenCalled();
55
- expect(CronJob).toHaveBeenCalledWith("0 * * * *", expect.any(Function));
56
- });
57
- it("should log message when cron job runs", async () => {
58
- await storeCaptchasExternally(mockPair, mockConfig);
59
- const envInstance = ProviderEnvironment.mock.results[0].value;
60
- expect(envInstance.logger.info).toHaveBeenCalledWith("StoreCommitmentsExternal task running: false");
61
- });
62
- });
63
- //# sourceMappingURL=captchaScheduler.unit.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"captchaScheduler.unit.test.js","sourceRoot":"","sources":["../../../../src/tests/unit/schedulers/captchaScheduler.unit.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=clientTasks.unit.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"clientTasks.unit.test.d.ts","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/client/clientTasks.unit.test.ts"],"names":[],"mappings":""}