Files
discord-decomp/modules/premium/PremiumSubscription.tsx
T
2026-11-01 12:12:55 +02:00

92 lines
2.2 KiB
TypeScript

// Metro module 3847 (f3848).
import { SubscriptionPlanInfo, SubscriptionPlans } from "./PremiumConstants";
function $mk72877($env) {
return (a0) => {
const r2 = $env.$parent;
const r6 = r2[1][a0];
let r7 = r6 != null && r6.skuId === r2[2].NONE;
const r11 = $env;
if (r7) {
r7 = r6.interval === r11[0];
}
if (r7) {
r7 = r6.intervalCount === r11[1];
}
return r7;
};
}
let $mk72878 = function() {
return (a0) => {
const r6 = SubscriptionPlanInfo[a0.planId];
return r6 != null && r6.premiumType != null;
};
};
let env2180 = {};
export function getNonePlanIdForIntervalType(a0) {
let env13682;
const r2 = env13682 = {
$parent: env2180
};
env13682[0] = a0;
let r4 = arguments[1];
if (r4 === void 0) {
r4 = 1;
}
env13682[1] = r4;
let r13 = Object.keys(SubscriptionPlanInfo).find($mk72877(r2));
if (r13 == null) {
r13 = SubscriptionPlans.NONE_MONTH;
}
return r13;
}
export function getNonePlanIdForSubscription(a0) {
let env13683;
const r10 = SubscriptionPlanInfo[a0.items[0].planId];
const interval = r10.interval;
let intervalCount = r10.intervalCount;
const r11 = env13683 = {
$parent: env2180
};
env13683[1] = void 0;
env13683[0] = interval;
if (intervalCount === void 0) {
intervalCount = 1;
}
env13683[1] = intervalCount;
let r18 = Object.keys(SubscriptionPlanInfo).find($mk72877(r11));
if (r18 == null) {
r18 = SubscriptionPlans.NONE_MONTH;
}
return r18;
}
export function getBaseSubscriptionItemForSubscriptionItems(a0) {
return a0.find($mk72878());
}
export function getBasePlanIdForSubscriptionItems(a0, a1, a2) {
const r8 = a0.find($mk72878());
if (r8 == null) {
let r10 = a1;
let r11 = a2;
if (a0.length > 0) {
const r15 = SubscriptionPlanInfo[a0[0].planId];
r10 = r15.interval;
r11 = r15.intervalCount;
}
let env13684;
const r16 = env13684 = {
$parent: env2180
};
env13684[0] = r10;
if (r11 === void 0) {
r11 = 1;
}
env13684[1] = r11;
let r24 = Object.keys(SubscriptionPlanInfo).find($mk72877(r16));
if (r24 == null) {
r24 = SubscriptionPlans.NONE_MONTH;
}
return r24;
}
return r8.planId;
}