useRolesFilter() — supabase Function Reference
Architecture documentation for the useRolesFilter() function in useRolesFilter.ts from the supabase codebase.
Entity Profile
Dependency Diagram
graph TD c566be23_345f_27bd_3757_6fb594d79fc3["useRolesFilter()"] 58ac8490_c53d_200a_edfa_a3def67ee94c["RolesFilterDropdown()"] 58ac8490_c53d_200a_edfa_a3def67ee94c -->|calls| c566be23_345f_27bd_3757_6fb594d79fc3 0b14c263_3b04_7b9a_5d7e_23d91a4695bb["isKnownRole()"] c566be23_345f_27bd_3757_6fb594d79fc3 -->|calls| 0b14c263_3b04_7b9a_5d7e_23d91a4695bb style c566be23_345f_27bd_3757_6fb594d79fc3 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
apps/studio/components/interfaces/QueryPerformance/hooks/useRolesFilter.ts lines 21–64
export const useRolesFilter = () => {
const { data: project } = useSelectedProjectQuery()
const { data, isPending: isLoadingRoles } = useDatabaseRolesQuery({
projectRef: project?.ref,
connectionString: project?.connectionString,
})
const appAccessRolesSet = useMemo(() => new Set(APP_ACCESS_ROLES) as Set<string>, [])
const supabaseSystemRolesSet = useMemo(() => new Set(SUPABASE_SYSTEM_ROLES) as Set<string>, [])
const roles = useMemo((): RoleWithDescription[] => {
return (data ?? [])
.sort((a, b) => a.name.localeCompare(b.name))
.map((role) => ({
...role,
displayName: isKnownRole(role.name) ? ROLE_INFO[role.name].displayName : role.name,
}))
}, [data])
const roleGroups = useMemo((): RoleGroup[] => {
return [
{
name: 'User Access',
options: roles.filter((r) => appAccessRolesSet.has(r.name)).map((r) => r.name),
},
{
name: 'System and Services',
options: roles.filter((r) => supabaseSystemRolesSet.has(r.name)).map((r) => r.name),
},
{
name: 'Custom',
options: roles
.filter((r) => !appAccessRolesSet.has(r.name) && !supabaseSystemRolesSet.has(r.name))
.map((r) => r.name),
},
]
}, [appAccessRolesSet, roles, supabaseSystemRolesSet])
return {
roles,
roleGroups,
isLoadingRoles,
}
}
Domain
Subdomains
Calls
Called By
Source
Frequently Asked Questions
What does useRolesFilter() do?
useRolesFilter() is a function in the supabase codebase.
What does useRolesFilter() call?
useRolesFilter() calls 1 function(s): isKnownRole.
What calls useRolesFilter()?
useRolesFilter() is called by 1 function(s): RolesFilterDropdown.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free