/* Metro module 7550; source: modules/premium/native/PremiumAccountCredit.tsx; dependencies: [31, 27, 5181, 661, 33, 4501, 697, 3802, 1244, 2806, 6780, 4573, 566, 22, 2] */ function _fun60693(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#60693, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7728:6, offset: 0x0170aab0, size: 450 bytes, params: 8, frame: 24 var object2; const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); importAll(31) /* metro dependency 31 */; const env0_3 = (require(27) /* metro dependency 27 */).View; const entitlementStore = importDefault(5181) /* metro dependency 5181: EntitlementStore */; const env0_5 = (require(661) /* metro dependency 661: Constants */).SubscriptionStatusTypes; let value = require(33) /* metro dependency 33 */; const env0_6 = value.jsx; const env0_7 = value.jsxs; value = require(4501) /* metro dependency 4501: createStyles */; const createStyles = value.createStyles; object2 = {}; object2.title = {marginBottom: 12}; const object4 = {}; object4.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xs; const BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH; object4.backgroundColor = BACKGROUND_SURFACE_HIGH; object2.creditList = object4; object2.creditItem = {'flexDirection': 'row', 'alignItems': 'center', 'padding': 16}; object2.textContainer = {'marginLeft': 16, 'marginRight': 16, 'flexDirection': 'column', 'flex': 1}; object2.headerText = {lineHeight: 20}; object2.subText = {lineHeight: 16}; object2.timeText = {'lineHeight': 20, 'alignSelf': 'flex-start'}; const BORDER_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_SUBTLE; object2.divider = {borderBottomWidth: 1, borderBottomColor: BORDER_SUBTLE}; object2.creditDescription = {marginTop: 8}; const env0_8 = Reflect.apply(createStyles, value, [object2]); (require(2) /* metro dependency 2 */).fileFinishedImporting('modules/premium/native/PremiumAccountCredit.tsx'); exports.default = _default_60695; } function AccountCreditTier({planId, months, currentSubscription, shouldAddDivider, unconsumedFractionalPremiumUnits, hasPremiumGroup}) { // fn#60694, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7728:685, offset: 0x0170ac72, size: 967 bytes, params: 2, frame: 32 var r18; const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; var pauseEndsAt; var Date; var currentPeriodEnd; var date; const styles = useStyles(); const premiumUtilsModule = require(3802) /* metro dependency 3802: PremiumUtils */; const castPremiumSubscriptionAsSkuId = premiumUtilsModule.castPremiumSubscriptionAsSkuId; const defaultImport = importDefault(3802) /* metro dependency 3802: PremiumUtils */; const getSkuIdForPlan = defaultImport.getSkuIdForPlan; const value2 = Reflect.apply(castPremiumSubscriptionAsSkuId, premiumUtilsModule, [Reflect.apply(getSkuIdForPlan, defaultImport, [planId])]); const tierDisplayNameByPlanId = defaultImport.getTierDisplayNameByPlanId(planId); if (hasPremiumGroup) { r18 = intl.string((importDefault(2806) /* metro dependency 2806: PremiumGroupMessages */)['5asczk']); } else if (currentSubscription == null) { r18 = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.eNXZ5O, {planName: tierDisplayNameByPlanId}); } else if (currentSubscription.planId === planId) { if (currentSubscription.status !== SubscriptionStatusTypes.PAUSED) { Date = global.Date; currentPeriodEnd = currentSubscription.currentPeriodEnd; date = new Date(); } else { pauseEndsAt = currentSubscription.pauseEndsAt; if (pauseEndsAt != null) { Date = global.Date; pauseEndsAt = currentSubscription.pauseEndsAt; date = new Date(); } else { Date = global.Date; currentPeriodEnd = currentSubscription.currentPeriodEnd; date = new Date(); } } r18 = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t['5CNRRA'], {date: premiumUtilsModule.extendDateWithUnconsumedFractionalPremium(undefined, unconsumedFractionalPremiumUnits) ?? 0}); } else { r18 = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.eNXZ5O, {planName: tierDisplayNameByPlanId}); } let r14 = currentSubscription != null && currentSubscription.isPurchasedExternally; const items3 = [styles.creditItem]; items3[1] = shouldAddDivider ? styles.divider : null; const GameIcon = importDefault(6780) /* metro dependency 6780: GameIcon */; const GameIconSizes = (require(6780) /* metro dependency 6780: GameIcon */).GameIconSizes; const SMALL = GameIconSizes.SMALL; const items2 = []; const Text = (require(4573) /* metro dependency 4573: Text */).Text; const format = intl.format; const LzobT9 = (require(1244) /* metro dependency 1244: indexNative */).t.LzobT9; const text = {Reflect.apply(format, intl, [LzobT9, {planName: tierDisplayNameByPlanId}])}; r14 = !r14 && {r18}; items2[1] = {text}{r14}; items2[2] = {intl.format((require(1244) /* metro dependency 1244: indexNative */).t['ess/xl'], {count: months})}; return ( {items2} ); } function _default_60695({currentSubscription, entitlements, style, creditListContainerStyle, hasPremiumGroup}) { // fn#60695, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7728:1944, offset: 0x0170b039, size: 689 bytes, params: 2, frame: 31 var defaultImport2; var Array; var value7; const Text = (require(4573) /* metro dependency 4573: Text */).Text; const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; var string; const t = (require(1244) /* metro dependency 1244: indexNative */).t; var items2; const styles = useStyles(); const fluxModule = require(566) /* metro dependency 566: flux */; const useStateFromStoresArray = fluxModule.useStateFromStoresArray; let object = [EntitlementStore]; const env0_2 = Reflect.apply(useStateFromStoresArray, fluxModule, [object, function() { return EntitlementStore.getUnactivatedFractionalPremiumUnits(); }]); if (entitlements != null) { var defaultImport = importDefault(3802) /* metro dependency 3802: PremiumUtils */; if (defaultImport.hasAccountCredit(entitlements)) { defaultImport2 = importDefault(22) /* metro dependency 22 */; Array = global.Array; value7 = defaultImport2(Array.from(entitlements)).filter(function({subscriptionPlanId, parentId, consumed}) { return subscriptionPlanId != null && parentId != null && !consumed; }).groupBy(_fun60698).value(); object = {style: style}; string = intl.string; items2 = [{Reflect.apply(string, intl, [t.YugZY0])}]; items2[1] = {global.Object.keys(value7).map(_fun60699)}; string = intl.string; items2[2] = {Reflect.apply(string, intl, [t.kNEjGm])}; items2[3] = currentSubscription != null && currentSubscription.isPurchasedExternally ? {intl.string((require(1244) /* metro dependency 1244: indexNative */).t.azRP0E)} : null; return ( {items2} ); } } return null; } function _fun60698(a0) { // fn#60698, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7728:2308, offset: 0x0170b2fd, size: 11 bytes, params: 2, frame: 1 return a0.subscriptionPlanId; } function _fun60699(a0) { // fn#60699, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7728:2575, offset: 0x0170b308, size: 150 bytes, params: 2, frame: 17 let Object = global.Object; const value2 = Object.keys(env0_3); Object = global.Object; return ( ); }