Skip to content

Phase 2: Move viewer and repo settings to useViewerPermissions #354

Description

@jennings

Replace store-held viewer + repo settings with the useViewerPermissions hook added in Phase 0.

Fields removed from store

  • viewerPermission
  • viewerCanMergeAsAdmin
  • repoAllowMergeCommit
  • repoAllowSquashMerge
  • repoAllowRebaseMerge
  • repoHasMergeQueue
  • prInMergeQueue

Setters removed

  • setViewerPermission
  • Any related setters used only by loadOverviewData.

Consumer changes

  • pr-overview.tsx, pr-review.tsx, pr-edit-dialog.tsx, and any merge-related UI switch from usePRReviewSelector(...) to useViewerPermissions(owner, repo, prNumber).

Tests

  • Verify components render correctly with isPending, error, and success states from useViewerPermissions.
  • Delete the store tests for the removed setters.
  • End-to-end style: merge-related UI (pr-overview.tsx) renders correctly with mocked viewer permissions.

Part of #351

Depends on #352.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Default priorityimplementedVerified locally; awaiting merge to main

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions