@thecb/components 11.3.2-beta.0 → 11.3.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.
- package/dist/index.cjs.js +52 -58
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +9 -5
- package/dist/index.esm.js +52 -58
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/molecules/turnstile-widget/TurnstileWidget.js +45 -58
- package/src/hooks/use-turnstile-script/index.js +9 -5
package/dist/index.d.ts
CHANGED
|
@@ -514,7 +514,12 @@ declare function useConditionallyAddValidator(
|
|
|
514
514
|
*/
|
|
515
515
|
declare const useTurnstileScript = verifyURL => {
|
|
516
516
|
const [scriptLoaded, setScriptLoaded] = useState(false);
|
|
517
|
-
const [scriptError, setScriptError] = useState(
|
|
517
|
+
const [scriptError, setScriptError] = useState(false);
|
|
518
|
+
|
|
519
|
+
const handleScriptError = () => {
|
|
520
|
+
setScriptError(true);
|
|
521
|
+
setScriptLoaded(false);
|
|
522
|
+
};
|
|
518
523
|
|
|
519
524
|
useEffect(() => {
|
|
520
525
|
if (typeof window === "undefined") {
|
|
@@ -532,18 +537,17 @@ declare const useTurnstileScript = verifyURL => {
|
|
|
532
537
|
setScriptLoaded(true);
|
|
533
538
|
};
|
|
534
539
|
script.onerror = () => {
|
|
535
|
-
|
|
536
|
-
setScriptLoaded(false);
|
|
540
|
+
handleScriptError();
|
|
537
541
|
};
|
|
538
542
|
script.onabort = () => {
|
|
539
|
-
|
|
540
|
-
setScriptLoaded(false);
|
|
543
|
+
handleScriptError();
|
|
541
544
|
};
|
|
542
545
|
script.defer = true;
|
|
543
546
|
document.getElementsByTagName("head")[0].appendChild(script);
|
|
544
547
|
|
|
545
548
|
return () => {
|
|
546
549
|
setScriptLoaded(false);
|
|
550
|
+
setScriptError(false);
|
|
547
551
|
};
|
|
548
552
|
}, [verifyURL]);
|
|
549
553
|
|
package/dist/index.esm.js
CHANGED
|
@@ -24406,10 +24406,14 @@ var useTurnstileScript = function useTurnstileScript(verifyURL) {
|
|
|
24406
24406
|
_useState2 = _slicedToArray(_useState, 2),
|
|
24407
24407
|
scriptLoaded = _useState2[0],
|
|
24408
24408
|
setScriptLoaded = _useState2[1];
|
|
24409
|
-
var _useState3 = useState(
|
|
24409
|
+
var _useState3 = useState(false),
|
|
24410
24410
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
24411
24411
|
scriptError = _useState4[0],
|
|
24412
24412
|
setScriptError = _useState4[1];
|
|
24413
|
+
var handleScriptError = function handleScriptError() {
|
|
24414
|
+
setScriptError(true);
|
|
24415
|
+
setScriptLoaded(false);
|
|
24416
|
+
};
|
|
24413
24417
|
useEffect$1(function () {
|
|
24414
24418
|
if (typeof window === "undefined") {
|
|
24415
24419
|
setScriptLoaded(false);
|
|
@@ -24425,17 +24429,16 @@ var useTurnstileScript = function useTurnstileScript(verifyURL) {
|
|
|
24425
24429
|
setScriptLoaded(true);
|
|
24426
24430
|
};
|
|
24427
24431
|
script.onerror = function () {
|
|
24428
|
-
|
|
24429
|
-
setScriptLoaded(false);
|
|
24432
|
+
handleScriptError();
|
|
24430
24433
|
};
|
|
24431
24434
|
script.onabort = function () {
|
|
24432
|
-
|
|
24433
|
-
setScriptLoaded(false);
|
|
24435
|
+
handleScriptError();
|
|
24434
24436
|
};
|
|
24435
24437
|
script.defer = true;
|
|
24436
24438
|
document.getElementsByTagName("head")[0].appendChild(script);
|
|
24437
24439
|
return function () {
|
|
24438
24440
|
setScriptLoaded(false);
|
|
24441
|
+
setScriptError(false);
|
|
24439
24442
|
};
|
|
24440
24443
|
}, [verifyURL]);
|
|
24441
24444
|
return {
|
|
@@ -49995,15 +49998,15 @@ var HeroImage$1 = withWindowSize(themeComponent(HeroImage, "HeroImage", fallback
|
|
|
49995
49998
|
var TurnstileWidgetContainer = styled(Box).withConfig({
|
|
49996
49999
|
displayName: "TurnstileWidget__TurnstileWidgetContainer",
|
|
49997
50000
|
componentId: "sc-btaugr-0"
|
|
49998
|
-
})(["display:flex;flex-direction:column;
|
|
50001
|
+
})(["display:flex;flex-direction:column;padding:", ";justify-content:", ";align-items:", ";width:100%;"], function (_ref) {
|
|
49999
50002
|
var padding = _ref.padding;
|
|
50000
50003
|
return padding;
|
|
50001
50004
|
}, function (_ref2) {
|
|
50002
50005
|
var justify = _ref2.justify;
|
|
50003
50006
|
return justify;
|
|
50004
50007
|
}, function (_ref3) {
|
|
50005
|
-
var
|
|
50006
|
-
return
|
|
50008
|
+
var align = _ref3.align;
|
|
50009
|
+
return align;
|
|
50007
50010
|
});
|
|
50008
50011
|
var FATAL_ERROR_CODES = [
|
|
50009
50012
|
// Configuration errors
|
|
@@ -50025,6 +50028,8 @@ var TurnstileWidget = /*#__PURE__*/forwardRef(function (_ref4, ref) {
|
|
|
50025
50028
|
padding = _ref4$padding === void 0 ? "1rem" : _ref4$padding,
|
|
50026
50029
|
_ref4$justify = _ref4.justify,
|
|
50027
50030
|
justify = _ref4$justify === void 0 ? "flex-end" : _ref4$justify,
|
|
50031
|
+
_ref4$align = _ref4.align,
|
|
50032
|
+
align = _ref4$align === void 0 ? "flex-end" : _ref4$align,
|
|
50028
50033
|
_ref4$size = _ref4.size,
|
|
50029
50034
|
size = _ref4$size === void 0 ? "normal" : _ref4$size,
|
|
50030
50035
|
_ref4$tabindex = _ref4.tabindex,
|
|
@@ -50034,13 +50039,10 @@ var TurnstileWidget = /*#__PURE__*/forwardRef(function (_ref4, ref) {
|
|
|
50034
50039
|
_ref4$theme = _ref4.theme,
|
|
50035
50040
|
theme = _ref4$theme === void 0 ? "light" : _ref4$theme,
|
|
50036
50041
|
_ref4$extraStyles = _ref4.extraStyles,
|
|
50037
|
-
extraStyles = _ref4$extraStyles === void 0 ? "" : _ref4$extraStyles
|
|
50038
|
-
_ref4$maxErrorRetries = _ref4.maxErrorRetries,
|
|
50039
|
-
maxErrorRetries = _ref4$maxErrorRetries === void 0 ? 3 : _ref4$maxErrorRetries;
|
|
50042
|
+
extraStyles = _ref4$extraStyles === void 0 ? "" : _ref4$extraStyles;
|
|
50040
50043
|
if (!verifyURL || !siteKey) return null;
|
|
50041
50044
|
var widgetRef = useRef(null);
|
|
50042
50045
|
var widgetIdRef = useRef(null);
|
|
50043
|
-
var retryCountRef = useRef(0);
|
|
50044
50046
|
var _useState = useState(null),
|
|
50045
50047
|
_useState2 = _slicedToArray(_useState, 2),
|
|
50046
50048
|
error = _useState2[0],
|
|
@@ -50049,36 +50051,23 @@ var TurnstileWidget = /*#__PURE__*/forwardRef(function (_ref4, ref) {
|
|
|
50049
50051
|
scriptLoaded = _useTurnstileScript.scriptLoaded,
|
|
50050
50052
|
scriptError = _useTurnstileScript.scriptError;
|
|
50051
50053
|
|
|
50052
|
-
// Clear the error state
|
|
50054
|
+
// Clear the error state
|
|
50053
50055
|
var clearError = function clearError() {
|
|
50054
50056
|
setError(null);
|
|
50055
|
-
retryCountRef.current = 0;
|
|
50056
50057
|
};
|
|
50057
50058
|
|
|
50058
50059
|
// Handle errors based on the retry strategy
|
|
50059
50060
|
var handleError = function handleError(errorCode) {
|
|
50060
|
-
|
|
50061
|
-
var currentRetryCount = retryCountRef.current;
|
|
50062
|
-
|
|
50063
|
-
// If we haven't exceeded max retries, reset and try again
|
|
50064
|
-
if (currentRetryCount <= maxErrorRetries) {
|
|
50065
|
-
window.turnstile.reset(widgetIdRef.current);
|
|
50066
|
-
setError(null);
|
|
50067
|
-
return;
|
|
50068
|
-
}
|
|
50069
|
-
|
|
50070
|
-
// Max retries exceeded - show appropriate error message
|
|
50071
|
-
if (errorCode) {
|
|
50072
|
-
var errorMessage = getErrorMessage(errorCode);
|
|
50073
|
-
setError(errorMessage);
|
|
50074
|
-
}
|
|
50075
|
-
};
|
|
50076
|
-
var getErrorMessage = function getErrorMessage(errorCode) {
|
|
50061
|
+
if (!errorCode) return;
|
|
50077
50062
|
var isFatalError = FATAL_ERROR_CODES.some(function (pattern) {
|
|
50078
50063
|
return pattern.test(errorCode);
|
|
50079
50064
|
});
|
|
50065
|
+
var errorMessage = getErrorMessage(isFatalError);
|
|
50066
|
+
setError(errorMessage);
|
|
50067
|
+
};
|
|
50068
|
+
var getErrorMessage = function getErrorMessage(isFatalError) {
|
|
50080
50069
|
if (isFatalError) {
|
|
50081
|
-
return "Browser or system error. Please refresh the page or
|
|
50070
|
+
return "Browser or system error. Please refresh the page or try a different browser.";
|
|
50082
50071
|
}
|
|
50083
50072
|
return "Something went wrong. Please refresh and try again.";
|
|
50084
50073
|
};
|
|
@@ -50095,28 +50084,36 @@ var TurnstileWidget = /*#__PURE__*/forwardRef(function (_ref4, ref) {
|
|
|
50095
50084
|
};
|
|
50096
50085
|
}, []);
|
|
50097
50086
|
useEffect$1(function () {
|
|
50087
|
+
if (scriptError) {
|
|
50088
|
+
setError("Unable to load security verification. Please refresh the page.");
|
|
50089
|
+
onError === null || onError === void 0 || onError("script_load_failed");
|
|
50090
|
+
return;
|
|
50091
|
+
}
|
|
50098
50092
|
if (widgetIdRef.current || !window.turnstile || !scriptLoaded) return;
|
|
50099
|
-
|
|
50100
|
-
|
|
50101
|
-
|
|
50102
|
-
|
|
50103
|
-
|
|
50104
|
-
|
|
50105
|
-
|
|
50106
|
-
|
|
50107
|
-
|
|
50108
|
-
|
|
50109
|
-
|
|
50110
|
-
|
|
50093
|
+
try {
|
|
50094
|
+
widgetIdRef.current = window.turnstile.render(widgetRef.current, {
|
|
50095
|
+
sitekey: siteKey,
|
|
50096
|
+
size: size,
|
|
50097
|
+
retry: retry,
|
|
50098
|
+
tabindex: tabindex,
|
|
50099
|
+
theme: theme,
|
|
50100
|
+
callback: function callback(token) {
|
|
50101
|
+
clearError();
|
|
50102
|
+
onSuccess === null || onSuccess === void 0 || onSuccess(token);
|
|
50103
|
+
},
|
|
50104
|
+
"error-callback": function errorCallback(errorCode) {
|
|
50111
50105
|
handleError(errorCode);
|
|
50106
|
+
onError === null || onError === void 0 || onError(errorCode);
|
|
50107
|
+
},
|
|
50108
|
+
"expired-callback": function expiredCallback() {
|
|
50109
|
+
clearError();
|
|
50110
|
+
onExpired === null || onExpired === void 0 || onExpired();
|
|
50112
50111
|
}
|
|
50113
|
-
|
|
50114
|
-
|
|
50115
|
-
"
|
|
50116
|
-
|
|
50117
|
-
|
|
50118
|
-
}
|
|
50119
|
-
});
|
|
50112
|
+
});
|
|
50113
|
+
} catch (error) {
|
|
50114
|
+
setError("Unable to load security verification. Please refresh the page.");
|
|
50115
|
+
onError === null || onError === void 0 || onError("render_failed");
|
|
50116
|
+
}
|
|
50120
50117
|
return function () {
|
|
50121
50118
|
if (widgetIdRef.current && window.turnstile) {
|
|
50122
50119
|
window.turnstile.remove(widgetIdRef.current);
|
|
@@ -50124,22 +50121,19 @@ var TurnstileWidget = /*#__PURE__*/forwardRef(function (_ref4, ref) {
|
|
|
50124
50121
|
clearError();
|
|
50125
50122
|
}
|
|
50126
50123
|
};
|
|
50127
|
-
}, [scriptLoaded, siteKey]);
|
|
50124
|
+
}, [scriptLoaded, scriptError, siteKey]);
|
|
50128
50125
|
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(TurnstileWidgetContainer, {
|
|
50129
50126
|
padding: padding,
|
|
50130
50127
|
justify: justify,
|
|
50128
|
+
align: align,
|
|
50131
50129
|
extraStyles: extraStyles
|
|
50132
50130
|
}, /*#__PURE__*/React__default.createElement("div", {
|
|
50133
50131
|
ref: widgetRef
|
|
50134
50132
|
}), error && /*#__PURE__*/React__default.createElement(Text$1, {
|
|
50135
50133
|
color: ERROR_COLOR,
|
|
50136
50134
|
variant: "pXS",
|
|
50137
|
-
extraStyles: "\n word-break: break-word;\n text-align: end;\n "
|
|
50138
|
-
}, error)
|
|
50139
|
-
color: ERROR_COLOR,
|
|
50140
|
-
variant: "pXS",
|
|
50141
|
-
extraStyles: "\n word-break: break-word;\n text-align: end;\n "
|
|
50142
|
-
}, "Unable to load security verification. Please refresh the page.")));
|
|
50135
|
+
extraStyles: "\n word-break: break-word;\n text-align: end;\n padding-top: 0.5rem;\n "
|
|
50136
|
+
}, error)));
|
|
50143
50137
|
});
|
|
50144
50138
|
|
|
50145
50139
|
var pageBackground = "#FBFCFD";
|