/* Metro module 7287; source: modules/premium/PremiumSubscriptionTrialUtil.tsx; dependencies: [1878, 3808, 7064, 1880, 566, 7063, 2] */ import UserStore from '../../stores/UserStore.tsx'; /* Metro dependency 1878 */ import SubscriptionStore from '../../stores/billing/SubscriptionStore.tsx'; /* Metro dependency 3808 */ import UserOfferStore from '../../stores/billing/UserOfferStore.tsx'; /* Metro dependency 7064 */ import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */ import * as PremiumConstantsModule from './PremiumConstants.tsx'; /* Metro dependency 1880 */ function _fun58791(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#58791, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7465:6, offset: 0x016d70a4, size: 256 bytes, params: 8, frame: 19 const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); (FileImportTrackerModule).fileFinishedImporting('modules/premium/PremiumSubscriptionTrialUtil.tsx'); exports.useHasActiveTrial = useHasActiveTrial; exports.hasActiveTrial = hasActiveTrial; exports.isEligibleTrialSub = isEligibleTrialSub; exports.useCurrentPremiumTrialTier = useCurrentPremiumTrialTier; exports.getPremiumTrialOffer = getPremiumTrialOffer; function useHasActiveTrial() { // fn#58792, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7465:422, offset: 0x016d71a4, size: 78 bytes, params: 1, frame: 13 const premiumTypeSubscription = (require(566) /* metro dependency 566: flux */).useStateFromStores([SubscriptionStore], function() { return SubscriptionStore.getPremiumTypeSubscription(); }); return !(premiumTypeSubscription == null || !premiumTypeSubscription.hasActiveTrial); } function hasActiveTrial() { // fn#58794, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7465:556, offset: 0x016d7205, size: 40 bytes, params: 1, frame: 11 return SubscriptionStore.getPremiumTypeSubscription()?.trialId != null; } function isEligibleTrialSub(a0) { // fn#58795, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7465:662, offset: 0x016d722d, size: 100 bytes, params: 2, frame: 6 var r1; var r0; value = a0?.trialId != null; if (value) { r1 = a0.trialId === PREMIUM_TIER_2_LIKELIHOOD_TRIAL_ID || a0.trialId === PREMIUM_TIER_2_REACTIVATION_TRIAL_ID; r1 = !r1 ? a0.trialId === PREMIUM_TIER_2_3P_ONE_MONTH_TRIAL_ID : r1; r1 = !r1 ? a0.trialId === PREMIUM_TIER_2_REFERRAL_TRIAL_ID : r1; r0 = r1; } else { r0 = value; } return r0; } function useCurrentPremiumTrialTier() { // fn#58796, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7465:789, offset: 0x016d7291, size: 134 bytes, params: 1, frame: 19 const value2 = undefined; const premiumTypeSubscription = (require(566) /* metro dependency 566: flux */).useStateFromStores([SubscriptionStore], function() { return SubscriptionStore.getPremiumTypeSubscription(); }); const currentUser = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], function() { return UserStore.getCurrentUser(); }); const value = null; return value != premiumTypeSubscription && premiumTypeSubscription.hasActiveTrial ? value == currentUser ? value2 : currentUser.premiumType : value; } function getPremiumTrialOffer() { // fn#58799, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7465:1052, offset: 0x016d7329, size: 51 bytes, params: 1, frame: 12 let value = PREMIUM_TRIAL_IDS_ALL.map(function(a0) { return UserOfferStore.getUserTrialOffer(a0); }); value = value.filter(_fun58801); return value.shift(); function _fun58801(a0) { // fn#58801, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7465:1134, offset: 0x016d7373, size: 53 bytes, params: 2, frame: 13 var r0; let value = a0 != null; if (value) { value = environment.__proto__; value = require(7063) /* metro dependency 7063: useTrialOffer */; value = !value.hasUserTrialOfferExpired(a0); r0 = value; } else { r0 = value; } return r0; } } } global.__d(_fun58791, 7287, [1878, 3808, 7064, 1880, 566, 7063, 2]) /* metro module 7287, dependencies: [1878, 3808, 7064, 1880, 566, 7063, 2] */;