/* Metro module 15776; source: modules/nuf/native/NewUserManager.tsx; dependencies: [5, 7, 6, 15, 17, 18, 8972, 5040, 1878, 4256, 12022, 661, 9445, 15777, 11993, 12021, 676, 9151, 694, 12000, 12043, 4860, 2] */ import Module00005 from '../../../by-id/module-00005.js'; /* Metro dependency 5 */ import ClassCallCheck from '../../../by-id/module-00006-ClassCallCheck.js'; /* Metro dependency 6 */ import CreateClass from '../../../by-id/module-00007-CreateClass.js'; /* Metro dependency 7 */ import PossibleConstructorReturn from '../../../by-id/module-00015-PossibleConstructorReturn.js'; /* Metro dependency 15 */ import Module00017 from '../../../by-id/module-00017.js'; /* Metro dependency 17 */ import Inherits from '../../../by-id/module-00018-Inherits.js'; /* Metro dependency 18 */ import Dispatcher from '../../../Dispatcher.tsx'; /* Metro dependency 694 */ import UserStore from '../../../stores/UserStore.tsx'; /* Metro dependency 1878 */ import NewUserStore from '../NewUserStore.tsx'; /* Metro dependency 4256 */ import AutomaticLifecycleManager from '../../../lib/AutomaticLifecycleManager.tsx'; /* Metro dependency 4860 */ import ConnectedAccountsStore from '../../../stores/ConnectedAccountsStore.tsx'; /* Metro dependency 5040 */ import PhoneStore from '../../phone/PhoneStore.tsx'; /* Metro dependency 8972 */ import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */ import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */ import * as ConstantsIOSModule from '../../../ConstantsIOS.tsx'; /* Metro dependency 676 */ import * as HubConstantsModule from '../../hub/HubConstants.tsx'; /* Metro dependency 9445 */ import * as NUFActionCreatorsModule from './NUFActionCreators.tsx'; /* Metro dependency 12021 */ import * as NUFConstantsModule from '../NUFConstants.tsx'; /* Metro dependency 12022 */ function _fun121230(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#121230, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15984:6, offset: 0x025419de, size: 768 bytes, params: 8, frame: 21 const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); object = {REGISTRATION: 'Registration', ADD_AVATAR: 'Add Avatar', CONTACT_SYNC: 'Contact Sync', GUILD_TEMPLATE: 'Guild Template', STUDENT_HUB: 'Student Hub', NEW_USER_INTENT: 'New User Intent', ACCEPT_INVITE: 'Accept Invite', DISCOVERABILITY: 'Discoverability'}; const object2 = {}; const ADD_AVATAR = object.ADD_AVATAR; object2.key = ADD_AVATAR; object2.shouldShowStep = shouldShowStep; object2.transitionToStep = (require(15777) /* metro dependency 15777: AddAvatarModalActionCreators */).openAddAvatarModal; const object3 = {}; const CONTACT_SYNC = object.CONTACT_SYNC; object3.key = CONTACT_SYNC; object3.shouldShowStep = shouldShowStep_121235; object3.transitionToStep = (require(11993) /* metro dependency 11993: ContactSyncModalActionCreators */).openContactSyncModalOnboarding; const items2 = [object2]; const object4 = {}; const DISCOVERABILITY = object.DISCOVERABILITY; object4.key = DISCOVERABILITY; object4.shouldShowStep = shouldShowStep_121236; object4.transitionToStep = (require(12021) /* metro dependency 12021: NUFActionCreators */).openDiscoverabilityModal; items2[1] = object4; items2[2] = object3; const STUDENT_HUB = object.STUDENT_HUB; items2[3] = {key: STUDENT_HUB, shouldShowStep: shouldShowStep_121237, transitionToStep: transitionToStep}; const GUILD_TEMPLATE = object.GUILD_TEMPLATE; items2[4] = {key: GUILD_TEMPLATE, shouldShowStep: function() { return NewUserStore.getType() === NewUserTypes.ORGANIC_REGISTERED; }, transitionToStep: transitionToStep_121240}; const object7 = {}; const ACCEPT_INVITE = object.ACCEPT_INVITE; object7.key = ACCEPT_INVITE; object7.shouldShowStep = (require(9151) /* metro dependency 9151: InstantInviteUtils */).hasDeferredInvite; object7.transitionToStep = transitionToStep_121241; items2[5] = object7; let value = AutomaticLifecycleManager; value = _fun121242(value); value = new value(); (FileImportTrackerModule).fileFinishedImporting('modules/nuf/native/NewUserManager.tsx'); exports.default = value; function _isNativeReflectConstruct_121231() { // fn#121231, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15984:287, offset: 0x02541cde, size: 98 bytes, params: 1, frame: 18 var Boolean; var prototype; var valueOf; var call; var Reflect; var construct; var closure; var value; var error; try { Boolean = global.Boolean; prototype = Boolean.prototype; valueOf = prototype.valueOf; call = valueOf.call; Reflect = global.Reflect; construct = Reflect.construct; Boolean = global.Boolean; closure = function() { }; value = Reflect.apply(construct, Reflect, [Boolean, [], closure]); value = Reflect.apply(call, valueOf, [value]); var result = !value; } catch (error) { } return (_isNativeReflectConstruct_121231_isNativeReflectConstruct = function() { return !!result; })(); } function shouldShowStep() { // fn#121234, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15984:802, offset: 0x02541d40, size: 39 bytes, params: 1, frame: 11 return UserStore.getCurrentUser()?.avatar == null; } function shouldShowStep_121235() { // fn#121235, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15984:957, offset: 0x02541d67, size: 83 bytes, params: 1, frame: 13 var value; const connectedAccountsStoreBinding = ConnectedAccountsStore; const getLocalAccount = connectedAccountsStoreBinding.getLocalAccount; const CONTACTS = PlatformTypes.CONTACTS; const value2 = Reflect.apply(getLocalAccount, connectedAccountsStoreBinding, [CONTACTS]); let r0 = value2 == null || !value2.friendSync; if (r0) { value = UserStore.getCurrentUser(); value = value?.phone != null; r0 = value; } return r0; } function shouldShowStep_121236() { // fn#121236, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15984:1186, offset: 0x02541dba, size: 36 bytes, params: 1, frame: 11 const connectedAccountsStoreBinding = ConnectedAccountsStore; const getLocalAccount = connectedAccountsStoreBinding.getLocalAccount; const CONTACTS = PlatformTypes.CONTACTS; return Reflect.apply(getLocalAccount, connectedAccountsStoreBinding, [CONTACTS]) == null; } function shouldShowStep_121237() { // fn#121237, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15984:1314, offset: 0x02541dde, size: 82 bytes, params: 1, frame: 13 const type = NewUserStore.getType(); const ORGANIC_REGISTERED = NewUserTypes.ORGANIC_REGISTERED; if (type !== ORGANIC_REGISTERED) { return false; } return HUBS_IN_ONBOARDING_COUNTRIES.includes(PhoneStore.getCountryCode()?.alpha2); } function transitionToStep() { // fn#121238, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15984:1452, offset: 0x02541e30, size: 65 bytes, params: 1, frame: 15 const transitionToHubEmailConnectionModal = NUFActionCreatorsModule.transitionToHubEmailConnectionModal; const ModalAnimation = (ConstantsIOSModule).ModalAnimation; const SLIDE_IN = ModalAnimation.SLIDE_IN; Reflect.apply(transitionToHubEmailConnectionModal, NUFActionCreatorsModule, [SLIDE_IN, true]); } function transitionToStep_121240() { // fn#121240, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15984:1634, offset: 0x02541e92, size: 62 bytes, params: 1, frame: 14 const transitionToNUFGuildTemplatesModal = NUFActionCreatorsModule.transitionToNUFGuildTemplatesModal; const ModalAnimation = (ConstantsIOSModule).ModalAnimation; const SLIDE_IN = ModalAnimation.SLIDE_IN; return Reflect.apply(transitionToNUFGuildTemplatesModal, NUFActionCreatorsModule, [SLIDE_IN]); } function transitionToStep_121241() { // fn#121241, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15984:1797, offset: 0x02541ed0, size: 49 bytes, params: 1, frame: 13 (Dispatcher).dispatch({type: 'DEFERRED_INVITE_SHOW'}); } function _fun121242(a0) { // fn#121242, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15984:1856, offset: 0x02541f01, size: 42 bytes, params: 2, frame: 14 const NewUserManager2 = NewUserManager; Inherits(NewUserManager2, a0); return CreateClass(NewUserManager2); function NewUserManager(a0) { // fn#121243, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15984:1868, offset: 0x02541f2b, size: 191 bytes, params: 2, frame: 20 var r0; var Reflect; let value = copyRestArgs(0, undefined); let binding = env1_5; binding(this, NewUserManager); const items2 = []; arraySpread(items2, value, 0, items2); value = env1_7(NewUserManager); binding = env1_6; if (_isNativeReflectConstruct_121231()) { Reflect = global.Reflect; value = Reflect.construct(value, items2, env1_7(this).constructor); r0 = value; } else { value = value.apply(this, items2); r0 = value; } value = binding(this, r0); value._onboardingStepIndex = -1; value._lastStep = null; value.actions = {ONBOARDING_STEP: ONBOARDING_STEP}; value.handleOnboardingStep = _fun121245(); return value; function ONBOARDING_STEP(a0) { // fn#121244, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15984:2166, owner: NewUserManager.ONBOARDING_STEP, offset: 0x02541fea, size: 25 bytes, params: 2, frame: 11 env0_0.handleOnboardingStep(a0); } function _fun121245() { // fn#121245, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15984:2221, offset: 0x02542003, size: 36 bytes, params: 1, frame: 12 const env0_0 = env2_3(_fun121247); return _fun121248; async function _fun121247({skip, skipAttempt, back}) { // fn#121247, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15984:2241, offset: 0x0254203b, size: 556 bytes, params: 2, frame: 27 var key; var binding; var property; var transitionToStep; var value12; var value13; var binding2; var value14; var value16; var value17; var value18; if (false) { return undefined; } value = undefined; skip = !(skip === value) && skip; skipAttempt = !(skipAttempt === value) && skipAttempt; back = !(back === value) && back; await value; if (false) { return undefined; } let _onboardingStepIndex = NewUserManager._onboardingStepIndex; if (back) { value16 = environment.__proto__.__proto__.__proto__.__proto__; property = env4_16[_onboardingStepIndex]; value17 = null; key = value17 == property ? value : property.key; NewUserManager._lastStep = value17 != key ? key : value17; _onboardingStepIndex = NewUserManager._onboardingStepIndex; NewUserManager._onboardingStepIndex = _onboardingStepIndex - 1; binding = env4_16; _onboardingStepIndex = NewUserManager._onboardingStepIndex; property = binding[_onboardingStepIndex]; key = property.key; transitionToStep = property.transitionToStep; binding = env4_0; value18 = binding(env4_2[19]); value18.trackNUFStep(NewUserManager._lastStep, key, {back: true}); transitionToStep(); } else { NewUserManager._onboardingStepIndex = NewUserManager._onboardingStepIndex + 1; if (NewUserManager._onboardingStepIndex >= env4_16.length) { binding = env4_0; binding2 = env4_2; value14 = binding(binding2[19]); value14.trackNUFStep(NewUserManager._lastStep, 'NUF Complete', {skip_attempt: skipAttempt}); binding(binding2[20]).setNewUserFlowCompleted(); return value; } property = env4_16[NewUserManager._onboardingStepIndex]; key = property.key; var shouldShowStep = property.shouldShowStep; transitionToStep = property.transitionToStep; await shouldShowStep(); if (false) { return undefined; } if (undefined) { value12 = env4_0(env4_2[19]); value12.trackNUFStep(NewUserManager._lastStep, key, {skip: skip, skip_attempt: skipAttempt}); property = env4_16[_onboardingStepIndex]; value13 = null; key = value13 == property ? value : property.key; NewUserManager._lastStep = value13 != key ? key : value13; transitionToStep(); } else { NewUserManager.handleOnboardingStep({skip: skip}); } } return value; } function _fun121248() { // fn#121248, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15984:2980, offset: 0x00c3945f, size: 30 bytes, params: 1, frame: 13 return env0_0.apply(this, arguments); } } } } } global.__d(_fun121230, 15776, [5, 7, 6, 15, 17, 18, 8972, 5040, 1878, 4256, 12022, 661, 9445, 15777, 11993, 12021, 676, 9151, 694, 12000, 12043, 4860, 2]) /* metro module 15776, dependencies: [5, 7, 6, 15, 17, 18, 8972, 5040, 1878, 4256, 12022, 661, 9445, 15777, 11993, 12021, 676, 9151, 694, 12000, 12043, 4860, 2] */;