This commit is contained in:
janisslsm committed 2026-07-28 01:06:53 +03:00
1 parent af3b49f756
commit 1781d25a15
22448 files changed
+2731829 -2650550

No files matched your search

@@ -1,132 +1,135 @@
/* Metro module 12192; source: modules/billing/hooks/useFPDurationLeft.tsx; dependencies: [1244, 7054, 3826, 1216, 2] */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
function _fun93405(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#93405, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12378:6, offset: 0x020b23ea, size: 213 bytes, params: 8, frame: 19
var object2;
const env0_0 = require;
const closure = roundFPCountdownUnits;
const roundFPCountdownUnits2 = roundFPCountdownUnits;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
object2 = {SHORT_TIME_LEFT: 0};
object2[0] = 'SHORT_TIME_LEFT';
object2.LONG_TIME_LEFT = 1;
object2[1] = 'LONG_TIME_LEFT';
object2.ENDS_IN = 2;
object2[2] = 'ENDS_IN';
object2.SHORT_TIME = 3;
object2[3] = 'SHORT_TIME';
object2.CREDITS_ENDS_IN = 4;
object2[4] = 'CREDITS_ENDS_IN';
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/billing/hooks/useFPDurationLeft.tsx');
object = {SHORT_TIME_LEFT: 0};
object[0] = 'SHORT_TIME_LEFT';
object.LONG_TIME_LEFT = 1;
object[1] = 'LONG_TIME_LEFT';
object.ENDS_IN = 2;
object[2] = 'ENDS_IN';
object.SHORT_TIME = 3;
object[3] = 'SHORT_TIME';
object.CREDITS_ENDS_IN = 4;
object[4] = 'CREDITS_ENDS_IN';
(FileImportTrackerModule).fileFinishedImporting('modules/billing/hooks/useFPDurationLeft.tsx');
exports.default = useFPDurationLeft;
exports.CountDownMessageTypes = object2;
exports.roundFPCountdownUnits = closure;
exports.CountDownMessageTypes = object;
exports.roundFPCountdownUnits = roundFPCountdownUnits2;
function useFPDurationLeft(a0, a1) { // fn#93407, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12378:946, offset: 0x020b263a, size: 782 bytes, params: 3, frame: 20
var object2;
var r0;
var error;
const t = require(dependencyMap[0]).t;
var property;
var moduleValue;
var unitsAsStrings;
var value6;
var captureMessage;
let value = environment;
const SHORT_TIME_LEFT = env0_3.SHORT_TIME_LEFT;
if (SHORT_TIME_LEFT === a1) {
object2 = {days: t['/wnvqA'], hours: t.Jsq0XN, minutes: t['SBd+Bs']};
} else if (env0_3.LONG_TIME_LEFT === a1) {
object2 = {days: t.UD5nn5, hours: t.Hg8Fee, minutes: t.XSbQZZ};
} else if (env0_3.ENDS_IN === a1) {
object2 = {days: t.rLqNad, hours: t.d1LvCA, minutes: t.Z2LX7K};
} else if (env0_3.CREDITS_ENDS_IN === a1) {
object2 = {days: t.xQ3zuN, hours: t.SFU7QN, minutes: t.Y4FNdL};
} else {
if (env0_3.SHORT_TIME !== a1) {
throw new global.Error('Unknown messageType (' + a1 + ') when rendering time left');
}
object2 = {days: t.fYmirx, hours: t['C3RO+g'], minutes: t.r77oHc};
}
const value4 = roundFPCountdownUnits(importDefault(dependencyMap[1])(a0.toDate(), 60000));
reducibleJoin13: while (true) {
reduciblePort20: while (true) {
exceptionLanding19: while (true) {
try {
} catch (error) {
break exceptionLanding19;
}
break reducibleJoin13;
}
value = importDefault(dependencyMap[3]);
captureMessage = value.captureMessage;
Reflect.apply(captureMessage, value, ['Error trying to format string for fractional nitro duration pill']);
r0 = '';
break reduciblePort20;
}
return r0;
}
try {
} catch (error) {
break exceptionLanding19;
}
try {
property = dependencyMap[2];
} catch (error) {
break exceptionLanding19;
}
try {
moduleValue = require(property);
} catch (error) {
break exceptionLanding19;
}
try {
unitsAsStrings = moduleValue.unitsAsStrings;
} catch (error) {
break exceptionLanding19;
}
try {
value6 = Reflect.apply(unitsAsStrings, moduleValue, [value4, object2]);
} catch (error) {
break exceptionLanding19;
}
return value6;
}
}
function roundFPCountdownUnits(a0) { // fn#93406, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12378:301, offset: 0x020b24bf, size: 379 bytes, params: 2, frame: 15
var r5;
var r1;
const object2 = {};
copyDataProperties(object2, a0, r5);
const seconds = object2.seconds;
const object = {};
copyDataProperties(object, a0, r5);
const seconds = object.seconds;
const value = 0;
if (seconds > value) {
object2.minutes = object2.minutes + 1;
object2.seconds = value;
object.minutes = object.minutes + 1;
object.seconds = value;
}
if (object2.minutes === 60) {
object2.hours = object2.hours + 1;
object2.minutes = value;
if (object.minutes === 60) {
object.hours = object.hours + 1;
object.minutes = value;
}
if (object2.hours === 24) {
object2.days = object2.days + 1;
object2.hours = value;
if (object.hours === 24) {
object.days = object.days + 1;
object.hours = value;
}
if (object2.days > value) {
if (object.days > value) {
return {'days': null, 'hours': 0, 'minutes': 0, 'seconds': 0,
days: object2.hours > value ? object2.days + 1 : object2.days};
days: object.hours > value ? object.days + 1 : object.days};
}
if (object2.hours > value) {
r1 = object2.minutes > 45 ? object2.hours + 1 : object2.hours;
if (object.hours > value) {
r1 = object.minutes > 45 ? object.hours + 1 : object.hours;
return r1 > 11 ? {'days': 1, 'hours': 0, 'minutes': 0, 'seconds': 0} : {'days': 0, 'hours': null, 'minutes': 0,
'seconds': 0, hours: r1};
}
let minutes = object2.minutes;
let minutes = object.minutes;
if (minutes > value) {
minutes = object2.minutes;
minutes = object.minutes;
r5 = minutes > 45 ? 1 : value;
minutes = r5 === 1 ? value : object2.minutes;
minutes = r5 === 1 ? value : object.minutes;
return {days: value, hours: r5, minutes: minutes, seconds: value};
}
return object2.seconds > value ? {'days': 0, 'hours': 0, 'minutes': 1, 'seconds': 0} : object2;
}
function useFPDurationLeft(a0, a1) { // fn#93407, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12378:946, offset: 0x020b263a, size: 782 bytes, params: 3, frame: 20
var object;
var r0;
var error;
const t = require(dependencyMap[0]).t;
var property;
var moduleValue;
var unitsAsStrings;
var value6;
var captureMessage;
let value = environment;
const SHORT_TIME_LEFT = env0_3.SHORT_TIME_LEFT;
if (SHORT_TIME_LEFT === a1) {
object = {days: t['/wnvqA'], hours: t.Jsq0XN, minutes: t['SBd+Bs']};
} else if (env0_3.LONG_TIME_LEFT === a1) {
object = {days: t.UD5nn5, hours: t.Hg8Fee, minutes: t.XSbQZZ};
} else if (env0_3.ENDS_IN === a1) {
object = {days: t.rLqNad, hours: t.d1LvCA, minutes: t.Z2LX7K};
} else if (env0_3.CREDITS_ENDS_IN === a1) {
object = {days: t.xQ3zuN, hours: t.SFU7QN, minutes: t.Y4FNdL};
} else {
if (env0_3.SHORT_TIME !== a1) {
throw new global.Error('Unknown messageType (' + a1 + ') when rendering time left');
}
object = {days: t.fYmirx, hours: t['C3RO+g'], minutes: t.r77oHc};
}
const value4 = roundFPCountdownUnits(importDefault(dependencyMap[1])(a0.toDate(), 60000));
reducibleJoin13: while (true) {
reduciblePort20: while (true) {
exceptionLanding19: while (true) {
try {
} catch (error) {
break exceptionLanding19;
}
break reducibleJoin13;
}
value = importDefault(dependencyMap[3]);
captureMessage = value.captureMessage;
Reflect.apply(captureMessage, value, ['Error trying to format string for fractional nitro duration pill']);
r0 = '';
break reduciblePort20;
}
return r0;
}
try {
} catch (error) {
break exceptionLanding19;
}
try {
property = dependencyMap[2];
} catch (error) {
break exceptionLanding19;
}
try {
moduleValue = require(property);
} catch (error) {
break exceptionLanding19;
}
try {
unitsAsStrings = moduleValue.unitsAsStrings;
} catch (error) {
break exceptionLanding19;
}
try {
value6 = Reflect.apply(unitsAsStrings, moduleValue, [value4, object]);
} catch (error) {
break exceptionLanding19;
}
return value6;
return object.seconds > value ? {'days': 0, 'hours': 0, 'minutes': 1, 'seconds': 0} : object;
}
global.__d(_fun93405, 12192, [1244, 7054, 3826, 1216,
2]) /* metro module 12192, dependencies: [1244, 7054, 3826, 1216, 2] */;
@@ -1,4 +1,14 @@
/* Metro module 5180; source: modules/billing/hooks/useFractionalPremiumInfo.tsx; dependencies: [57, 31, 1878, 3808, 5181, 661, 1880, 3738, 44, 3817, 3802, 566, 4594, 5182, 22, 2] */
import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */
import UserStore from '../../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import SubscriptionStore from '../../../stores/billing/SubscriptionStore.tsx'; /* Metro dependency 3808 */
import UseMountEffect from '../../../hooks/useMountEffect.tsx'; /* Metro dependency 4594 */
import EntitlementStore from '../../../stores/game_store/EntitlementStore.tsx'; /* Metro dependency 5181 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as Module00022Module from '../../../by-id/module-00022.js'; /* Metro dependency 22 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
function _fun45601(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#45601, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:6, offset: 0x01192fa0, size: 284 bytes, params: 8, frame: 19
const env0_0 = require;
const shouldFetchRedemptionEntitlements = function(a0, a1) {
@@ -6,55 +16,128 @@ function _fun45601(global, require, importDefault, importAll, module, exports, d
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const subscriptionStore = importDefault(3808) /* metro dependency 3808: SubscriptionStore */;
const entitlementStore = importDefault(5181) /* metro dependency 5181: EntitlementStore */;
let value = require(661) /* metro dependency 661: Constants */;
let value = ConstantsModule;
const env0_8 = value.EntitlementSourceTypes;
const env0_9 = value.EntitlementTypes;
const env0_10 = value.SubscriptionStatusTypes;
value = require(1880) /* metro dependency 1880: PremiumConstants */;
const env0_11 = value.FractionalPremiumStates;
const env0_12 = value.PREMIUM_SUBSCRIPTION_APPLICATION;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/billing/hooks/useFractionalPremiumInfo.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/billing/hooks/useFractionalPremiumInfo.tsx');
exports.default = useFractionalPremiumInfo;
}
function shouldFetchApplicationEntitlements(a0) { // fn#45603, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:1869, offset: 0x011930f9, size: 77 bytes, params: 2, frame: 12
return a0 != null && !EntitlementStore.applicationIdsFetching.has(PREMIUM_SUBSCRIPTION_APPLICATION) && !EntitlementStore.applicationIdsFetched.has(PREMIUM_SUBSCRIPTION_APPLICATION);
}
function calculateFractionalPremiumInfo({isFetching, entitlements, unactivatedFractionalPremiumUnits, currentUser, premiumSubscription, fetchedAllEntitlements, excludeReverseTrialFromCountdown}) { // fn#45604, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:342, offset: 0x01193146, size: 839 bytes, params: 2, frame: 31
var r10;
var r14;
var r19;
var value7;
var defaultImport3;
var moduleValue;
var Array;
var object2;
const value = undefined;
isFetching = !(isFetching === value) && isFetching;
let object4 = {isFractionalPremiumActive: false};
const NONE = FractionalPremiumStates.NONE;
object4.fractionalState = NONE;
object4.startsAt = (importDefault(3738) /* metro dependency 3738 */)(0);
object4.endsAt = (importDefault(3738) /* metro dependency 3738 */)(0);
const value4 = '';
object4.currentEntitlementId = value4;
object4.currentEntitlementEndsAt = (importDefault(3738) /* metro dependency 3738 */)(0);
object4.unactivatedUnits = [];
object4.fetched = fetchedAllEntitlements;
if (isFetching) {
object2 = {};
copyDataProperties(object2, object4, undefined);
object2['fetched'] = false;
return object2;
function shouldFetchApplicationEntitlements(a0) { // fn#45603, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:1869, offset: 0x011930f9, size: 77 bytes, params: 2, frame: 12
return a0 != null && !EntitlementStore.applicationIdsFetching.has(PREMIUM_SUBSCRIPTION_APPLICATION) && !EntitlementStore.applicationIdsFetched.has(PREMIUM_SUBSCRIPTION_APPLICATION);
}
if (currentUser != null) {
if (entitlements.length !== 0) {
function calculateFractionalPremiumInfo({isFetching, entitlements, unactivatedFractionalPremiumUnits, currentUser, premiumSubscription, fetchedAllEntitlements, excludeReverseTrialFromCountdown}) { // fn#45604, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:342, offset: 0x01193146, size: 839 bytes, params: 2, frame: 31
var r10;
var r14;
var r19;
var value7;
var defaultImport3;
var moduleValue;
var Array;
var object;
const value = undefined;
isFetching = !(isFetching === value) && isFetching;
let object3 = {isFractionalPremiumActive: false};
const NONE = FractionalPremiumStates.NONE;
object3.fractionalState = NONE;
object3.startsAt = (importDefault(3738) /* metro dependency 3738 */)(0);
object3.endsAt = (importDefault(3738) /* metro dependency 3738 */)(0);
const value4 = '';
object3.currentEntitlementId = value4;
object3.currentEntitlementEndsAt = (importDefault(3738) /* metro dependency 3738 */)(0);
object3.unactivatedUnits = [];
object3.fetched = fetchedAllEntitlements;
if (isFetching) {
object = {};
copyDataProperties(object, object3, undefined);
object['fetched'] = false;
return object;
}
if (currentUser != null) {
if (entitlements.length !== 0) {
value7 = entitlements.filter(function(a0) {
return a0.endsAt != null && a0.startsAt != null;
}).sort(_fun45606);
value7.reverse();
if (value7.length > 0) {
if (value7.length !== entitlements.length) {
Array = global.Array;
(require(3817) /* metro dependency 3817: BillingUtils */).captureBillingMessage('fractional redemption entitlements should have startsAt/endsAt',
{extra: {entitlementIds: Array.from(entitlements.values()).map(_fun45607)}});
throw new global.Error('fractional redemption entitlements should have startsAt/endsAt');
}
if (value7[0].startsAt == null) {
Array = global.Array;
(require(3817) /* metro dependency 3817: BillingUtils */).captureBillingMessage('fractional redemption entitlements should have startsAt/endsAt',
{extra: {entitlementIds: Array.from(entitlements.values()).map(_fun45607)}});
throw new global.Error('fractional redemption entitlements should have startsAt/endsAt');
}
if (value7[0].endsAt == null) {
Array = global.Array;
(require(3817) /* metro dependency 3817: BillingUtils */).captureBillingMessage('fractional redemption entitlements should have startsAt/endsAt',
{extra: {entitlementIds: Array.from(entitlements.values()).map(_fun45607)}});
throw new global.Error('fractional redemption entitlements should have startsAt/endsAt');
}
r10 = value7[0] ?? null;
r14 = r10 == null ? FractionalPremiumStates.NONE : premiumSubscription == null ? FractionalPremiumStates.FP_ONLY : premiumSubscription.status === SubscriptionStatusTypes.PAUSED ? FractionalPremiumStates.FP_SUB_PAUSED : FractionalPremiumStates.FP_ONLY;
r19 = excludeReverseTrialFromCountdown && (r10 == null ? value : r10.sourceType) === EntitlementSourceTypes.REVERSE_TRIAL;
object3 = {isFractionalPremiumActive: r10 != null, fractionalState: r14};
r14 = r10 != null ? (importDefault(3738) /* metro dependency 3738 */)(r10.startsAt) : (importDefault(3738) /* metro dependency 3738 */)(0);
object3.startsAt = r14;
if (r10 != null) {
defaultImport3 = importDefault(3738) /* metro dependency 3738 */;
moduleValue = require(3802) /* metro dependency 3802: PremiumUtils */;
r14 = defaultImport3(moduleValue.extendDateWithUnconsumedFractionalPremium(r10.endsAt,
unactivatedFractionalPremiumUnits, value, r19));
} else {
r14 = (importDefault(3738) /* metro dependency 3738 */)(0);
}
object3.endsAt = r14;
object3.currentEntitlementId = r10 != null ? r10.id : value4;
object3.currentEntitlementEndsAt = r10 != null ? (importDefault(3738) /* metro dependency 3738 */)(r10.endsAt) : (importDefault(3738) /* metro dependency 3738 */)(0);
object3.unactivatedUnits = unactivatedFractionalPremiumUnits;
object3.fetched = fetchedAllEntitlements;
return object3;
}
r10 = value7[0] ?? null;
r14 = r10 == null ? FractionalPremiumStates.NONE : premiumSubscription == null ? FractionalPremiumStates.FP_ONLY : premiumSubscription.status === SubscriptionStatusTypes.PAUSED ? FractionalPremiumStates.FP_SUB_PAUSED : FractionalPremiumStates.FP_ONLY;
r19 = excludeReverseTrialFromCountdown && (r10 == null ? value : r10.sourceType) === EntitlementSourceTypes.REVERSE_TRIAL;
object3 = {isFractionalPremiumActive: r10 != null, fractionalState: r14};
r14 = r10 != null ? (importDefault(3738) /* metro dependency 3738 */)(r10.startsAt) : (importDefault(3738) /* metro dependency 3738 */)(0);
object3.startsAt = r14;
if (r10 != null) {
defaultImport3 = importDefault(3738) /* metro dependency 3738 */;
moduleValue = require(3802) /* metro dependency 3802: PremiumUtils */;
r14 = defaultImport3(moduleValue.extendDateWithUnconsumedFractionalPremium(r10.endsAt,
unactivatedFractionalPremiumUnits, value, r19));
} else {
r14 = (importDefault(3738) /* metro dependency 3738 */)(0);
}
object3.endsAt = r14;
object3.currentEntitlementId = r10 != null ? r10.id : value4;
object3.currentEntitlementEndsAt = r10 != null ? (importDefault(3738) /* metro dependency 3738 */)(r10.endsAt) : (importDefault(3738) /* metro dependency 3738 */)(0);
object3.unactivatedUnits = unactivatedFractionalPremiumUnits;
object3.fetched = fetchedAllEntitlements;
return object3;
}
if (unactivatedFractionalPremiumUnits.length === 0) {
return object3;
}
value7 = entitlements.filter(function(a0) {
return a0.endsAt != null && a0.startsAt != null;
}).sort(_fun45606);
@@ -66,8 +149,9 @@ function calculateFractionalPremiumInfo({isFetching, entitlements, unactivatedFr
{extra: {entitlementIds: Array.from(entitlements.values()).map(_fun45607)}});
{extra: {entitlementIds: Array.from(entitlements.values()).map(function(a0) {
return a0.id;
})}});
throw new global.Error('fractional redemption entitlements should have startsAt/endsAt');
}
if (value7[0].startsAt == null) {
@@ -76,7 +160,6 @@ function calculateFractionalPremiumInfo({isFetching, entitlements, unactivatedFr
{extra: {entitlementIds: Array.from(entitlements.values()).map(_fun45607)}});
throw new global.Error('fractional redemption entitlements should have startsAt/endsAt');
}
@@ -86,16 +169,15 @@ function calculateFractionalPremiumInfo({isFetching, entitlements, unactivatedFr
{extra: {entitlementIds: Array.from(entitlements.values()).map(_fun45607)}});
throw new global.Error('fractional redemption entitlements should have startsAt/endsAt');
}
r10 = value7[0] ?? null;
r14 = r10 == null ? FractionalPremiumStates.NONE : premiumSubscription == null ? FractionalPremiumStates.FP_ONLY : premiumSubscription.status === SubscriptionStatusTypes.PAUSED ? FractionalPremiumStates.FP_SUB_PAUSED : FractionalPremiumStates.FP_ONLY;
r19 = excludeReverseTrialFromCountdown && (r10 == null ? value : r10.sourceType) === EntitlementSourceTypes.REVERSE_TRIAL;
object4 = {isFractionalPremiumActive: r10 != null, fractionalState: r14};
object3 = {isFractionalPremiumActive: r10 != null, fractionalState: r14};
r14 = r10 != null ? (importDefault(3738) /* metro dependency 3738 */)(r10.startsAt) : (importDefault(3738) /* metro dependency 3738 */)(0);
object4.startsAt = r14;
object3.startsAt = r14;
if (r10 != null) {
defaultImport3 = importDefault(3738) /* metro dependency 3738 */;
moduleValue = require(3802) /* metro dependency 3802: PremiumUtils */;
@@ -104,19 +186,19 @@ function calculateFractionalPremiumInfo({isFetching, entitlements, unactivatedFr
} else {
r14 = (importDefault(3738) /* metro dependency 3738 */)(0);
}
object4.endsAt = r14;
object4.currentEntitlementId = r10 != null ? r10.id : value4;
object4.currentEntitlementEndsAt = r10 != null ? (importDefault(3738) /* metro dependency 3738 */)(r10.endsAt) : (importDefault(3738) /* metro dependency 3738 */)(0);
object4.unactivatedUnits = unactivatedFractionalPremiumUnits;
object4.fetched = fetchedAllEntitlements;
return object4;
object3.endsAt = r14;
object3.currentEntitlementId = r10 != null ? r10.id : value4;
object3.currentEntitlementEndsAt = r10 != null ? (importDefault(3738) /* metro dependency 3738 */)(r10.endsAt) : (importDefault(3738) /* metro dependency 3738 */)(0);
object3.unactivatedUnits = unactivatedFractionalPremiumUnits;
object3.fetched = fetchedAllEntitlements;
return object3;
}
r10 = value7[0] ?? null;
r14 = r10 == null ? FractionalPremiumStates.NONE : premiumSubscription == null ? FractionalPremiumStates.FP_ONLY : premiumSubscription.status === SubscriptionStatusTypes.PAUSED ? FractionalPremiumStates.FP_SUB_PAUSED : FractionalPremiumStates.FP_ONLY;
r19 = excludeReverseTrialFromCountdown && (r10 == null ? value : r10.sourceType) === EntitlementSourceTypes.REVERSE_TRIAL;
object4 = {isFractionalPremiumActive: r10 != null, fractionalState: r14};
object3 = {isFractionalPremiumActive: r10 != null, fractionalState: r14};
r14 = r10 != null ? (importDefault(3738) /* metro dependency 3738 */)(r10.startsAt) : (importDefault(3738) /* metro dependency 3738 */)(0);
object4.startsAt = r14;
object3.startsAt = r14;
if (r10 != null) {
defaultImport3 = importDefault(3738) /* metro dependency 3738 */;
moduleValue = require(3802) /* metro dependency 3802: PremiumUtils */;
@@ -125,166 +207,95 @@ function calculateFractionalPremiumInfo({isFetching, entitlements, unactivatedFr
} else {
r14 = (importDefault(3738) /* metro dependency 3738 */)(0);
}
object4.endsAt = r14;
object4.currentEntitlementId = r10 != null ? r10.id : value4;
object4.currentEntitlementEndsAt = r10 != null ? (importDefault(3738) /* metro dependency 3738 */)(r10.endsAt) : (importDefault(3738) /* metro dependency 3738 */)(0);
object4.unactivatedUnits = unactivatedFractionalPremiumUnits;
object4.fetched = fetchedAllEntitlements;
return object4;
object3.endsAt = r14;
object3.currentEntitlementId = r10 != null ? r10.id : value4;
object3.currentEntitlementEndsAt = r10 != null ? (importDefault(3738) /* metro dependency 3738 */)(r10.endsAt) : (importDefault(3738) /* metro dependency 3738 */)(0);
object3.unactivatedUnits = unactivatedFractionalPremiumUnits;
object3.fetched = fetchedAllEntitlements;
}
if (unactivatedFractionalPremiumUnits.length === 0) {
return object4;
return object3;
function _fun45606(a0, a1) { // fn#45606, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:838, offset: 0x011934ab, size: 122 bytes, params: 3, frame: 16
const value = environment.__proto__;
(importDefault(44) /* metro dependency 44 */)(a0.endsAt != null && a1.endsAt != null, 'endsAt should not be null');
return a0.endsAt < a1.endsAt ? -1 : a0.endsAt > a1.endsAt ? 1 : 0;
}
value7 = entitlements.filter(function(a0) {
return a0.endsAt != null && a0.startsAt != null;
}).sort(_fun45606);
value7.reverse();
if (value7.length > 0) {
if (value7.length !== entitlements.length) {
Array = global.Array;
(require(3817) /* metro dependency 3817: BillingUtils */).captureBillingMessage('fractional redemption entitlements should have startsAt/endsAt',
{extra: {entitlementIds: Array.from(entitlements.values()).map(function(a0) {
return a0.id;
})}});
throw new global.Error('fractional redemption entitlements should have startsAt/endsAt');
}
if (value7[0].startsAt == null) {
Array = global.Array;
(require(3817) /* metro dependency 3817: BillingUtils */).captureBillingMessage('fractional redemption entitlements should have startsAt/endsAt',
{extra: {entitlementIds: Array.from(entitlements.values()).map(_fun45607)}});
throw new global.Error('fractional redemption entitlements should have startsAt/endsAt');
}
if (value7[0].endsAt == null) {
Array = global.Array;
(require(3817) /* metro dependency 3817: BillingUtils */).captureBillingMessage('fractional redemption entitlements should have startsAt/endsAt',
{extra: {entitlementIds: Array.from(entitlements.values()).map(_fun45607)}});
throw new global.Error('fractional redemption entitlements should have startsAt/endsAt');
}
r10 = value7[0] ?? null;
r14 = r10 == null ? FractionalPremiumStates.NONE : premiumSubscription == null ? FractionalPremiumStates.FP_ONLY : premiumSubscription.status === SubscriptionStatusTypes.PAUSED ? FractionalPremiumStates.FP_SUB_PAUSED : FractionalPremiumStates.FP_ONLY;
r19 = excludeReverseTrialFromCountdown && (r10 == null ? value : r10.sourceType) === EntitlementSourceTypes.REVERSE_TRIAL;
object4 = {isFractionalPremiumActive: r10 != null, fractionalState: r14};
r14 = r10 != null ? (importDefault(3738) /* metro dependency 3738 */)(r10.startsAt) : (importDefault(3738) /* metro dependency 3738 */)(0);
object4.startsAt = r14;
if (r10 != null) {
defaultImport3 = importDefault(3738) /* metro dependency 3738 */;
moduleValue = require(3802) /* metro dependency 3802: PremiumUtils */;
r14 = defaultImport3(moduleValue.extendDateWithUnconsumedFractionalPremium(r10.endsAt,
unactivatedFractionalPremiumUnits, value, r19));
} else {
r14 = (importDefault(3738) /* metro dependency 3738 */)(0);
}
object4.endsAt = r14;
object4.currentEntitlementId = r10 != null ? r10.id : value4;
object4.currentEntitlementEndsAt = r10 != null ? (importDefault(3738) /* metro dependency 3738 */)(r10.endsAt) : (importDefault(3738) /* metro dependency 3738 */)(0);
object4.unactivatedUnits = unactivatedFractionalPremiumUnits;
object4.fetched = fetchedAllEntitlements;
return object4;
}
r10 = value7[0] ?? null;
r14 = r10 == null ? FractionalPremiumStates.NONE : premiumSubscription == null ? FractionalPremiumStates.FP_ONLY : premiumSubscription.status === SubscriptionStatusTypes.PAUSED ? FractionalPremiumStates.FP_SUB_PAUSED : FractionalPremiumStates.FP_ONLY;
r19 = excludeReverseTrialFromCountdown && (r10 == null ? value : r10.sourceType) === EntitlementSourceTypes.REVERSE_TRIAL;
object4 = {isFractionalPremiumActive: r10 != null, fractionalState: r14};
r14 = r10 != null ? (importDefault(3738) /* metro dependency 3738 */)(r10.startsAt) : (importDefault(3738) /* metro dependency 3738 */)(0);
object4.startsAt = r14;
if (r10 != null) {
defaultImport3 = importDefault(3738) /* metro dependency 3738 */;
moduleValue = require(3802) /* metro dependency 3802: PremiumUtils */;
r14 = defaultImport3(moduleValue.extendDateWithUnconsumedFractionalPremium(r10.endsAt,
unactivatedFractionalPremiumUnits, value, r19));
} else {
r14 = (importDefault(3738) /* metro dependency 3738 */)(0);
}
object4.endsAt = r14;
object4.currentEntitlementId = r10 != null ? r10.id : value4;
object4.currentEntitlementEndsAt = r10 != null ? (importDefault(3738) /* metro dependency 3738 */)(r10.endsAt) : (importDefault(3738) /* metro dependency 3738 */)(0);
object4.unactivatedUnits = unactivatedFractionalPremiumUnits;
object4.fetched = fetchedAllEntitlements;
}
return object4;
}
function useFractionalPremiumInfo() { // fn#45608, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:2094, offset: 0x01193525, size: 532 bytes, params: 1, frame: 26
const value = a0;
const r0 = value !== undefined ? value : {'forceFetch': false, 'excludeReverseTrial': false,
'excludeReverseTrialFromCountdown': false};
const forceFetch = r0.forceFetch;
const env0_1 = r0.excludeReverseTrial;
const excludeReverseTrialFromCountdown = r0.excludeReverseTrialFromCountdown;
const currentUser = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], function() {
return UserStore.getCurrentUser();
});
const env0_3 = currentUser;
const value2 = (require(566) /* metro dependency 566: flux */).useStateFromStoresArray([EntitlementStore],
function() {
return EntitlementStore.getFractionalPremium({excludeReverseTrial: excludeReverseTrial});
});
const env0_4 = value2;
const fetchedAllEntitlements = (require(566) /* metro dependency 566: flux */).useStateFromStores([EntitlementStore],
function() {
return EntitlementStore.fetchedAllEntitlements;
});
const value3 = (require(566) /* metro dependency 566: flux */).useStateFromStoresArray([EntitlementStore],
function() {
return EntitlementStore.getUnactivatedFractionalPremiumUnits();
});
const premiumTypeSubscription = (require(566) /* metro dependency 566: flux */).useStateFromStores([SubscriptionStore],
function() {
return SubscriptionStore.getPremiumTypeSubscription();
});
const binding = env0_4;
const useState = binding.useState;
const calculateFractionalPremiumInfoBinding = calculateFractionalPremiumInfo;
let r13 = shouldFetchRedemptionEntitlements(forceFetch, currentUser) || EntitlementStore.fetchingAllEntitlements;
r13 = !r13 ? shouldFetchApplicationEntitlements(currentUser) : r13;
r13 = !r13 ? EntitlementStore.applicationIdsFetching.has(PREMIUM_SUBSCRIPTION_APPLICATION) : r13;
const value6 = env0_3(Reflect.apply(useState, binding, [calculateFractionalPremiumInfoBinding({isFetching: r13,
entitlements: value2, unactivatedFractionalPremiumUnits: value3, currentUser: currentUser,
premiumSubscription: premiumTypeSubscription, fetchedAllEntitlements: fetchedAllEntitlements,
excludeReverseTrialFromCountdown: excludeReverseTrialFromCountdown})]), 2);
const property = value6[0];
const env0_8 = value6[1];
(importDefault(4594) /* metro dependency 4594: useMountEffect */)(_fun45614);
env0_4.useEffect(_fun45615, [currentUser, value2, premiumTypeSubscription, value3, fetchedAllEntitlements,
excludeReverseTrialFromCountdown]);
return property;
}
function useFractionalPremiumInfo() { // fn#45608, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:2094, offset: 0x01193525, size: 532 bytes, params: 1, frame: 26
const value = a0;
const r0 = value !== undefined ? value : {'forceFetch': false, 'excludeReverseTrial': false,
'excludeReverseTrialFromCountdown': false};
const forceFetch = r0.forceFetch;
const env0_1 = r0.excludeReverseTrial;
const excludeReverseTrialFromCountdown = r0.excludeReverseTrialFromCountdown;
const currentUser = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], function() {
return UserStore.getCurrentUser();
});
const currentUser2 = currentUser;
const value2 = (require(566) /* metro dependency 566: flux */).useStateFromStoresArray([EntitlementStore],
function() {
return EntitlementStore.getFractionalPremium({excludeReverseTrial: excludeReverseTrial});
});
const env0_4 = value2;
const fetchedAllEntitlements = (require(566) /* metro dependency 566: flux */).useStateFromStores([EntitlementStore],
function() {
return EntitlementStore.fetchedAllEntitlements;
});
const value3 = (require(566) /* metro dependency 566: flux */).useStateFromStoresArray([EntitlementStore],
function() {
return EntitlementStore.getUnactivatedFractionalPremiumUnits();
});
const premiumTypeSubscription = (require(566) /* metro dependency 566: flux */).useStateFromStores([SubscriptionStore],
function() {
return SubscriptionStore.getPremiumTypeSubscription();
});
const binding = env0_4;
const useState = binding.useState;
const calculateFractionalPremiumInfoBinding = calculateFractionalPremiumInfo;
let r13 = shouldFetchRedemptionEntitlements(forceFetch, currentUser) || EntitlementStore.fetchingAllEntitlements;
r13 = !r13 ? shouldFetchApplicationEntitlements(currentUser) : r13;
r13 = !r13 ? EntitlementStore.applicationIdsFetching.has(PREMIUM_SUBSCRIPTION_APPLICATION) : r13;
const value6 = currentUser2(Reflect.apply(useState, binding,
[calculateFractionalPremiumInfoBinding({isFetching: r13, entitlements: value2,
unactivatedFractionalPremiumUnits: value3, currentUser: currentUser,
premiumSubscription: premiumTypeSubscription, fetchedAllEntitlements: fetchedAllEntitlements,
excludeReverseTrialFromCountdown: excludeReverseTrialFromCountdown})]), 2);
const property = value6[0];
const env0_8 = value6[1];
(UseMountEffect)(_fun45614);
env0_4.useEffect(_fun45615, [currentUser, value2, premiumTypeSubscription, value3, fetchedAllEntitlements,
excludeReverseTrialFromCountdown]);
return property;
function _fun45614() { // fn#45614, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:3043, offset: 0x011937a2, size: 130 bytes, params: 1, frame: 16
if (shouldFetchRedemptionEntitlements(forceFetch, currentUser)) {
(require(5182) /* metro dependency 5182: EntitlementActionCreators */).fetchUserEntitlements({entitlementType: EntitlementTypes.FRACTIONAL_REDEMPTION});
}
if (shouldFetchApplicationEntitlements(currentUser)) {
(require(5182) /* metro dependency 5182: EntitlementActionCreators */).fetchUserEntitlementsForApplication(PREMIUM_SUBSCRIPTION_APPLICATION);
}
}
function _fun45606(a0, a1) { // fn#45606, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:838, offset: 0x011934ab, size: 122 bytes, params: 3, frame: 16
const value = environment.__proto__;
(importDefault(44) /* metro dependency 44 */)(a0.endsAt != null && a1.endsAt != null, 'endsAt should not be null');
return a0.endsAt < a1.endsAt ? -1 : a0.endsAt > a1.endsAt ? 1 : 0;
}
function _fun45615() { // fn#45615, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:3265, offset: 0x01193824, size: 95 bytes, params: 1, frame: 13
const env0_0 = calculateFractionalPremiumInfo({entitlements: env0_4, unactivatedFractionalPremiumUnits: env0_6,
currentUser: currentUser, premiumSubscription: premiumTypeSubscription,
fetchedAllEntitlements: fetchedAllEntitlements,
excludeReverseTrialFromCountdown: excludeReverseTrialFromCountdown});
env0_8(_fun45616);
function _fun45616(a0) { // fn#45616, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:3460, offset: 0x01193883, size: 56 bytes, params: 2, frame: 14
const value = a0;
return Module00022Module.isEqual(value, env0_0) ? value : env0_0;
}
}
function _fun45614() { // fn#45614, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:3043, offset: 0x011937a2, size: 130 bytes, params: 1, frame: 16
if (shouldFetchRedemptionEntitlements(forceFetch, currentUser)) {
(require(5182) /* metro dependency 5182: EntitlementActionCreators */).fetchUserEntitlements({entitlementType: EntitlementTypes.FRACTIONAL_REDEMPTION});
}
if (shouldFetchApplicationEntitlements(currentUser)) {
(require(5182) /* metro dependency 5182: EntitlementActionCreators */).fetchUserEntitlementsForApplication(PREMIUM_SUBSCRIPTION_APPLICATION);
}
}
function _fun45615() { // fn#45615, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:3265, offset: 0x01193824, size: 95 bytes, params: 1, frame: 13
const env0_0 = calculateFractionalPremiumInfo({entitlements: env0_4, unactivatedFractionalPremiumUnits: env0_6,
currentUser: currentUser, premiumSubscription: premiumTypeSubscription,
fetchedAllEntitlements: fetchedAllEntitlements,
excludeReverseTrialFromCountdown: excludeReverseTrialFromCountdown});
env0_8(_fun45616);
}
function _fun45616(a0) { // fn#45616, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:3460, offset: 0x01193883, size: 56 bytes, params: 2, frame: 14
const value = a0;
const moduleValue = require(22) /* metro dependency 22 */;
return moduleValue.isEqual(value, env0_0) ? value : env0_0;
function _fun45607(a0) { // fn#45607, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5358:1084, offset: 0x00e46f8c, size: 10 bytes, params: 2, frame: 1
return a0.id;
}
global.__d(_fun45601, 5180, [57, 31, 1878, 3808, 5181, 661, 1880, 3738, 44, 3817, 3802, 566, 4594, 5182, 22,
2]) /* metro module 5180, dependencies: [57, 31, 1878, 3808, 5181, 661, 1880, 3738, 44, 3817, 3802, 566, 4594, 5182, 22, 2] */;
@@ -1,4 +1,12 @@
/* Metro module 7563; source: modules/billing/hooks/useSubscriptionPlansLoaded.tsx; dependencies: [3805, 3807, 3808, 1880, 3, 566, 2] */
import Logger from '../../debug/Logger.tsx'; /* Metro dependency 3 */
import PaymentSourceStore from '../../../stores/billing/PaymentSourceStore.tsx'; /* Metro dependency 3805 */
import SubscriptionPlanStore from '../../../stores/billing/SubscriptionPlanStore.tsx'; /* Metro dependency 3807 */
import SubscriptionStore from '../../../stores/billing/SubscriptionStore.tsx'; /* Metro dependency 3808 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
import * as PremiumConstantsModule from '../../premium/PremiumConstants.tsx'; /* Metro dependency 1880 */
function _fun60805(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#60805, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7741:6, offset: 0x017103df, size: 230 bytes, params: 8, frame: 20
const env0_0 = require;
const _arrayLikeToArray_60808 = function(a0, a1) {
@@ -44,242 +52,244 @@ function _fun60805(global, require, importDefault, importAll, module, exports, d
}
return value;
};
const closure = getSubscriptionPlansLoaded;
const getSubscriptionPlansLoaded2 = getSubscriptionPlansLoaded;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const paymentSourceStore = importDefault(3805) /* metro dependency 3805: PaymentSourceStore */;
const subscriptionPlanStore = importDefault(3807) /* metro dependency 3807: SubscriptionPlanStore */;
const subscriptionStore = importDefault(3808) /* metro dependency 3808: SubscriptionStore */;
const env0_5 = (require(1880) /* metro dependency 1880: PremiumConstants */).ACTIVE_PREMIUM_SKUS;
const logger = importDefault(3) /* metro dependency 3: Logger */;
Object.create(logger.prototype, {constructor: {value: logger}});
new logger('useSubscriptionPlansLoaded');
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/billing/hooks/useSubscriptionPlansLoaded.tsx');
Object.create(Logger.prototype, {constructor: {value: Logger}});
new Logger('useSubscriptionPlansLoaded');
(FileImportTrackerModule).fileFinishedImporting('modules/billing/hooks/useSubscriptionPlansLoaded.tsx');
exports.useSubscriptionPlansLoaded = useSubscriptionPlansLoaded;
exports.getSubscriptionPlansLoaded = closure;
}
function _createForOfIteratorHelperLoose_60806(a0, a1) { // fn#60806, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7741:161, offset: 0x017104c5, size: 370 bytes, params: 3, frame: 20
var r6;
var r9;
var r5;
var value3;
var regexp;
const env0_0 = a0;
const Symbol = global.Symbol;
let value = typeof Symbol !== 'undefined';
let r1 = value && a0[global.Symbol.iterator];
r1 = !r1 ? a0['@@iterator'] : r1;
if (r1) {
value = r1.call(a0);
return value.next.bind(value);
}
const Array = global.Array;
if (Array.isArray(a0)) {
exports.getSubscriptionPlansLoaded = getSubscriptionPlansLoaded2;
function _createForOfIteratorHelperLoose_60806(a0, a1) { // fn#60806, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7741:161, offset: 0x017104c5, size: 370 bytes, params: 3, frame: 20
var r6;
var r9;
var r5;
var value3;
var regexp;
const env0_0 = a0;
const Symbol = global.Symbol;
let value = typeof Symbol !== 'undefined';
let r1 = value && a0[global.Symbol.iterator];
r1 = !r1 ? a0['@@iterator'] : r1;
if (r1) {
value = r1.call(a0);
return value.next.bind(value);
}
return _fun60807;
}
value = undefined;
if (a0) {
if (typeof a0 === 'string') {
value = _arrayLikeToArray_60808(a0, value);
r5 = value;
} else {
value3 = ({}).toString.call(a0).slice(8, -1);
r6 = value3 === 'Object' && a0.constructor;
r9 = r6 ? a0.constructor.name : value3;
if (r9 === 'Map') {
r6 = global.Array.from(a0);
} else if (r9 === 'Set') {
r6 = global.Array.from(a0);
} else if (r9 === 'Arguments') {
const Array = global.Array;
if (Array.isArray(a0)) {
if (r1) {
}
return _fun60807;
}
value = undefined;
if (a0) {
if (typeof a0 === 'string') {
value = _arrayLikeToArray_60808(a0, value);
r6 = value;
r5 = value;
} else {
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
if (regexp.test(r9)) {
value3 = ({}).toString.call(a0).slice(8, -1);
r6 = value3 === 'Object' && a0.constructor;
r9 = r6 ? a0.constructor.name : value3;
if (r9 === 'Map') {
r6 = global.Array.from(a0);
} else if (r9 === 'Set') {
r6 = global.Array.from(a0);
} else if (r9 === 'Arguments') {
value = _arrayLikeToArray_60808(a0, value);
r6 = value;
} else {
r6 = value;
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
if (regexp.test(r9)) {
value = _arrayLikeToArray_60808(a0, value);
r6 = value;
} else {
r6 = value;
}
}
r5 = r6;
}
r5 = r6;
} else {
r5 = value;
}
} else {
r5 = value;
}
if (r5) {
if (r5) {
if (r5) {
}
return _fun60807;
}
const TypeError = global.TypeError;
throw new TypeError('Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');
function _fun60807() { // fn#60807, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7741:732, offset: 0x00c39d73, size: 69 bytes, params: 1, frame: 5
return env0_1 >= env0_0.length ? {done: true} : {done: false,
value: env0_0[typeof env0_1 === 'bigint' ? env0_1 : +env0_1]};
}
return _fun60807;
}
const TypeError = global.TypeError;
throw new TypeError('Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');
}
function getSubscriptionPlansLoaded() { // fn#60809, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7741:1114, offset: 0x01710637, size: 327 bytes, params: 1, frame: 20
var r6;
var r0;
var r1;
var r2;
var r4;
var r7;
var paymentSourceId;
var items2;
var item3;
var item4;
var hasPaymentSourceForSKUIds;
var value8;
var value9;
let value = a0;
const value2 = a1;
const value3 = undefined;
reducibleJoin2: while (true) {
if (value !== value3) {
r6 = value;
}
function getSubscriptionPlansLoaded() { // fn#60809, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7741:1114, offset: 0x01710637, size: 327 bytes, params: 1, frame: 20
var r6;
var r0;
var r1;
var r2;
var r4;
var r7;
var paymentSourceId;
var items2;
var item3;
var item4;
var hasPaymentSourceForSKUIds;
var value8;
var value9;
let value = a0;
const value2 = a1;
const value3 = undefined;
reducibleJoin2: while (true) {
if (value !== value3) {
r6 = value;
break reducibleJoin2;
}
value = environment;
items2 = [];
arraySpread(items2, ACTIVE_PREMIUM_SKUS, 0, undefined);
r6 = items2;
break reducibleJoin2;
}
value = environment;
items2 = [];
arraySpread(items2, ACTIVE_PREMIUM_SKUS, 0, undefined);
r6 = items2;
break reducibleJoin2;
}
reducibleJoin4: while (true) {
if (value2 !== value3) {
r0 = value2;
reducibleJoin4: while (true) {
if (value2 !== value3) {
r0 = value2;
break reducibleJoin4;
}
value = environment;
r0 = [PaymentSourceStore, SubscriptionPlanStore, SubscriptionStore];
break reducibleJoin4;
}
value = environment;
r0 = [PaymentSourceStore, SubscriptionPlanStore, SubscriptionStore];
break reducibleJoin4;
}
const iterator = r0[Symbol.iterator]();
const iterator2 = iterator.next;
let item2 = Reflect.apply(iterator2, iterator, []);
let item = item2.value;
item2 = item2.done ? undefined : iterator;
r0 = item2 === value3 ? value3 : item;
reducibleJoin7: while (true) {
if (value) {
r1 = item2;
r2 = value;
r4 = value3;
break reducibleJoin7;
}
item3 = Reflect.apply(iterator2, item2, []);
item = item3.value;
item3 = item3.done ? undefined : item2;
value = item3 === value3;
if (value) {
const iterator = r0[Symbol.iterator]();
const iterator2 = iterator.next;
let item2 = Reflect.apply(iterator2, iterator, []);
let item = item2.value;
item2 = item2.done ? undefined : iterator;
r0 = item2 === value3 ? value3 : item;
reducibleJoin7: while (true) {
if (value) {
r1 = item2;
r2 = value;
r4 = value3;
break reducibleJoin7;
}
item3 = Reflect.apply(iterator2, item2, []);
item = item3.value;
item3 = item3.done ? undefined : item2;
value = item3 === value3;
if (value) {
r1 = item3;
r2 = value;
r4 = value3;
break reducibleJoin7;
}
r1 = item3;
r2 = value;
r4 = value3;
r4 = item;
break reducibleJoin7;
}
r1 = item3;
r2 = value;
r4 = item;
break reducibleJoin7;
}
reducibleJoin9: while (true) {
if (r2) {
r7 = value3;
break reducibleJoin9;
}
item4 = Reflect.apply(iterator2, r1, []);
item = item4.value;
item4 = item4.done ? undefined : r1;
value = item4 === value3;
if (value) {
reducibleJoin9: while (true) {
if (r2) {
r7 = value3;
break reducibleJoin9;
}
item4 = Reflect.apply(iterator2, r1, []);
item = item4.value;
item4 = item4.done ? undefined : r1;
value = item4 === value3;
if (value) {
r1 = item4;
r2 = value;
r7 = value3;
break reducibleJoin9;
}
r1 = item4;
r2 = value;
r7 = value3;
r7 = item;
break reducibleJoin9;
}
r1 = item4;
r2 = value;
r7 = item;
break reducibleJoin9;
}
reducibleJoin11: while (true) {
if (r2) {
reducibleJoin11: while (true) {
if (r2) {
break reducibleJoin11;
}
r1.return();
break reducibleJoin11;
}
r1.return();
break reducibleJoin11;
}
const paymentSourceIds = r0.paymentSourceIds;
const defaultPaymentSourceId = r0.defaultPaymentSourceId;
value = r4.isLoadedForSKUs(r6);
const premiumTypeSubscription = r7.getPremiumTypeSubscription();
reducibleJoin13: while (true) {
if (premiumTypeSubscription == null) {
paymentSourceId = value3;
const paymentSourceIds = r0.paymentSourceIds;
const defaultPaymentSourceId = r0.defaultPaymentSourceId;
value = r4.isLoadedForSKUs(r6);
const premiumTypeSubscription = r7.getPremiumTypeSubscription();
reducibleJoin13: while (true) {
if (premiumTypeSubscription == null) {
paymentSourceId = value3;
break reducibleJoin13;
}
paymentSourceId = premiumTypeSubscription.paymentSourceId;
break reducibleJoin13;
}
paymentSourceId = premiumTypeSubscription.paymentSourceId;
break reducibleJoin13;
}
if (paymentSourceId != null) {
hasPaymentSourceForSKUIds = r4.hasPaymentSourceForSKUIds;
reducibleJoin16: while (true) {
if (!Reflect.apply(hasPaymentSourceForSKUIds, r4, [paymentSourceId, r6])) {
return false;
}
break reducibleJoin16;
}
}
if (defaultPaymentSourceId != null) {
hasPaymentSourceForSKUIds = r4.hasPaymentSourceForSKUIds;
reducibleJoin19: while (true) {
if (!Reflect.apply(hasPaymentSourceForSKUIds, r4, [defaultPaymentSourceId, r6])) {
return false;
}
break reducibleJoin19;
}
}
const value6 = _createForOfIteratorHelperLoose_60806(paymentSourceIds);
const value7 = value6();
let done = value7.done;
if (!done) {
r2 = value7;
reducibleLoop20: while (true) {
value8 = r2.value;
if (paymentSourceId != null) {
hasPaymentSourceForSKUIds = r4.hasPaymentSourceForSKUIds;
if (!Reflect.apply(hasPaymentSourceForSKUIds, r4, [value8, r6])) {
return false;
reducibleJoin16: while (true) {
if (!Reflect.apply(hasPaymentSourceForSKUIds, r4, [paymentSourceId, r6])) {
return false;
}
break reducibleJoin16;
}
value9 = value6();
done = value9.done;
if (done) {
return value;
}
r2 = value9;
continue reducibleLoop20;
}
if (defaultPaymentSourceId != null) {
hasPaymentSourceForSKUIds = r4.hasPaymentSourceForSKUIds;
reducibleJoin19: while (true) {
if (!Reflect.apply(hasPaymentSourceForSKUIds, r4, [defaultPaymentSourceId, r6])) {
return false;
}
break reducibleJoin19;
}
}
const value6 = _createForOfIteratorHelperLoose_60806(paymentSourceIds);
const value7 = value6();
let done = value7.done;
if (!done) {
r2 = value7;
reducibleLoop20: while (true) {
value8 = r2.value;
hasPaymentSourceForSKUIds = r4.hasPaymentSourceForSKUIds;
if (!Reflect.apply(hasPaymentSourceForSKUIds, r4, [value8, r6])) {
return false;
}
value9 = value6();
done = value9.done;
if (done) {
return value;
}
r2 = value9;
continue reducibleLoop20;
}
}
return value;
}
return value;
}
function useSubscriptionPlansLoaded() { // fn#60810, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7741:1680, offset: 0x0171077e, size: 116 bytes, params: 1, frame: 17
var r5;
var items2;
const value = a0;
if (value !== undefined) {
r5 = value;
} else {
items2 = [];
arraySpread(items2, ACTIVE_PREMIUM_SKUS, 0, undefined);
r5 = items2;
function useSubscriptionPlansLoaded() { // fn#60810, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7741:1680, offset: 0x0171077e, size: 116 bytes, params: 1, frame: 17
var r5;
var items2;
const value = a0;
if (value !== undefined) {
r5 = value;
} else {
items2 = [];
arraySpread(items2, ACTIVE_PREMIUM_SKUS, 0, undefined);
r5 = items2;
}
return (FluxModule).useStateFromStores([PaymentSourceStore,
SubscriptionPlanStore, SubscriptionStore], _fun60811, [r5]);
function _fun60811() { // fn#60811, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7741:1770, offset: 0x017107f2, size: 52 bytes, params: 1, frame: 14
return getSubscriptionPlansLoaded(env0_0, [PaymentSourceStore, SubscriptionPlanStore, SubscriptionStore]);
}
}
return (require(566) /* metro dependency 566: flux */).useStateFromStores([PaymentSourceStore,
SubscriptionPlanStore, SubscriptionStore], _fun60811, [r5]);
}
function _fun60811() { // fn#60811, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7741:1770, offset: 0x017107f2, size: 52 bytes, params: 1, frame: 14
return getSubscriptionPlansLoaded(env0_0, [PaymentSourceStore, SubscriptionPlanStore, SubscriptionStore]);
}
global.__d(_fun60805, 7563, [3805, 3807, 3808, 1880, 3, 566,
2]) /* metro module 7563, dependencies: [3805, 3807, 3808, 1880, 3, 566, 2] */;