add lifetime 1-4x

This commit is contained in:
2026-04-10 13:56:59 +04:00
parent 180f888819
commit 824cb15faa
8 changed files with 136 additions and 63 deletions
+17 -12
View File
@@ -1,4 +1,4 @@
export type Plan = "free" | "pro" | "pro2x" | "pro4x" | "lifetime";
export type Plan = "free" | "pro" | "pro2x" | "pro4x" | "lifetime" | "lifetime2x" | "lifetime4x";
export interface PlanLimits {
maxMonitors: number;
@@ -7,11 +7,13 @@ export interface PlanLimits {
}
const PLAN_LIMITS: Record<Plan, PlanLimits> = {
free: { maxMonitors: 10, minIntervalS: 30, maxRegions: 1 },
pro: { maxMonitors: 200, minIntervalS: 5, maxRegions: 99 },
pro2x: { maxMonitors: 400, minIntervalS: 5, maxRegions: 99 },
pro4x: { maxMonitors: 800, minIntervalS: 5, maxRegions: 99 },
lifetime: { maxMonitors: 200, minIntervalS: 5, maxRegions: 99 },
free: { maxMonitors: 10, minIntervalS: 30, maxRegions: 1 },
pro: { maxMonitors: 200, minIntervalS: 5, maxRegions: 99 },
pro2x: { maxMonitors: 400, minIntervalS: 5, maxRegions: 99 },
pro4x: { maxMonitors: 800, minIntervalS: 5, maxRegions: 99 },
lifetime: { maxMonitors: 200, minIntervalS: 5, maxRegions: 99 },
lifetime2x: { maxMonitors: 400, minIntervalS: 5, maxRegions: 99 },
lifetime4x: { maxMonitors: 800, minIntervalS: 5, maxRegions: 99 },
};
export function getPlanLimits(plan: string): PlanLimits {
@@ -19,17 +21,20 @@ export function getPlanLimits(plan: string): PlanLimits {
}
export const PLAN_LABELS: Record<string, string> = {
free: "Free", pro: "Pro", pro2x: "Pro 2x", pro4x: "Pro 4x", lifetime: "Lifetime",
free: "Free", pro: "Pro", pro2x: "Pro 2x", pro4x: "Pro 4x",
lifetime: "Lifetime", lifetime2x: "Lifetime 2x", lifetime4x: "Lifetime 4x",
};
export const PRO_MONTHLY_USD = 12;
export const LIFETIME_USD = 140;
export const PLAN_PRICING: Record<string, { label: string; monthlyUsd?: number; priceUsd?: number }> = {
pro: { label: "Pro", monthlyUsd: PRO_MONTHLY_USD },
pro2x: { label: "Pro 2x", monthlyUsd: PRO_MONTHLY_USD * 2 },
pro4x: { label: "Pro 4x", monthlyUsd: PRO_MONTHLY_USD * 4 },
lifetime: { label: "Lifetime", priceUsd: LIFETIME_USD },
pro: { label: "Pro", monthlyUsd: PRO_MONTHLY_USD },
pro2x: { label: "Pro 2x", monthlyUsd: PRO_MONTHLY_USD * 2 },
pro4x: { label: "Pro 4x", monthlyUsd: PRO_MONTHLY_USD * 4 },
lifetime: { label: "Lifetime", priceUsd: LIFETIME_USD },
lifetime2x: { label: "Lifetime 2x", priceUsd: LIFETIME_USD * 2 },
lifetime4x: { label: "Lifetime 4x", priceUsd: LIFETIME_USD * 4 },
};
export const COINS: Record<string, { label: string; ticker: string; confirmations: number; uri: string }> = {
@@ -42,7 +47,7 @@ export const COINS: Record<string, { label: string; ticker: string; confirmation
};
const PLAN_RANK: Record<string, number> = {
free: 0, pro: 1, lifetime: 1, pro2x: 2, pro4x: 3,
free: 0, pro: 1, lifetime: 1, pro2x: 2, lifetime2x: 2, pro4x: 3, lifetime4x: 3,
};
export function planTier(plan: string): number {