Files
twenty/packages/twenty-front/src/modules/captcha/components/CaptchaProvider.tsx
T
Antoine Moreaux b7473371b3 fix(client-config): set isLoaded to false on API status update (#12371)
Attempt at #12289 (edit Félix: removed fix keyword since I don't think
it fixes it)

---------

Co-authored-by: Félix Malfait <felix.malfait@gmail.com>
Co-authored-by: Félix Malfait <felix@twenty.com>
2025-05-30 14:44:31 +02:00

31 lines
843 B
TypeScript

import React, { useMemo } from 'react';
import { CaptchaProviderScriptLoaderEffect } from '@/captcha/components/CaptchaProviderScriptLoaderEffect';
import { isCaptchaRequiredForPath } from '@/captcha/utils/isCaptchaRequiredForPath';
import { useLocation } from 'react-router-dom';
export const CaptchaProvider = React.memo(
({ children }: React.PropsWithChildren) => {
const location = useLocation();
const isCaptchaRequired = useMemo(
() => isCaptchaRequiredForPath(location.pathname),
[location.pathname],
);
return (
<>
{isCaptchaRequired && (
<>
<div id="captcha-widget" data-size="invisible"></div>
<CaptchaProviderScriptLoaderEffect />
</>
)}
{children}
</>
);
},
);
CaptchaProvider.displayName = 'CaptchaProvider';