/* Metro module 7022; source: modules/premium/native/utils/PremiumManagementUtils.tsx; dependencies: [661, 482, 33, 3, 4496, 1244, 477, 1581, 7023, 7025, 2] */ import Logger from '../../../debug/Logger.tsx'; /* Metro dependency 3 */ import AlertActionCreators from '../../../../actions/native/AlertActionCreators.tsx'; /* Metro dependency 4496 */ import * as FileImportTrackerModule from '../../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */ import * as JsxRuntimeModule from '../../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */ import * as ConstantsModule from '../../../../external/discord_common/js/shared/Constants.tsx'; /* Metro dependency 482 */ import * as ConstantsModule2 from '../../../../Constants.tsx'; /* Metro dependency 661 */ import * as IndexNativeModule from '../../../../intl/index.native.tsx'; /* Metro dependency 1244 */ import * as BillingStandaloneNativeUtilsModule from '../../../payments/native/utils/BillingStandaloneNativeUtils.tsx'; /* Metro dependency 7023 */ import * as LinkButtonModule from '../components/LinkButton.tsx'; /* Metro dependency 7025 */ function _fun55645(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#55645, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7200:6, offset: 0x013acb19, size: 316 bytes, params: 8, frame: 19 const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); let value = Logger; value = new value('PremiumManagementUtils'); const getPremiumManagementMethod2 = getPremiumManagementMethod; (FileImportTrackerModule).fileFinishedImporting('modules/premium/native/utils/PremiumManagementUtils.tsx'); exports.MobileWebDestinationTypes = {PREMIUM_MANAGEMENT: 'premium_management'}; exports.PremiumManagementMethod = {IN_APP: 'manage_in_app', IN_EXTERNAL_MOBILE_PAYMENT_GATEWAY: 'manage_in_external_mobile_payment_gateway', IN_WEB: 'manage_in_web'}; exports.getPremiumManagementMethod = getPremiumManagementMethod2; exports.getExternalManagementMessage = getExternalManagementMessage; function getPremiumManagementMethod(a0) { // fn#55646, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7200:480, offset: 0x013acc55, size: 90 bytes, params: 2, frame: 4 const value = null; return value == a0 ? value : a0.isOnPlatformMatchingExternalPaymentGateway ? env0_7.IN_APP : a0.isPurchasedExternally && value != a0.paymentGateway ? env0_7.IN_EXTERNAL_MOBILE_PAYMENT_GATEWAY : env0_7.IN_WEB; } function defaultMobileWebNitroManagementSuccessCallback() { // fn#55647, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7200:691, offset: 0x013accaf, size: 26 bytes, params: 1, frame: 11 return env0_6.log('Successfully opened mobile web Nitro Management page'); } function defaultMobileWebNitroManagementFailureCallback(a0) { // fn#55648, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7200:804, offset: 0x013accc9, size: 174 bytes, params: 2, frame: 19 env0_6.error('Failed to open mobile web Nitro Management page, error response: ', a0); const defaultImport = AlertActionCreators; const show = defaultImport.show; const object = {}; const intl = (IndexNativeModule).intl; const string = intl.string; const t = (IndexNativeModule).t; const NrBVjw = t.NrBVjw; object.title = Reflect.apply(string, intl, [NrBVjw]); object.body = intl.string(t['gD+grx']); object.hideActionSheet = true; Reflect.apply(show, defaultImport, [object]); } function getExternalManagementMessage(a0) { // fn#55649, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7200:1248, offset: 0x013acd77, size: 708 bytes, params: 2, frame: 24 var r1; var r7; var status; var r9; var moduleValue3; const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; const t = (require(1244) /* metro dependency 1244: indexNative */).t; var manageExternalNitroSubscription2; const LinkButton = (LinkButtonModule).LinkButton; const value = a1; const value2 = undefined; const env0_0 = value !== value2 ? value : null; const premiumManagementMethod = getPremiumManagementMethod(a0); if (premiumManagementMethod != null) { var IN_APP = env0_7.IN_APP; if (premiumManagementMethod === IN_APP) { return null; } var isIOS2 = (require(477) /* metro dependency 477: PlatformUtils */).isIOS(); var value4 = 'iOS'; r7 = isIOS2 ? value4 : (require(1581) /* metro dependency 1581: MetaQuestUtilsAndroid */).isMetaQuest() ? 'Meta Quest' : 'Android'; var IN_EXTERNAL_MOBILE_PAYMENT_GATEWAY = env0_7.IN_EXTERNAL_MOBILE_PAYMENT_GATEWAY; if (premiumManagementMethod !== IN_EXTERNAL_MOBILE_PAYMENT_GATEWAY) { if (premiumManagementMethod === env0_7.IN_WEB) { if (r1 == null) { return intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.CnoyAN, {mobilePlatform: r7}); } if (r1.shouldAllowExternalManagement) { if (value4 === r7) { manageExternalNitroSubscription2 = manageExternalNitroSubscription; status = a0 == null ? value2 : a0.status; r9 = status === SubscriptionStatusTypes.CANCELED || status === SubscriptionStatusTypes.PAUSE_PENDING; r9 = !r9 ? status === SubscriptionStatusTypes.PAST_DUE : r9; r1 = ( r1.returnCtaAsComponent ? ( ) : intl.format((require(1244) /* metro dependency 1244: indexNative */).t.IERwUb, {manageExternalNitroSubscription: manageExternalNitroSubscription2}) ); return r1; } moduleValue3 = require(1581) /* metro dependency 1581: MetaQuestUtilsAndroid */; if (moduleValue3.isMetaQuest()) { manageExternalNitroSubscription2 = manageExternalNitroSubscription; status = a0 == null ? value2 : a0.status; r9 = status === SubscriptionStatusTypes.CANCELED || status === SubscriptionStatusTypes.PAUSE_PENDING; r9 = !r9 ? status === SubscriptionStatusTypes.PAST_DUE : r9; r1 = ( r1.returnCtaAsComponent ? ( ) : intl.format((require(1244) /* metro dependency 1244: indexNative */).t.IERwUb, {manageExternalNitroSubscription: manageExternalNitroSubscription2}) ); return r1; } return intl.formatToPlainString(t.CnoyAN, {mobilePlatform: r7}); } return intl.formatToPlainString(t.CnoyAN, {mobilePlatform: r7}); } return null; } if (a0 == null) { if (premiumManagementMethod === env0_7.IN_WEB) { if (r1 == null) { return intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.CnoyAN, {mobilePlatform: r7}); } if (r1.shouldAllowExternalManagement) { if (value4 === r7) { manageExternalNitroSubscription2 = manageExternalNitroSubscription; status = a0 == null ? value2 : a0.status; r9 = status === SubscriptionStatusTypes.CANCELED || status === SubscriptionStatusTypes.PAUSE_PENDING; r9 = !r9 ? status === SubscriptionStatusTypes.PAST_DUE : r9; r1 = ( r1.returnCtaAsComponent ? ( ) : intl.format((require(1244) /* metro dependency 1244: indexNative */).t.IERwUb, {manageExternalNitroSubscription: manageExternalNitroSubscription2}) ); return r1; } moduleValue3 = require(1581) /* metro dependency 1581: MetaQuestUtilsAndroid */; if (moduleValue3.isMetaQuest()) { manageExternalNitroSubscription2 = manageExternalNitroSubscription; status = a0 == null ? value2 : a0.status; r9 = status === SubscriptionStatusTypes.CANCELED || status === SubscriptionStatusTypes.PAUSE_PENDING; r9 = !r9 ? status === SubscriptionStatusTypes.PAST_DUE : r9; r1 = ( r1.returnCtaAsComponent ? ( ) : intl.format((require(1244) /* metro dependency 1244: indexNative */).t.IERwUb, {manageExternalNitroSubscription: manageExternalNitroSubscription2}) ); return r1; } return intl.formatToPlainString(t.CnoyAN, {mobilePlatform: r7}); } return intl.formatToPlainString(t.CnoyAN, {mobilePlatform: r7}); } return null; } if (a0.paymentGateway != null) { return intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.cFZnqX, {mobilePlatform: r7, externalPaymentGateway: PaymentGatewayToFriendlyName[a0.paymentGateway]}); } if (premiumManagementMethod === env0_7.IN_WEB) { if (r1 == null) { return intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.CnoyAN, {mobilePlatform: r7}); } if (r1.shouldAllowExternalManagement) { if (value4 === r7) { manageExternalNitroSubscription2 = manageExternalNitroSubscription; status = a0 == null ? value2 : a0.status; r9 = status === SubscriptionStatusTypes.CANCELED || status === SubscriptionStatusTypes.PAUSE_PENDING; r9 = !r9 ? status === SubscriptionStatusTypes.PAST_DUE : r9; r1 = ( r1.returnCtaAsComponent ? ( ) : intl.format((require(1244) /* metro dependency 1244: indexNative */).t.IERwUb, {manageExternalNitroSubscription: manageExternalNitroSubscription2}) ); return r1; } moduleValue3 = require(1581) /* metro dependency 1581: MetaQuestUtilsAndroid */; if (moduleValue3.isMetaQuest()) { manageExternalNitroSubscription2 = manageExternalNitroSubscription; status = a0 == null ? value2 : a0.status; r9 = status === SubscriptionStatusTypes.CANCELED || status === SubscriptionStatusTypes.PAUSE_PENDING; r9 = !r9 ? status === SubscriptionStatusTypes.PAST_DUE : r9; r1 = ( r1.returnCtaAsComponent ? ( ) : intl.format((require(1244) /* metro dependency 1244: indexNative */).t.IERwUb, {manageExternalNitroSubscription: manageExternalNitroSubscription2}) ); return r1; } return intl.formatToPlainString(t.CnoyAN, {mobilePlatform: r7}); } return intl.formatToPlainString(t.CnoyAN, {mobilePlatform: r7}); } } return null; function manageExternalNitroSubscription() { // fn#55650, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7200:1773, owner: getExternalManagementMessage.manageExternalNitroSubscription, offset: 0x013ad03b, size: 133 bytes, params: 1, frame: 19 const goToStandaloneNitroManagementFromMobileApp = BillingStandaloneNativeUtilsModule.goToStandaloneNitroManagementFromMobileApp; const binding = env0_0; return Reflect.apply(goToStandaloneNitroManagementFromMobileApp, BillingStandaloneNativeUtilsModule, ['premium_external_management', {loadId: binding.loadId}, binding.onSuccessCallback != null ? env0_0.onSuccessCallback : defaultMobileWebNitroManagementSuccessCallback, env0_0.onFailureCallback ?? defaultMobileWebNitroManagementFailureCallback]); } function getExternalManagementMessageOnPress() { // fn#55651, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7200:2248, owner: getExternalManagementMessage.onPress, offset: 0x01025531, size: 15 bytes, params: 1, frame: 9 return manageExternalNitroSubscription(); } } } global.__d(_fun55645, 7022, [661, 482, 33, 3, 4496, 1244, 477, 1581, 7023, 7025, 2]) /* metro module 7022, dependencies: [661, 482, 33, 3, 4496, 1244, 477, 1581, 7023, 7025, 2] */;