import { useHasLicenseModule } from '../../../../hooks/useHasLicenseModule';
import type { ComposerMessageProps } from '../ComposerMessage';
import ComposerMessage from '../ComposerMessage';
import ComposerFederationDisabled from './ComposerFederationDisabled';
import ComposerFederationInvalidVersion from './ComposerFederationInvalidVersion';
import ComposerFederationJoinRoomDisabled from './ComposerFederationJoinRoomDisabled';
import { useIsFederationEnabled } from '../../../../hooks/useIsFederationEnabled';
export type ComposerFederationProps = ComposerMessageProps & {
blocked?: boolean;
};
const ComposerFederation = ({ children, blocked, ...props }: ComposerFederationProps) => {
const federationEnabled = useIsFederationEnabled();
const { data: federationModuleEnabled = false } = useHasLicenseModule('federation');
if (blocked) {
return ;
}
if (!federationEnabled) {
return ;
}
if (!federationModuleEnabled) {
return ;
}
return (
<>
{children}
>
);
};
export default ComposerFederation;