Skip to content

RR7 3/5: Clean up admin/billing and collections splat routes#2000

Open
GregorShear wants to merge 1 commit into
greg/rr7-2-data-routerfrom
greg/rr7-3-splat-cleanup
Open

RR7 3/5: Clean up admin/billing and collections splat routes#2000
GregorShear wants to merge 1 commit into
greg/rr7-2-data-routerfrom
greg/rr7-3-splat-cleanup

Conversation

@GregorShear

@GregorShear GregorShear commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Part of the React Router v7 upgrade stack (3 of 5). Base: greg/rr7-2-data-router.

Two splat-route cleanups, landed before the future-flag PR because v7_relativeSplatPath changes how paths resolve inside splat routes.

admin/billing: collapse the billing/* splat into a billing parent with an index route + a paymentMethod/new child. This:

  • removes the duplicate billing registration and the dead /admin/billing/billing route, and
  • fixes a latent bug — /admin/billing/<garbage> previously rendered an empty content card because the splat swallowed it; it now correctly falls through to Page Not Found.
  • both billing routes are now consistently lazyElement-wrapped (error boundary + suspense).

collections: drop the /* from the parent path; the existing * child already handles the splat. This matches react-router's v7_relativeSplatPath guidance and is behavior-preserving.

Verified in-app: /admin/billing, /admin/billing/paymentMethod/new, /collections/create/new (dialog over table), and the new 404 for bad billing subpaths.

- Collapse the admin/billing splat into a billing parent with an index route
  and a paymentMethod/new child, removing the duplicate billing registration
  and the dead /admin/billing/billing route.
- As a result, /admin/billing/<garbage> now falls through to PageNotFound
  instead of rendering an empty content card (the splat no longer swallows it).
- Wrap both billing routes in lazyElement for consistent error boundaries.
- Drop the /* from the collections parent path; the existing * child handles
  the splat, matching react-router's v7_relativeSplatPath guidance.

Behavior verified in-app: /admin/billing, /admin/billing/paymentMethod/new,
/collections/create/new (dialog over table), and the new 404 for bad billing
subpaths.
@GregorShear GregorShear requested a review from a team as a code owner June 12, 2026 19:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant