Address RBAC review feedback

This commit is contained in:
2026-04-18 01:39:54 +05:30
parent abc6dc2860
commit 5a926ab6cf
12 changed files with 105 additions and 74 deletions
+10 -7
View File
@@ -1,5 +1,4 @@
<script lang="ts">
import {sortBy} from "@welshman/lib"
import {goto} from "$app/navigation"
import type {RoomMeta} from "@welshman/util"
import {displayRelayUrl, makeRoomMeta} from "@welshman/util"
@@ -33,11 +32,16 @@
import RoomEdit from "@app/components/RoomEdit.svelte"
import RoomName from "@app/components/RoomName.svelte"
import RoomImage from "@app/components/RoomImage.svelte"
import {deriveRoomRoles, hasPermission} from "@app/core/roles"
import {
deriveRoomMembers,
deriveRoomRoles,
deriveUserIsRoomAdmin,
deriveHasPermission,
sortRolesDesc,
ROOM_PERMISSION_EDIT_META,
} from "@app/core/roles"
import {
deriveRoom,
deriveRoomMembers,
deriveUserIsRoomAdmin,
deriveUserRoomMembershipStatus,
deriveUserRooms,
deriveShouldNotify,
@@ -63,7 +67,7 @@
const members = deriveRoomMembers(url, h)
const roomRoles = deriveRoomRoles(url, h)
const userIsAdmin = deriveUserIsRoomAdmin(url, h)
const canEditMetadata = hasPermission(url, h, 9002)
const canEditMetadata = deriveHasPermission(url, h, ROOM_PERMISSION_EDIT_META)
const membershipStatus = deriveUserRoomMembershipStatus(url, h)
const userRooms = deriveUserRooms(url)
@@ -71,8 +75,7 @@
const shouldNotify = deriveShouldNotify(url, h)
const roleRows = $derived.by(() =>
sortBy(
role => -(role.order ?? -Infinity),
sortRolesDesc(
Array.from($roomRoles.roles.values()).map(role => ({
name: role.name,
label: role.label,