Files
supabase/apps
Alaister Young 7b4658e644 feat(studio): land BranchLayout shell + 2 leaves
routes/project/$ref/branches.tsx renders BranchLayout only — each leaf
keeps its own PageLayout because the title + primary/secondary actions
differ between Branches and Merge Requests, and the actions use hooks
(useAppStateSnapshot, useAsyncCheckPermissions) so they can't be moved
to staticData.

To avoid duplicating the wrapper logic in route files, the page-side
wrappers are hoisted/exported:
- pages/.../branches/index.tsx: \`BranchesPageWrapper\` was inline inside
  getLayout; lifted to a top-level \`export const\` taking children, and
  getLayout now uses it via \`<BranchesPageWrapper>{page}</BranchesPageWrapper>\`.
  Both runtimes still see identical layout.
- pages/.../branches/merge-requests.tsx: \`MergeRequestsPageWrapper\` was
  already top-level — just added \`export\`.

The route files import \`Page, { PageWrapper }\` from each page and render
\`<PageWrapper><Page/></PageWrapper>\`.

Migration doc updated with the BranchLayout-only delta.
2026-05-08 18:06:43 +08:00
..
2026-05-07 18:44:15 -04:00