@prosopo/procaptcha 0.1.4 → 0.1.6

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 (67) hide show
  1. package/.eslintignore +3 -0
  2. package/.eslintrc.js +21 -0
  3. package/LICENSE +201 -674
  4. package/README.md +1 -1
  5. package/dist/api/AccountCreator.d.ts +16 -0
  6. package/dist/api/AccountCreator.d.ts.map +1 -0
  7. package/dist/api/AccountCreator.js +58 -0
  8. package/dist/api/AccountCreator.js.map +1 -0
  9. package/dist/api/AsyncFactory.d.ts.map +1 -1
  10. package/dist/api/AsyncFactory.js +2 -1
  11. package/dist/api/AsyncFactory.js.map +1 -1
  12. package/dist/api/ExtensionWeb2.d.ts +24 -0
  13. package/dist/api/ExtensionWeb2.d.ts.map +1 -0
  14. package/dist/api/ExtensionWeb2.js +102 -0
  15. package/dist/api/ExtensionWeb2.js.map +1 -0
  16. package/dist/api/{Extension.d.ts → ExtensionWeb3.d.ts} +4 -3
  17. package/dist/api/ExtensionWeb3.d.ts.map +1 -0
  18. package/dist/api/{Extension.js → ExtensionWeb3.js} +16 -12
  19. package/dist/api/ExtensionWeb3.js.map +1 -0
  20. package/dist/api/HttpClientBase.d.ts.map +1 -1
  21. package/dist/api/HttpClientBase.js.map +1 -1
  22. package/dist/api/ProsopoContract.d.ts +1 -1
  23. package/dist/api/ProsopoContract.d.ts.map +1 -1
  24. package/dist/api/ProsopoContract.js +2 -4
  25. package/dist/api/ProsopoContract.js.map +1 -1
  26. package/dist/api/ProsopoContractBase.d.ts +6 -5
  27. package/dist/api/ProsopoContractBase.d.ts.map +1 -1
  28. package/dist/api/ProsopoContractBase.js +8 -7
  29. package/dist/api/ProsopoContractBase.js.map +1 -1
  30. package/dist/api/ProviderApi.d.ts +4 -8
  31. package/dist/api/ProviderApi.d.ts.map +1 -1
  32. package/dist/api/ProviderApi.js +14 -12
  33. package/dist/api/ProviderApi.js.map +1 -1
  34. package/dist/api/handlers.d.ts.map +1 -1
  35. package/dist/api/handlers.js +0 -1
  36. package/dist/api/handlers.js.map +1 -1
  37. package/dist/api/index.d.ts +2 -1
  38. package/dist/api/index.d.ts.map +1 -1
  39. package/dist/api/index.js +2 -1
  40. package/dist/api/index.js.map +1 -1
  41. package/dist/modules/ProsopoCaptchaApi.d.ts +6 -2
  42. package/dist/modules/ProsopoCaptchaApi.d.ts.map +1 -1
  43. package/dist/modules/ProsopoCaptchaApi.js +28 -6
  44. package/dist/modules/ProsopoCaptchaApi.js.map +1 -1
  45. package/dist/modules/ProsopoCaptchaClient.d.ts +2 -3
  46. package/dist/modules/ProsopoCaptchaClient.d.ts.map +1 -1
  47. package/dist/modules/ProsopoCaptchaClient.js +32 -17
  48. package/dist/modules/ProsopoCaptchaClient.js.map +1 -1
  49. package/dist/modules/ProsopoCaptchaStateClient.d.ts +4 -3
  50. package/dist/modules/ProsopoCaptchaStateClient.d.ts.map +1 -1
  51. package/dist/modules/ProsopoCaptchaStateClient.js +28 -25
  52. package/dist/modules/ProsopoCaptchaStateClient.js.map +1 -1
  53. package/dist/modules/contract.js +12 -0
  54. package/dist/modules/contract.js.map +1 -1
  55. package/dist/modules/extension.d.ts +2 -2
  56. package/dist/modules/extension.d.ts.map +1 -1
  57. package/dist/modules/extension.js +9 -3
  58. package/dist/modules/extension.js.map +1 -1
  59. package/dist/types/api.d.ts +3 -10
  60. package/dist/types/api.d.ts.map +1 -1
  61. package/dist/types/client.d.ts +5 -4
  62. package/dist/types/client.d.ts.map +1 -1
  63. package/package.json +12 -6
  64. package/tsconfig.tsbuildinfo +1 -1
  65. package/dist/api/Extension.d.ts.map +0 -1
  66. package/dist/api/Extension.js.map +0 -1
  67. package/img/contracts-page.png +0 -0
@@ -5,7 +5,6 @@ class ProsopoApiError extends Error {
5
5
  constructor(error, context, ...params) {
6
6
  super(`${error.data.message ? error.data.message : error.statusText}`);
7
7
  this.name = context && `${ProsopoApiError.name}@${context}` || ProsopoApiError.name;
8
- // TODO: if env.debug
9
8
  console.error('\n********************* ERROR *********************\n');
10
9
  console.error(this.cause, this.stack, ...params);
11
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/api/handlers.ts"],"names":[],"mappings":";;;AAiBA,MAAa,eAAgB,SAAQ,KAAK;IACxC,YAAY,KAAoB,EAAE,OAAgB,EAAE,GAAG,MAAa;QAElE,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAA;QAEtE,IAAI,CAAC,IAAI,GAAG,OAAO,IAAI,GAAG,eAAe,CAAC,IAAI,IAAI,OAAO,EAAE,IAAI,eAAe,CAAC,IAAI,CAAC;QAEpF,qBAAqB;QACrB,OAAO,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;QACvE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,CAAC;IACnD,CAAC;CACF;AAXD,0CAWC"}
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/api/handlers.ts"],"names":[],"mappings":";;;AAiBA,MAAa,eAAgB,SAAQ,KAAK;IACtC,YAAY,KAAoB,EAAE,OAAgB,EAAE,GAAG,MAAa;QAEhE,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAA;QAEtE,IAAI,CAAC,IAAI,GAAG,OAAO,IAAI,GAAG,eAAe,CAAC,IAAI,IAAI,OAAO,EAAE,IAAI,eAAe,CAAC,IAAI,CAAC;QAGpF,OAAO,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;QACvE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,CAAC;IACrD,CAAC;CACJ;AAXD,0CAWC"}
@@ -1,5 +1,6 @@
1
1
  export * from './AsyncFactory';
2
- export * from './Extension';
2
+ export * from './ExtensionWeb3';
3
+ export * from './ExtensionWeb2';
3
4
  export * from './HttpClientBase';
4
5
  export * from './ProsopoContract';
5
6
  export * from './ProsopoContractBase';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAeA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAeA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC"}
package/dist/api/index.js CHANGED
@@ -17,7 +17,8 @@ const tslib_1 = require("tslib");
17
17
  // You should have received a copy of the GNU General Public License
18
18
  // along with procaptcha. If not, see <http://www.gnu.org/licenses/>.
19
19
  tslib_1.__exportStar(require("./AsyncFactory"), exports);
20
- tslib_1.__exportStar(require("./Extension"), exports);
20
+ tslib_1.__exportStar(require("./ExtensionWeb3"), exports);
21
+ tslib_1.__exportStar(require("./ExtensionWeb2"), exports);
21
22
  tslib_1.__exportStar(require("./HttpClientBase"), exports);
22
23
  tslib_1.__exportStar(require("./ProsopoContract"), exports);
23
24
  tslib_1.__exportStar(require("./ProsopoContractBase"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,8EAA8E;AAC9E,EAAE;AACF,qEAAqE;AACrE,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,gEAAgE;AAChE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,sEAAsE;AACtE,yDAA+B;AAC/B,sDAA4B;AAC5B,2DAAiC;AACjC,4DAAkC;AAClC,gEAAsC;AACtC,wDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,8EAA8E;AAC9E,EAAE;AACF,qEAAqE;AACrE,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,gEAAgE;AAChE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,sEAAsE;AACtE,yDAA+B;AAC/B,0DAAgC;AAChC,0DAAgC;AAChC,2DAAiC;AACjC,4DAAkC;AAClC,gEAAsC;AACtC,wDAA8B"}
@@ -1,16 +1,20 @@
1
- import { CaptchaSolution } from '@prosopo/contract';
1
+ import { CaptchaSolution } from "@prosopo/contract";
2
2
  import { Signer } from "@polkadot/api/types";
3
3
  import { ProsopoRandomProviderResponse, GetCaptchaResponse } from "../types/api";
4
4
  import ProviderApi from "../api/ProviderApi";
5
5
  import ProsopoContract from "../api/ProsopoContract";
6
6
  import { TCaptchaSubmitResult } from '../types/client';
7
+ export declare type SubmitFunction = typeof ProsopoCaptchaApi.prototype.submitCaptchaSolutionWeb3 | typeof ProsopoCaptchaApi.prototype.submitCaptchaSolutionWeb2;
7
8
  export declare class ProsopoCaptchaApi {
8
9
  protected contract: ProsopoContract;
9
10
  protected provider: ProsopoRandomProviderResponse;
10
11
  protected providerApi: ProviderApi;
11
- constructor(contract: ProsopoContract, provider: ProsopoRandomProviderResponse, providerApi: ProviderApi);
12
+ protected submitCaptchaFn: SubmitFunction;
13
+ constructor(contract: ProsopoContract, provider: ProsopoRandomProviderResponse, providerApi: ProviderApi, web2: boolean);
12
14
  getCaptchaChallenge(): Promise<GetCaptchaResponse>;
13
15
  submitCaptchaSolution(signer: Signer, requestHash: string, datasetId: string, solutions: CaptchaSolution[]): Promise<TCaptchaSubmitResult>;
16
+ submitCaptchaSolutionWeb2(signer: Signer, requestHash: string, datasetId: string, solutions: CaptchaSolution[]): Promise<TCaptchaSubmitResult>;
17
+ submitCaptchaSolutionWeb3(signer: Signer, requestHash: string, datasetId: string, solutions: CaptchaSolution[]): Promise<TCaptchaSubmitResult>;
14
18
  }
15
19
  export default ProsopoCaptchaApi;
16
20
  //# sourceMappingURL=ProsopoCaptchaApi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProsopoCaptchaApi.d.ts","sourceRoot":"","sources":["../../src/modules/ProsopoCaptchaApi.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,eAAe,EAAgD,MAAM,mBAAmB,CAAC;AAClG,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,6BAA6B,EAAE,kBAAkB,EAA2B,MAAM,cAAc,CAAC;AAG1G,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAC7C,OAAO,eAAe,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAYvD,qBAAa,iBAAiB;IAE1B,SAAS,CAAC,QAAQ,EAAE,eAAe,CAAC;IACpC,SAAS,CAAC,QAAQ,EAAE,6BAA6B,CAAC;IAClD,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;gBAEvB,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,6BAA6B,EAAE,WAAW,EAAE,WAAW;IAM3F,mBAAmB,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAUlD,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,GAAI,OAAO,CAAC,oBAAoB,CAAC;CA0C3J;AAED,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"ProsopoCaptchaApi.d.ts","sourceRoot":"","sources":["../../src/modules/ProsopoCaptchaApi.ts"],"names":[],"mappings":"AAiBA,OAAO,EACH,eAAe,EAGlB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,6BAA6B,EAAE,kBAAkB,EAA2B,MAAM,cAAc,CAAC;AAG1G,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAC7C,OAAO,eAAe,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAC,oBAAoB,EAAC,MAAM,iBAAiB,CAAC;AAWrD,oBAAY,cAAc,GACtB,OAAO,iBAAiB,CAAC,SAAS,CAAC,yBAAyB,GAC1D,OAAO,iBAAiB,CAAC,SAAS,CAAC,yBAAyB,CAAC;AAEnE,qBAAa,iBAAiB;IAE1B,SAAS,CAAC,QAAQ,EAAE,eAAe,CAAC;IACpC,SAAS,CAAC,QAAQ,EAAE,6BAA6B,CAAC;IAClD,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;IACnC,SAAS,CAAC,eAAe,EAAE,cAAc,CAAA;gBAE7B,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,6BAA6B,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO;IAO1G,mBAAmB,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAUlD,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAIjJ,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAmBvI,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,GAAI,OAAO,CAAC,oBAAoB,CAAC;CA+C/J;AAED,eAAe,iBAAiB,CAAC"}
@@ -17,23 +17,25 @@ exports.ProsopoCaptchaApi = void 0;
17
17
  // You should have received a copy of the GNU General Public License
18
18
  // along with procaptcha. If not, see <http://www.gnu.org/licenses/>.
19
19
  const util_crypto_1 = require("@polkadot/util-crypto");
20
- // import {computeCaptchaSolutionHash} from '@prosopo/provider'; // TODO
20
+ // import {computeCaptchaSolutionHash} from '@prosopo/provider';
21
21
  const contract_1 = require("@prosopo/contract");
22
22
  const handlers_1 = require("../api/handlers");
23
23
  function hexHash(data) {
24
24
  return (0, util_crypto_1.blake2AsHex)(data);
25
25
  }
26
26
  function computeCaptchaSolutionHash(captcha) {
27
- return hexHash([captcha.captchaId, captcha.solution, captcha.salt].join());
27
+ return hexHash([captcha.captchaId, [...captcha.solution].sort(), captcha.salt].join());
28
28
  }
29
29
  class ProsopoCaptchaApi {
30
30
  contract;
31
31
  provider;
32
32
  providerApi;
33
- constructor(contract, provider, providerApi) {
33
+ submitCaptchaFn;
34
+ constructor(contract, provider, providerApi, web2) {
34
35
  this.contract = contract;
35
36
  this.provider = provider;
36
37
  this.providerApi = providerApi;
38
+ this.submitCaptchaFn = web2 ? this.submitCaptchaSolutionWeb2 : this.submitCaptchaSolutionWeb3;
37
39
  }
38
40
  async getCaptchaChallenge() {
39
41
  let captchaChallenge;
@@ -46,9 +48,30 @@ class ProsopoCaptchaApi {
46
48
  return captchaChallenge;
47
49
  }
48
50
  async submitCaptchaSolution(signer, requestHash, datasetId, solutions) {
51
+ return this.submitCaptchaFn(signer, requestHash, datasetId, solutions);
52
+ }
53
+ async submitCaptchaSolutionWeb2(signer, requestHash, datasetId, solutions) {
54
+ const salt = (0, util_crypto_1.randomAsHex)();
55
+ const captchaSolutionsSalted = solutions.map((captcha) => ({
56
+ ...captcha,
57
+ salt,
58
+ }));
59
+ let result;
60
+ try {
61
+ result = await this.providerApi.submitCaptchaSolution(captchaSolutionsSalted, requestHash, this.contract.getAccount().address, salt, undefined, undefined, true);
62
+ }
63
+ catch (err) {
64
+ throw new handlers_1.ProsopoApiError(err);
65
+ }
66
+ return [result, undefined, undefined];
67
+ }
68
+ async submitCaptchaSolutionWeb3(signer, requestHash, datasetId, solutions) {
49
69
  const salt = (0, util_crypto_1.randomAsHex)();
50
70
  const tree = new contract_1.CaptchaMerkleTree();
51
- const captchaSolutionsSalted = solutions.map(solution => ({ ...solution, salt: salt }));
71
+ const captchaSolutionsSalted = solutions.map((captcha) => ({
72
+ ...captcha,
73
+ salt,
74
+ }));
52
75
  const captchasHashed = captchaSolutionsSalted.map((captcha) => computeCaptchaSolutionHash(captcha));
53
76
  tree.build(captchasHashed);
54
77
  const commitmentId = tree.root.hash;
@@ -65,13 +88,12 @@ class ProsopoCaptchaApi {
65
88
  }
66
89
  let result;
67
90
  try {
68
- result = await this.providerApi.submitCaptchaSolution(tx.blockHash, captchaSolutionsSalted, requestHash, tx.txHash.toString(), this.contract.getAccount().address);
91
+ result = await this.providerApi.submitCaptchaSolution(captchaSolutionsSalted, requestHash, this.contract.getAccount().address, salt, tx.blockHash, tx.txHash.toString());
69
92
  }
70
93
  catch (err) {
71
94
  throw new handlers_1.ProsopoApiError(err);
72
95
  }
73
96
  let commitment;
74
- // TODO concurrency?
75
97
  try {
76
98
  commitment = await this.contract.getCaptchaSolutionCommitment(commitmentId);
77
99
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ProsopoCaptchaApi.js","sourceRoot":"","sources":["../../src/modules/ProsopoCaptchaApi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProsopoCaptchaApi.js","sourceRoot":"","sources":["../../src/modules/ProsopoCaptchaApi.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,8EAA8E;AAC9E,EAAE;AACF,qEAAqE;AACrE,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,gEAAgE;AAChE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,sEAAsE;AACtE,uDAAiE;AACjE,gEAAgE;AAChE,gDAI2B;AAS3B,8CAAgD;AAEhD,SAAS,OAAO,CAAC,IAAyB;IACtC,OAAO,IAAA,yBAAW,EAAC,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,0BAA0B,CAAC,OAAwB;IACxD,OAAO,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AAC3F,CAAC;AAMD,MAAa,iBAAiB;IAEhB,QAAQ,CAAkB;IAC1B,QAAQ,CAAgC;IACxC,WAAW,CAAc;IACzB,eAAe,CAAgB;IAEzC,YAAY,QAAyB,EAAE,QAAuC,EAAE,WAAwB,EAAE,IAAa;QACnH,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC;IAClG,CAAC;IAEM,KAAK,CAAC,mBAAmB;QAC5B,IAAI,gBAAoC,CAAC;QACzC,IAAI;YACA,gBAAgB,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAChF;QAAC,OAAO,GAAG,EAAE;YACV,MAAM,IAAI,0BAAe,CAAC,GAAG,CAAC,CAAA;SACjC;QACD,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAEM,KAAK,CAAC,qBAAqB,CAAC,MAAc,EAAE,WAAmB,EAAE,SAAiB,EAAE,SAA4B;QACnH,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,MAAc,EAAE,WAAmB,EAAE,SAAiB,EAAE,SAA4B;QAChH,MAAM,IAAI,GAAG,IAAA,yBAAW,GAAE,CAAC;QAC3B,MAAM,sBAAsB,GAAsB,SAAS,CAAC,GAAG,CAC3D,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACV,GAAG,OAAO;YACV,IAAI;SACP,CAAC,CACL,CAAC;QAEF,IAAI,MAA+B,CAAC;QAEpC,IAAI;YACA,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,sBAAsB,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;SACpK;QAAC,OAAO,GAAG,EAAE;YACV,MAAM,IAAI,0BAAe,CAAC,GAAG,CAAC,CAAA;SACjC;QACD,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAC1C,CAAC;IAEM,KAAK,CAAC,yBAAyB,CAAC,MAAc,EAAE,WAAmB,EAAE,SAAiB,EAAE,SAA4B;QACvH,MAAM,IAAI,GAAG,IAAA,yBAAW,GAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,IAAI,4BAAiB,EAAE,CAAC;QACrC,MAAM,sBAAsB,GAAsB,SAAS,CAAC,GAAG,CAC3D,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACV,GAAG,OAAO;YACV,IAAI;SACP,CAAC,CACL,CAAC;QACF,MAAM,cAAc,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC;QAEpG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAK,CAAC,IAAI,CAAC;QAErC,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,YAAY,CAAC,CAAC;QAChE,yFAAyF;QACzF,qFAAqF;QACrF,yGAAyG;QAEzG,IAAI,EAAuB,CAAC;QAE5B,IAAI;YACA,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,SAAmB,EAAE,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;SAChH;QAAC,OAAO,GAAG,EAAE;YACV,MAAM,IAAI,0BAAe,CAAC,GAAG,CAAC,CAAA;SACjC;QAED,IAAI,MAA+B,CAAC;QAEpC,IAAI;YACA,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,sBAAsB,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,SAAU,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;SAC7K;QAAC,OAAO,GAAG,EAAE;YACV,MAAM,IAAI,0BAAe,CAAC,GAAG,CAAC,CAAA;SACjC;QAED,IAAI,UAAqC,CAAC;QAG1C,IAAI;YACA,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,4BAA4B,CAAC,YAAY,CAAC,CAAC;SAC/E;QAAC,OAAO,GAAG,EAAE;YACV,MAAM,IAAI,0BAAe,CAAC,GAAG,CAAC,CAAA;SACjC;QAED,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;IACpC,CAAC;CAEJ;AA9FD,8CA8FC;AAED,kBAAe,iBAAiB,CAAC"}
@@ -8,18 +8,17 @@ export declare class ProsopoCaptchaClient {
8
8
  status: ICaptchaStatusReducer;
9
9
  callbacks: CaptchaEventCallbacks | undefined;
10
10
  providerApi: ProviderApi;
11
- solutionThreshold: number;
12
11
  private static extension;
13
12
  private static contract;
14
13
  private static provider;
15
14
  private static captchaApi;
16
15
  constructor(manager: ICaptchaContextReducer, status: ICaptchaStatusReducer, callbacks?: CaptchaEventCallbacks);
17
16
  getExtension(): IExtensionInterface;
18
- setExtension(extension: IExtensionInterface): IExtensionInterface;
17
+ setExtension(extension: IExtensionInterface): void;
19
18
  getContract(): ProsopoContract | undefined;
20
19
  getProvider(): ProsopoRandomProviderResponse | undefined;
21
20
  getCaptchaApi(): ProsopoCaptchaApi | undefined;
22
- onLoad(): Promise<void>;
21
+ onLoad(createAccount?: boolean): Promise<void>;
23
22
  onAccountChange(account?: TExtensionAccount): Promise<void>;
24
23
  onAccountUnset(): void;
25
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ProsopoCaptchaClient.d.ts","sourceRoot":"","sources":["../../src/modules/ProsopoCaptchaClient.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC/I,OAAO,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAE7D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGzD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAIxD,qBAAa,oBAAoB;IAEtB,OAAO,EAAE,sBAAsB,CAAC;IAChC,MAAM,EAAE,qBAAqB,CAAC;IAC9B,SAAS,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAC7C,WAAW,EAAE,WAAW,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAA;IAEhC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAsB;IAC9C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA8B;IACrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA4C;IACnE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAgC;gBAE7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,EAAE,qBAAqB,EAAE,SAAS,CAAC,EAAE,qBAAqB;IAQtG,YAAY;IAIZ,YAAY,CAAC,SAAS,EAAE,mBAAmB;IAI3C,WAAW;IAIX,WAAW;IAIX,aAAa;IAIP,MAAM;IAkBN,eAAe,CAAC,OAAO,CAAC,EAAE,iBAAiB;IAkCjD,cAAc;CAYxB;AAED,eAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"ProsopoCaptchaClient.d.ts","sourceRoot":"","sources":["../../src/modules/ProsopoCaptchaClient.ts"],"names":[],"mappings":"AAeA,OAAO,EACH,sBAAsB,EACtB,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAC,6BAA6B,EAAC,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAGvD,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAC,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AAGtD,qBAAa,oBAAoB;IAEtB,OAAO,EAAE,sBAAsB,CAAC;IAChC,MAAM,EAAE,qBAAqB,CAAC;IAC9B,SAAS,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAC7C,WAAW,EAAE,WAAW,CAAC;IAEhC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAsB;IAC9C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA8B;IACrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA4C;IACnE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAgC;gBAE7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,EAAE,qBAAqB,EAAE,SAAS,CAAC,EAAE,qBAAqB;IAOtG,YAAY;IAIZ,YAAY,CAAC,SAAS,EAAE,mBAAmB;IAI3C,WAAW;IAIX,WAAW;IAIX,aAAa;IAIP,MAAM,CAAC,aAAa,CAAC,EAAE,OAAO;IAkC9B,eAAe,CAAC,OAAO,CAAC,EAAE,iBAAiB;IA2CjD,cAAc;CAYxB;AAED,eAAe,oBAAoB,CAAC"}
@@ -5,13 +5,12 @@ const contract_1 = require("./contract");
5
5
  const extension_1 = require("./extension");
6
6
  const ProviderApi_1 = require("../api/ProviderApi");
7
7
  const ProsopoCaptchaApi_1 = require("./ProsopoCaptchaApi");
8
- // import { Extension } from "../api";
8
+ const contract_2 = require("@prosopo/contract");
9
9
  class ProsopoCaptchaClient {
10
10
  manager;
11
11
  status;
12
12
  callbacks;
13
13
  providerApi;
14
- solutionThreshold;
15
14
  static extension;
16
15
  static contract;
17
16
  static provider;
@@ -21,13 +20,12 @@ class ProsopoCaptchaClient {
21
20
  this.status = status;
22
21
  this.callbacks = callbacks;
23
22
  this.providerApi = new ProviderApi_1.ProviderApi(manager.state.config);
24
- this.solutionThreshold = manager.state.config.solutionThreshold;
25
23
  }
26
24
  getExtension() {
27
25
  return ProsopoCaptchaClient.extension;
28
26
  }
29
27
  setExtension(extension) {
30
- return ProsopoCaptchaClient.extension = extension;
28
+ ProsopoCaptchaClient.extension = extension;
31
29
  }
32
30
  getContract() {
33
31
  return ProsopoCaptchaClient.contract;
@@ -38,20 +36,37 @@ class ProsopoCaptchaClient {
38
36
  getCaptchaApi() {
39
37
  return ProsopoCaptchaClient.captchaApi;
40
38
  }
41
- async onLoad() {
42
- let contractAddress = ProsopoCaptchaClient.contract?.address;
43
- if (!ProsopoCaptchaClient.extension || !contractAddress) {
39
+ async onLoad(createAccount) {
40
+ if (!ProsopoCaptchaClient.extension) {
44
41
  try {
45
- [ProsopoCaptchaClient.extension, { contractAddress }] = await Promise.all([(0, extension_1.getExtension)(), this.providerApi.getContractAddress()]);
42
+ ProsopoCaptchaClient.extension = await (0, extension_1.getExtension)(this.manager.state.config['web2']);
46
43
  }
47
44
  catch (err) {
48
- throw new Error(err);
45
+ throw new contract_2.ProsopoEnvError(err);
49
46
  }
50
47
  }
51
48
  if (this.callbacks?.onLoad) {
52
- this.callbacks.onLoad(ProsopoCaptchaClient.extension, contractAddress);
49
+ this.callbacks.onLoad(ProsopoCaptchaClient.extension, this.manager.state.config['prosopoContractAccount']);
50
+ this.manager.update({ contractAddress: this.manager.state.config['prosopoContractAccount'] });
53
51
  }
54
- this.manager.update({ contractAddress });
52
+ let account;
53
+ if (createAccount) {
54
+ try {
55
+ account = await this.getExtension().createAccount();
56
+ }
57
+ catch (err) {
58
+ throw new contract_2.ProsopoEnvError(err);
59
+ }
60
+ }
61
+ else {
62
+ try {
63
+ account = await this.getExtension().getAccount();
64
+ }
65
+ catch (err) {
66
+ throw new contract_2.ProsopoEnvError(err);
67
+ }
68
+ }
69
+ await this.onAccountChange(account);
55
70
  }
56
71
  async onAccountChange(account) {
57
72
  if (!account) {
@@ -62,21 +77,21 @@ class ProsopoCaptchaClient {
62
77
  ProsopoCaptchaClient.extension.setAccount(account.address);
63
78
  }
64
79
  catch (err) {
65
- throw new Error(err);
80
+ throw new contract_2.ProsopoEnvError(err);
66
81
  }
67
82
  try {
68
- ProsopoCaptchaClient.contract = await (0, contract_1.getProsopoContract)(this.manager.state.contractAddress, this.manager.state.config['dappAccount'], account, (0, contract_1.getWsProvider)(this.manager.state.config['dappUrl']));
83
+ ProsopoCaptchaClient.contract = await (0, contract_1.getProsopoContract)(this.manager.state.config['prosopoContractAccount'], this.manager.state.config['dappAccount'], account, (0, contract_1.getWsProvider)(this.manager.state.config['dappUrl']));
69
84
  }
70
85
  catch (err) {
71
- throw new Error(err);
86
+ throw new contract_2.ProsopoEnvError(err);
72
87
  }
73
88
  try {
74
- ProsopoCaptchaClient.provider = await ProsopoCaptchaClient.contract.getRandomProvider(); // TODO how often should provider change?
89
+ ProsopoCaptchaClient.provider = await ProsopoCaptchaClient.contract.getRandomProvider();
75
90
  }
76
91
  catch (err) {
77
- throw new Error(err);
92
+ throw new contract_2.ProsopoEnvError(err);
78
93
  }
79
- ProsopoCaptchaClient.captchaApi = new ProsopoCaptchaApi_1.ProsopoCaptchaApi(ProsopoCaptchaClient.contract, ProsopoCaptchaClient.provider, this.providerApi);
94
+ ProsopoCaptchaClient.captchaApi = new ProsopoCaptchaApi_1.ProsopoCaptchaApi(ProsopoCaptchaClient.contract, ProsopoCaptchaClient.provider, this.providerApi, this.manager.state.config['web2']);
80
95
  if (this.callbacks?.onAccountChange) {
81
96
  this.callbacks.onAccountChange(account);
82
97
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ProsopoCaptchaClient.js","sourceRoot":"","sources":["../../src/modules/ProsopoCaptchaClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProsopoCaptchaClient.js","sourceRoot":"","sources":["../../src/modules/ProsopoCaptchaClient.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { ICaptchaStateReducer, TCaptchaSubmitResult } from "../types/client";
2
- import { CaptchaSolution, GetCaptchaResponse } from "../types/api";
2
+ import { GetCaptchaResponse } from "../types/api";
3
3
  import { ProsopoCaptchaClient } from "./ProsopoCaptchaClient";
4
+ import { CaptchaSolution } from "@prosopo/contract";
4
5
  export declare class ProsopoCaptchaStateClient {
5
6
  context: ProsopoCaptchaClient;
6
7
  manager: ICaptchaStateReducer;
@@ -9,9 +10,9 @@ export declare class ProsopoCaptchaStateClient {
9
10
  onCancel(): void;
10
11
  onSubmit(): Promise<void>;
11
12
  onSolved(submitResult: TCaptchaSubmitResult): Promise<void>;
12
- onChange(index: number): void;
13
+ onChange(hash: string): void;
13
14
  dismissCaptcha(): void;
14
- parseSolution(captchaChallenge: GetCaptchaResponse, captchaSolution: number[][]): CaptchaSolution[];
15
+ parseSolution(captchaChallenge: GetCaptchaResponse, captchaSolution: string[][]): CaptchaSolution[];
15
16
  }
16
17
  export default ProsopoCaptchaStateClient;
17
18
  //# sourceMappingURL=ProsopoCaptchaStateClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProsopoCaptchaStateClient.d.ts","sourceRoot":"","sources":["../../src/modules/ProsopoCaptchaStateClient.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,eAAe,EAA2B,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAG5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAI9D,qBAAa,yBAAyB;IAE3B,OAAO,EAAE,oBAAoB,CAAC;IAC9B,OAAO,EAAE,oBAAoB,CAAC;gBAEzB,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,oBAAoB;IAK3D,aAAa;IAoBnB,QAAQ;IAOF,QAAQ;IA0CR,QAAQ,CAAC,YAAY,EAAE,oBAAoB;IAajD,QAAQ,CAAC,KAAK,EAAE,MAAM;IAetB,cAAc;IAKd,aAAa,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,GAAG,eAAe,EAAE;CAc7G;AAED,eAAe,yBAAyB,CAAC"}
1
+ {"version":3,"file":"ProsopoCaptchaStateClient.d.ts","sourceRoot":"","sources":["../../src/modules/ProsopoCaptchaStateClient.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EACH,eAAe,EAGlB,MAAM,mBAAmB,CAAC;AAG3B,qBAAa,yBAAyB;IAE3B,OAAO,EAAE,oBAAoB,CAAC;IAC9B,OAAO,EAAE,oBAAoB,CAAC;gBAEzB,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,oBAAoB;IAK3D,aAAa;IAqBnB,QAAQ;IAOF,QAAQ;IAsDR,QAAQ,CAAC,YAAY,EAAE,oBAAoB;IAajD,QAAQ,CAAC,IAAI,EAAE,MAAM;IAerB,cAAc;IAKd,aAAa,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,GAAG,eAAe,EAAE;CAc7G;AAED,eAAe,yBAAyB,CAAC"}
@@ -12,12 +12,13 @@ class ProsopoCaptchaStateClient {
12
12
  async onLoadCaptcha() {
13
13
  let captchaChallenge;
14
14
  try {
15
- captchaChallenge = await this.context.getCaptchaApi().getCaptchaChallenge();
15
+ captchaChallenge = await this.context.getCaptchaApi()?.getCaptchaChallenge();
16
16
  }
17
17
  catch (err) {
18
18
  captchaChallenge = err;
19
+ throw new contract_1.ProsopoEnvError(captchaChallenge);
19
20
  }
20
- if (this.context.callbacks?.onLoadCaptcha) {
21
+ if (this.context.callbacks?.onLoadCaptcha && captchaChallenge) {
21
22
  this.context.callbacks.onLoadCaptcha(captchaChallenge);
22
23
  }
23
24
  if (captchaChallenge instanceof Error) {
@@ -39,45 +40,48 @@ class ProsopoCaptchaStateClient {
39
40
  this.manager.update({ captchaIndex: nextCaptchaIndex, captchaSolution });
40
41
  return;
41
42
  }
42
- const signer = this.context.getExtension().getExtension().signer;
43
+ const signer = this.context.getExtension().getExtension()?.signer;
43
44
  const currentCaptcha = captchaChallenge.captchas[captchaIndex];
44
- const { datasetId } = currentCaptcha.captcha; // TODO arbitrary datasetId? Could datasetId be moved up next to requestHash?
45
+ const { datasetId } = currentCaptcha.captcha;
45
46
  const solutions = this.parseSolution(captchaChallenge, captchaSolution);
46
47
  let submitResult;
47
- try {
48
- submitResult = await this.context.getCaptchaApi().submitCaptchaSolution(signer, captchaChallenge.requestHash, datasetId, solutions);
49
- }
50
- catch (err) {
51
- submitResult = err;
52
- }
53
- if (this.context.callbacks?.onSubmit) {
54
- this.context.callbacks.onSubmit(submitResult, this.manager.state);
48
+ if (signer) {
49
+ try {
50
+ submitResult = await this.context
51
+ .getCaptchaApi()
52
+ .submitCaptchaSolution(signer, captchaChallenge.requestHash, datasetId, solutions);
53
+ }
54
+ catch (err) {
55
+ submitResult = err;
56
+ }
57
+ if (this.context.callbacks?.onSubmit) {
58
+ this.context.callbacks.onSubmit(submitResult, this.manager.state);
59
+ }
60
+ this.manager.update({ captchaSolution: [] });
61
+ if (submitResult instanceof Error) {
62
+ return;
63
+ }
64
+ await this.onSolved(submitResult);
55
65
  }
56
66
  this.manager.update({ captchaSolution: [] });
57
- if (submitResult instanceof Error) {
58
- // TODO onFail?
59
- return;
60
- }
61
- await this.onSolved(submitResult);
62
67
  }
63
- // TODO check for solved captchas.
64
68
  async onSolved(submitResult) {
65
69
  let isHuman;
66
70
  try {
67
- isHuman = await this.context.getContract()?.dappOperatorIsHumanUser(this.context.solutionThreshold);
71
+ isHuman = await this.context.getContract()?.dappOperatorIsHumanUser(this.context.manager.state.config['solutionThreshold']);
68
72
  }
69
73
  catch (err) {
70
- // TODO
74
+ console.log("Error determining whether user is human");
71
75
  }
72
76
  this.dismissCaptcha();
73
77
  if (this.context.callbacks?.onSolved) {
74
78
  this.context.callbacks.onSolved(submitResult, isHuman);
75
79
  }
76
80
  }
77
- onChange(index) {
81
+ onChange(hash) {
78
82
  const { captchaIndex, captchaSolution } = this.manager.state;
79
83
  let currentSolution = captchaSolution[captchaIndex] || [];
80
- currentSolution = currentSolution.includes(index) ? currentSolution.filter(item => item !== index) : [...currentSolution, index];
84
+ currentSolution = currentSolution.includes(hash) ? currentSolution.filter(item => item !== hash) : [...currentSolution, hash];
81
85
  captchaSolution[captchaIndex] = currentSolution;
82
86
  if (this.context.callbacks?.onChange) {
83
87
  this.context.callbacks.onChange(captchaSolution, captchaIndex);
@@ -87,13 +91,12 @@ class ProsopoCaptchaStateClient {
87
91
  dismissCaptcha() {
88
92
  this.manager.update({ captchaChallenge: undefined });
89
93
  }
90
- // TODO move to ProsopoContract/ProviderApi/Model?
91
94
  parseSolution(captchaChallenge, captchaSolution) {
92
95
  const parsedSolution = [];
93
96
  for (const [index, challenge] of captchaChallenge.captchas.entries()) {
94
97
  const solution = captchaSolution[index] || [];
95
- challenge.captcha.solution = solution;
96
- parsedSolution[index] = (0, contract_1.convertCaptchaToCaptchaSolution)(challenge.captcha);
98
+ // challenge.captcha.solution = solution;
99
+ parsedSolution[index] = (0, contract_1.convertCaptchaToCaptchaSolution)({ ...challenge.captcha, solution });
97
100
  }
98
101
  console.log("CAPTCHA SOLUTIONS", parsedSolution);
99
102
  return parsedSolution;
@@ -1 +1 @@
1
- {"version":3,"file":"ProsopoCaptchaStateClient.js","sourceRoot":"","sources":["../../src/modules/ProsopoCaptchaStateClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProsopoCaptchaStateClient.js","sourceRoot":"","sources":["../../src/modules/ProsopoCaptchaStateClient.ts"],"names":[],"mappings":"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"}
@@ -27,4 +27,16 @@ async function getProsopoContract(address, dappAddress, account, providerInterfa
27
27
  return await ProsopoContract_1.default.create(address, dappAddress, account, providerInterface ?? getWsProvider());
28
28
  }
29
29
  exports.getProsopoContract = getProsopoContract;
30
+ // export async function getWsProvider(url?: string): Promise<WsProvider> {
31
+ // const provider = new WsProvider(url, 0);
32
+ // try {
33
+ // await provider.connect();
34
+ // } catch (err) {
35
+ // throw new ProsopoEnvError(`${err.message} ${url}`);
36
+ // }
37
+ // return provider;
38
+ // }
39
+ // export async function getProsopoContract(address: string, dappAddress: string, account: InjectedAccountWithMeta, url?: string): Promise<ProsopoContract> {
40
+ // return await ProsopoContract.create(address, dappAddress, account, await getWsProvider(url));
41
+ // }
30
42
  //# sourceMappingURL=contract.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/modules/contract.ts"],"names":[],"mappings":";;;;AAAA,4CAA4C;AAC5C,8EAA8E;AAC9E,EAAE;AACF,qEAAqE;AACrE,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,gEAAgE;AAChE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,sEAAsE;AACtE,qFAAqD;AACrD,yDAAkE;AAIlE,SAAgB,aAAa,CAAC,GAAY;IACtC,OAAO,IAAI,yBAAU,CAAC,GAAG,CAAC,CAAC;AAC/B,CAAC;AAFD,sCAEC;AAEM,KAAK,UAAU,kBAAkB,CAAC,OAAe,EAAE,WAAmB,EAAE,OAAgC,EAAE,iBAAqC;IAClJ,OAAO,MAAM,yBAAe,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,IAAI,aAAa,EAAE,CAAC,CAAC;AAC7G,CAAC;AAFD,gDAEC"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/modules/contract.ts"],"names":[],"mappings":";;;;AAAA,4CAA4C;AAC5C,8EAA8E;AAC9E,EAAE;AACF,qEAAqE;AACrE,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,gEAAgE;AAChE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,sEAAsE;AACtE,qFAAqD;AACrD,yDAAkE;AAIlE,SAAgB,aAAa,CAAC,GAAY;IACtC,OAAO,IAAI,yBAAU,CAAC,GAAG,CAAC,CAAC;AAC/B,CAAC;AAFD,sCAEC;AAEM,KAAK,UAAU,kBAAkB,CAAC,OAAe,EAAE,WAAmB,EAAE,OAAgC,EAAE,iBAAqC;IAClJ,OAAO,MAAM,yBAAe,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,IAAI,aAAa,EAAE,CAAC,CAAC;AAC7G,CAAC;AAFD,gDAEC;AAED,2EAA2E;AAC3E,+CAA+C;AAC/C,YAAY;AACZ,oCAAoC;AACpC,sBAAsB;AACtB,8DAA8D;AAC9D,QAAQ;AACR,uBAAuB;AACvB,IAAI;AAEJ,6JAA6J;AAC7J,oGAAoG;AACpG,IAAI"}
@@ -1,3 +1,3 @@
1
- import Extension from "../api/Extension";
2
- export declare function getExtension(): Promise<Extension>;
1
+ import { IExtensionInterface } from "../types/index";
2
+ export declare function getExtension(web2: boolean): Promise<IExtensionInterface>;
3
3
  //# sourceMappingURL=extension.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../src/modules/extension.ts"],"names":[],"mappings":"AAeA,OAAO,SAAS,MAAM,kBAAkB,CAAC;AAEzC,wBAAsB,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC,CAEvD"}
1
+ {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../src/modules/extension.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAC,mBAAmB,EAAC,MAAM,gBAAgB,CAAC;AAEnD,wBAAsB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAM9E"}
@@ -17,9 +17,15 @@ const tslib_1 = require("tslib");
17
17
  //
18
18
  // You should have received a copy of the GNU General Public License
19
19
  // along with procaptcha. If not, see <http://www.gnu.org/licenses/>.
20
- const Extension_1 = tslib_1.__importDefault(require("../api/Extension"));
21
- async function getExtension() {
22
- return await Extension_1.default.create();
20
+ const ExtensionWeb2_1 = tslib_1.__importDefault(require("../api/ExtensionWeb2"));
21
+ const ExtensionWeb3_1 = tslib_1.__importDefault(require("../api/ExtensionWeb3"));
22
+ async function getExtension(web2) {
23
+ if (web2) {
24
+ return await ExtensionWeb2_1.default.create();
25
+ }
26
+ else {
27
+ return await ExtensionWeb3_1.default.create();
28
+ }
23
29
  }
24
30
  exports.getExtension = getExtension;
25
31
  //# sourceMappingURL=extension.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"extension.js","sourceRoot":"","sources":["../../src/modules/extension.ts"],"names":[],"mappings":";;;;AAAA,4CAA4C;AAC5C,8EAA8E;AAC9E,EAAE;AACF,qEAAqE;AACrE,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,gEAAgE;AAChE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,sEAAsE;AACtE,yEAAyC;AAElC,KAAK,UAAU,YAAY;IAC9B,OAAO,MAAM,mBAAS,CAAC,MAAM,EAAE,CAAC;AACpC,CAAC;AAFD,oCAEC"}
1
+ {"version":3,"file":"extension.js","sourceRoot":"","sources":["../../src/modules/extension.ts"],"names":[],"mappings":";;;;AAAA,4CAA4C;AAC5C,8EAA8E;AAC9E,EAAE;AACF,qEAAqE;AACrE,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,gEAAgE;AAChE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,sEAAsE;AACtE,iFAAiD;AACjD,iFAAiD;AAG1C,KAAK,UAAU,YAAY,CAAC,IAAa;IAC5C,IAAI,IAAI,EAAE;QACN,OAAO,MAAM,uBAAa,CAAC,MAAM,EAAE,CAAC;KACvC;SAAM;QACH,OAAO,MAAM,uBAAa,CAAC,MAAM,EAAE,CAAC;KACvC;AACL,CAAC;AAND,oCAMC"}
@@ -13,23 +13,14 @@ export interface ProposoProvider {
13
13
  serviceOrigin: string;
14
14
  status: string;
15
15
  }
16
- export interface CaptchaImageSchema {
17
- path: string;
18
- type: string;
19
- }
20
16
  export interface CaptchaResponseCaptcha {
21
- captcha: Captcha;
17
+ captcha: Omit<Captcha, 'solution'>;
22
18
  proof: string[][];
23
19
  }
24
20
  export interface GetCaptchaResponse {
25
21
  captchas: CaptchaResponseCaptcha[];
26
22
  requestHash: string;
27
23
  }
28
- export interface CaptchaSolution {
29
- captchaId: string;
30
- solution: number[];
31
- salt: string;
32
- }
33
24
  export interface CaptchaSolutionResponse {
34
25
  captchas: CaptchaResponseCaptcha[];
35
26
  status: string;
@@ -41,5 +32,7 @@ export interface ProsopoCaptchaConfig {
41
32
  "dappAccount": string;
42
33
  "dappUrl": string;
43
34
  "solutionThreshold": number;
35
+ "web2": boolean;
36
+ "prosopoContractAccount": string;
44
37
  }
45
38
  //# sourceMappingURL=api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAC,OAAO,EAAgB,MAAM,mBAAmB,CAAC;AAEzD,MAAM,WAAW,6BAA6B;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,eAAe,CAAC;CAC3B;AAED,oBAAY,sCAAsC,GAAG,OAAO,CAAA;AAE5D,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAWD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,MAAM,CAAC;CAC7B"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,MAAM,WAAW,6BAA6B;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,eAAe,CAAC;CAC3B;AAED,oBAAY,sCAAsC,GAAG,OAAO,CAAA;AAE5D,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACnC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,MAAM,EAAE,OAAO,CAAC;IAChB,wBAAwB,EAAE,MAAM,CAAC;CAClC"}