@friendlycaptcha/server-sdk 0.1.2 → 0.2.0
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.
- package/CHANGELOG.md +6 -0
- package/README.md +1 -1
- package/dist/api/types.d.ts +13 -1
- package/dist/api/typesRiskIntelligence.d.ts +778 -0
- package/dist/api/typesRiskIntelligence.js +25 -0
- package/dist/api/typesRiskIntelligence.js.map +1 -0
- package/dist/client/client.d.ts +15 -0
- package/dist/client/client.js +28 -8
- package/dist/client/client.js.map +1 -1
- package/dist/client/version.gen.d.ts +1 -1
- package/dist/client/version.gen.js +1 -1
- package/dist/index.d.ts +829 -0
- package/package.json +16 -2
- package/.github/workflows/ci.yml +0 -50
- package/.github/workflows/publish.yml +0 -18
- package/.prettierrc +0 -3
- package/docs/index.md +0 -12
- package/docs/server-sdk.failed_due_to_client_error_code.md +0 -15
- package/docs/server-sdk.failed_to_decode_response_error_code.md +0 -13
- package/docs/server-sdk.failed_to_encode_error_code.md +0 -13
- package/docs/server-sdk.friendlycaptchaclient._constructor_.md +0 -20
- package/docs/server-sdk.friendlycaptchaclient.md +0 -26
- package/docs/server-sdk.friendlycaptchaclient.verifycaptcharesponse.md +0 -30
- package/docs/server-sdk.friendlycaptchaoptions.apikey.md +0 -13
- package/docs/server-sdk.friendlycaptchaoptions.fetch.md +0 -13
- package/docs/server-sdk.friendlycaptchaoptions.md +0 -24
- package/docs/server-sdk.friendlycaptchaoptions.sitekey.md +0 -11
- package/docs/server-sdk.friendlycaptchaoptions.siteverifyendpoint.md +0 -15
- package/docs/server-sdk.friendlycaptchaoptions.strict.md +0 -15
- package/docs/server-sdk.md +0 -41
- package/docs/server-sdk.request_failed_error_code.md +0 -13
- package/docs/server-sdk.request_failed_timeout_error_code.md +0 -13
- package/docs/server-sdk.siteverifyerrorresponse.error.md +0 -11
- package/docs/server-sdk.siteverifyerrorresponse.md +0 -20
- package/docs/server-sdk.siteverifyerrorresponse.success.md +0 -11
- package/docs/server-sdk.siteverifyerrorresponseerrordata.detail.md +0 -11
- package/docs/server-sdk.siteverifyerrorresponseerrordata.error_code.md +0 -11
- package/docs/server-sdk.siteverifyerrorresponseerrordata.md +0 -20
- package/docs/server-sdk.siteverifyresponse.md +0 -14
- package/docs/server-sdk.siteverifyresponsechallengedata.md +0 -20
- package/docs/server-sdk.siteverifyresponsechallengedata.origin.md +0 -13
- package/docs/server-sdk.siteverifyresponsechallengedata.timestamp.md +0 -13
- package/docs/server-sdk.siteverifyresponsedata.challenge.md +0 -11
- package/docs/server-sdk.siteverifyresponsedata.md +0 -19
- package/docs/server-sdk.siteverifysuccessresponse.data.md +0 -11
- package/docs/server-sdk.siteverifysuccessresponse.md +0 -20
- package/docs/server-sdk.siteverifysuccessresponse.success.md +0 -11
- package/docs/server-sdk.verifyclienterrorcode.md +0 -14
- package/docs/server-sdk.verifyresult._constructor_.md +0 -20
- package/docs/server-sdk.verifyresult.clienterrortype.md +0 -11
- package/docs/server-sdk.verifyresult.geterrorcode.md +0 -15
- package/docs/server-sdk.verifyresult.getresponse.md +0 -17
- package/docs/server-sdk.verifyresult.getresponseerror.md +0 -17
- package/docs/server-sdk.verifyresult.isclienterror.md +0 -19
- package/docs/server-sdk.verifyresult.isdecodeerror.md +0 -17
- package/docs/server-sdk.verifyresult.isencodeerror.md +0 -17
- package/docs/server-sdk.verifyresult.isrequestortimeouterror.md +0 -17
- package/docs/server-sdk.verifyresult.isstrict.md +0 -17
- package/docs/server-sdk.verifyresult.md +0 -44
- package/docs/server-sdk.verifyresult.response.md +0 -13
- package/docs/server-sdk.verifyresult.shouldaccept.md +0 -17
- package/docs/server-sdk.verifyresult.shouldreject.md +0 -17
- package/docs/server-sdk.verifyresult.status.md +0 -13
- package/docs/server-sdk.verifyresult.wasabletoverify.md +0 -17
- package/example/README.md +0 -29
- package/example/package-lock.json +0 -1404
- package/example/package.json +0 -24
- package/example/src/index.ts +0 -84
- package/example/tsconfig.json +0 -13
- package/example/views/index.ejs +0 -86
- package/src/api/errors.ts +0 -77
- package/src/api/index.ts +0 -1
- package/src/api/types.ts +0 -66
- package/src/client/client.ts +0 -157
- package/src/client/errors.ts +0 -42
- package/src/client/index.ts +0 -3
- package/src/client/result.ts +0 -152
- package/src/client/version.gen.ts +0 -3
- package/src/index.ts +0 -2
- package/test/client/client.test.ts +0 -47
- package/test/client/mock.test.ts +0 -44
- package/tsconfig.json +0 -20
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/** @summary Unknown or missing risk score
|
|
2
|
+
* @public
|
|
3
|
+
*/
|
|
4
|
+
export const RISK_SCORE_UNKNOWN = 0;
|
|
5
|
+
/** @summary Very low risk score (1/5)
|
|
6
|
+
* @public
|
|
7
|
+
*/
|
|
8
|
+
export const RISK_SCORE_VERY_LOW = 1;
|
|
9
|
+
/** @summary Low risk score (2/5)
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
12
|
+
export const RISK_SCORE_LOW = 2;
|
|
13
|
+
/** @summary Medium risk score (3/5)
|
|
14
|
+
* @public
|
|
15
|
+
*/
|
|
16
|
+
export const RISK_SCORE_MEDIUM = 3;
|
|
17
|
+
/** @summary High risk score (4/5)
|
|
18
|
+
* @public
|
|
19
|
+
*/
|
|
20
|
+
export const RISK_SCORE_HIGH = 4;
|
|
21
|
+
/** @summary Very high risk score (5/5)
|
|
22
|
+
* @public
|
|
23
|
+
*/
|
|
24
|
+
export const RISK_SCORE_VERY_HIGH = 5;
|
|
25
|
+
//# sourceMappingURL=typesRiskIntelligence.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typesRiskIntelligence.js","sourceRoot":"","sources":["../../../src/api/typesRiskIntelligence.ts"],"names":[],"mappings":"AAsDA;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAU,CAAC;AAE7C;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAU,CAAC;AAE9C;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAU,CAAC;AAEzC;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAU,CAAC;AAE5C;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAU,CAAC;AAE1C;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAU,CAAC"}
|
package/dist/client/client.d.ts
CHANGED
|
@@ -10,7 +10,17 @@ export interface FriendlyCaptchaOptions {
|
|
|
10
10
|
*/
|
|
11
11
|
apiKey: string;
|
|
12
12
|
/**
|
|
13
|
+
* The API endpoint domain to use. Can be "eu", "global", or a custom domain (e.g., "https://api.example.com").
|
|
14
|
+
* Do not include a path - it will be automatically appended.
|
|
15
|
+
*
|
|
16
|
+
* Defaults to `"global"`.
|
|
17
|
+
*/
|
|
18
|
+
apiEndpoint?: string;
|
|
19
|
+
/**
|
|
20
|
+
* @deprecated Use `apiEndpoint` instead. This option will be removed in a future version.
|
|
21
|
+
*
|
|
13
22
|
* The endpoint to use for the API. Can be "eu", "global", or a custom URL.
|
|
23
|
+
* If a full URL with a path is provided, the path will be stripped.
|
|
14
24
|
*
|
|
15
25
|
* Defaults to `"global"`.
|
|
16
26
|
*/
|
|
@@ -37,6 +47,11 @@ export declare class FriendlyCaptchaClient {
|
|
|
37
47
|
private strict;
|
|
38
48
|
private fetch;
|
|
39
49
|
constructor(opts: FriendlyCaptchaOptions);
|
|
50
|
+
/**
|
|
51
|
+
* Get the siteverify endpoint URL being used by this client.
|
|
52
|
+
* @internal - For testing purposes only
|
|
53
|
+
*/
|
|
54
|
+
getSiteverifyEndpoint(): string;
|
|
40
55
|
/**
|
|
41
56
|
* Verify a captcha response.
|
|
42
57
|
*
|
package/dist/client/client.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { FAILED_DUE_TO_CLIENT_ERROR_CODE, FAILED_TO_DECODE_RESPONSE_ERROR_CODE, FAILED_TO_ENCODE_ERROR_CODE, REQUEST_FAILED_ERROR_CODE, REQUEST_FAILED_TIMEOUT_ERROR_CODE, } from "./errors.js";
|
|
2
2
|
import { VerifyResult } from "./result.js";
|
|
3
3
|
import { SDK_VERSION } from "./version.gen.js";
|
|
4
|
-
const
|
|
5
|
-
const
|
|
4
|
+
const GLOBAL_API_ENDPOINT = "https://global.frcapi.com";
|
|
5
|
+
const EU_API_ENDPOINT = "https://eu.frcapi.com";
|
|
6
|
+
const SITEVERIFY_PATH = "/api/v2/captcha/siteverify";
|
|
6
7
|
/**
|
|
7
8
|
* A client for the Friendly Captcha API.
|
|
8
9
|
* @public
|
|
@@ -14,17 +15,36 @@ export class FriendlyCaptchaClient {
|
|
|
14
15
|
throw new Error("api key is required");
|
|
15
16
|
}
|
|
16
17
|
this.apiKey = opts.apiKey;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
// Determine the API endpoint domain
|
|
19
|
+
let apiEndpoint = opts.apiEndpoint || opts.siteverifyEndpoint || "global";
|
|
20
|
+
// Handle shorthands
|
|
21
|
+
if (apiEndpoint === "global") {
|
|
22
|
+
apiEndpoint = GLOBAL_API_ENDPOINT;
|
|
20
23
|
}
|
|
21
|
-
else if (
|
|
22
|
-
|
|
24
|
+
else if (apiEndpoint === "eu") {
|
|
25
|
+
apiEndpoint = EU_API_ENDPOINT;
|
|
23
26
|
}
|
|
24
|
-
|
|
27
|
+
else {
|
|
28
|
+
// Strip path from custom URLs (for backward compatibility with siteverifyEndpoint)
|
|
29
|
+
try {
|
|
30
|
+
const url = new URL(apiEndpoint);
|
|
31
|
+
apiEndpoint = `${url.protocol}//${url.host}`;
|
|
32
|
+
}
|
|
33
|
+
catch (e) {
|
|
34
|
+
// If it's not a valid URL, use as-is
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
this.siteverifyEndpoint = apiEndpoint + SITEVERIFY_PATH;
|
|
25
38
|
this.strict = !!opts.strict;
|
|
26
39
|
this.fetch = opts.fetch || globalThis.fetch;
|
|
27
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* Get the siteverify endpoint URL being used by this client.
|
|
43
|
+
* @internal - For testing purposes only
|
|
44
|
+
*/
|
|
45
|
+
getSiteverifyEndpoint() {
|
|
46
|
+
return this.siteverifyEndpoint;
|
|
47
|
+
}
|
|
28
48
|
/**
|
|
29
49
|
* Verify a captcha response.
|
|
30
50
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/client/client.ts"],"names":[],"mappings":"AACA,OAAO,EACL,+BAA+B,EAC/B,oCAAoC,EACpC,2BAA2B,EAC3B,yBAAyB,EACzB,iCAAiC,GAClC,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/client/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const SDK_VERSION = "0.
|
|
1
|
+
export declare const SDK_VERSION = "0.2.0";
|