Files
discord-decomp/actions/native/GiftCodeActionCreators.tsx
T
2026-11-01 12:12:55 +02:00

125 lines
3.6 KiB
TypeScript

// Metro module 8036 (f8037).
import { AnalyticEvents, Endpoints } from "../../Constants";
import { getIsPaymentsBlocked } from "../../modules/billing/experiments/BlockedPaymentsCountryExperiment";
import openBlockedPaymentsCountryActionSheet from "../../modules/billing/native/openBlockedPaymentsCountryActionSheet";
import Dispatcher from "../../Dispatcher";
import { HTTP } from "../../_bundle/sendRequest";
import AnalyticsUtils from "../../utils/AnalyticsUtils";
import { BillingError } from "../../errors/index";
import ModalActionCreators from "../ModalActionCreators";
let c5090_6;
export async function redeemGiftCode(c26090_0) {
let r143;
let c26090_3;
let c26090_4 = 0;
let c29880_0, c29880_1, c29880_2, c29880_3, c29880_4, c29880_5, c29880_6, c29880_7, c29880_8, c29880_9, c29880_10;
L24: {
try {
c29880_0 = void 0;
c29880_1 = void 0;
c29880_2 = void 0;
c29880_3 = void 0;
c29880_0 = c26090_0.code;
let options = c26090_0.options;
if (options === void 0) {
options = c5090_6;
}
c29880_1 = options;
c29880_2 = c26090_0.onRedeemed;
c29880_3 = c26090_0.onError;
c29880_4 = void 0;
c29880_5 = void 0;
c29880_6 = void 0;
c29880_7 = void 0;
c29880_8 = void 0;
c29880_9 = void 0;
await void 0;
if (getIsPaymentsBlocked()) {
openBlockedPaymentsCountryActionSheet();
break L24;
}
c29880_4 = c29880_1.channelId;
c29880_5 = c29880_4 !== void 0 ? c29880_4 : null;
c29880_6 = c29880_1.paymentSource;
c29880_7 = c29880_6 !== void 0 ? c29880_6 : null;
Dispatcher.dispatch({
type: "GIFT_CODE_REDEEM",
code: c29880_0
});
c26090_4 = 1;
c29880_8 = await HTTP.post({
url: Endpoints.GIFT_CODE_REDEEM(c29880_0),
body: {
channel_id: c29880_5,
payment_source_id: c29880_7?.id
},
oldFormErrors: true,
rejectWithError: false
});
Dispatcher.dispatch({
type: "GIFT_CODE_REDEEM_SUCCESS",
code: c29880_0
});
AnalyticsUtils.track(AnalyticEvents.OPEN_MODAL, {
type: "gift_accept"
});
const r139 = c29880_2;
if (r139 != null) {
r139();
}
r143 = {
code: c29880_0,
entitlement: c29880_8
};
c26090_4 = 0;
} catch ($e) {
const r31 = $e;
let r8 = r31;
c26090_3 = r31;
if (c26090_4 !== 0) {
while (true) {
try {
const r153 = c26090_3;
c26090_4 = 0;
c29880_10 = r153;
c29880_9 = new BillingError(c29880_10);
Dispatcher.dispatch({
type: "GIFT_CODE_REDEEM_FAILURE",
code: c29880_0,
error: c29880_9
});
AnalyticsUtils.track(AnalyticEvents.OPEN_MODAL, {
type: "gift_accept",
location: null
});
const r181 = c29880_3;
if (r181 != null) {
r181(c29880_9);
}
throw c29880_9;
} catch (r149) {
r8 = r149;
c26090_3 = r149;
if (c26090_4 === 0) {
break;
}
}
}
}
throw r8;
}
return r143;
}
}
export function openGiftCodeRedeemModal(a0) {
ModalActionCreators.pushLazy(import("../../modules/premium/native/gift_code_modal/GiftCodeRedeemModal"), {
code: a0
}, "GIFT_CODE_REDEEM_MODAL_KEY");
}
c5090_6 = Object.freeze({});
const r25 = {
redeemGiftCode,
openGiftCodeRedeemModal
};
export default r25;