Files
twenty/packages/twenty-front/src/pages/settings/workspace/SettingsCustomDomainEffect.tsx
2025-02-10 15:12:36 +00:00

29 lines
856 B
TypeScript

import { currentWorkspaceState } from '@/auth/states/currentWorkspaceState';
import { useEffect } from 'react';
import { useRecoilValue } from 'recoil';
import { isDefined } from 'twenty-shared';
import { useGetCustomDomainDetailsQuery } from '~/generated/graphql';
export const SettingsCustomDomainEffect = () => {
const { refetch } = useGetCustomDomainDetailsQuery();
const currentWorkspace = useRecoilValue(currentWorkspaceState);
useEffect(() => {
let pollIntervalFn: null | ReturnType<typeof setInterval> = null;
if (isDefined(currentWorkspace?.customDomain)) {
pollIntervalFn = setInterval(async () => {
refetch();
}, 3000);
}
return () => {
if (isDefined(pollIntervalFn)) {
clearInterval(pollIntervalFn);
}
};
}, [currentWorkspace?.customDomain, refetch]);
return <></>;
};