Files
discord-decomp/modules/payments/records/SubscriptionFacetRecord.tsx
T
2026-11-01 12:12:55 +02:00

107 lines
3.6 KiB
TypeScript

// Metro module 6221 (f6222).
import Record from "../../../lib/Record";
import { $callWithNewTarget } from "../../../_hermes/prelude";
class SubscriptionFacetRecord extends Record {
constructor(a0) {
super();
let subscriptionId = a0.subscriptionId;
if (subscriptionId == null) {
subscriptionId = null;
}
this.subscriptionId = subscriptionId;
let subscriptionPreview = a0.subscriptionPreview;
if (subscriptionPreview == null) {
subscriptionPreview = null;
}
this.subscriptionPreview = subscriptionPreview;
let updateType = a0.updateType;
if (updateType == null) {
updateType = null;
}
this.updateType = updateType;
let resetBillingCycle = a0.resetBillingCycle;
if (resetBillingCycle == null) {
resetBillingCycle = false;
}
this.resetBillingCycle = resetBillingCycle;
}
static createFromServer(a0) {
const r1 = a0 == null;
let r2 = null;
if (!r1) {
let subscription_id = a0.subscription_id;
if (subscription_id == null) {
subscription_id = null;
}
const subscription_preview = a0.subscription_preview;
const r17 = subscription_preview == null;
let subscriptionPreview = null;
if (!r17) {
let subscription_trial_id = subscription_preview.subscription_trial_id;
if (subscription_trial_id == null) {
subscription_trial_id = null;
}
const renewal_info = subscription_preview.renewal_info;
const r20 = renewal_info == null;
let renewalInfo = null;
if (!r20) {
let renewal_line_items = renewal_info.renewal_line_items;
if (renewal_line_items == null) {
renewal_line_items = [];
}
renewalInfo = {
price: renewal_info.price,
currency: renewal_info.currency,
renewalLineItems: renewal_line_items.map((renewal_line_item) => ({
refOrderLineItemId: renewal_line_item.ref_order_line_item_id,
price: renewal_line_item.price
}))
};
}
let subscription_type = subscription_preview.subscription_type;
if (subscription_type == null) {
subscription_type = null;
}
subscriptionPreview = {
currency: subscription_preview.currency,
countryCode: subscription_preview.country_code,
subscriptionTrialId: subscription_trial_id,
renewalInfo,
subscriptionType: subscription_type
};
}
let update_type = a0.update_type;
if (update_type == null) {
update_type = null;
}
let reset_billing_cycle = a0.reset_billing_cycle;
if (reset_billing_cycle == null) {
reset_billing_cycle = false;
}
const prototypeOf = Object.getPrototypeOf(SubscriptionFacetRecord);
const r34 = Object.create(SubscriptionFacetRecord.prototype);
const r35 = $callWithNewTarget(prototypeOf, r34, SubscriptionFacetRecord);
if (subscription_id == null) {
subscription_id = null;
}
const r37 = r35 instanceof Object ? r35 : r34;
r37.subscriptionId = subscription_id;
if (subscriptionPreview == null) {
subscriptionPreview = null;
}
r37.subscriptionPreview = subscriptionPreview;
if (update_type == null) {
update_type = null;
}
r37.updateType = update_type;
if (reset_billing_cycle == null) {
reset_billing_cycle = false;
}
r37.resetBillingCycle = reset_billing_cycle;
r2 = r37;
}
return r2;
}
}
export default SubscriptionFacetRecord;