Pamela Chia
3fc23db748
fix(billing): block downgrade requests at the component level
...
RequestUpgradeToBillingOwners now checks the requested plan against the
viewer's current plan and renders a disabled state when the request would
be a downgrade or no-op. This protects every callsite: the plan switcher
(previously offered 'Request upgrade to Free' to higher-tier members), the
log-drains empty state (hardcoded 'Pro' showing to Team members), the
billing-metric paywall, and the custom-auth-providers fallback path.
Addon-flavored requests (compute size, PITR, custom domain, IPv4, spend
cap) bypass the guard because they are about feature add-ons, not plan
tier changes.
2026-05-12 02:38:54 +08:00
..
2026-04-30 07:16:06 -06:00
2026-05-06 09:14:45 -04:00
2026-04-30 07:09:58 -06:00
2026-05-01 14:05:42 +08:00
2026-05-11 14:41:14 +00:00
2026-04-30 10:53:24 +00:00
2024-11-25 13:26:22 +01:00
2026-05-06 17:13:51 +01:00
2026-04-30 10:53:24 +00:00
2026-04-30 10:53:24 +00:00
2026-04-30 10:53:24 +00:00
2026-05-04 13:08:06 -04:00
2026-04-27 17:42:34 +08:00
2026-04-01 10:22:37 +02:00
2026-04-28 11:33:53 +02:00
2026-04-30 10:53:24 +00:00
2026-05-08 07:13:25 -06:00
2026-05-11 17:30:16 +02:00
2026-04-30 10:53:24 +00:00
2026-04-01 10:22:37 +02:00
2026-04-01 10:22:37 +02:00
2026-05-08 10:49:50 +10:00
2026-04-30 10:53:24 +00:00
2026-04-30 10:53:24 +00:00
2026-05-08 13:51:49 +10:00
2026-05-04 12:45:50 +02:00
2026-04-30 10:53:24 +00:00
2026-04-29 04:08:09 +00:00
2026-04-01 10:22:37 +02:00
2026-04-30 10:53:24 +00:00
2026-04-08 14:40:05 +00:00
2026-05-01 14:05:42 +08:00
2026-05-06 16:04:54 +00:00
2026-04-30 10:53:24 +00:00
2026-04-30 10:53:24 +00:00
2026-04-01 10:22:37 +02:00
2026-04-01 10:22:37 +02:00
2026-04-01 10:22:37 +02:00
2025-01-17 19:50:16 +10:00
2026-01-23 15:29:02 +08:00
2025-05-27 15:50:42 +02:00
2025-03-28 15:51:19 +08:00
2026-04-30 10:53:24 +00:00
2025-11-13 15:13:03 +08:00
2026-04-29 06:45:31 -06:00
2026-04-30 10:53:24 +00:00
2026-04-30 10:53:24 +00:00
2026-04-01 10:22:37 +02:00
2026-04-01 10:22:37 +02:00
2026-04-01 10:22:37 +02:00
2026-05-01 10:18:20 +08:00
2026-04-30 10:53:24 +00:00
2026-04-27 11:07:06 +02:00
2026-04-16 15:31:04 +02:00
2026-04-30 10:53:24 +00:00
2026-04-30 10:53:24 +00:00
2026-05-06 10:53:49 +08:00
2026-04-06 10:02:56 -04:00
2026-04-14 12:50:00 +09:00
2026-04-16 15:31:04 +02:00
2026-04-28 11:33:53 +02:00
2025-11-03 03:37:22 +00:00
2026-04-28 11:33:53 +02:00
2025-12-10 09:41:31 +11:00
2025-12-12 20:35:43 +11:00
2026-04-01 10:22:37 +02:00
2026-03-11 09:01:49 +00:00
2026-04-30 10:53:24 +00:00
2026-04-30 10:53:24 +00:00
2026-04-23 12:17:24 +10:00
2026-04-28 11:33:53 +02:00
2026-04-28 12:17:29 +10:00
2026-04-28 12:17:29 +10:00
2026-04-30 10:53:24 +00:00
2026-04-01 10:22:37 +02:00
2026-05-06 06:43:07 -06:00
2026-05-12 02:38:54 +08:00
2026-04-30 10:53:24 +00:00
2026-05-01 07:13:37 -06:00
2026-04-30 10:53:24 +00:00
2026-02-13 11:48:12 +01:00
2026-04-30 10:53:24 +00:00
2026-04-23 09:22:16 -06:00
2026-05-04 07:08:35 -06:00
2026-04-28 09:09:59 -06:00
2026-05-01 07:13:37 -06:00
2026-04-01 10:22:37 +02:00
2026-02-25 10:47:56 +11:00
2026-04-30 10:53:24 +00:00
2026-04-27 17:42:34 +08:00
2026-04-30 10:53:24 +00:00
2025-12-05 14:52:35 +00:00
2026-04-01 10:22:37 +02:00
2026-05-01 18:45:21 +08:00
2026-04-23 08:06:03 -06:00
2026-04-01 10:22:37 +02:00
2026-04-21 16:38:03 +12:00
2026-03-25 11:54:30 +01:00
2026-04-01 10:22:37 +02:00