/* Metro module 11999; source: modules/contact_sync/native/ContactSyncAnalyticsUtils.tsx; dependencies: [1878, 11994, 11995, 661, 11997, 683, 12000, 2] */ import AnalyticsUtils from '../../../utils/AnalyticsUtils.tsx'; /* Metro dependency 683 */ import UserStore from '../../../stores/UserStore.tsx'; /* Metro dependency 1878 */ import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */ import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */ import * as ContactSyncModalStoreModule from './ContactSyncModalStore.tsx'; /* Metro dependency 11994 */ import * as ContactSyncConstantsModule from './ContactSyncConstants.tsx'; /* Metro dependency 11995 */ import * as ContactSyncUtilsModule from './ContactSyncUtils.tsx'; /* Metro dependency 11997 */ function _fun92193(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#92193, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12185:6, offset: 0x0207f245, size: 366 bytes, params: 8, frame: 19 const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); (FileImportTrackerModule).fileFinishedImporting('modules/contact_sync/native/ContactSyncAnalyticsUtils.tsx'); exports.Steps = {INITIALIZED: 'Flow Initialized', LANDING: 'Landing', PERMISSION_REQUESTED: 'Contacts Permission Requested', NAME_INPUT: 'Name Input', SUGGESTIONS_RESULTS: 'Suggestions Results', CONTACT_INVITES: 'Contact Invites', ADD_PHONE_NUMBER: 'Add Phone Number', VERIFY_PHONE_NUMBER: 'Verify Phone Number', PASSWORD_CONFIRM: 'Password Confirmation', COMPLETE: 'Complete'}; exports.CONTACT_SYNC_ONBOARDING_LOCATION = 'Onboarding'; exports.trackFlowStart = trackFlowStart; exports.trackFlowStep = trackFlowStep; exports.trackFlowEnd = trackFlowEnd; function trackFlowStart(a0) { // fn#92194, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12185:756, offset: 0x0207f3b3, size: 136 bytes, params: 2, frame: 15 const env0_0 = a0; env0_8 = env0_7.LANDING; const Date = global.Date; env0_9 = Date.now(); const currentUser = UserStore.getCurrentUser(); const value3 = undefined; const result = (currentUser == null ? value3 : currentUser.phone) != null; let value = ContactSyncUtilsModule; value = value.checkContactPermissions(); value.then(_fun92195); return value3; function _fun92195(a0) { // fn#92195, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12185:912, offset: 0x0207f43b, size: 218 bytes, params: 2, frame: 19 const NOT_DETERMINED = ContactPermissions.NOT_DETERMINED; const r6 = a0 === NOT_DETERMINED ? null : a0 !== ContactPermissions.AUTHORIZED ? 'denied' : 'accepted'; const defaultImport = AnalyticsUtils; const track = defaultImport.track; const CONTACT_SYNC_FLOW_KEY = AnalyticEvents.CONTACT_SYNC_FLOW_KEY; const object = {}; copyDataProperties(object, env0_0, undefined); object['flow_type'] = 'Contact Sync'; const binding = env1_7; const INITIALIZED = binding.INITIALIZED; object['from_step'] = INITIALIZED; const LANDING = binding.LANDING; object['to_step'] = LANDING; object['skip'] = false; object['back'] = false; object['seconds_on_from_step'] = 0; object['has_phone_number'] = result; object['mobile_contacts_permission'] = r6; Reflect.apply(track, defaultImport, [CONTACT_SYNC_FLOW_KEY, object]); } } function trackFlowStep(a0, a1, a2, a3) { // fn#92196, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12185:1205, offset: 0x0207f515, size: 273 bytes, params: 5, frame: 25 var moduleValue; const getIsOnboardingBinding = getIsOnboarding; const value2 = undefined; const isOnboardingBinding = getIsOnboardingBinding(); const Date = global.Date; const value5 = (Date.now() - env0_9) / 1000; const defaultImport = AnalyticsUtils; const track = defaultImport.track; const CONTACT_SYNC_FLOW_KEY = AnalyticEvents.CONTACT_SYNC_FLOW_KEY; const object = {}; copyDataProperties(object, a3, undefined); object['location'] = isOnboardingBinding ? 'Onboarding' : a3 == null ? value2 : a3.location; object['flow_type'] = 'Contact Sync'; object['from_step'] = env0_8; object['to_step'] = a0; object['skip'] = a1; object['back'] = a2; object['seconds_on_from_step'] = value5; Reflect.apply(track, defaultImport, [CONTACT_SYNC_FLOW_KEY, object]); if (isOnboardingBinding) { moduleValue = require(12000) /* metro dependency 12000: NewUserAnalyticsUtils */; moduleValue.trackNUFStep(env0_8, a0, {skip: a1}); } env0_8 = a0; return value2; } function trackFlowEnd(a0, a1) { // fn#92197, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12185:1503, offset: 0x0207f626, size: 230 bytes, params: 3, frame: 20 const getIsOnboardingBinding = getIsOnboarding; const value2 = undefined; const isOnboardingBinding = getIsOnboardingBinding(); const Date = global.Date; const value4 = Date.now(); const defaultImport = AnalyticsUtils; const track = defaultImport.track; const CONTACT_SYNC_FLOW_KEY = AnalyticEvents.CONTACT_SYNC_FLOW_KEY; const object = {}; copyDataProperties(object, a1, undefined); object['location'] = isOnboardingBinding ? 'Onboarding' : a1 == null ? value2 : a1.location; object['flow_type'] = 'Contact Sync'; object['from_step'] = env0_8; const COMPLETE = env0_7.COMPLETE; object['to_step'] = COMPLETE; object['skip'] = a0; object['back'] = false; object['seconds_on_from_step'] = (value4 - env0_9) / 1000; Reflect.apply(track, defaultImport, [CONTACT_SYNC_FLOW_KEY, object]); return value2; } } global.__d(_fun92193, 11999, [1878, 11994, 11995, 661, 11997, 683, 12000, 2]) /* metro module 11999, dependencies: [1878, 11994, 11995, 661, 11997, 683, 12000, 2] */;