Home / Function/ useGroupedPermissions() — supabase Function Reference

useGroupedPermissions() — supabase Function Reference

Architecture documentation for the useGroupedPermissions() function in useGroupedPermissions.ts from the supabase codebase.

Entity Profile

Dependency Diagram

graph TD
  22a9ee12_f62e_6418_f74e_46b8fd2a178b["useGroupedPermissions()"]
  5d7ad770_c152_5219_ce27_4b3faaf4ace2["AccessTokenNewBanner()"]
  5d7ad770_c152_5219_ce27_4b3faaf4ace2 -->|calls| 22a9ee12_f62e_6418_f74e_46b8fd2a178b
  fbf87d1c_fe51_5bf1_87cb_3b68d93eee80["getRealAccess()"]
  22a9ee12_f62e_6418_f74e_46b8fd2a178b -->|calls| fbf87d1c_fe51_5bf1_87cb_3b68d93eee80
  c0862479_54e7_f74a_d877_967767338e53["formatAccessText()"]
  22a9ee12_f62e_6418_f74e_46b8fd2a178b -->|calls| c0862479_54e7_f74a_d877_967767338e53
  style 22a9ee12_f62e_6418_f74e_46b8fd2a178b fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

apps/studio/components/interfaces/Account/AccessTokens/hooks/useGroupedPermissions.ts lines 5–33

export const useGroupedPermissions = (tokenPermissions: string[] | undefined) => {
  const groupedPermissions = useMemo(() => {
    const grouped: Record<string, string[]> = {}

    if (!tokenPermissions || tokenPermissions.length === 0) {
      return grouped
    }

    ACCESS_TOKEN_RESOURCES.forEach((resource) => {
      const access = getRealAccess(resource.resource, tokenPermissions)
      if (access !== 'no access') {
        const formattedAccess = formatAccessText(access)
        if (!grouped[formattedAccess]) {
          grouped[formattedAccess] = []
        }
        grouped[formattedAccess].push(resource.title)
      }
    })

    return grouped
  }, [tokenPermissions])

  const totalCount = Object.values(groupedPermissions).reduce(
    (sum, resources) => sum + resources.length,
    0
  )

  return { groupedPermissions, totalCount }
}

Subdomains

Frequently Asked Questions

What does useGroupedPermissions() do?
useGroupedPermissions() is a function in the supabase codebase.
What does useGroupedPermissions() call?
useGroupedPermissions() calls 2 function(s): formatAccessText, getRealAccess.
What calls useGroupedPermissions()?
useGroupedPermissions() is called by 1 function(s): AccessTokenNewBanner.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free