import React, { useState } from 'react'; import { Box, Icon, IconButton, Icons, Scroll, Text } from 'folds'; import { Page, PageContent, PageHeader } from '../../../components/page'; import { Powers } from './Powers'; import { useRoom } from '../../../hooks/useRoom'; import { usePowerLevels, usePowerLevelsAPI } from '../../../hooks/usePowerLevels'; import { useMatrixClient } from '../../../hooks/useMatrixClient'; import { StateEvent } from '../../../../types/matrix/room'; import { PowersEditor } from './PowersEditor'; import { PermissionGroups } from './PermissionGroups'; type PermissionsProps = { requestClose: () => void; }; export function Permissions({ requestClose }: PermissionsProps) { const mx = useMatrixClient(); const room = useRoom(); const powerLevels = usePowerLevels(room); const { getPowerLevel, canSendStateEvent } = usePowerLevelsAPI(powerLevels); const canEditPowers = canSendStateEvent( StateEvent.PowerLevelTags, getPowerLevel(mx.getSafeUserId()) ); const [powerEditor, setPowerEditor] = useState(false); const handleEditPowers = () => { setPowerEditor(true); }; if (canEditPowers && powerEditor) { return setPowerEditor(false)} />; } return ( Permissions ); }