diff --git a/src/app/features/common-settings/permissions/PermissionGroups.tsx b/src/app/features/common-settings/permissions/PermissionGroups.tsx index f173b595..d01e8eba 100644 --- a/src/app/features/common-settings/permissions/PermissionGroups.tsx +++ b/src/app/features/common-settings/permissions/PermissionGroups.tsx @@ -4,9 +4,8 @@ import { Badge, Box, Button, Chip, config, Icon, Icons, Menu, Spinner, Text } fr import { useTranslation } from 'react-i18next'; import produce from 'immer'; import type { StateEvents } from 'matrix-js-sdk'; -import { SequenceCard } from '../../../components/sequence-card'; -import { SequenceCardStyle } from '../styles.css'; import { SettingTile } from '../../../components/setting-tile'; +import { SettingsSection } from '../../settings/SettingsSection'; import { applyPermissionPower, getPermissionPower, @@ -120,53 +119,43 @@ export function PermissionGroups({ const powerChanges = value !== power; return ( - - {t('RoomSettings.users')} - - handleChangePermission(USER_DEFAULT_LOCATION, v, power)} - > - {(handleOpen, opened) => ( - - ) - } - before={ - canEdit && ( - - ) - } - onClick={handleOpen} - > - - {tag.name} - - - )} - - } - /> - - + + handleChangePermission(USER_DEFAULT_LOCATION, v, power)} + > + {(handleOpen, opened) => ( + + } + before={ + canEdit && ( + + ) + } + onClick={handleOpen} + > + + {tag.name} + + + )} + + } + /> + ); }; @@ -174,8 +163,7 @@ export function PermissionGroups({ <> {renderUserGroup()} {permissionGroups.map((group, groupIndex) => ( - - {group.name} + {group.items.map((item, itemIndex) => { const power = getPermissionPower(powerLevels, item.location); const powerUpdate = permissionUpdate.get(item.location); @@ -185,60 +173,48 @@ export function PermissionGroups({ const powerChanges = value !== power; return ( - - handleChangePermission(item.location, v, power)} - > - {(handleOpen, opened) => ( - - ) - } - before={ - canEdit && ( - - ) - } - onClick={handleOpen} - > - - {tag.name} - - {value < maxPower && ( - {t('RoomSettings.and_above')} - )} - - )} - - } - /> - + title={item.name} + description={item.description} + after={ + handleChangePermission(item.location, v, power)} + > + {(handleOpen, opened) => ( + + ) + } + before={ + canEdit && ( + + ) + } + onClick={handleOpen} + > + + {tag.name} + + {value < maxPower && {t('RoomSettings.and_above')}} + + )} + + } + /> ); })} - + ))} {hasChanges && ( diff --git a/src/app/features/common-settings/permissions/Powers.tsx b/src/app/features/common-settings/permissions/Powers.tsx index 72f16ae0..29487325 100644 --- a/src/app/features/common-settings/permissions/Powers.tsx +++ b/src/app/features/common-settings/permissions/Powers.tsx @@ -14,11 +14,12 @@ import { toRem, config, color, + Icon, + Icons, } from 'folds'; -import { SequenceCard } from '../../../components/sequence-card'; -import { SequenceCardStyle } from '../styles.css'; import { getPowers, usePowerLevelTags } from '../../../hooks/usePowerLevelTags'; import { SettingTile } from '../../../components/setting-tile'; +import { SettingsSection } from '../../settings/SettingsSection'; import { getPermissionPower, IPowerLevels } from '../../../hooks/usePowerLevels'; import { useRoom } from '../../../hooks/useRoom'; import { PowerColorBadge, PowerIcon } from '../../../components/power'; @@ -77,15 +78,20 @@ function PeekPermissions({ powerLevels, power, permissionGroups, children }: Pee const hasPower = requiredPower <= power; return ( - - {hasPower ? '✅' : '❌'} {item.name} - + + + + {item.name} + + ); })} @@ -120,19 +126,12 @@ export function Powers({ powerLevels, permissionGroups, onEdit }: PowersProps) { creatorsTag.icon && getPowerTagIconSrc(mx, useAuthentication, creatorsTag.icon); return ( - + {creators.size > 0 && ( - - - - + )} - @@ -175,8 +170,7 @@ export function Powers({ powerLevels, permissionGroups, onEdit }: PowersProps) { ) } - /> - + > {getPowers(powerLevelTags).map((power) => { const tag = powerLevelTags[power]; @@ -208,7 +202,7 @@ export function Powers({ powerLevels, permissionGroups, onEdit }: PowersProps) { })} - + ); }