/* Metro module 9439; source: modules/instant_invite/resolveInvite.tsx; dependencies: [1226, 1867, 4118, 661, 4116, 683, 4098, 5046, 480, 1392, 2] */ import AnalyticsUtils from '../../utils/AnalyticsUtils.tsx'; /* Metro dependency 683 */ import AuthenticationStore from '../../stores/AuthenticationStore.tsx'; /* Metro dependency 1226 */ import GuildStore from '../../stores/GuildStore.tsx'; /* Metro dependency 1867 */ import TrackedHTTPUtils from '../../utils/TrackedHTTPUtils.tsx'; /* Metro dependency 5046 */ import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */ import * as AnalyticsUtilsModule from '../../external/discord_common/js/packages/analytics-utils/AnalyticsUtils.tsx'; /* Metro dependency 480 */ import * as TypeUtilsModule from '../../external/discord_common/js/packages/type-utils/TypeUtils.tsx'; /* Metro dependency 1392 */ import * as InviteCodeUtilsModule from './InviteCodeUtils.tsx'; /* Metro dependency 4098 */ import * as InviteTypeUtilsModule from './InviteTypeUtils.tsx'; /* Metro dependency 4116 */ import * as ConstantsModule from './Constants.tsx'; /* Metro dependency 4118 */ function _fun73444(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#73444, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9625:6, offset: 0x01d6cd65, size: 259 bytes, params: 8, frame: 20 const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); let value = ConstantsModule; const env0_5 = value.InviteTargetTypes; const env0_6 = value.InviteTypes; value = require(661) /* metro dependency 661: Constants */; const env0_7 = value.Endpoints; const env0_8 = value.AnalyticEvents; const env0_9 = value.LoggingInviteTypes; const env0_10 = value.AbortCodes; const Map = global.Map; const map = new Map(); (FileImportTrackerModule).fileFinishedImporting('modules/instant_invite/resolveInvite.tsx'); exports.default = resolveInvite_73446; function getExtendedInviteType(a0) { // fn#73445, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9625:245, offset: 0x01d6ce68, size: 213 bytes, params: 2, frame: 14 if (a0 == null) { return null; } let target_type = a0.target_type; const STREAM = InviteTargetTypes.STREAM; if (target_type === STREAM) { return LoggingInviteTypes.STREAM; } target_type = a0.target_type; const EMBEDDED_APPLICATION = InviteTargetTypes.EMBEDDED_APPLICATION; if (target_type === EMBEDDED_APPLICATION) { return LoggingInviteTypes.APPLICATION; } const inviteType = (InviteTypeUtilsModule).getInviteType(a0); const FRIEND = InviteTypes.FRIEND; if (FRIEND === inviteType) { return LoggingInviteTypes.FRIEND_INVITE; } const GROUP_DM = InviteTypes.GROUP_DM; if (GROUP_DM === inviteType) { return LoggingInviteTypes.GDM_INVITE; } const GUILD = InviteTypes.GUILD; if (GUILD === inviteType) { return LoggingInviteTypes.SERVER_INVITE; } const String = global.String; return String(inviteType); } function resolveInvite_73446(a0, a1, a2) { // fn#73446, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9625:684, offset: 0x01d6cf3d, size: 448 bytes, params: 4, frame: 22 const env0_0 = a0; const env0_1 = a1; const env0_2 = a2; const value2 = undefined; const defaultImport = AnalyticsUtils; const track = defaultImport.track; const INVITE_OPENED = AnalyticEvents.INVITE_OPENED; const value3 = null; const inviteInstanceId = value3 == a2 ? value2 : a2.inviteInstanceId; Reflect.apply(track, defaultImport, [INVITE_OPENED, {invite_code: a0, invite_instance_id: value3 != inviteInstanceId ? inviteInstanceId : value3}]); const binding = env0_11; if (binding.has(a0)) { return env0_11.get(a0); } const extraDataFromInviteKey = (InviteCodeUtilsModule).parseExtraDataFromInviteKey(a0); object = {'inputValue': null, 'with_counts': true, 'with_expiration': true, 'guild_scheduled_event_id': null, 'with_permissions': true}; object.inputValue = value3 == a2 ? value2 : a2.inputValue; object.guild_scheduled_event_id = extraDataFromInviteKey.guildScheduledEventId; const r4 = value3 == a2 || !a2.withGames; object.with_games = r4 ? value2 : !r4; const defaultImport2 = TrackedHTTPUtils; const get = defaultImport2.get; const object2 = {}; object2.url = Endpoints.INVITE(extraDataFromInviteKey.baseCode); object2.query = object; object2.oldFormErrors = true; const NetworkActionNames = (AnalyticsUtilsModule).NetworkActionNames; const INVITE_RESOLVE = NetworkActionNames.INVITE_RESOLVE; object2.trackedActionData = {event: INVITE_RESOLVE, properties: properties_73447}; object2.rejectWithError = false; const value9 = Reflect.apply(get, defaultImport2, [object2]).then(_fun73448, _fun73449).finally(_fun73450); env0_11.set(a0, value9); return value9; function resolveInvite_73446Properties(a0) { // fn#73447, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9625:1243, owner: resolveInvite_73446.properties, offset: 0x01d6d0fd, size: 453 bytes, params: 2, frame: 20 const ok = a0.ok; const value = null; const body = ok ? a0.body : value; const body2 = a0.body; const value2 = undefined; const code = value == body2 ? value2 : body2.code; const USER_BANNED = AbortCodes.USER_BANNED; const exact = TypeUtilsModule.exact; const object = {}; object.resolved = a0.ok; object.guild_id = value == body || value == body.guild ? value2 : body.guild.id; object.channel_id = value == body || value == body.channel ? value2 : body.channel.id; object.channel_type = value == body || value == body.channel ? value2 : body.channel.type; object.inviter_id = value == body || value == body.inviter ? value2 : body.inviter.id; object.code = env0_3.baseCode; object.input_value = value == importDefault ? value2 : importDefault.inputValue; object.location = require; object.authenticated = AuthenticationStore.isAuthenticated(); object.size_total = value == body ? value2 : body.approximate_member_count; object.size_online = value == body ? value2 : body.approximate_presence_count; object.destination_user_id = value == body || value == body.target_user ? value2 : body.target_user.id; object.invite_type = getExtendedInviteType(body); object.user_banned = code === USER_BANNED; const guildStoreBinding = GuildStore; const getGuild = guildStoreBinding.getGuild; object.user_is_member = value != Reflect.apply(getGuild, guildStoreBinding, [value == body || value == body.guild ? value2 : body.guild.id]); return Reflect.apply(exact, TypeUtilsModule, [object]); } function _fun73448({body}) { // fn#73448, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9625:2008, offset: 0x01d6d2c2, size: 444 bytes, params: 2, frame: 24 var id; var value3; var value4; var defaultImport; var track; var INVITE_RESOLVED; var object; var channel; var guildStoreBinding; var getGuild; if (require != null) { value3 = environment.__proto__; value4 = undefined; defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */; track = defaultImport.track; INVITE_RESOLVED = AnalyticEvents.INVITE_RESOLVED; object = {resolved: true}; id = body.guild != null ? body.guild.id : null; object.guild_id = id; channel = body.channel; id = channel != null ? body.channel.id : null; object.channel_id = id; channel = body.channel; object.channel_type = channel != null ? body.channel.type : null; id = body.inviter ? body.inviter.id : null; object.inviter_id = id; object.code = env0_3.baseCode; object.input_value = importDefault == null ? value4 : importDefault.inputValue; object.location = require; object.authenticated = AuthenticationStore.isAuthenticated(); object.size_total = body.approximate_member_count; object.size_online = body.approximate_presence_count; id = body.target_user != null ? body.target_user.id : null; object.destination_user_id = id; object.invite_type = getExtendedInviteType(body); guildStoreBinding = GuildStore; getGuild = guildStoreBinding.getGuild; id = body == null || body.guild == null ? value4 : body.guild.id; object.user_is_member = Reflect.apply(getGuild, guildStoreBinding, [id]) != null; object.invite_instance_id = (importDefault == null ? value4 : importDefault.inviteInstanceId) ?? null; Reflect.apply(track, defaultImport, [INVITE_RESOLVED, object, {flush: true}]); } return {invite: body, code: env0_0}; } function _fun73449(a0) { // fn#73449, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9625:2716, offset: 0x01d6d47e, size: 267 bytes, params: 2, frame: 22 var r1; var code; var value2; var value3; var defaultImport; var track; var INVITE_RESOLVED; var object; let body = a0.body; let value = body != null; if (value) { code = a0.body.code; value = environment.__proto__; value = code === AbortCodes.USER_BANNED; r1 = value; } else { r1 = value; } if (require != null) { value2 = environment.__proto__; value3 = undefined; defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */; track = defaultImport.track; INVITE_RESOLVED = AnalyticEvents.INVITE_RESOLVED; object = {resolved: false}; object.code = env0_3.baseCode; object.input_value = importDefault == null ? value3 : importDefault.inputValue; object.location = require; object.authenticated = AuthenticationStore.isAuthenticated(); object.user_banned = r1; body = a0.body; object.error_code = body == null ? value3 : body.code; body = a0.body; object.error_message = body == null ? value3 : body.message; Reflect.apply(track, defaultImport, [INVITE_RESOLVED, object, {flush: true}]); } return {invite: null, code: env0_0, banned: r1}; } function _fun73450() { // fn#73450, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9625:3092, offset: 0x01d6d589, size: 28 bytes, params: 1, frame: 11 env1_11.delete(env0_0); } } } global.__d(_fun73444, 9439, [1226, 1867, 4118, 661, 4116, 683, 4098, 5046, 480, 1392, 2]) /* metro module 9439, dependencies: [1226, 1867, 4118, 661, 4116, 683, 4098, 5046, 480, 1392, 2] */;