bigbluebutton-Github/bigbluebutton-html5/imports/ui/components/waiting-users/guest-policy/container.jsx

44 lines
1.0 KiB
React
Raw Normal View History

import React from 'react';
2024-01-10 20:07:38 +08:00
import { useMutation } from '@apollo/client';
2020-02-04 04:41:12 +08:00
import GuestPolicyComponent from './component';
import useCurrentUser from '/imports/ui/core/hooks/useCurrentUser';
2024-01-10 20:07:38 +08:00
import { SET_POLICY } from '../mutations';
import useMeeting from '/imports/ui/core/hooks/useMeeting';
2020-02-04 04:41:12 +08:00
2022-11-23 00:16:46 +08:00
const GuestPolicyContainer = (props) => {
const { data: currentUserData } = useCurrentUser((user) => ({
isModerator: user.isModerator,
}));
const {
data: currentMeeting,
} = useMeeting((m) => ({
usersPolicies: {
guestPolicy: m.usersPolicies.guestPolicy,
},
}));
const amIModerator = currentUserData?.isModerator;
2024-01-10 20:07:38 +08:00
const [setPolicy] = useMutation(SET_POLICY);
const changeGuestPolicy = (guestPolicy) => {
setPolicy({
variables: {
guestPolicy,
},
});
};
return amIModerator
&& (
<GuestPolicyComponent
changeGuestPolicy={changeGuestPolicy}
guestPolicy={currentMeeting?.usersPolicies.guestPolicy}
{...props}
/>
);
};
2020-02-04 04:41:12 +08:00
export default GuestPolicyContainer;