Skip to content

Commit 9ed8393

Browse files
committed
Keep Quota logic in the presenter
1 parent 6bc1576 commit 9ed8393

File tree

2 files changed

+9
-14
lines changed

2 files changed

+9
-14
lines changed

apps/webapp/app/presenters/v3/LimitsPresenter.server.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ export type QuotaInfo = {
3939
currentUsage: number;
4040
source: "default" | "plan" | "override";
4141
canExceed?: boolean;
42+
isUpgradable?: boolean;
4243
};
4344

4445
// Types for feature flags
@@ -212,6 +213,7 @@ export class LimitsPresenter extends BasePresenter {
212213
limit: organization.maximumProjectCount,
213214
currentUsage: organization._count.projects,
214215
source: "default",
216+
isUpgradable: true,
215217
},
216218
schedules:
217219
schedulesLimit !== null
@@ -222,6 +224,7 @@ export class LimitsPresenter extends BasePresenter {
222224
currentUsage: scheduleCount,
223225
source: "plan",
224226
canExceed: limits?.schedules?.canExceed,
227+
isUpgradable: true,
225228
}
226229
: null,
227230
teamMembers:
@@ -233,6 +236,7 @@ export class LimitsPresenter extends BasePresenter {
233236
currentUsage: organization._count.members,
234237
source: "plan",
235238
canExceed: limits?.teamMembers?.canExceed,
239+
isUpgradable: true,
236240
}
237241
: null,
238242
alerts:
@@ -244,6 +248,7 @@ export class LimitsPresenter extends BasePresenter {
244248
currentUsage: alertChannelCount,
245249
source: "plan",
246250
canExceed: limits?.alerts?.canExceed,
251+
isUpgradable: true,
247252
}
248253
: null,
249254
branches:
@@ -255,6 +260,7 @@ export class LimitsPresenter extends BasePresenter {
255260
currentUsage: activeBranchCount,
256261
source: "plan",
257262
canExceed: limits?.branches?.canExceed,
263+
isUpgradable: true,
258264
}
259265
: null,
260266
logRetentionDays:
@@ -276,6 +282,7 @@ export class LimitsPresenter extends BasePresenter {
276282
currentUsage: 0, // Would need to query realtime service for this
277283
source: "plan",
278284
canExceed: limits?.realtimeConcurrentConnections?.canExceed,
285+
isUpgradable: true,
279286
}
280287
: null,
281288
devQueueSize: {

apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.limits/route.tsx

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -505,6 +505,7 @@ function QuotasSection({
505505
currentUsage: 0,
506506
source: batchConcurrency.source,
507507
canExceed: true, // Allow contact us on top plan, view plans otherwise
508+
isUpgradable: true,
508509
});
509510

510511
// Add queue size quotas if set
@@ -593,19 +594,6 @@ function QuotaRow({
593594
);
594595
}
595596

596-
// Quotas that support upgrade options
597-
const upgradableQuotas = [
598-
"Projects",
599-
"Schedules",
600-
"Team members",
601-
"Alert channels",
602-
"Preview branches",
603-
"Realtime connections",
604-
"Batch processing concurrency",
605-
];
606-
607-
const isUpgradable = upgradableQuotas.includes(quota.name);
608-
609597
const renderUpgrade = () => {
610598
// Projects always show Contact us (regardless of upgrade flags)
611599
if (quota.name === "Projects") {
@@ -619,7 +607,7 @@ function QuotaRow({
619607
);
620608
}
621609

622-
if (!isUpgradable) {
610+
if (!quota.isUpgradable) {
623611
return null;
624612
}
625613

0 commit comments

Comments
 (0)