@prosopo/api 0.3.42 → 1.0.1

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.
@@ -1,5 +1,5 @@
1
1
  import { AccountId } from '@prosopo/captcha-contract';
2
- import { CaptchaResponseBody, CaptchaSolution, CaptchaSolutionResponse, GetPowCaptchaResponse, ImageVerificationResponse, NetworkConfig, PowCaptchaSolutionResponse, ProviderRegistered, StoredEvents, VerificationResponse } from '@prosopo/types';
2
+ import { CaptchaResponseBody, CaptchaSolution, CaptchaSolutionResponse, GetPowCaptchaResponse, ImageVerificationResponse, NetworkConfig, PowCaptchaSolutionResponse, ProcaptchaToken, ProviderRegistered, StoredEvents, VerificationResponse } from '@prosopo/types';
3
3
  import { Provider, RandomProvider } from '@prosopo/captcha-contract/types-returns';
4
4
  import HttpClientBase from './HttpClientBase.js';
5
5
  export default class ProviderApi extends HttpClientBase implements ProviderApi {
@@ -8,12 +8,13 @@ export default class ProviderApi extends HttpClientBase implements ProviderApi {
8
8
  constructor(network: NetworkConfig, providerUrl: string, account: AccountId);
9
9
  getCaptchaChallenge(userAccount: AccountId, randomProvider: RandomProvider): Promise<CaptchaResponseBody>;
10
10
  submitCaptchaSolution(captchas: CaptchaSolution[], requestHash: string, userAccount: AccountId, salt: string, signature?: string): Promise<CaptchaSolutionResponse>;
11
- verifyDappUser(dapp: AccountId, userAccount: AccountId, blockNumber: number, commitmentId?: string, maxVerifiedTime?: number): Promise<ImageVerificationResponse>;
11
+ verifyDappUser(token: ProcaptchaToken, dappUserSignature: string, maxVerifiedTime?: number): Promise<ImageVerificationResponse>;
12
+ verifyUser(token: ProcaptchaToken, dappUserSignature: string, maxVerifiedTime?: number): Promise<ImageVerificationResponse>;
12
13
  getPowCaptchaChallenge(user: AccountId, dapp: AccountId): Promise<GetPowCaptchaResponse>;
13
14
  submitPowCaptchaSolution(challenge: GetPowCaptchaResponse, userAccount: AccountId, dappAccount: AccountId, randomProvider: RandomProvider, nonce: number, timeout?: number): Promise<PowCaptchaSolutionResponse>;
14
15
  submitUserEvents(events: StoredEvents, accountId: AccountId): Promise<unknown>;
15
16
  getProviderStatus(): Promise<ProviderRegistered>;
16
17
  getProviderDetails(): Promise<Provider>;
17
- submitPowCaptchaVerify(challenge: string, dapp: string, recencyLimit: number): Promise<VerificationResponse>;
18
+ submitPowCaptchaVerify(token: string, signatureHex: string, recencyLimit: number): Promise<VerificationResponse>;
18
19
  }
19
20
  //# sourceMappingURL=ProviderApi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProviderApi.d.ts","sourceRoot":"","sources":["../../src/api/ProviderApi.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAGH,mBAAmB,EACnB,eAAe,EAGf,uBAAuB,EAEvB,qBAAqB,EACrB,yBAAyB,EACzB,aAAa,EACb,0BAA0B,EAC1B,kBAAkB,EAElB,YAAY,EAEZ,oBAAoB,EAEvB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAA;AAClF,OAAO,cAAc,MAAM,qBAAqB,CAAA;AAEhD,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,cAAe,YAAW,WAAW;IAC1E,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,OAAO,CAAW;gBAEd,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS;IASpE,mBAAmB,CAAC,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,mBAAmB,CAAC;IASzG,qBAAqB,CACxB,QAAQ,EAAE,eAAe,EAAE,EAC3B,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,SAAS,EACtB,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,uBAAuB,CAAC;IAY5B,cAAc,CACjB,IAAI,EAAE,SAAS,EACf,WAAW,EAAE,SAAS,EACtB,WAAW,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,MAAM,EACrB,eAAe,CAAC,EAAE,MAAM,GACzB,OAAO,CAAC,yBAAyB,CAAC;IAiB9B,sBAAsB,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAQxF,wBAAwB,CAC3B,SAAS,EAAE,qBAAqB,EAChC,WAAW,EAAE,SAAS,EACtB,WAAW,EAAE,SAAS,EACtB,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,0BAA0B,CAAC;IAgB/B,gBAAgB,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS;IAI3D,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAIhD,kBAAkB,IAAI,OAAO,CAAC,QAAQ,CAAC;IAIvC,sBAAsB,CACzB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,GACrB,OAAO,CAAC,oBAAoB,CAAC;CAQnC"}
1
+ {"version":3,"file":"ProviderApi.d.ts","sourceRoot":"","sources":["../../src/api/ProviderApi.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAGH,mBAAmB,EACnB,eAAe,EAGf,uBAAuB,EAEvB,qBAAqB,EACrB,yBAAyB,EACzB,aAAa,EACb,0BAA0B,EAC1B,eAAe,EACf,kBAAkB,EAElB,YAAY,EAEZ,oBAAoB,EAEvB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAA;AAClF,OAAO,cAAc,MAAM,qBAAqB,CAAA;AAEhD,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,cAAe,YAAW,WAAW;IAC1E,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,OAAO,CAAW;gBAEd,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS;IASpE,mBAAmB,CAAC,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,mBAAmB,CAAC;IASzG,qBAAqB,CACxB,QAAQ,EAAE,eAAe,EAAE,EAC3B,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,SAAS,EACtB,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,uBAAuB,CAAC;IAY5B,cAAc,CACjB,KAAK,EAAE,eAAe,EACtB,iBAAiB,EAAE,MAAM,EACzB,eAAe,CAAC,EAAE,MAAM,GACzB,OAAO,CAAC,yBAAyB,CAAC;IAY9B,UAAU,CACb,KAAK,EAAE,eAAe,EACtB,iBAAiB,EAAE,MAAM,EACzB,eAAe,CAAC,EAAE,MAAM,GACzB,OAAO,CAAC,yBAAyB,CAAC;IAU9B,sBAAsB,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAQxF,wBAAwB,CAC3B,SAAS,EAAE,qBAAqB,EAChC,WAAW,EAAE,SAAS,EACtB,WAAW,EAAE,SAAS,EACtB,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,0BAA0B,CAAC;IAgB/B,gBAAgB,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS;IAI3D,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAIhD,kBAAkB,IAAI,OAAO,CAAC,QAAQ,CAAC;IAIvC,sBAAsB,CACzB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,GACrB,OAAO,CAAC,oBAAoB,CAAC;CAQnC"}
@@ -12,9 +12,7 @@ export default class ProviderApi extends HttpClientBase {
12
12
  getCaptchaChallenge(userAccount, randomProvider) {
13
13
  const { provider, blockNumber } = randomProvider;
14
14
  const dappAccount = this.account;
15
- const url = `${ApiPaths.GetCaptchaChallenge}/${provider.datasetId}/${userAccount}/${dappAccount}/${blockNumber
16
- .toString()
17
- .replace(/,/g, '')}`;
15
+ const url = `${ApiPaths.GetImageCaptchaChallenge}/${provider.datasetId}/${userAccount}/${dappAccount}/${blockNumber.toString().replace(/,/g, '')}`;
18
16
  return this.fetch(url);
19
17
  }
20
18
  submitCaptchaSolution(captchas, requestHash, userAccount, salt, signature) {
@@ -26,17 +24,25 @@ export default class ProviderApi extends HttpClientBase {
26
24
  salt,
27
25
  signature,
28
26
  });
29
- return this.post(ApiPaths.SubmitCaptchaSolution, captchaSolutionBody);
27
+ return this.post(ApiPaths.SubmitImageCaptchaSolution, captchaSolutionBody);
30
28
  }
31
- verifyDappUser(dapp, userAccount, blockNumber, commitmentId, maxVerifiedTime) {
32
- const payload = { dapp: dapp, user: userAccount, blockNumber };
33
- if (commitmentId) {
34
- payload['commitmentId'] = commitmentId;
35
- }
29
+ verifyDappUser(token, dappUserSignature, maxVerifiedTime) {
30
+ const payload = {
31
+ [ApiParams.token]: token,
32
+ [ApiParams.dappUserSignature]: dappUserSignature,
33
+ };
36
34
  if (maxVerifiedTime) {
37
- payload['maxVerifiedTime'] = maxVerifiedTime;
35
+ payload[ApiParams.maxVerifiedTime] = maxVerifiedTime;
38
36
  }
39
- return this.post(ApiPaths.VerifyCaptchaSolution, payload);
37
+ return this.post(ApiPaths.VerifyImageCaptchaSolutionDapp, payload);
38
+ }
39
+ verifyUser(token, dappUserSignature, maxVerifiedTime) {
40
+ const payload = {
41
+ [ApiParams.token]: token,
42
+ [ApiParams.dappUserSignature]: dappUserSignature,
43
+ ...(maxVerifiedTime && { [ApiParams.maxVerifiedTime]: maxVerifiedTime }),
44
+ };
45
+ return this.post(ApiPaths.VerifyImageCaptchaSolutionUser, payload);
40
46
  }
41
47
  getPowCaptchaChallenge(user, dapp) {
42
48
  const body = {
@@ -68,13 +74,13 @@ export default class ProviderApi extends HttpClientBase {
68
74
  getProviderDetails() {
69
75
  return this.fetch(ApiPaths.GetProviderDetails);
70
76
  }
71
- submitPowCaptchaVerify(challenge, dapp, recencyLimit) {
77
+ submitPowCaptchaVerify(token, signatureHex, recencyLimit) {
72
78
  const body = {
73
- [ApiParams.challenge]: challenge,
74
- [ApiParams.dapp]: dapp,
79
+ [ApiParams.token]: token,
80
+ [ApiParams.dappSignature]: signatureHex,
75
81
  [ApiParams.verifiedTimeout]: recencyLimit,
76
82
  };
77
- return this.post(ApiPaths.ServerPowCaptchaVerify, body);
83
+ return this.post(ApiPaths.VerifyPowCaptchaSolution, body);
78
84
  }
79
85
  }
80
86
  //# sourceMappingURL=ProviderApi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProviderApi.js","sourceRoot":"","sources":["../../src/api/ProviderApi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProviderApi.js","sourceRoot":"","sources":["../../src/api/ProviderApi.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ class ProviderApi extends HttpClientBase.HttpClientBase {
13
13
  getCaptchaChallenge(userAccount, randomProvider) {
14
14
  const { provider, blockNumber } = randomProvider;
15
15
  const dappAccount = this.account;
16
- const url = `${types.ApiPaths.GetCaptchaChallenge}/${provider.datasetId}/${userAccount}/${dappAccount}/${blockNumber.toString().replace(/,/g, "")}`;
16
+ const url = `${types.ApiPaths.GetImageCaptchaChallenge}/${provider.datasetId}/${userAccount}/${dappAccount}/${blockNumber.toString().replace(/,/g, "")}`;
17
17
  return this.fetch(url);
18
18
  }
19
19
  submitCaptchaSolution(captchas, requestHash, userAccount, salt, signature) {
@@ -25,17 +25,25 @@ class ProviderApi extends HttpClientBase.HttpClientBase {
25
25
  salt,
26
26
  signature
27
27
  });
28
- return this.post(types.ApiPaths.SubmitCaptchaSolution, captchaSolutionBody);
28
+ return this.post(types.ApiPaths.SubmitImageCaptchaSolution, captchaSolutionBody);
29
29
  }
30
- verifyDappUser(dapp, userAccount, blockNumber, commitmentId, maxVerifiedTime) {
31
- const payload = { dapp, user: userAccount, blockNumber };
32
- if (commitmentId) {
33
- payload["commitmentId"] = commitmentId;
34
- }
30
+ verifyDappUser(token, dappUserSignature, maxVerifiedTime) {
31
+ const payload = {
32
+ [types.ApiParams.token]: token,
33
+ [types.ApiParams.dappUserSignature]: dappUserSignature
34
+ };
35
35
  if (maxVerifiedTime) {
36
- payload["maxVerifiedTime"] = maxVerifiedTime;
36
+ payload[types.ApiParams.maxVerifiedTime] = maxVerifiedTime;
37
37
  }
38
- return this.post(types.ApiPaths.VerifyCaptchaSolution, payload);
38
+ return this.post(types.ApiPaths.VerifyImageCaptchaSolutionDapp, payload);
39
+ }
40
+ verifyUser(token, dappUserSignature, maxVerifiedTime) {
41
+ const payload = {
42
+ [types.ApiParams.token]: token,
43
+ [types.ApiParams.dappUserSignature]: dappUserSignature,
44
+ ...maxVerifiedTime && { [types.ApiParams.maxVerifiedTime]: maxVerifiedTime }
45
+ };
46
+ return this.post(types.ApiPaths.VerifyImageCaptchaSolutionUser, payload);
39
47
  }
40
48
  getPowCaptchaChallenge(user, dapp) {
41
49
  const body = {
@@ -68,13 +76,13 @@ class ProviderApi extends HttpClientBase.HttpClientBase {
68
76
  getProviderDetails() {
69
77
  return this.fetch(types.ApiPaths.GetProviderDetails);
70
78
  }
71
- submitPowCaptchaVerify(challenge, dapp, recencyLimit) {
79
+ submitPowCaptchaVerify(token, signatureHex, recencyLimit) {
72
80
  const body = {
73
- [types.ApiParams.challenge]: challenge,
74
- [types.ApiParams.dapp]: dapp,
81
+ [types.ApiParams.token]: token,
82
+ [types.ApiParams.dappSignature]: signatureHex,
75
83
  [types.ApiParams.verifiedTimeout]: recencyLimit
76
84
  };
77
- return this.post(types.ApiPaths.ServerPowCaptchaVerify, body);
85
+ return this.post(types.ApiPaths.VerifyPowCaptchaSolution, body);
78
86
  }
79
87
  }
80
88
  module.exports = ProviderApi;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prosopo/api",
3
- "version": "0.3.42",
3
+ "version": "1.0.1",
4
4
  "description": "Wrapper for the provider API",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -37,11 +37,11 @@
37
37
  },
38
38
  "homepage": "https://github.com/prosopo/captcha#readme",
39
39
  "dependencies": {
40
- "@prosopo/types": "0.3.42"
40
+ "@prosopo/types": "1.0.1"
41
41
  },
42
42
  "devDependencies": {
43
- "@prosopo/captcha-contract": "0.3.42",
44
- "@prosopo/config": "0.3.42",
43
+ "@prosopo/captcha-contract": "1.0.1",
44
+ "@prosopo/config": "1.0.1",
45
45
  "tslib": "2.6.2",
46
46
  "typescript": "5.1.6"
47
47
  },