@prosopo/procaptcha-frictionless 2.5.1 → 2.5.3
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,3 +1,3 @@
|
|
|
1
1
|
import { type ProcaptchaFrictionlessProps } from "@prosopo/types";
|
|
2
|
-
export declare const ProcaptchaFrictionless: ({ config, callbacks, restart, detectBot, }: ProcaptchaFrictionlessProps) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
export declare const ProcaptchaFrictionless: ({ config, callbacks, restart, i18n, detectBot, }: ProcaptchaFrictionlessProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
3
3
|
//# sourceMappingURL=ProcaptchaFrictionless.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProcaptchaFrictionless.d.ts","sourceRoot":"","sources":["../src/ProcaptchaFrictionless.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ProcaptchaFrictionless.d.ts","sourceRoot":"","sources":["../src/ProcaptchaFrictionless.tsx"],"names":[],"mappings":"AAsBA,OAAO,EAIN,KAAK,2BAA2B,EAChC,MAAM,gBAAgB,CAAC;AA4CxB,eAAO,MAAM,sBAAsB,qDAMhC,2BAA2B,mDAyI7B,CAAC"}
|
|
@@ -1,33 +1,52 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
2
|
+
import { loadI18next } from "@prosopo/locale";
|
|
3
|
+
import { Checkbox, getDefaultEvents, providerRetry, } from "@prosopo/procaptcha-common";
|
|
3
4
|
import { ProcaptchaPow } from "@prosopo/procaptcha-pow";
|
|
4
5
|
import { Procaptcha } from "@prosopo/procaptcha-react";
|
|
5
6
|
import { ProcaptchaConfigSchema, } from "@prosopo/types";
|
|
6
|
-
import {
|
|
7
|
+
import { darkTheme, lightTheme } from "@prosopo/widget-skeleton";
|
|
7
8
|
import { useEffect, useRef, useState } from "react";
|
|
8
9
|
import customDetectBot from "./customDetectBot.js";
|
|
9
|
-
const renderPlaceholder = (
|
|
10
|
+
const renderPlaceholder = (theme, mode, errorMessage, translationFn, loading) => {
|
|
11
|
+
const checkboxTheme = "light" === theme ? lightTheme : darkTheme;
|
|
12
|
+
if (mode === "invisible") {
|
|
13
|
+
return null;
|
|
14
|
+
}
|
|
15
|
+
return (_jsx(Checkbox, { theme: checkboxTheme, onChange: async () => { }, checked: false, labelText: translationFn("WIDGET.I_AM_HUMAN"), error: errorMessage, "aria-label": "human checkbox", loading: loading }));
|
|
16
|
+
};
|
|
10
17
|
const defaultLoadingState = (attemptCount) => ({
|
|
11
18
|
loading: false,
|
|
12
19
|
attemptCount: attemptCount || 0,
|
|
13
20
|
});
|
|
14
|
-
export const ProcaptchaFrictionless = ({ config, callbacks, restart, detectBot = customDetectBot, }) => {
|
|
21
|
+
export const ProcaptchaFrictionless = ({ config, callbacks, restart, i18n, detectBot = customDetectBot, }) => {
|
|
15
22
|
const stateRef = useRef(defaultLoadingState(0));
|
|
16
23
|
const events = getDefaultEvents(callbacks);
|
|
17
|
-
|
|
18
|
-
config
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
if (config.language) {
|
|
26
|
+
if (i18n) {
|
|
27
|
+
if (i18n.language !== config.language) {
|
|
28
|
+
i18n.changeLanguage(config.language).then((r) => r);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
loadI18next(false).then((i18n) => {
|
|
33
|
+
if (i18n.language !== config.language)
|
|
34
|
+
i18n.changeLanguage(config.language).then((r) => r);
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}, [i18n, config.language]);
|
|
39
|
+
const [componentToRender, setComponentToRender] = useState(renderPlaceholder(config.theme, config.mode, stateRef.current.errorMessage, i18n.t, true));
|
|
22
40
|
const resetState = (attemptCount) => {
|
|
23
41
|
stateRef.current = defaultLoadingState(attemptCount || stateRef.current.attemptCount);
|
|
24
42
|
};
|
|
25
|
-
const fallOverWithStyle = (errorMessage) => {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
43
|
+
const fallOverWithStyle = (errorMessage, errorKey) => {
|
|
44
|
+
if (errorKey === "CAPTCHA.NO_SESSION_FOUND") {
|
|
45
|
+
setTimeout(() => {
|
|
46
|
+
restartComponentTimeout();
|
|
47
|
+
}, 0);
|
|
48
|
+
}
|
|
49
|
+
setComponentToRender(renderPlaceholder(config.theme, config.mode, errorMessage || "Cannot load CAPTCHA", i18n.t, false));
|
|
31
50
|
};
|
|
32
51
|
const restartComponentTimeout = () => {
|
|
33
52
|
setTimeout(() => {
|
|
@@ -48,7 +67,7 @@ export const ProcaptchaFrictionless = ({ config, callbacks, restart, detectBot =
|
|
|
48
67
|
errorMessage: result.error?.message,
|
|
49
68
|
};
|
|
50
69
|
events.onError(new Error(result.error?.message));
|
|
51
|
-
fallOverWithStyle(result.error?.message);
|
|
70
|
+
fallOverWithStyle(result.error?.message, result.error?.key);
|
|
52
71
|
return;
|
|
53
72
|
}
|
|
54
73
|
const frictionlessState = {
|
|
@@ -58,10 +77,10 @@ export const ProcaptchaFrictionless = ({ config, callbacks, restart, detectBot =
|
|
|
58
77
|
restart,
|
|
59
78
|
};
|
|
60
79
|
if (result.captchaType === "image") {
|
|
61
|
-
setComponentToRender(_jsx(Procaptcha, { config: config, callbacks: callbacks, frictionlessState: frictionlessState }));
|
|
80
|
+
setComponentToRender(_jsx(Procaptcha, { config: config, callbacks: callbacks, frictionlessState: frictionlessState, i18n: i18n }));
|
|
62
81
|
}
|
|
63
82
|
else {
|
|
64
|
-
setComponentToRender(_jsx(ProcaptchaPow, { config: config, callbacks: callbacks, frictionlessState: frictionlessState }));
|
|
83
|
+
setComponentToRender(_jsx(ProcaptchaPow, { config: config, callbacks: callbacks, frictionlessState: frictionlessState, i18n: i18n }));
|
|
65
84
|
stateRef.current = {
|
|
66
85
|
...stateRef.current,
|
|
67
86
|
loading: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProcaptchaFrictionless.js","sourceRoot":"","sources":["../src/ProcaptchaFrictionless.tsx"],"names":[],"mappings":";AAcA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ProcaptchaFrictionless.js","sourceRoot":"","sources":["../src/ProcaptchaFrictionless.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prosopo/procaptcha-frictionless",
|
|
3
|
-
"version": "2.5.
|
|
3
|
+
"version": "2.5.3",
|
|
4
4
|
"author": "PROSOPO LIMITED <info@prosopo.io>",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -26,17 +26,17 @@
|
|
|
26
26
|
},
|
|
27
27
|
"browserslist": ["> 0.5%, last 2 versions, not dead"],
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@prosopo/detector": "2.5.
|
|
30
|
-
"@prosopo/locale": "2.5.
|
|
31
|
-
"@prosopo/procaptcha-pow": "2.5.
|
|
32
|
-
"@prosopo/procaptcha-react": "2.5.
|
|
33
|
-
"@prosopo/types": "2.5.
|
|
34
|
-
"@prosopo/
|
|
29
|
+
"@prosopo/detector": "2.5.3",
|
|
30
|
+
"@prosopo/locale": "2.5.3",
|
|
31
|
+
"@prosopo/procaptcha-pow": "2.5.3",
|
|
32
|
+
"@prosopo/procaptcha-react": "2.5.3",
|
|
33
|
+
"@prosopo/types": "2.5.3",
|
|
34
|
+
"@prosopo/widget-skeleton": "2.5.3",
|
|
35
35
|
"express": "4.21.2",
|
|
36
36
|
"react": "18.3.1"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@prosopo/config": "2.5.
|
|
39
|
+
"@prosopo/config": "2.5.3",
|
|
40
40
|
"@vitest/coverage-v8": "2.1.1",
|
|
41
41
|
"concurrently": "9.0.1",
|
|
42
42
|
"del-cli": "6.0.0",
|