@prosopo/api 2.0.0 → 2.0.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.
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import { type CaptchaResponseBody, type CaptchaSolution, type CaptchaSolutionResponse, type GetPowCaptchaResponse, type ImageVerificationResponse, type
|
|
1
|
+
import { type CaptchaResponseBody, type CaptchaSolution, type CaptchaSolutionResponse, type GetPowCaptchaResponse, type ImageVerificationResponse, type PowCaptchaSolutionResponse, type ProcaptchaToken, type Provider, type ProviderRegistered, type RandomProvider, type StoredEvents, type VerificationResponse } from "@prosopo/types";
|
|
2
2
|
import HttpClientBase from "./HttpClientBase.js";
|
|
3
3
|
export default class ProviderApi extends HttpClientBase implements ProviderApi {
|
|
4
|
-
private network;
|
|
5
4
|
private account;
|
|
6
|
-
constructor(
|
|
5
|
+
constructor(providerUrl: string, account: string);
|
|
7
6
|
getCaptchaChallenge(userAccount: string, randomProvider: RandomProvider): Promise<CaptchaResponseBody>;
|
|
8
|
-
submitCaptchaSolution(captchas: CaptchaSolution[], requestHash: string, userAccount: string,
|
|
9
|
-
verifyDappUser(token: ProcaptchaToken,
|
|
7
|
+
submitCaptchaSolution(captchas: CaptchaSolution[], requestHash: string, userAccount: string, timestamp: string, providerRequestHashSignature: string, userRequestHashSignature: string): Promise<CaptchaSolutionResponse>;
|
|
8
|
+
verifyDappUser(token: ProcaptchaToken, signature: string, maxVerifiedTime?: number): Promise<ImageVerificationResponse>;
|
|
10
9
|
verifyUser(token: ProcaptchaToken, dappUserSignature: string, maxVerifiedTime?: number): Promise<ImageVerificationResponse>;
|
|
11
10
|
getPowCaptchaChallenge(user: string, dapp: string): Promise<GetPowCaptchaResponse>;
|
|
12
11
|
submitPowCaptchaSolution(challenge: GetPowCaptchaResponse, userAccount: string, dappAccount: string, nonce: number, userTimestampSignature: string, timeout?: number): Promise<PowCaptchaSolutionResponse>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProviderApi.d.ts","sourceRoot":"","sources":["../../src/api/ProviderApi.ts"],"names":[],"mappings":"AAaA,OAAO,EAGL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EAGpB,KAAK,uBAAuB,EAE5B,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,
|
|
1
|
+
{"version":3,"file":"ProviderApi.d.ts","sourceRoot":"","sources":["../../src/api/ProviderApi.ts"],"names":[],"mappings":"AAaA,OAAO,EAGL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EAGpB,KAAK,uBAAuB,EAE5B,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,eAAe,EACpB,KAAK,QAAQ,EACb,KAAK,kBAAkB,EACvB,KAAK,cAAc,EAEnB,KAAK,YAAY,EAGjB,KAAK,oBAAoB,EAE1B,MAAM,gBAAgB,CAAC;AACxB,OAAO,cAAc,MAAM,qBAAqB,CAAC;AAEjD,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,cAAe,YAAW,WAAW;IAC5E,OAAO,CAAC,OAAO,CAAS;gBAEZ,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAQzC,mBAAmB,CACxB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,mBAAmB,CAAC;IASxB,qBAAqB,CAC1B,QAAQ,EAAE,eAAe,EAAE,EAC3B,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,4BAA4B,EAAE,MAAM,EACpC,wBAAwB,EAAE,MAAM,GAC/B,OAAO,CAAC,uBAAuB,CAAC;IAmB5B,cAAc,CACnB,KAAK,EAAE,eAAe,EACtB,SAAS,EAAE,MAAM,EACjB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,yBAAyB,CAAC;IAY9B,UAAU,CACf,KAAK,EAAE,eAAe,EACtB,iBAAiB,EAAE,MAAM,EACzB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,yBAAyB,CAAC;IAU9B,sBAAsB,CAC3B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,qBAAqB,CAAC;IAQ1B,wBAAwB,CAC7B,SAAS,EAAE,qBAAqB,EAChC,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,sBAAsB,EAAE,MAAM,EAC9B,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,0BAA0B,CAAC;IAoB/B,gBAAgB,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM;IAIrD,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAIhD,kBAAkB,IAAI,OAAO,CAAC,QAAQ,CAAC;IAIvC,sBAAsB,CAC3B,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,oBAAoB,CAAC;CAQjC"}
|
package/dist/api/ProviderApi.js
CHANGED
|
@@ -1,43 +1,41 @@
|
|
|
1
|
-
import { ApiParams, ApiPaths,
|
|
1
|
+
import { ApiParams, ApiPaths, SubmitPowCaptchaSolutionBody, } from "@prosopo/types";
|
|
2
2
|
import HttpClientBase from "./HttpClientBase.js";
|
|
3
3
|
export default class ProviderApi extends HttpClientBase {
|
|
4
|
-
constructor(
|
|
4
|
+
constructor(providerUrl, account) {
|
|
5
5
|
const providerUrlWithProtocol = !providerUrl.startsWith("http")
|
|
6
6
|
? `https://${providerUrl}`
|
|
7
7
|
: providerUrl;
|
|
8
8
|
super(providerUrlWithProtocol);
|
|
9
|
-
this.network = network;
|
|
10
9
|
this.account = account;
|
|
11
10
|
}
|
|
12
11
|
getCaptchaChallenge(userAccount, randomProvider) {
|
|
13
|
-
const { provider
|
|
12
|
+
const { provider } = randomProvider;
|
|
14
13
|
const dappAccount = this.account;
|
|
15
|
-
const url = `${ApiPaths.GetImageCaptchaChallenge}/${provider.datasetId}/${userAccount}/${dappAccount}
|
|
14
|
+
const url = `${ApiPaths.GetImageCaptchaChallenge}/${provider.datasetId}/${userAccount}/${dappAccount}`;
|
|
16
15
|
return this.fetch(url);
|
|
17
16
|
}
|
|
18
|
-
submitCaptchaSolution(captchas, requestHash, userAccount,
|
|
19
|
-
const
|
|
20
|
-
captchas,
|
|
21
|
-
requestHash,
|
|
17
|
+
submitCaptchaSolution(captchas, requestHash, userAccount, timestamp, providerRequestHashSignature, userRequestHashSignature) {
|
|
18
|
+
const body = {
|
|
22
19
|
[ApiParams.user]: userAccount,
|
|
23
20
|
[ApiParams.dapp]: this.account,
|
|
24
|
-
|
|
21
|
+
[ApiParams.captchas]: captchas,
|
|
22
|
+
[ApiParams.requestHash]: requestHash,
|
|
25
23
|
[ApiParams.timestamp]: timestamp,
|
|
26
24
|
[ApiParams.signature]: {
|
|
27
25
|
[ApiParams.user]: {
|
|
28
26
|
[ApiParams.requestHash]: userRequestHashSignature,
|
|
29
27
|
},
|
|
30
28
|
[ApiParams.provider]: {
|
|
31
|
-
[ApiParams.
|
|
29
|
+
[ApiParams.requestHash]: providerRequestHashSignature,
|
|
32
30
|
},
|
|
33
31
|
},
|
|
34
|
-
}
|
|
35
|
-
return this.post(ApiPaths.SubmitImageCaptchaSolution,
|
|
32
|
+
};
|
|
33
|
+
return this.post(ApiPaths.SubmitImageCaptchaSolution, body);
|
|
36
34
|
}
|
|
37
|
-
verifyDappUser(token,
|
|
35
|
+
verifyDappUser(token, signature, maxVerifiedTime) {
|
|
38
36
|
const payload = {
|
|
39
37
|
[ApiParams.token]: token,
|
|
40
|
-
[ApiParams.
|
|
38
|
+
[ApiParams.dappSignature]: signature,
|
|
41
39
|
};
|
|
42
40
|
if (maxVerifiedTime) {
|
|
43
41
|
payload[ApiParams.maxVerifiedTime] = maxVerifiedTime;
|
|
@@ -47,7 +45,7 @@ export default class ProviderApi extends HttpClientBase {
|
|
|
47
45
|
verifyUser(token, dappUserSignature, maxVerifiedTime) {
|
|
48
46
|
const payload = {
|
|
49
47
|
[ApiParams.token]: token,
|
|
50
|
-
[ApiParams.
|
|
48
|
+
[ApiParams.dappSignature]: dappUserSignature,
|
|
51
49
|
...(maxVerifiedTime && { [ApiParams.maxVerifiedTime]: maxVerifiedTime }),
|
|
52
50
|
};
|
|
53
51
|
return this.post(ApiPaths.VerifyImageCaptchaSolutionUser, payload);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProviderApi.js","sourceRoot":"","sources":["../../src/api/ProviderApi.ts"],"names":[],"mappings":"AAaA,OAAO,EACL,SAAS,EACT,QAAQ,
|
|
1
|
+
{"version":3,"file":"ProviderApi.js","sourceRoot":"","sources":["../../src/api/ProviderApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,41 +2,39 @@
|
|
|
2
2
|
const types = require("@prosopo/types");
|
|
3
3
|
const HttpClientBase = require("./HttpClientBase.cjs");
|
|
4
4
|
class ProviderApi extends HttpClientBase.HttpClientBase {
|
|
5
|
-
constructor(
|
|
5
|
+
constructor(providerUrl, account) {
|
|
6
6
|
const providerUrlWithProtocol = !providerUrl.startsWith("http") ? `https://${providerUrl}` : providerUrl;
|
|
7
7
|
super(providerUrlWithProtocol);
|
|
8
|
-
this.network = network;
|
|
9
8
|
this.account = account;
|
|
10
9
|
}
|
|
11
10
|
getCaptchaChallenge(userAccount, randomProvider) {
|
|
12
|
-
const { provider
|
|
11
|
+
const { provider } = randomProvider;
|
|
13
12
|
const dappAccount = this.account;
|
|
14
|
-
const url = `${types.ApiPaths.GetImageCaptchaChallenge}/${provider.datasetId}/${userAccount}/${dappAccount}
|
|
13
|
+
const url = `${types.ApiPaths.GetImageCaptchaChallenge}/${provider.datasetId}/${userAccount}/${dappAccount}`;
|
|
15
14
|
return this.fetch(url);
|
|
16
15
|
}
|
|
17
|
-
submitCaptchaSolution(captchas, requestHash, userAccount,
|
|
18
|
-
const
|
|
19
|
-
captchas,
|
|
20
|
-
requestHash,
|
|
16
|
+
submitCaptchaSolution(captchas, requestHash, userAccount, timestamp, providerRequestHashSignature, userRequestHashSignature) {
|
|
17
|
+
const body = {
|
|
21
18
|
[types.ApiParams.user]: userAccount,
|
|
22
19
|
[types.ApiParams.dapp]: this.account,
|
|
23
|
-
|
|
20
|
+
[types.ApiParams.captchas]: captchas,
|
|
21
|
+
[types.ApiParams.requestHash]: requestHash,
|
|
24
22
|
[types.ApiParams.timestamp]: timestamp,
|
|
25
23
|
[types.ApiParams.signature]: {
|
|
26
24
|
[types.ApiParams.user]: {
|
|
27
25
|
[types.ApiParams.requestHash]: userRequestHashSignature
|
|
28
26
|
},
|
|
29
27
|
[types.ApiParams.provider]: {
|
|
30
|
-
[types.ApiParams.
|
|
28
|
+
[types.ApiParams.requestHash]: providerRequestHashSignature
|
|
31
29
|
}
|
|
32
30
|
}
|
|
33
|
-
}
|
|
34
|
-
return this.post(types.ApiPaths.SubmitImageCaptchaSolution,
|
|
31
|
+
};
|
|
32
|
+
return this.post(types.ApiPaths.SubmitImageCaptchaSolution, body);
|
|
35
33
|
}
|
|
36
|
-
verifyDappUser(token,
|
|
34
|
+
verifyDappUser(token, signature, maxVerifiedTime) {
|
|
37
35
|
const payload = {
|
|
38
36
|
[types.ApiParams.token]: token,
|
|
39
|
-
[types.ApiParams.
|
|
37
|
+
[types.ApiParams.dappSignature]: signature
|
|
40
38
|
};
|
|
41
39
|
if (maxVerifiedTime) {
|
|
42
40
|
payload[types.ApiParams.maxVerifiedTime] = maxVerifiedTime;
|
|
@@ -46,7 +44,7 @@ class ProviderApi extends HttpClientBase.HttpClientBase {
|
|
|
46
44
|
verifyUser(token, dappUserSignature, maxVerifiedTime) {
|
|
47
45
|
const payload = {
|
|
48
46
|
[types.ApiParams.token]: token,
|
|
49
|
-
[types.ApiParams.
|
|
47
|
+
[types.ApiParams.dappSignature]: dappUserSignature,
|
|
50
48
|
...maxVerifiedTime && { [types.ApiParams.maxVerifiedTime]: maxVerifiedTime }
|
|
51
49
|
};
|
|
52
50
|
return this.post(types.ApiPaths.VerifyImageCaptchaSolutionUser, payload);
|
package/package.json
CHANGED
|
@@ -1,42 +1,42 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
2
|
+
"name": "@prosopo/api",
|
|
3
|
+
"version": "2.0.2",
|
|
4
|
+
"description": "Wrapper for the provider API",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"engines": {
|
|
8
|
+
"node": ">=20",
|
|
9
|
+
"npm": ">=9"
|
|
10
|
+
},
|
|
11
|
+
"exports": {
|
|
12
|
+
".": {
|
|
13
|
+
"import": "./dist/index.js",
|
|
14
|
+
"require": "./dist/cjs/index.cjs"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"scripts": {
|
|
18
|
+
"test": "echo \"No test specified\"",
|
|
19
|
+
"clean": "tsc --build --clean",
|
|
20
|
+
"build": "tsc --build --verbose",
|
|
21
|
+
"build:cjs": "npx vite --config vite.cjs.config.ts build"
|
|
22
|
+
},
|
|
23
|
+
"repository": {
|
|
24
|
+
"type": "git",
|
|
25
|
+
"url": "git+https://github.com/prosopo/captcha.git"
|
|
26
|
+
},
|
|
27
|
+
"author": "PROSOPO LIMITED <info@prosopo.io>",
|
|
28
|
+
"license": "Apache-2.0",
|
|
29
|
+
"bugs": {
|
|
30
|
+
"url": "https://github.com/prosopo/captcha/issues"
|
|
31
|
+
},
|
|
32
|
+
"homepage": "https://github.com/prosopo/captcha#readme",
|
|
33
|
+
"dependencies": {
|
|
34
|
+
"@prosopo/types": "2.0.2"
|
|
35
|
+
},
|
|
36
|
+
"devDependencies": {
|
|
37
|
+
"@prosopo/config": "2.0.2",
|
|
38
|
+
"tslib": "2.6.2",
|
|
39
|
+
"typescript": "5.1.6"
|
|
40
|
+
},
|
|
41
|
+
"sideEffects": false
|
|
42
42
|
}
|