feat: move team blocked banner from sidebar to bottom status bar#304
Conversation
Remove TeamBlockageAlert from sidebar footer and add team suspended indicator to the dashboard layout status bar. Shows a ⊘ icon with 'Team suspended—overdue payment. Pay now.' text in error color, with 'Pay now.' linking to the billing page. Co-Authored-By: ben@e2b.dev <ben@e2b.dev>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c9196af82d
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
- Route billing-limit blocks to /limits page instead of /billing - Default (overdue payment) blocks still route to /billing with 'Pay now.' - Add max-width constraint on mobile to prevent horizontal overflow - Use truncate instead of whitespace-nowrap for better mobile behavior Co-Authored-By: ben@e2b.dev <ben@e2b.dev>
Co-Authored-By: ben@e2b.dev <ben@e2b.dev>
Co-Authored-By: ben@e2b.dev <ben@e2b.dev>
Co-Authored-By: ben@e2b.dev <ben@e2b.dev>
| ) : ( | ||
| <> | ||
| Team suspended—overdue payment.{' '} | ||
| <Link | ||
| href={PROTECTED_URLS.BILLING(team.slug)} | ||
| className="underline" | ||
| > | ||
| Pay now. | ||
| </Link> | ||
| </> | ||
| )} |
There was a problem hiding this comment.
this means every other blocked reason is shown as payment issue.
please for the following two cases, do custom messages like for billing limits, and otherwise just show the actual blocked message OR generic fallback:
BlockedReasonMissingPayment = "missing payment method"
BlockedReasonVerification = "verification required"
There was a problem hiding this comment.
Done in 0df612c. Now handles each case separately:
"billing limit"→ "Billing limit reached. Update limit." →/limits"missing payment method"→ "Missing payment method. Add payment method." →/billing"verification required"→ "Verification required. Add payment method." →/billing- Any other reason → shows the actual
blockedReasontext with no CTA link
- 'billing limit' → 'Billing limit reached. Update limit.' → /limits - 'missing payment method' → 'Missing payment method. Add payment method.' → /billing - 'verification required' → 'Verification required. Add payment method.' → /billing - Other reasons → show actual blockedReason text, no CTA link Co-Authored-By: ben@e2b.dev <ben@e2b.dev>
|
the blockage element should be centered between the other two elements. if statusBanner is not provided, it can align to end |
Left (user/path) and right (statusBanner) each take flex-1 so the blocked indicator sits centered. When statusBanner is absent the indicator naturally aligns to end. Co-Authored-By: ben@e2b.dev <ben@e2b.dev>
|
Done in |
Summary
Moves the team blockage banner out of the sidebar and into the dashboard bottom status bar, matching the Figma design shared by Vojtech.
Changes:
TeamBlockageAlertfromsidebar/footer.tsxlayouts/footer.tsx(the bottom status bar)⊘BlockIcon with error-highlight color whenteam.isBlockedis true/limitswith "Settle outstanding payment."/billingwith "Pay now."prose-labelstyling from the theme, uppercase textReview & Testing Checklist for Human
Notes
blocked-banner.tsxfile is left in place (no longer imported) — can be cleaned up in a follow-up if desiredLink to Devin session: https://app.devin.ai/sessions/67f48c6c00574f9ebc1a292c9311bd5e