This commit is contained in:
janisslsm committed 2026-07-28 01:06:53 +03:00
1 parent af3b49f756
commit 1781d25a15
22448 files changed
+2731829 -2650550

No files matched your search

+41 -38
View File
@@ -1,30 +1,32 @@
/* Metro module 8516; source: modules/user_profile/Constants.tsx; dependencies: [661, 7635, 2] */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ConstantsModule from '../../Constants.tsx'; /* Metro dependency 661 */
function _fun67509(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67509, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8701:6, offset: 0x01c2653b, size: 3402 bytes, params: 8, frame: 32
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = (require(661) /* metro dependency 661: Constants */).Endpoints;
const object = {NICKNAME: 0};
object[0] = 'NICKNAME';
object.PRONOUNS = 1;
object[1] = 'PRONOUNS';
object.AVATAR = 2;
object[2] = 'AVATAR';
object.ANIMATED_AVATAR = 3;
object[3] = 'ANIMATED_AVATAR';
object.BANNER = 4;
object[4] = 'BANNER';
object.ANIMATED_BANNER = 5;
object[5] = 'ANIMATED_BANNER';
object.BIO = 6;
object[6] = 'BIO';
object.THEME = 7;
object[7] = 'THEME';
object.AVATAR_DECORATION = 8;
object[8] = 'AVATAR_DECORATION';
object.PROFILE_EFFECT = 9;
object[9] = 'PROFILE_EFFECT';
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/Constants.tsx');
const object2 = {NICKNAME: 0};
object2[0] = 'NICKNAME';
object2.PRONOUNS = 1;
object2[1] = 'PRONOUNS';
object2.AVATAR = 2;
object2[2] = 'AVATAR';
object2.ANIMATED_AVATAR = 3;
object2[3] = 'ANIMATED_AVATAR';
object2.BANNER = 4;
object2[4] = 'BANNER';
object2.ANIMATED_BANNER = 5;
object2[5] = 'ANIMATED_BANNER';
object2.BIO = 6;
object2[6] = 'BIO';
object2.THEME = 7;
object2[7] = 'THEME';
object2.AVATAR_DECORATION = 8;
object2[8] = 'AVATAR_DECORATION';
object2.PROFILE_EFFECT = 9;
object2[9] = 'PROFILE_EFFECT';
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/Constants.tsx');
exports.USER_PROFILE_TOOLTIP_DELAY = 300;
exports.getBadgeName = function(a0) {
var property = require(dependencyMap[1]).BadgeId;
@@ -42,7 +44,7 @@ function _fun67509(global, require, importDefault, importAll, module, exports, d
ACCOUNT_POPOUT: 'ACCOUNT_POPOUT', ACTION_SHEET: 'ACTION_SHEET', YOU_SCREEN: 'YOU_SCREEN'};
exports.UserProfileAnalyticsTypes = {USER_SHEET: 'User Sheet', BLOCKED_USER_SHEET: 'Blocked User Sheet',
IGNORED_USER_SHEET: 'Ignored User Sheet'};
exports.TrackUserProfileProperties = object;
exports.TrackUserProfileProperties = object2;
exports.TrackUserProfileActions = {VIEW: 'VIEW', SEND_MESSAGE: 'SEND_MESSAGE',
SEND_DIRECT_MESSAGE: 'SEND_DIRECT_MESSAGE', SEND_FRIEND_REQUEST: 'SEND_FRIEND_REQUEST',
ACCEPT_FRIEND_REQUEST: 'ACCEPT_FRIEND_REQUEST', IGNORE_FRIEND_REQUEST: 'IGNORE_FRIEND_REQUEST',
@@ -151,21 +153,22 @@ function _fun67509(global, require, importDefault, importAll, module, exports, d
exports.UserProfileInteractionTypes = {REPLY: 'REPLY', REACT: 'REACT'};
exports.UserProfileToastTypes = {WIDGET_ADDED: 'WIDGET_ADDED', WIDGET_REMOVED: 'WIDGET_REMOVED',
PROFILE_SAVE_GENERIC_FAILURE: 'PROFILE_SAVE_GENERIC_FAILURE', SOMETHING_WENT_WRONG: 'SOMETHING_WENT_WRONG'};
}
function getBadgeAssetFromCDN(a0) { // fn#67511, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8701:10882, offset: 0x01c272b7, size: 130 bytes, params: 2, frame: 19
var r0;
var protocol;
var value;
const {API_ENDPOINT, CDN_HOST} = global.window.GLOBAL_ENV;
if (CDN_HOST != null) {
r0 = 'https://' + CDN_HOST + '/badge-icons/' + a0 + '.png';
} else {
protocol = global.location.protocol;
value = Endpoints.BADGE_ICON(a0);
value = '' + protocol + API_ENDPOINT + value;
r0 = value;
function getBadgeAssetFromCDN(a0) { // fn#67511, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8701:10882, offset: 0x01c272b7, size: 130 bytes, params: 2, frame: 19
var r0;
var protocol;
var value;
const {API_ENDPOINT, CDN_HOST} = global.window.GLOBAL_ENV;
if (CDN_HOST != null) {
r0 = 'https://' + CDN_HOST + '/badge-icons/' + a0 + '.png';
} else {
protocol = global.location.protocol;
value = Endpoints.BADGE_ICON(a0);
value = '' + protocol + API_ENDPOINT + value;
r0 = value;
}
return r0;
}
return r0;
}
global.__d(_fun67509, 8516, [661, 7635, 2]) /* metro module 8516, dependencies: [661, 7635, 2] */;
+181 -178
View File
@@ -1,4 +1,10 @@
/* Metro module 8493; source: modules/user_profile/DisplayProfile.tsx; dependencies: [6, 7, 1880, 5191, 3802, 1423, 8402, 2] */
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 * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as PremiumConstantsModule from '../premium/PremiumConstants.tsx'; /* Metro dependency 1880 */
import * as ProfileCustomizationUtilsModule from '../profile_customization/ProfileCustomizationUtils.tsx'; /* Metro dependency 8402 */
function _fun67366(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67366, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8678:6, offset: 0x01c20434, size: 171 bytes, params: 8, frame: 19
const env0_0 = require;
const _getStringFieldDefault = function(a0, a1) {
@@ -8,193 +14,190 @@ function _fun67366(global, require, importDefault, importAll, module, exports, d
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(6) /* metro dependency 6 */;
const env0_4 = importDefault(7) /* metro dependency 7 */;
const env0_5 = (require(1880) /* metro dependency 1880: PremiumConstants */).PremiumTypes;
let value = _fun67368();
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/DisplayProfile.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/DisplayProfile.tsx');
exports.default = value;
}
function _fun67368() { // fn#67368, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8678:209, offset: 0x01c204f8, size: 623 bytes, params: 1, frame: 15
return CreateClass(DisplayProfile, [{key: 'premiumSince', get: function() {
return this._userProfile.premiumSince;
}}, {key: 'premiumGuildSince', get: function() {
return this._userProfile.premiumGuildSince;
}}, {key: 'premiumType', get: function() {
return this._userProfile.premiumType;
}}, {key: 'private', get: function() {
return this._userProfile.private;
}}, {key: 'widgets', get: function() {
return this._userProfile.widgets;
}}, {key: 'gameWidgets', get: function() {
return this._userProfile.widgets?.filter(require(dependencyMap[3]).isGameWidget);
}}, {key: 'primaryColor', get: function() {
var r0;
r0 = this.themeColors?.[0];
r0 = r0 ?? this.accentColor;
return r0;
}}, {key: 'canUsePremiumProfileCustomization', get: function() {
return importDefault(dependencyMap[4]).isPremiumAtLeast(this.premiumType, PremiumTypes.TIER_2);
}}, {key: 'canEditThemes', get: function() {
return this.canUsePremiumProfileCustomization;
}}, {key: 'application', get: function() {
return this._userProfile.application;
}}, {key: 'isLoaded', get: function() {
return this._userProfile !== undefined && (this.guildId == null || this._guildMemberProfile !== undefined);
}}, {key: 'hasThemeColors', value: function() {
var property = this.themeColors;
var value = undefined;
return (property == null ? value : property[0]) != null || (this.themeColors == null ? value : this.themeColors[1]) != null;
}}, {key: 'hasPremiumCustomization', value: function() {
var r0;
r0 = this.isUsingGuildMemberBanner() || this.isUsingGuildMemberBio();
r0 = !r0 ? this.banner != null : r0;
r0 = !r0 ? this.hasThemeColors() : r0;
r0 = !r0 ? this.popoutAnimationParticleType != null : r0;
return r0;
}}, {key: 'isUsingGuildMemberBanner', value: function() {
return this._guildMemberProfile?.banner != null;
}}, {key: 'isUsingGuildMemberBio', value: function() {
var property = this._guildMemberProfile;
var value = undefined;
return (property == null ? value : property.bio) != null && (this._guildMemberProfile == null ? value : this._guildMemberProfile.bio) !== '';
}}, {key: 'isUsingGuildMemberPronouns', value: function() {
var property = this._guildMemberProfile;
var value = undefined;
return (property == null ? value : property.pronouns) != null && (this._guildMemberProfile == null ? value : this._guildMemberProfile.pronouns) !== '';
}}, {key: 'getBannerURL', value: value_67386}, {key: 'getPreviewBanner', value: value_67387}, {key: 'getPreviewBio',
value: value_67388}, {key: 'getPreviewPronouns', value: value_67389}, {key: 'getPreviewThemeColors',
value: function(a0) {
var r0;
var value = a0;
var value2 = undefined;
r0 = value == null ? value2 : value[0];
r0 = r0 == null ? value2 !== value ? this._userProfile.themeColors : this.themeColors : (value == null ? value2 : value[1]) != null ? value : value2 !== value ? this._userProfile.themeColors : this.themeColors;
return r0;
}}, {key: 'getBadges', value: function() {
var r5;
var r4;
var r1;
var items;
var property = this._userProfile.badges;
r4 = property ?? [];
items = [];
var value = arraySpread(items, r4, 0, r5);
var value2 = this._guildMemberProfile == null;
r1 = value2 ? undefined : property.badges;
r1 = r1 ?? [];
arraySpread(items, r1, value, value2);
return items;
}}, {key: 'getLegacyUsername', value: function() {
return this._userProfile.legacyUsername;
}}]);
function DisplayProfile(a0, a1) { // fn#67369, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8678:230, offset: 0x01c20767, size: 343 bytes, params: 3, frame: 19
const binding = env1_3;
const value3 = undefined;
binding(this, DisplayProfile);
const userId = a0.userId;
this.userId = userId;
this.guildId = a1 == null ? value3 : a1.guildId;
let banner = a1 == null ? value3 : a1.banner;
banner = banner ?? a0.banner;
this.banner = banner;
this.bio = _getStringFieldDefault(a0.bio, a1 == null ? value3 : a1.bio);
this.pronouns = _getStringFieldDefault(a0.pronouns, a1 == null ? value3 : a1.pronouns);
this.accentColor = a0.accentColor;
let themeColors = a1 == null ? value3 : a1.themeColors;
themeColors = themeColors ?? a0.themeColors;
this.themeColors = themeColors;
let profileEffect = a1 == null ? value3 : a1.profileEffect;
profileEffect = profileEffect ?? a0.profileEffect;
this.profileEffect = profileEffect;
let profileFrame = a1 == null ? value3 : a1.profileFrame;
profileFrame = profileFrame ?? a0.profileFrame;
this.profileFrame = profileFrame;
let popoutAnimationParticleType = a1 == null ? value3 : a1.popoutAnimationParticleType;
popoutAnimationParticleType = popoutAnimationParticleType ?? a0.popoutAnimationParticleType;
this.popoutAnimationParticleType = popoutAnimationParticleType;
this.fetchStartedAt = a0.fetchStartedAt;
this.fetchEndedAt = a0.fetchEndedAt;
this._userProfile = a0;
this._guildMemberProfile = a1;
return value3;
}
function _fun67368() { // fn#67368, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8678:209, offset: 0x01c204f8, size: 623 bytes, params: 1, frame: 15
return env0_4(DisplayProfile, [{key: 'premiumSince', get: function() {
return this._userProfile.premiumSince;
}}, {key: 'premiumGuildSince', get: function() {
return this._userProfile.premiumGuildSince;
}}, {key: 'premiumType', get: function() {
return this._userProfile.premiumType;
}}, {key: 'private', get: function() {
return this._userProfile.private;
}}, {key: 'widgets', get: function() {
return this._userProfile.widgets;
}}, {key: 'gameWidgets', get: function() {
return this._userProfile.widgets?.filter(require(dependencyMap[3]).isGameWidget);
}}, {key: 'primaryColor', get: function() {
var r0;
r0 = this.themeColors?.[0];
r0 = r0 ?? this.accentColor;
return r0;
}}, {key: 'canUsePremiumProfileCustomization', get: function() {
return importDefault(dependencyMap[4]).isPremiumAtLeast(this.premiumType, PremiumTypes.TIER_2);
}}, {key: 'canEditThemes', get: function() {
return this.canUsePremiumProfileCustomization;
}}, {key: 'application', get: function() {
return this._userProfile.application;
}}, {key: 'isLoaded', get: function() {
return this._userProfile !== undefined && (this.guildId == null || this._guildMemberProfile !== undefined);
}}, {key: 'hasThemeColors', value: function() {
var property = this.themeColors;
var value = undefined;
return (property == null ? value : property[0]) != null || (this.themeColors == null ? value : this.themeColors[1]) != null;
}}, {key: 'hasPremiumCustomization', value: function() {
var r0;
r0 = this.isUsingGuildMemberBanner() || this.isUsingGuildMemberBio();
r0 = !r0 ? this.banner != null : r0;
r0 = !r0 ? this.hasThemeColors() : r0;
r0 = !r0 ? this.popoutAnimationParticleType != null : r0;
return r0;
}}, {key: 'isUsingGuildMemberBanner', value: function() {
return this._guildMemberProfile?.banner != null;
}}, {key: 'isUsingGuildMemberBio', value: function() {
var property = this._guildMemberProfile;
var value = undefined;
return (property == null ? value : property.bio) != null && (this._guildMemberProfile == null ? value : this._guildMemberProfile.bio) !== '';
}}, {key: 'isUsingGuildMemberPronouns', value: function() {
var property = this._guildMemberProfile;
var value = undefined;
return (property == null ? value : property.pronouns) != null && (this._guildMemberProfile == null ? value : this._guildMemberProfile.pronouns) !== '';
}}, {key: 'getBannerURL', value: value_67386}, {key: 'getPreviewBanner', value: value_67387}, {key: 'getPreviewBio',
value: value_67388}, {key: 'getPreviewPronouns', value: value_67389}, {key: 'getPreviewThemeColors',
value: function(a0) {
var r0;
var value = a0;
var value2 = undefined;
r0 = value == null ? value2 : value[0];
r0 = r0 == null ? value2 !== value ? this._userProfile.themeColors : this.themeColors : (value == null ? value2 : value[1]) != null ? value : value2 !== value ? this._userProfile.themeColors : this.themeColors;
return r0;
}}, {key: 'getBadges', value: function() {
var r5;
var r4;
var r1;
var items;
var property = this._userProfile.badges;
r4 = property ?? [];
items = [];
var value = arraySpread(items, r4, 0, r5);
var value2 = this._guildMemberProfile == null;
r1 = value2 ? undefined : property.badges;
r1 = r1 ?? [];
arraySpread(items, r1, value, value2);
return items;
}}, {key: 'getLegacyUsername', value: function() {
return this._userProfile.legacyUsername;
}}]);
}
function DisplayProfile(a0, a1) { // fn#67369, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8678:230, offset: 0x01c20767, size: 343 bytes, params: 3, frame: 19
const binding = env1_3;
const value3 = undefined;
binding(this, DisplayProfile);
const userId = a0.userId;
this.userId = userId;
this.guildId = a1 == null ? value3 : a1.guildId;
let banner = a1 == null ? value3 : a1.banner;
banner = banner ?? a0.banner;
this.banner = banner;
this.bio = _getStringFieldDefault(a0.bio, a1 == null ? value3 : a1.bio);
this.pronouns = _getStringFieldDefault(a0.pronouns, a1 == null ? value3 : a1.pronouns);
this.accentColor = a0.accentColor;
let themeColors = a1 == null ? value3 : a1.themeColors;
themeColors = themeColors ?? a0.themeColors;
this.themeColors = themeColors;
let profileEffect = a1 == null ? value3 : a1.profileEffect;
profileEffect = profileEffect ?? a0.profileEffect;
this.profileEffect = profileEffect;
let profileFrame = a1 == null ? value3 : a1.profileFrame;
profileFrame = profileFrame ?? a0.profileFrame;
this.profileFrame = profileFrame;
let popoutAnimationParticleType = a1 == null ? value3 : a1.popoutAnimationParticleType;
popoutAnimationParticleType = popoutAnimationParticleType ?? a0.popoutAnimationParticleType;
this.popoutAnimationParticleType = popoutAnimationParticleType;
this.fetchStartedAt = a0.fetchStartedAt;
this.fetchEndedAt = a0.fetchEndedAt;
this._userProfile = a0;
this._guildMemberProfile = a1;
return value3;
}
function value_67386({canAnimate, size}) { // fn#67386, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8678:2913, offset: 0x01c20b26, size: 188 bytes, params: 2, frame: 16
var r0;
var value;
if (this.guildId == null) {
value = environment.__proto__;
value = require(1423) /* metro dependency 1423: AvatarUtils */;
value = value.getUserBannerURL({id: this.userId, banner: this.banner, canAnimate: canAnimate, size: size});
r0 = value;
} else if (this.isUsingGuildMemberBanner()) {
value = environment.__proto__;
value = require(1423) /* metro dependency 1423: AvatarUtils */;
value = value.getGuildMemberBannerURL({id: this.userId, guildId: this.guildId, banner: this.banner,
canAnimate: canAnimate, size: size});
r0 = value;
} else {
value = environment.__proto__;
value = require(1423) /* metro dependency 1423: AvatarUtils */;
value = value.getUserBannerURL({id: this.userId, banner: this.banner, canAnimate: canAnimate, size: size});
r0 = value;
}
return r0;
}
function value_67387(a0, a1) { // fn#67387, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8678:3228, offset: 0x01c20be2, size: 155 bytes, params: 3, frame: 18
var r2;
var r1;
var r0;
let value = a0;
const value2 = a2;
const r6 = value2 !== undefined ? value2 : 480;
const value4 = null;
if (value4 != value) {
r0 = value;
} else {
if (value4 === value) {
if (this.isUsingGuildMemberBanner()) {
function value_67386({canAnimate, size}) { // fn#67386, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8678:2913, offset: 0x01c20b26, size: 188 bytes, params: 2, frame: 16
var r0;
var value;
if (this.guildId == null) {
value = environment.__proto__;
value = require(1423) /* metro dependency 1423: AvatarUtils */;
value = value.getUserBannerURL({id: this.userId, banner: this._userProfile.banner, canAnimate: a1,
size: r6});
r2 = value;
value = value.getUserBannerURL({id: this.userId, banner: this.banner, canAnimate: canAnimate, size: size});
r0 = value;
} else if (this.isUsingGuildMemberBanner()) {
value = environment.__proto__;
value = require(1423) /* metro dependency 1423: AvatarUtils */;
value = value.getGuildMemberBannerURL({id: this.userId, guildId: this.guildId, banner: this.banner,
canAnimate: canAnimate, size: size});
r0 = value;
} else {
r2 = value4;
value = environment.__proto__;
value = require(1423) /* metro dependency 1423: AvatarUtils */;
value = value.getUserBannerURL({id: this.userId, banner: this.banner, canAnimate: canAnimate, size: size});
r0 = value;
}
r1 = r2;
} else {
r1 = this.getBannerURL({canAnimate: a1, size: r6});
return r0;
}
r0 = r1;
function value_67387(a0, a1) { // fn#67387, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8678:3228, offset: 0x01c20be2, size: 155 bytes, params: 3, frame: 18
var r2;
var r1;
var r0;
let value = a0;
const value2 = a2;
const r6 = value2 !== undefined ? value2 : 480;
const value4 = null;
if (value4 != value) {
r0 = value;
} else {
if (value4 === value) {
if (this.isUsingGuildMemberBanner()) {
value = environment.__proto__;
value = require(1423) /* metro dependency 1423: AvatarUtils */;
value = value.getUserBannerURL({id: this.userId, banner: this._userProfile.banner, canAnimate: a1,
size: r6});
r2 = value;
} else {
r2 = value4;
}
r1 = r2;
} else {
r1 = this.getBannerURL({canAnimate: a1, size: r6});
}
r0 = r1;
}
return r0;
}
function value_67388(a0) { // fn#67388, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8678:3476, offset: 0x01c20c7d, size: 103 bytes, params: 2, frame: 15
let value = environment.__proto__;
value = undefined;
const getProfilePreviewValue = ProfileCustomizationUtilsModule.getProfilePreviewValue;
const _guildMemberProfile = this._guildMemberProfile;
return Reflect.apply(getProfilePreviewValue, ProfileCustomizationUtilsModule, [{pendingValue: a0,
userValue: this._userProfile.bio, guildValue: _guildMemberProfile == null ? value : _guildMemberProfile.bio,
guildId: this.guildId}]);
}
function value_67389(a0) { // fn#67389, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8678:3696, offset: 0x01c20ce4, size: 103 bytes, params: 2, frame: 15
let value = environment.__proto__;
value = undefined;
const getProfilePreviewValue = ProfileCustomizationUtilsModule.getProfilePreviewValue;
const _guildMemberProfile = this._guildMemberProfile;
return Reflect.apply(getProfilePreviewValue, ProfileCustomizationUtilsModule, [{pendingValue: a0,
userValue: this._userProfile.pronouns,
guildValue: _guildMemberProfile == null ? value : _guildMemberProfile.pronouns, guildId: this.guildId}]);
}
}
return r0;
}
function value_67388(a0) { // fn#67388, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8678:3476, offset: 0x01c20c7d, size: 103 bytes, params: 2, frame: 15
let value = environment.__proto__;
value = undefined;
const profileCustomizationUtilsModule = require(8402) /* metro dependency 8402: ProfileCustomizationUtils */;
const getProfilePreviewValue = profileCustomizationUtilsModule.getProfilePreviewValue;
const _guildMemberProfile = this._guildMemberProfile;
return Reflect.apply(getProfilePreviewValue, profileCustomizationUtilsModule, [{pendingValue: a0,
userValue: this._userProfile.bio, guildValue: _guildMemberProfile == null ? value : _guildMemberProfile.bio,
guildId: this.guildId}]);
}
function value_67389(a0) { // fn#67389, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8678:3696, offset: 0x01c20ce4, size: 103 bytes, params: 2, frame: 15
let value = environment.__proto__;
value = undefined;
const profileCustomizationUtilsModule = require(8402) /* metro dependency 8402: ProfileCustomizationUtils */;
const getProfilePreviewValue = profileCustomizationUtilsModule.getProfilePreviewValue;
const _guildMemberProfile = this._guildMemberProfile;
return Reflect.apply(getProfilePreviewValue, profileCustomizationUtilsModule, [{pendingValue: a0,
userValue: this._userProfile.pronouns,
guildValue: _guildMemberProfile == null ? value : _guildMemberProfile.pronouns, guildId: this.guildId}]);
}
global.__d(_fun67366, 8493, [6, 7, 1880, 5191, 3802, 1423, 8402,
2]) /* metro module 8493, dependencies: [6, 7, 1880, 5191, 3802, 1423, 8402, 2] */;
@@ -1,40 +1,47 @@
/* Metro module 10354; source: modules/user_profile/PrivateProfilesExperiment.tsx; dependencies: [1854, 10355, 10356, 2] */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ApexModule from '../experiments/apex/index.tsx'; /* Metro dependency 1854 */
import * as PrivateProfilesStrictExperimentModule from './PrivateProfilesStrictExperiment.tsx'; /* Metro dependency 10355 */
import * as PrivateProfilesStrictGbExperimentModule from './PrivateProfilesStrictGbExperiment.tsx'; /* Metro dependency 10356 */
function _fun80234(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#80234, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10540:6, offset: 0x01e72821, size: 197 bytes, params: 8, frame: 22
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = require(1854) /* metro dependency 1854: apex */;
let value = ApexModule;
value = value.createApexExperiment({'name': '2026-02-private-profiles', 'kind': 'user',
defaultConfig: {enabled: false}, variations: {[0]: {enabled: false}, [1]: {enabled: true}}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/PrivateProfilesExperiment.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/PrivateProfilesExperiment.tsx');
exports.PrivateProfilesExperiment = value;
exports.useIsInPrivateProfilesExperiment = useIsInPrivateProfilesExperiment;
exports.getIsInPrivateProfilesExperiment = getIsInPrivateProfilesExperiment;
}
function useIsInPrivateProfilesExperiment(a0) { // fn#80235, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10540:393, offset: 0x01e728e6, size: 102 bytes, params: 2, frame: 15
const binding = env0_2;
const useConfig = binding.useConfig;
const enabled = Reflect.apply(useConfig, binding, [{location: a0}]).enabled;
let value = require(10355) /* metro dependency 10355: PrivateProfilesStrictExperiment */;
value = value.useIsInPrivateProfilesStrictExperiment(a0);
const value2 = (require(10356) /* metro dependency 10356: PrivateProfilesStrictGbExperiment */).useIsInPrivateProfilesStrictGbExperiment(a0);
let r0 = enabled || value;
r0 = !r0 ? value2 : r0;
return r0;
}
function getIsInPrivateProfilesExperiment(a0) { // fn#80236, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10540:594, offset: 0x01e7294c, size: 106 bytes, params: 2, frame: 14
var value;
const binding = env0_2;
const getConfig = binding.getConfig;
let r0 = Reflect.apply(getConfig, binding,
[{location: a0}]).enabled || (require(10355) /* metro dependency 10355: PrivateProfilesStrictExperiment */).getIsInPrivateProfilesStrictExperiment(a0);
if (!r0) {
value = require(10356) /* metro dependency 10356: PrivateProfilesStrictGbExperiment */;
value = value.getIsInPrivateProfilesStrictGbExperiment(a0);
r0 = value;
function useIsInPrivateProfilesExperiment(a0) { // fn#80235, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10540:393, offset: 0x01e728e6, size: 102 bytes, params: 2, frame: 15
const binding = env0_2;
const useConfig = binding.useConfig;
const enabled = Reflect.apply(useConfig, binding, [{location: a0}]).enabled;
let value = PrivateProfilesStrictExperimentModule;
value = value.useIsInPrivateProfilesStrictExperiment(a0);
const value2 = (PrivateProfilesStrictGbExperimentModule).useIsInPrivateProfilesStrictGbExperiment(a0);
let r0 = enabled || value;
r0 = !r0 ? value2 : r0;
return r0;
}
return r0;
function getIsInPrivateProfilesExperiment(a0) { // fn#80236, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10540:594, offset: 0x01e7294c, size: 106 bytes, params: 2, frame: 14
var value;
const binding = env0_2;
const getConfig = binding.getConfig;
let r0 = Reflect.apply(getConfig, binding,
[{location: a0}]).enabled || (require(10355) /* metro dependency 10355: PrivateProfilesStrictExperiment */).getIsInPrivateProfilesStrictExperiment(a0);
if (!r0) {
value = require(10356) /* metro dependency 10356: PrivateProfilesStrictGbExperiment */;
value = value.getIsInPrivateProfilesStrictGbExperiment(a0);
r0 = value;
}
return r0;
}
}
global.__d(_fun80234, 10354, [1854, 10355, 10356,
2]) /* metro module 10354, dependencies: [1854, 10355, 10356, 2] */;
@@ -1,14 +1,30 @@
/* Metro module 10355; source: modules/user_profile/PrivateProfilesStrictExperiment.tsx; dependencies: [1854, 2] */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ApexModule from '../experiments/apex/index.tsx'; /* Metro dependency 1854 */
function _fun80237(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#80237, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10541:6, offset: 0x01e729b6, size: 209 bytes, params: 8, frame: 22
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = require(1854) /* metro dependency 1854: apex */;
let value = ApexModule;
value = value.createApexExperiment({'name': '2026-03-private-profiles-strict', 'kind': 'user',
defaultConfig: {enabled: false}, variations: {[0]: {enabled: false}, [1]: {enabled: true}, [2]: {enabled: true},
[3]: {enabled: true}}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/PrivateProfilesStrictExperiment.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/PrivateProfilesStrictExperiment.tsx');
exports.PrivateProfilesStrictExperiment = value;
exports.useIsInPrivateProfilesStrictExperiment = useIsInPrivateProfilesStrictExperiment;
exports.getIsInPrivateProfilesStrictExperiment = getIsInPrivateProfilesStrictExperiment;
function useIsInPrivateProfilesStrictExperiment(a0) { // fn#80238, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10541:448, offset: 0x00e364db, size: 34 bytes, params: 2, frame: 12
const binding = env0_0;
const useConfig = binding.useConfig;
return Reflect.apply(useConfig, binding, [{location: a0}]).enabled;
}
function getIsInPrivateProfilesStrictExperiment(a0) { // fn#80239, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10541:526, offset: 0x00e3651f, size: 34 bytes, params: 2, frame: 12
const binding = env0_0;
const getConfig = binding.getConfig;
return Reflect.apply(getConfig, binding, [{location: a0}]).enabled;
}
}
global.__d(_fun80237, 10355, [1854, 2]) /* metro module 10355, dependencies: [1854, 2] */;
@@ -1,14 +1,30 @@
/* Metro module 10356; source: modules/user_profile/PrivateProfilesStrictGbExperiment.tsx; dependencies: [1854, 2] */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ApexModule from '../experiments/apex/index.tsx'; /* Metro dependency 1854 */
function _fun80240(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#80240, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10542:6, offset: 0x01e72a87, size: 209 bytes, params: 8, frame: 22
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = require(1854) /* metro dependency 1854: apex */;
let value = ApexModule;
value = value.createApexExperiment({'name': '2026-03-private-profiles-strict-gb', 'kind': 'user',
defaultConfig: {enabled: false}, variations: {[0]: {enabled: false}, [1]: {enabled: true}, [2]: {enabled: true},
[3]: {enabled: true}}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/PrivateProfilesStrictGbExperiment.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/PrivateProfilesStrictGbExperiment.tsx');
exports.PrivateProfilesStrictGbExperiment = value;
exports.useIsInPrivateProfilesStrictGbExperiment = useIsInPrivateProfilesStrictGbExperiment;
exports.getIsInPrivateProfilesStrictGbExperiment = getIsInPrivateProfilesStrictGbExperiment;
function useIsInPrivateProfilesStrictGbExperiment(a0) { // fn#80241, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10542:457, offset: 0x00e364db, size: 34 bytes, params: 2, frame: 12
const binding = env0_0;
const useConfig = binding.useConfig;
return Reflect.apply(useConfig, binding, [{location: a0}]).enabled;
}
function getIsInPrivateProfilesStrictGbExperiment(a0) { // fn#80242, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10542:537, offset: 0x00e3651f, size: 34 bytes, params: 2, frame: 12
const binding = env0_0;
const getConfig = binding.getConfig;
return Reflect.apply(getConfig, binding, [{location: a0}]).enabled;
}
}
global.__d(_fun80240, 10356, [1854, 2]) /* metro module 10356, dependencies: [1854, 2] */;
@@ -1,9 +1,12 @@
/* Metro module 7610; source: modules/user_profile/ProfileUpdateRequestUtils.tsx; dependencies: [7611, 7612, 1904, 2] */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as CollectiblesItemTypeModule from '../../external/discord_common/js/shared/shared-constants/CollectiblesItemType.tsx'; /* Metro dependency 1904 */
function _fun60973(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#60973, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7788:6, offset: 0x01716d2a, size: 134 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/ProfileUpdateRequestUtils.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/ProfileUpdateRequestUtils.tsx');
exports.getProfileChangesForUpdateRequest = getProfileChangesForUpdateRequest;
exports.getAccountUpdateForUpdateRequest = getAccountUpdateForUpdateRequest;
exports.getGuildMemberChangesForUpdateRequest = getGuildMemberChangesForUpdateRequest;
@@ -14,186 +17,191 @@ function _fun60973(global, require, importDefault, importAll, module, exports, d
}
return object;
};
}
function getProfileChangesForUpdateRequest(a0, a1) { // fn#60974, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7788:212, offset: 0x01716db0, size: 195 bytes, params: 3, frame: 15
var value;
var pendingBannerOriginalMd5;
const object2 = {};
let pendingBanner = a0.pendingBanner;
if (pendingBanner !== undefined) {
pendingBanner = a0.pendingBanner;
object2.banner = pendingBanner;
pendingBanner = a0.pendingBanner;
value = null;
if (value !== pendingBanner) {
pendingBannerOriginalMd5 = a0.pendingBannerOriginalMd5;
object2.bannerOriginalMd5 = value != pendingBannerOriginalMd5 ? pendingBannerOriginalMd5 : value;
}
}
if (a0.pendingBio != null) {
object2.bio = a0.pendingBio;
}
if (a0.pendingPronouns != null) {
object2.pronouns = a0.pendingPronouns;
}
if (a0.pendingAccentColor !== undefined) {
object2.accent_color = a0.pendingAccentColor;
}
if (a0.pendingThemeColors !== undefined) {
object2.theme_colors = a0.pendingThemeColors;
}
value = getCollectiblesChangesForUpdateRequest(a0, a1);
if (value.collectibles_sku_ids !== undefined) {
object2.collectibles_sku_ids = value.collectibles_sku_ids;
}
return object2;
}
function getAccountUpdateForUpdateRequest(a0) { // fn#60979, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7788:1326, offset: 0x01716fde, size: 225 bytes, params: 2, frame: 17
const object2 = {};
if (a0.pendingGlobalName !== undefined) {
object2.globalName = a0.pendingGlobalName;
}
if (a0.pendingNameplate !== undefined) {
object2.nameplate = a0.pendingNameplate;
}
let pendingAvatar = a0.pendingAvatar;
if (pendingAvatar !== undefined) {
pendingAvatar = a0.pendingAvatar;
if (pendingAvatar === null) {
object2.avatar = null;
} else if (pendingAvatar.assetOrigin === (require(7611) /* metro dependency 7611: RecentAvatarsTypes */).AssetOriginTypes.ARCHIVED_ASSET) {
object2.avatarId = pendingAvatar.originalAsset.id;
} else {
object2.avatar = pendingAvatar.imageUri;
object2.avatarDescription = pendingAvatar.description;
object2.avatarOriginalMd5 = pendingAvatar.originalMd5;
}
}
if (a0.pendingAvatarDecoration !== undefined) {
object2.avatarDecoration = a0.pendingAvatarDecoration;
}
if (a0.pendingDisplayNameStyles !== undefined) {
object2.displayNameStyles = a0.pendingDisplayNameStyles;
}
return object2;
}
function getGuildMemberChangesForUpdateRequest(a0) { // fn#60980, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7788:1976, offset: 0x017170bf, size: 241 bytes, params: 2, frame: 17
const object2 = {};
let pendingAvatar = a0.pendingAvatar;
if (pendingAvatar !== undefined) {
pendingAvatar = a0.pendingAvatar;
if (pendingAvatar === null) {
object2.avatar = null;
} else if (pendingAvatar.assetOrigin === (require(7611) /* metro dependency 7611: RecentAvatarsTypes */).AssetOriginTypes.ARCHIVED_ASSET) {
object2.avatarId = pendingAvatar.originalAsset.id;
} else {
object2.avatar = pendingAvatar.imageUri;
object2.avatarDescription = pendingAvatar.description;
object2.avatarOriginalMd5 = pendingAvatar.originalMd5;
}
}
if (a0.pendingNickname !== undefined) {
object2.nick = a0.pendingNickname ?? '';
}
if (a0.pendingAvatarDecoration !== undefined) {
object2.avatarDecoration = a0.pendingAvatarDecoration;
}
if (a0.pendingNameplate !== undefined) {
object2.nameplate = a0.pendingNameplate;
}
if (a0.pendingDisplayNameStyles !== undefined) {
object2.displayNameStyles = a0.pendingDisplayNameStyles;
}
return object2;
}
function getCollectiblesChangesForUpdateRequest({pendingProfileEffect, pendingProfileFrame}, a1) { // fn#60975, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7788:655, owner: getProfileChangesForUpdateRequest.getCollectiblesChangesForUpdateRequest, offset: 0x01716e73, size: 261 bytes, params: 3, frame: 21
var environment;
var r5;
var r6;
var r3;
var value2;
var value3;
var object;
var value4;
const CollectiblesItemType = (require(1904) /* metro dependency 1904: CollectiblesItemType */).CollectiblesItemType;
let value = undefined;
if (value !== pendingProfileEffect) {
value2 = environment.__proto__;
value3 = (importDefault(7612) /* metro dependency 7612: getCurrentUserProfile */)(a1);
r5 = (value3 == null ? value : value3.collectibles) ?? [];
object = [];
arraySpread(object, r5, 0, undefined);
if (value === pendingProfileEffect) {
r6 = object;
} else {
value4 = object.filter(function({type}) {
return type !== require(dependencyMap[2]).CollectiblesItemType.PROFILE_EFFECT;
});
if (pendingProfileEffect === null) {
r6 = value4;
} else {
value4.push({skuId: pendingProfileEffect.skuId, type: CollectiblesItemType.PROFILE_EFFECT});
r6 = value4;
function getProfileChangesForUpdateRequest(a0, a1) { // fn#60974, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7788:212, offset: 0x01716db0, size: 195 bytes, params: 3, frame: 15
var value;
var pendingBannerOriginalMd5;
const object = {};
let pendingBanner = a0.pendingBanner;
if (pendingBanner !== undefined) {
pendingBanner = a0.pendingBanner;
object.banner = pendingBanner;
pendingBanner = a0.pendingBanner;
value = null;
if (value !== pendingBanner) {
pendingBannerOriginalMd5 = a0.pendingBannerOriginalMd5;
object.bannerOriginalMd5 = value != pendingBannerOriginalMd5 ? pendingBannerOriginalMd5 : value;
}
}
if (value === pendingProfileFrame) {
r3 = r6;
} else {
value = r6.filter(_fun60977);
if (pendingProfileFrame === null) {
r3 = value;
if (a0.pendingBio != null) {
object.bio = a0.pendingBio;
}
if (a0.pendingPronouns != null) {
object.pronouns = a0.pendingPronouns;
}
if (a0.pendingAccentColor !== undefined) {
object.accent_color = a0.pendingAccentColor;
}
if (a0.pendingThemeColors !== undefined) {
object.theme_colors = a0.pendingThemeColors;
}
value = getCollectiblesChangesForUpdateRequest(a0, a1);
if (value.collectibles_sku_ids !== undefined) {
object.collectibles_sku_ids = value.collectibles_sku_ids;
}
return object;
function getCollectiblesChangesForUpdateRequest({pendingProfileEffect, pendingProfileFrame}, a1) { // fn#60975, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7788:655, owner: getProfileChangesForUpdateRequest.getCollectiblesChangesForUpdateRequest, offset: 0x01716e73, size: 261 bytes, params: 3, frame: 21
var environment;
var r5;
var r6;
var r3;
var value2;
var value3;
var object;
var value4;
const CollectiblesItemType = (CollectiblesItemTypeModule).CollectiblesItemType;
let value = undefined;
if (value !== pendingProfileEffect) {
value2 = environment.__proto__;
value3 = (importDefault(7612) /* metro dependency 7612: getCurrentUserProfile */)(a1);
r5 = (value3 == null ? value : value3.collectibles) ?? [];
object = [];
arraySpread(object, r5, 0, undefined);
if (value === pendingProfileEffect) {
r6 = object;
} else {
value4 = object.filter(function({type}) {
return type !== require(dependencyMap[2]).CollectiblesItemType.PROFILE_EFFECT;
});
if (pendingProfileEffect === null) {
r6 = value4;
} else {
value4.push({skuId: pendingProfileEffect.skuId, type: CollectiblesItemType.PROFILE_EFFECT});
r6 = value4;
}
}
if (value === pendingProfileFrame) {
r3 = r6;
} else {
value = r6.filter(_fun60977);
if (pendingProfileFrame === null) {
r3 = value;
} else {
value.push(pendingProfileFrame);
r3 = value;
}
}
object = {};
object.collectibles_sku_ids = r3.map(_fun60978);
return object;
}
if (value === pendingProfileFrame) {
return {};
}
value3 = (importDefault(7612) /* metro dependency 7612: getCurrentUserProfile */)(a1);
arraySpread([], (value3 == null ? value : value3.collectibles) ?? [], 0, undefined);
if (value === pendingProfileEffect) {
r6 = object;
} else {
value.push(pendingProfileFrame);
r3 = value;
value4 = object.filter(function({type}) {
return type !== require(dependencyMap[2]).CollectiblesItemType.PROFILE_EFFECT;
});
if (pendingProfileEffect === null) {
r6 = value4;
} else {
value4.push({skuId: pendingProfileEffect.skuId, type: CollectiblesItemType.PROFILE_EFFECT});
r6 = value4;
}
}
if (value === pendingProfileFrame) {
r3 = r6;
} else {
value = r6.filter(function({type}) {
return type !== require(dependencyMap[2]).CollectiblesItemType.PROFILE_FRAME;
});
if (pendingProfileFrame === null) {
r3 = value;
} else {
value.push(pendingProfileFrame);
r3 = value;
}
}
return {collectibles_sku_ids: r3.map(function(a0) {
return a0.skuId;
})};
function _fun60977({type}) { // fn#60977, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7788:1059, offset: 0x01716fab, size: 51 bytes, params: 2, frame: 12
const CollectiblesItemType = (CollectiblesItemTypeModule).CollectiblesItemType;
const PROFILE_FRAME = CollectiblesItemType.PROFILE_FRAME;
return type !== PROFILE_FRAME;
}
}
}
function getAccountUpdateForUpdateRequest(a0) { // fn#60979, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7788:1326, offset: 0x01716fde, size: 225 bytes, params: 2, frame: 17
const object = {};
if (a0.pendingGlobalName !== undefined) {
object.globalName = a0.pendingGlobalName;
}
if (a0.pendingNameplate !== undefined) {
object.nameplate = a0.pendingNameplate;
}
let pendingAvatar = a0.pendingAvatar;
if (pendingAvatar !== undefined) {
pendingAvatar = a0.pendingAvatar;
if (pendingAvatar === null) {
object.avatar = null;
} else if (pendingAvatar.assetOrigin === (require(7611) /* metro dependency 7611: RecentAvatarsTypes */).AssetOriginTypes.ARCHIVED_ASSET) {
object.avatarId = pendingAvatar.originalAsset.id;
} else {
object.avatar = pendingAvatar.imageUri;
object.avatarDescription = pendingAvatar.description;
object.avatarOriginalMd5 = pendingAvatar.originalMd5;
}
}
object = {};
object.collectibles_sku_ids = r3.map(_fun60978);
if (a0.pendingAvatarDecoration !== undefined) {
object.avatarDecoration = a0.pendingAvatarDecoration;
}
if (a0.pendingDisplayNameStyles !== undefined) {
object.displayNameStyles = a0.pendingDisplayNameStyles;
}
return object;
}
if (value === pendingProfileFrame) {
return {};
}
value3 = (importDefault(7612) /* metro dependency 7612: getCurrentUserProfile */)(a1);
arraySpread([], (value3 == null ? value : value3.collectibles) ?? [], 0, undefined);
if (value === pendingProfileEffect) {
r6 = object;
} else {
value4 = object.filter(function({type}) {
return type !== require(dependencyMap[2]).CollectiblesItemType.PROFILE_EFFECT;
});
if (pendingProfileEffect === null) {
r6 = value4;
} else {
value4.push({skuId: pendingProfileEffect.skuId, type: CollectiblesItemType.PROFILE_EFFECT});
r6 = value4;
function getGuildMemberChangesForUpdateRequest(a0) { // fn#60980, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7788:1976, offset: 0x017170bf, size: 241 bytes, params: 2, frame: 17
const object = {};
let pendingAvatar = a0.pendingAvatar;
if (pendingAvatar !== undefined) {
pendingAvatar = a0.pendingAvatar;
if (pendingAvatar === null) {
object.avatar = null;
} else if (pendingAvatar.assetOrigin === (require(7611) /* metro dependency 7611: RecentAvatarsTypes */).AssetOriginTypes.ARCHIVED_ASSET) {
object.avatarId = pendingAvatar.originalAsset.id;
} else {
object.avatar = pendingAvatar.imageUri;
object.avatarDescription = pendingAvatar.description;
object.avatarOriginalMd5 = pendingAvatar.originalMd5;
}
}
}
if (value === pendingProfileFrame) {
r3 = r6;
} else {
value = r6.filter(function({type}) {
return type !== require(dependencyMap[2]).CollectiblesItemType.PROFILE_FRAME;
});
if (pendingProfileFrame === null) {
r3 = value;
} else {
value.push(pendingProfileFrame);
r3 = value;
if (a0.pendingNickname !== undefined) {
object.nick = a0.pendingNickname ?? '';
}
if (a0.pendingAvatarDecoration !== undefined) {
object.avatarDecoration = a0.pendingAvatarDecoration;
}
if (a0.pendingNameplate !== undefined) {
object.nameplate = a0.pendingNameplate;
}
if (a0.pendingDisplayNameStyles !== undefined) {
object.displayNameStyles = a0.pendingDisplayNameStyles;
}
return object;
}
return {collectibles_sku_ids: r3.map(function(a0) {
return a0.skuId;
})};
}
function _fun60977({type}) { // fn#60977, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7788:1059, offset: 0x01716fab, size: 51 bytes, params: 2, frame: 12
const CollectiblesItemType = (require(1904) /* metro dependency 1904: CollectiblesItemType */).CollectiblesItemType;
const PROFILE_FRAME = CollectiblesItemType.PROFILE_FRAME;
return type !== PROFILE_FRAME;
function _fun60978(a0) { // fn#60978, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7788:1176, offset: 0x00fba7b9, size: 10 bytes, params: 2, frame: 1
return a0.skuId;
}
global.__d(_fun60973, 7610, [7611, 7612, 1904, 2]) /* metro module 7610, dependencies: [7611, 7612, 1904, 2] */;
@@ -1,12 +1,15 @@
/* Metro module 5211; source: modules/user_profile/TieredTenureBadgeUtils.tsx; dependencies: [1880, 3738, 2] */
import Module03738 from '../../by-id/module-03738.js'; /* Metro dependency 3738 */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as PremiumConstantsModule from '../premium/PremiumConstants.tsx'; /* Metro dependency 1880 */
function _fun45972(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#45972, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5389:6, offset: 0x0119ccd7, size: 144 bytes, params: 8, frame: 18
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = (require(1880) /* metro dependency 1880: PremiumConstants */).TENURE_BADGES;
const closure = function(a0) {
return TENURE_BADGES[a0];
};
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/TieredTenureBadgeUtils.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/TieredTenureBadgeUtils.tsx');
exports.getTieredTenureBadgeData = closure;
exports.getTieredTenureBadge = function(a0) {
var value = a0;
@@ -15,19 +18,20 @@ function _fun45972(global, require, importDefault, importAll, module, exports, d
return value4 == value3 ? value4 : value;
};
exports.getEarnedOnDate = getEarnedOnDate;
function getEarnedOnDate(a0, a1) { // fn#45975, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5389:371, offset: 0x0119cd86, size: 107 bytes, params: 3, frame: 16
if (a1 == null) {
return null;
}
const tieredTenureBadgeData = getTieredTenureBadgeData(a0);
if (tieredTenureBadgeData == null) {
return null;
}
const value = (Module03738)(a1);
value.add(tieredTenureBadgeData.tenureReqNumMonths, 'months');
value.add(1, 'days');
return value.toDate();
}
}
function getEarnedOnDate(a0, a1) { // fn#45975, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5389:371, offset: 0x0119cd86, size: 107 bytes, params: 3, frame: 16
if (a1 == null) {
return null;
}
const tieredTenureBadgeData = getTieredTenureBadgeData(a0);
if (tieredTenureBadgeData == null) {
return null;
}
const value = (importDefault(3738) /* metro dependency 3738 */)(a1);
value.add(tieredTenureBadgeData.tenureReqNumMonths, 'months');
value.add(1, 'days');
return value.toDate();
}
global.__d(_fun45972, 5211, [1880, 3738, 2]) /* metro module 5211, dependencies: [1880, 3738, 2] */;
File diff suppressed because it is too large. Load diff
@@ -1,195 +1,204 @@
/* Metro module 8514; source: modules/user_profile/UserProfileAnalyticsContext.tsx; dependencies: [31, 33, 6771, 8515, 491, 2] */
import UseAnalyticsLocations from '../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
function _fun67474(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67474, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:6, offset: 0x01c24aa6, size: 185 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const value = importAll(31) /* metro dependency 31 */;
const env0_4 = (require(33) /* metro dependency 33 */).jsx;
const env0_5 = value.createContext(null);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/UserProfileAnalyticsContext.tsx');
const env0_5 = ReactModule.createContext(null);
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/UserProfileAnalyticsContext.tsx');
exports.UserProfileAnalyticsProvider = UserProfileAnalyticsProvider;
exports.useCreateUserProfileAnalyticsContext = useCreateUserProfileAnalyticsContext;
exports.useUserProfileAnalyticsContext = useUserProfileAnalyticsContext;
}
function UserProfileAnalyticsProvider({value, children, openedAt, fetchStartedAt, fetchEndedAt, isLoaded}) { // fn#67475, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:261, offset: 0x01c24b5f, size: 230 bytes, params: 2, frame: 18
isLoaded = !(isLoaded === undefined) && isLoaded;
const env0_3 = isLoaded;
const analyticsLocations = (importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */)().analyticsLocations;
const binding = env0_3;
const env0_4 = binding.useRef(undefined);
const object2 = {analyticsLocations: analyticsLocations, value: value};
const env0_5 = object2;
const env0_6 = binding.useRef(object2);
binding.useEffect(_fun67476);
binding.useEffect(_fun67477, [isLoaded]);
const Provider = env0_5.Provider;
return (
<Provider value={value}>
{children}
</Provider>
);
}
function useCreateUserProfileAnalyticsContext({layout, userId, guildId, channelId, messageId, roleId, sourceSessionId, showGuildProfile}) { // fn#67478, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:1002, offset: 0x01c24d8f, size: 200 bytes, params: 2, frame: 23
const env0_3 = channelId;
const env0_5 = roleId;
showGuildProfile = showGuildProfile === undefined || showGuildProfile;
return env0_3.useMemo(_fun67479, [env0_3.useContext(env0_5)?.sessionId, layout, userId, guildId, channelId,
messageId, roleId, sourceSessionId, showGuildProfile]);
}
function useUserProfileAnalyticsContext() { // fn#67480, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:1375, offset: 0x01c24eda, size: 212 bytes, params: 1, frame: 17
const binding = env0_3;
const value2 = binding.useContext(env0_5);
const analyticsLocations = (importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */)().analyticsLocations;
const object2 = {context: value2};
object2.trackUserProfileAction = binding.useCallback(_fun67481, [value2, analyticsLocations]);
object2.trackUserProfileEditAction = binding.useCallback(_fun67482, [value2, analyticsLocations]);
object2.trackUserProfileEditSaved = binding.useCallback(_fun67483, [value2, analyticsLocations]);
object2.trackUserProfileWishlistAction = binding.useCallback(_fun67484, [value2, analyticsLocations]);
return object2;
}
function _fun67477() { // fn#67477, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:497, offset: 0x01c24c5a, size: 309 bytes, params: 1, frame: 22
var r6;
var analyticsLocations;
var value5;
var value6;
var value7;
var moduleValue;
var trackUserProfileAction;
var object2;
var value8;
var moduleValue2;
var maybeTrackUserProfileUiViewed;
const Date = global.Date;
let value = Date.now();
let current = env0_4.current;
if (current == null && openedAt != null) {
env0_4.current = value - openedAt;
}
if (isLoaded) {
current = env0_6.current;
analyticsLocations = current.analyticsLocations;
value5 = current.value;
value6 = environment.__proto__;
value7 = undefined;
moduleValue = require(8515) /* metro dependency 8515: UserProfileAnalyticsUtils */;
trackUserProfileAction = moduleValue.trackUserProfileAction;
object2 = {action: 'VIEW', analyticsLocations: analyticsLocations};
value8 = copyDataProperties(object2, value5, 'VIEW');
Reflect.apply(trackUserProfileAction, moduleValue, [object2]);
moduleValue2 = require(8515) /* metro dependency 8515: UserProfileAnalyticsUtils */;
maybeTrackUserProfileUiViewed = moduleValue2.maybeTrackUserProfileUiViewed;
object2 = {profileUi: 'USER_PROFILE'};
current = env0_4.current;
object2.timeToInteractiveMs = current;
if (openedAt != null) {
value -= openedAt;
r6 = value;
} else {
r6 = value7;
function UserProfileAnalyticsProvider({value, children, openedAt, fetchStartedAt, fetchEndedAt, isLoaded}) { // fn#67475, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:261, offset: 0x01c24b5f, size: 230 bytes, params: 2, frame: 18
isLoaded = !(isLoaded === undefined) && isLoaded;
const isLoaded2 = isLoaded;
const analyticsLocations = (UseAnalyticsLocations)().analyticsLocations;
const binding = isLoaded2;
const env0_4 = binding.useRef(undefined);
const object = {analyticsLocations: analyticsLocations, value: value};
const object3 = object;
const env0_6 = binding.useRef(object);
binding.useEffect(_fun67476);
binding.useEffect(_fun67477, [isLoaded]);
const Provider = object3.Provider;
return (
<Provider value={value}>
{children}
</Provider>
);
function _fun67476() { // fn#67476, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:464, offset: 0x01c24c45, size: 21 bytes, params: 1, frame: 2
env0_6.current = env0_5;
}
object2.timeToLoadMs = r6;
r6 = fetchStartedAt != null && fetchEndedAt != null ? fetchEndedAt - fetchStartedAt : value7;
object2.timeToFetchMs = r6;
object2.viewStartedAt = openedAt;
object2.fetchStartedAt = fetchStartedAt;
object2.analyticsLocations = analyticsLocations;
copyDataProperties(object2, value5, value8);
Reflect.apply(maybeTrackUserProfileUiViewed, moduleValue2, [object2]);
function _fun67477() { // fn#67477, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:497, offset: 0x01c24c5a, size: 309 bytes, params: 1, frame: 22
var r6;
var analyticsLocations;
var value5;
var value6;
var value7;
var moduleValue;
var trackUserProfileAction;
var object;
var value8;
var moduleValue2;
var maybeTrackUserProfileUiViewed;
const Date = global.Date;
let value = Date.now();
let current = env0_4.current;
if (current == null && openedAt != null) {
env0_4.current = value - openedAt;
}
if (isLoaded) {
current = env0_6.current;
analyticsLocations = current.analyticsLocations;
value5 = current.value;
value6 = environment.__proto__;
value7 = undefined;
moduleValue = require(8515) /* metro dependency 8515: UserProfileAnalyticsUtils */;
trackUserProfileAction = moduleValue.trackUserProfileAction;
object = {action: 'VIEW', analyticsLocations: analyticsLocations};
value8 = copyDataProperties(object, value5, 'VIEW');
Reflect.apply(trackUserProfileAction, moduleValue, [object]);
moduleValue2 = require(8515) /* metro dependency 8515: UserProfileAnalyticsUtils */;
maybeTrackUserProfileUiViewed = moduleValue2.maybeTrackUserProfileUiViewed;
object = {profileUi: 'USER_PROFILE'};
current = env0_4.current;
object.timeToInteractiveMs = current;
if (openedAt != null) {
value -= openedAt;
r6 = value;
} else {
r6 = value7;
}
object.timeToLoadMs = r6;
r6 = fetchStartedAt != null && fetchEndedAt != null ? fetchEndedAt - fetchStartedAt : value7;
object.timeToFetchMs = r6;
object.viewStartedAt = openedAt;
object.fetchStartedAt = fetchStartedAt;
object.analyticsLocations = analyticsLocations;
copyDataProperties(object, value5, value8);
Reflect.apply(maybeTrackUserProfileUiViewed, moduleValue2, [object]);
}
}
}
}
function _fun67479() { // fn#67479, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:1180, offset: 0x01c24e57, size: 131 bytes, params: 1, frame: 12
const object2 = {};
const value = environment.__proto__;
object2.sessionId = (require(491) /* metro dependency 491 */).v4();
object2.sourceSessionId = sourceSessionId ?? sessionId;
object2.layout = layout;
object2.userId = userId;
object2.guildId = guildId;
object2.channelId = channelId;
object2.messageId = messageId;
object2.roleId = roleId;
object2.showGuildProfile = showGuildProfile;
return object2;
}
function useCreateUserProfileAnalyticsContext({layout, userId, guildId, channelId, messageId, roleId, sourceSessionId, showGuildProfile}) { // fn#67478, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:1002, offset: 0x01c24d8f, size: 200 bytes, params: 2, frame: 23
const channelId2 = channelId;
const roleId2 = roleId;
showGuildProfile = showGuildProfile === undefined || showGuildProfile;
return channelId2.useMemo(_fun67479, [channelId2.useContext(roleId2)?.sessionId, layout, userId, guildId, channelId,
messageId, roleId, sourceSessionId, showGuildProfile]);
function _fun67479() { // fn#67479, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:1180, offset: 0x01c24e57, size: 131 bytes, params: 1, frame: 12
const object = {};
const value = environment.__proto__;
object.sessionId = (require(491) /* metro dependency 491 */).v4();
object.sourceSessionId = sourceSessionId ?? sessionId;
object.layout = layout;
object.userId = userId;
object.guildId = guildId;
object.channelId = channelId;
object.messageId = messageId;
object.roleId = roleId;
object.showGuildProfile = showGuildProfile;
return object;
}
function _fun67481(a0) { // fn#67481, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:1488, offset: 0x01c24fae, size: 85 bytes, params: 2, frame: 14
var value2;
var moduleValue;
var trackUserProfileAction;
var object2;
var analyticsLocationsBinding;
if (env0_0 != null) {
value2 = environment.__proto__;
moduleValue = require(8515) /* metro dependency 8515: UserProfileAnalyticsUtils */;
trackUserProfileAction = moduleValue.trackUserProfileAction;
object2 = {};
analyticsLocationsBinding = analyticsLocations;
object2.analyticsLocations = analyticsLocationsBinding;
copyDataProperties(object2, env0_0, analyticsLocationsBinding);
copyDataProperties(object2, a0, analyticsLocationsBinding);
Reflect.apply(trackUserProfileAction, moduleValue, [object2]);
}
}
function _fun67482(a0) { // fn#67482, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:1617, offset: 0x01c25003, size: 85 bytes, params: 2, frame: 14
var value2;
var moduleValue;
var trackUserProfileEditAction;
var object2;
var analyticsLocationsBinding;
if (env0_0 != null) {
value2 = environment.__proto__;
moduleValue = require(8515) /* metro dependency 8515: UserProfileAnalyticsUtils */;
trackUserProfileEditAction = moduleValue.trackUserProfileEditAction;
object2 = {};
analyticsLocationsBinding = analyticsLocations;
object2.analyticsLocations = analyticsLocationsBinding;
copyDataProperties(object2, env0_0, analyticsLocationsBinding);
copyDataProperties(object2, a0, analyticsLocationsBinding);
Reflect.apply(trackUserProfileEditAction, moduleValue, [object2]);
}
}
function useUserProfileAnalyticsContext() { // fn#67480, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:1375, offset: 0x01c24eda, size: 212 bytes, params: 1, frame: 17
const binding = env0_3;
const value2 = binding.useContext(env0_5);
const analyticsLocations = (UseAnalyticsLocations)().analyticsLocations;
const object = {context: value2};
object.trackUserProfileAction = binding.useCallback(_fun67481, [value2, analyticsLocations]);
object.trackUserProfileEditAction = binding.useCallback(_fun67482, [value2, analyticsLocations]);
object.trackUserProfileEditSaved = binding.useCallback(_fun67483, [value2, analyticsLocations]);
object.trackUserProfileWishlistAction = binding.useCallback(_fun67484, [value2, analyticsLocations]);
return object;
function _fun67481(a0) { // fn#67481, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:1488, offset: 0x01c24fae, size: 85 bytes, params: 2, frame: 14
var value2;
var moduleValue;
var trackUserProfileAction;
var object;
var analyticsLocationsBinding;
if (env0_0 != null) {
value2 = environment.__proto__;
moduleValue = require(8515) /* metro dependency 8515: UserProfileAnalyticsUtils */;
trackUserProfileAction = moduleValue.trackUserProfileAction;
object = {};
analyticsLocationsBinding = analyticsLocations;
object.analyticsLocations = analyticsLocationsBinding;
copyDataProperties(object, env0_0, analyticsLocationsBinding);
copyDataProperties(object, a0, analyticsLocationsBinding);
Reflect.apply(trackUserProfileAction, moduleValue, [object]);
}
}
function _fun67483(a0) { // fn#67483, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:1749, offset: 0x01c25058, size: 85 bytes, params: 2, frame: 14
var value2;
var moduleValue;
var trackUserProfileEditSaved;
var object2;
var analyticsLocationsBinding;
if (env0_0 != null) {
value2 = environment.__proto__;
moduleValue = require(8515) /* metro dependency 8515: UserProfileAnalyticsUtils */;
trackUserProfileEditSaved = moduleValue.trackUserProfileEditSaved;
object2 = {};
analyticsLocationsBinding = analyticsLocations;
object2.analyticsLocations = analyticsLocationsBinding;
copyDataProperties(object2, env0_0, analyticsLocationsBinding);
copyDataProperties(object2, a0, analyticsLocationsBinding);
Reflect.apply(trackUserProfileEditSaved, moduleValue, [object2]);
}
}
function _fun67482(a0) { // fn#67482, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:1617, offset: 0x01c25003, size: 85 bytes, params: 2, frame: 14
var value2;
var moduleValue;
var trackUserProfileEditAction;
var object;
var analyticsLocationsBinding;
if (env0_0 != null) {
value2 = environment.__proto__;
moduleValue = require(8515) /* metro dependency 8515: UserProfileAnalyticsUtils */;
trackUserProfileEditAction = moduleValue.trackUserProfileEditAction;
object = {};
analyticsLocationsBinding = analyticsLocations;
object.analyticsLocations = analyticsLocationsBinding;
copyDataProperties(object, env0_0, analyticsLocationsBinding);
copyDataProperties(object, a0, analyticsLocationsBinding);
Reflect.apply(trackUserProfileEditAction, moduleValue, [object]);
}
}
function _fun67483(a0) { // fn#67483, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:1749, offset: 0x01c25058, size: 85 bytes, params: 2, frame: 14
var value2;
var moduleValue;
var trackUserProfileEditSaved;
var object;
var analyticsLocationsBinding;
if (env0_0 != null) {
value2 = environment.__proto__;
moduleValue = require(8515) /* metro dependency 8515: UserProfileAnalyticsUtils */;
trackUserProfileEditSaved = moduleValue.trackUserProfileEditSaved;
object = {};
analyticsLocationsBinding = analyticsLocations;
object.analyticsLocations = analyticsLocationsBinding;
copyDataProperties(object, env0_0, analyticsLocationsBinding);
copyDataProperties(object, a0, analyticsLocationsBinding);
Reflect.apply(trackUserProfileEditSaved, moduleValue, [object]);
}
}
function _fun67484(a0) { // fn#67484, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:1885, offset: 0x01c250ad, size: 85 bytes, params: 2, frame: 14
var value2;
var moduleValue;
var trackUserProfileWishlistAction;
var object;
var analyticsLocationsBinding;
if (env0_0 != null) {
value2 = environment.__proto__;
moduleValue = require(8515) /* metro dependency 8515: UserProfileAnalyticsUtils */;
trackUserProfileWishlistAction = moduleValue.trackUserProfileWishlistAction;
object = {};
analyticsLocationsBinding = analyticsLocations;
object.analyticsLocations = analyticsLocationsBinding;
copyDataProperties(object, env0_0, analyticsLocationsBinding);
copyDataProperties(object, a0, analyticsLocationsBinding);
Reflect.apply(trackUserProfileWishlistAction, moduleValue, [object]);
}
}
function _fun67484(a0) { // fn#67484, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8699:1885, offset: 0x01c250ad, size: 85 bytes, params: 2, frame: 14
var value2;
var moduleValue;
var trackUserProfileWishlistAction;
var object2;
var analyticsLocationsBinding;
if (env0_0 != null) {
value2 = environment.__proto__;
moduleValue = require(8515) /* metro dependency 8515: UserProfileAnalyticsUtils */;
trackUserProfileWishlistAction = moduleValue.trackUserProfileWishlistAction;
object2 = {};
analyticsLocationsBinding = analyticsLocations;
object2.analyticsLocations = analyticsLocationsBinding;
copyDataProperties(object2, env0_0, analyticsLocationsBinding);
copyDataProperties(object2, a0, analyticsLocationsBinding);
Reflect.apply(trackUserProfileWishlistAction, moduleValue, [object2]);
}
}
global.__d(_fun67474, 8514, [31, 33, 6771, 8515, 491,
2]) /* metro module 8514, dependencies: [31, 33, 6771, 8515, 491, 2] */;
@@ -1,30 +1,36 @@
/* Metro module 8515; source: modules/user_profile/UserProfileAnalyticsUtils.tsx; dependencies: [7670, 5221, 4492, 5109, 1945, 4396, 3793, 1878, 5189, 8516, 661, 482, 1423, 8490, 683, 4863, 8517, 2] */
import AnalyticsUtils from '../../utils/AnalyticsUtils.tsx'; /* Metro dependency 683 */
import UserStore from '../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import GuildMemberStore from '../../stores/GuildMemberStore.tsx'; /* Metro dependency 1945 */
import RelationshipStore from '../../stores/RelationshipStore.tsx'; /* Metro dependency 3793 */
import PresenceStore from '../../stores/PresenceStore.tsx'; /* Metro dependency 4396 */
import ApplicationStreamingStore from '../../stores/ApplicationStreamingStore.tsx'; /* Metro dependency 4492 */
import AuthorizedAppsStore from '../../stores/AuthorizedAppsStore.tsx'; /* Metro dependency 5109 */
import UserProfileStore from './UserProfileStore.tsx'; /* Metro dependency 5189 */
import UserAffinitiesV2Store from '../user_affinities/UserAffinitiesV2Store.tsx'; /* Metro dependency 5221 */
import BadgeDirectoryStore from '../badges/BadgeDirectoryStore.tsx'; /* Metro dependency 7670 */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
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 AppAnalyticsUtilsModule from '../app_analytics/AppAnalyticsUtils.tsx'; /* Metro dependency 4863 */
import * as AuthorizedAppsStoreModule from '../../stores/AuthorizedAppsStore.tsx'; /* Metro dependency 5109 */
import * as ConstantsModule3 from './Constants.tsx'; /* Metro dependency 8516 */
import * as UserProfilePerformanceAnalyticsExperimentModule from './experiments/UserProfilePerformanceAnalyticsExperiment.tsx'; /* Metro dependency 8517 */
function _fun67485(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67485, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:6, offset: 0x01c25102, size: 535 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const badgeDirectoryStore = importDefault(7670) /* metro dependency 7670: BadgeDirectoryStore */;
const userAffinitiesV2Store = importDefault(5221) /* metro dependency 5221: UserAffinitiesV2Store */;
const applicationStreamingStore = importDefault(4492) /* metro dependency 4492: ApplicationStreamingStore */;
const authorizedAppsStore = importDefault(5109) /* metro dependency 5109: AuthorizedAppsStore */;
const env0_7 = (require(5109) /* metro dependency 5109: AuthorizedAppsStore */).FetchState;
const guildMemberStore = importDefault(1945) /* metro dependency 1945: GuildMemberStore */;
const presenceStore = importDefault(4396) /* metro dependency 4396: PresenceStore */;
const relationshipStore = importDefault(3793) /* metro dependency 3793: RelationshipStore */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const userProfileStore = importDefault(5189) /* metro dependency 5189: UserProfileStore */;
const env0_13 = (require(8516) /* metro dependency 8516: Constants */).TrackUserProfileProperties;
const constantsModule = require(661) /* metro dependency 661: Constants */;
const constantsModule = ConstantsModule2;
const env0_14 = constantsModule.ActivityTypes;
const env0_15 = constantsModule.AnalyticEvents;
const env0_16 = (require(482) /* metro dependency 482: Constants */).StatusTypes;
const closure = getActivityType;
const closure2 = getTrackUserRelationshipProperties;
const closure3 = trackUserProfileAction;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/UserProfileAnalyticsUtils.tsx');
exports.getActivityType = closure;
exports.getTrackUserRelationshipProperties = closure2;
exports.trackUserProfileAction = closure3;
const getActivityType2 = getActivityType;
const getTrackUserRelationshipProperties2 = getTrackUserRelationshipProperties;
const trackUserProfileAction2 = trackUserProfileAction;
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/UserProfileAnalyticsUtils.tsx');
exports.getActivityType = getActivityType2;
exports.getTrackUserRelationshipProperties = getTrackUserRelationshipProperties2;
exports.trackUserProfileAction = trackUserProfileAction2;
exports.maybeTrackUserProfileUiViewed = maybeTrackUserProfileUiViewed;
exports.trackUserProfileActivityJoined = trackUserProfileActivityJoined;
exports.trackUserProfileActivityAction = trackUserProfileActivityAction;
@@ -33,465 +39,462 @@ function _fun67485(global, require, importDefault, importAll, module, exports, d
exports.trackUserProfileEditAction = trackUserProfileEditAction;
exports.trackUserProfileEditSaved = trackUserProfileEditSaved;
exports.trackUserProfileWishlistAction = trackUserProfileWishlistAction;
}
function getProfileProperties({user, userProfile, guildMember, guildMemberProfile}) { // fn#67486, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:336, offset: 0x01c25319, size: 581 bytes, params: 2, frame: 19
var moduleValue;
var moduleValue2;
const r3 = userProfile ?? guildMemberProfile;
const items2 = [];
let Boolean = global.Boolean;
if (Boolean(guildMember?.nick)) {
items2.push(TrackUserProfileProperties.NICKNAME);
}
Boolean = global.Boolean;
if (Boolean(r3?.pronouns)) {
items2.push(TrackUserProfileProperties.PRONOUNS);
}
Boolean = global.Boolean;
if (Boolean(user?.avatar)) {
moduleValue = require(1423) /* metro dependency 1423: AvatarUtils */;
items2.push(moduleValue.isAnimatedIconHash(user?.avatar) ? TrackUserProfileProperties.ANIMATED_AVATAR : TrackUserProfileProperties.AVATAR);
}
Boolean = global.Boolean;
if (Boolean(r3?.banner)) {
moduleValue2 = require(1423) /* metro dependency 1423: AvatarUtils */;
items2.push(moduleValue2.isAnimatedIconHash(r3?.banner) ? TrackUserProfileProperties.ANIMATED_BANNER : TrackUserProfileProperties.BANNER);
}
Boolean = global.Boolean;
if (Boolean(r3?.bio)) {
items2.push(TrackUserProfileProperties.BIO);
}
if (r3?.themeColors != null && r3.themeColors.find(function(a0) {
return a0 !== null;
}) !== undefined) {
items2.push(TrackUserProfileProperties.THEME);
}
if (user?.avatarDecoration != null) {
items2.push(TrackUserProfileProperties.AVATAR_DECORATION);
}
if (r3?.profileEffect != null) {
items2.push(TrackUserProfileProperties.PROFILE_EFFECT);
}
return items2;
}
function getProfileProperties({user, userProfile, guildMember, guildMemberProfile}) { // fn#67486, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:336, offset: 0x01c25319, size: 581 bytes, params: 2, frame: 19
var moduleValue;
var moduleValue2;
const r3 = userProfile ?? guildMemberProfile;
const items2 = [];
let Boolean = global.Boolean;
if (Boolean(guildMember?.nick)) {
items2.push(TrackUserProfileProperties.NICKNAME);
function getUserStatus(a0) { // fn#67488, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:1096, offset: 0x01c2555e, size: 128 bytes, params: 2, frame: 14
const presenceStoreBinding = PresenceStore;
const status = presenceStoreBinding.getStatus(a0);
const isMobileOnline2 = presenceStoreBinding.isMobileOnline(a0);
const ONLINE = StatusTypes.ONLINE;
return status !== ONLINE ? status !== StatusTypes.ONLINE ? status : '' + status + '-desktop' : isMobileOnline2 ? '' + status + '-mobile' : status !== StatusTypes.ONLINE ? status : '' + status + '-desktop';
}
Boolean = global.Boolean;
if (Boolean(r3?.pronouns)) {
items2.push(TrackUserProfileProperties.PRONOUNS);
}
Boolean = global.Boolean;
if (Boolean(user?.avatar)) {
moduleValue = require(1423) /* metro dependency 1423: AvatarUtils */;
items2.push(moduleValue.isAnimatedIconHash(user?.avatar) ? TrackUserProfileProperties.ANIMATED_AVATAR : TrackUserProfileProperties.AVATAR);
}
Boolean = global.Boolean;
if (Boolean(r3?.banner)) {
moduleValue2 = require(1423) /* metro dependency 1423: AvatarUtils */;
items2.push(moduleValue2.isAnimatedIconHash(r3?.banner) ? TrackUserProfileProperties.ANIMATED_BANNER : TrackUserProfileProperties.BANNER);
}
Boolean = global.Boolean;
if (Boolean(r3?.bio)) {
items2.push(TrackUserProfileProperties.BIO);
}
if (r3?.themeColors != null && r3.themeColors.find(function(a0) {
return a0 !== null;
}) !== undefined) {
items2.push(TrackUserProfileProperties.THEME);
}
if (user?.avatarDecoration != null) {
items2.push(TrackUserProfileProperties.AVATAR_DECORATION);
}
if (r3?.profileEffect != null) {
items2.push(TrackUserProfileProperties.PROFILE_EFFECT);
}
return items2;
}
function getUserStatus(a0) { // fn#67488, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:1096, offset: 0x01c2555e, size: 128 bytes, params: 2, frame: 14
const status = PresenceStore.getStatus(a0);
const isMobileOnline2 = PresenceStore.isMobileOnline(a0);
const ONLINE = StatusTypes.ONLINE;
return status !== ONLINE ? status !== StatusTypes.ONLINE ? status : '' + status + '-desktop' : isMobileOnline2 ? '' + status + '-mobile' : status !== StatusTypes.ONLINE ? status : '' + status + '-desktop';
}
function getActivityType(a0) { // fn#67489, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:1227, offset: 0x01c255de, size: 81 bytes, params: 2, frame: 15
var r1;
var r0;
var value2;
var Object;
var value4;
var value5;
const value = a0;
if (value == null) {
r0 = value;
} else {
value2 = 'VOICE';
if (value2 === value) {
r1 = value2;
function getActivityType(a0) { // fn#67489, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:1227, offset: 0x01c255de, size: 81 bytes, params: 2, frame: 15
var r1;
var r0;
var value2;
var Object;
var value4;
var value5;
const value = a0;
if (value == null) {
r0 = value;
} else {
Object = global.Object;
value4 = Object.keys(ActivityTypes);
Object = global.Object;
value5 = Object.values(ActivityTypes);
r1 = value4[value5.indexOf(value)];
value2 = 'VOICE';
if (value2 === value) {
r1 = value2;
} else {
Object = global.Object;
value4 = Object.keys(ActivityTypes);
Object = global.Object;
value5 = Object.values(ActivityTypes);
r1 = value4[value5.indexOf(value)];
}
r0 = r1;
}
r0 = r1;
return r0;
}
return r0;
}
function getTrackUserProfileProperties({layout, userId, guildId, sessionId, sourceSessionId, showGuildProfile}) { // fn#67490, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:1334, offset: 0x01c2562f, size: 572 bytes, params: 2, frame: 24
var r6;
var badges;
const value = undefined;
showGuildProfile = showGuildProfile === value || showGuildProfile;
const user = UserStore.getUser(userId);
if (user == null) {
return {};
function getTrackUserProfileProperties({layout, userId, guildId, sessionId, sourceSessionId, showGuildProfile}) { // fn#67490, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:1334, offset: 0x01c2562f, size: 572 bytes, params: 2, frame: 24
var r6;
var badges;
const value = undefined;
showGuildProfile = showGuildProfile === value || showGuildProfile;
const user = UserStore.getUser(userId);
if (user == null) {
return {};
}
const displayProfile = (require(8490) /* metro dependency 8490: useDisplayProfile */).getDisplayProfile(user == null ? value : user.id,
showGuildProfile ? guildId : value);
const r9 = showGuildProfile && guildId != null ? GuildMemberStore.getMember(guildId,
user == null ? value : user.id) : null;
const object = {profile_layout: layout, profile_session_id: sessionId, source_profile_session_id: sourceSessionId};
object.profile_properties = getProfileProperties({user: user,
userProfile: displayProfile == null ? value : displayProfile._userProfile});
object.guild_profile_properties = getProfileProperties({guildMember: r9,
guildMemberProfile: displayProfile == null ? value : displayProfile._guildMemberProfile});
const presenceStoreBinding = PresenceStore;
const getActivities = presenceStoreBinding.getActivities;
object.profile_activity_types = Reflect.apply(getActivities, presenceStoreBinding, [user.id]).map(function(a0) {
return a0.type;
}).filter(function(a0) {
return a0 !== undefined;
});
if (displayProfile == null) {
r6 = value;
} else {
badges = displayProfile.getBadges();
r6 = badges == null ? value : badges.map(function(a0) {
return a0.id;
}).filter(_fun67494);
}
r6 = r6 ?? [];
object.profile_badges = r6;
const avatarDecoration = user.avatarDecoration;
object.avatar_decoration_sku_id = avatarDecoration == null ? value : avatarDecoration.skuId;
object.profile_effect_sku_id = displayProfile == null || displayProfile.profileEffect == null ? value : displayProfile.profileEffect.skuId;
object.user_status = getUserStatus(user.id);
object.is_guild_profile = (displayProfile == null ? value : displayProfile.guildId) != null;
object.is_bot_profile = user.bot;
const r2 = displayProfile == null ? value : displayProfile.private;
object.is_private_to_viewer = r2 != null && r2;
return object;
}
const displayProfile = (require(8490) /* metro dependency 8490: useDisplayProfile */).getDisplayProfile(user == null ? value : user.id,
showGuildProfile ? guildId : value);
const r9 = showGuildProfile && guildId != null ? GuildMemberStore.getMember(guildId,
user == null ? value : user.id) : null;
const object2 = {profile_layout: layout, profile_session_id: sessionId, source_profile_session_id: sourceSessionId};
object2.profile_properties = getProfileProperties({user: user,
userProfile: displayProfile == null ? value : displayProfile._userProfile});
object2.guild_profile_properties = getProfileProperties({guildMember: r9,
guildMemberProfile: displayProfile == null ? value : displayProfile._guildMemberProfile});
const getActivities = PresenceStore.getActivities;
object2.profile_activity_types = Reflect.apply(getActivities, PresenceStore, [user.id]).map(function(a0) {
return a0.type;
}).filter(function(a0) {
return a0 !== undefined;
});
if (displayProfile == null) {
r6 = value;
} else {
badges = displayProfile.getBadges();
r6 = badges == null ? value : badges.map(function(a0) {
function getTrackUserRelationshipProperties({userId}) { // fn#67495, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:2424, offset: 0x01c2586b, size: 182 bytes, params: 2, frame: 15
if (userId == null) {
return {};
}
const userAffinity = UserAffinitiesV2Store.getUserAffinity(userId);
const object = {related_user_id: userId};
const relationshipStoreBinding = RelationshipStore;
object.relationship_type = relationshipStoreBinding.getRelationshipType(userId);
object.related_since = relationshipStoreBinding.getSince(userId);
const userProfileStoreBinding = UserProfileStore;
object.num_mutual_friends = userProfileStoreBinding.getMutualFriendsCount(userId);
object.num_mutual_guilds = userProfileStoreBinding.getMutualGuilds(userId)?.length;
object.communication_probability = userAffinity?.communicationProbability;
object.communication_rank = userAffinity?.communicationRank;
return object;
}
function getTrackUserProfileApplicationProperties(a0) { // fn#67496, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:2864, offset: 0x01c25921, size: 83 bytes, params: 2, frame: 15
const value = null;
return {application_id: a0,
application_linked: value != a0 ? AuthorizedAppsStore.getFetchStateForApplication(a0) !== FetchState.FETCHED ? value : value != AuthorizedAppsStore.getNewestTokenForApplication(a0) : value};
}
function trackUserProfileAction(a0) { // fn#67497, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:3029, offset: 0x01c25974, size: 273 bytes, params: 2, frame: 30
const guildId = a0.guildId;
const channelId = a0.channelId;
const messageId = a0.messageId;
const roleId = a0.roleId;
const widgetType = a0.widgetType;
const analyticsLocations = a0.analyticsLocations;
const action = a0.action;
const section = a0.section;
const applicationId = a0.applicationId;
const defaultImport = AnalyticsUtils;
const track = defaultImport.track;
const USER_PROFILE_ACTION = AnalyticEvents.USER_PROFILE_ACTION;
const object = {};
copyDataProperties(object, AppAnalyticsUtilsModule.collectGuildAnalyticsMetadata(guildId), guildId);
copyDataProperties(object, AppAnalyticsUtilsModule.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object, getTrackUserProfileProperties(a0), guildId);
copyDataProperties(object, getTrackUserRelationshipProperties(a0), guildId);
copyDataProperties(object, getTrackUserProfileApplicationProperties(applicationId), guildId);
object['location_stack'] = analyticsLocations;
object['profile_action'] = action;
object['profile_section'] = section;
object['source_message_id'] = messageId;
object['source_role_id'] = roleId;
object['widget_type'] = widgetType;
Reflect.apply(track, defaultImport, [USER_PROFILE_ACTION, object]);
}
function maybeTrackUserProfileUiViewed(a0) { // fn#67498, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:3804, offset: 0x01c25a85, size: 380 bytes, params: 2, frame: 30
var r1;
var guildId;
var channelId;
var analyticsLocations;
var profileUi;
var viewStartedAt;
var fetchStartedAt;
var timeToInteractiveMs;
var timeToLoadMs;
var timeToFetchMs;
var value2;
var defaultImport;
var track;
var USER_PROFILE_UI_VIEWED;
var object;
var moduleValue2;
var moduleValue3;
if (UserProfilePerformanceAnalyticsExperimentModule.isUserProfilePerformanceAnalyticsEnabled('UserProfileAnalyticsUtils')) {
guildId = a0.guildId;
channelId = a0.channelId;
analyticsLocations = a0.analyticsLocations;
profileUi = a0.profileUi;
viewStartedAt = a0.viewStartedAt;
fetchStartedAt = a0.fetchStartedAt;
timeToInteractiveMs = a0.timeToInteractiveMs;
timeToLoadMs = a0.timeToLoadMs;
timeToFetchMs = a0.timeToFetchMs;
value2 = 0;
r1 = timeToInteractiveMs ?? value2;
r1 = r1 <= value2 || (timeToLoadMs ?? value2) <= value2;
r1 = !r1 ? (timeToFetchMs ?? value2) <= value2 : r1;
if (!r1) {
defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
track = defaultImport.track;
USER_PROFILE_UI_VIEWED = AnalyticEvents.USER_PROFILE_UI_VIEWED;
object = {};
moduleValue2 = require(4863) /* metro dependency 4863: AppAnalyticsUtils */;
copyDataProperties(object, moduleValue2.collectGuildAnalyticsMetadata(guildId), guildId);
moduleValue3 = require(4863) /* metro dependency 4863: AppAnalyticsUtils */;
copyDataProperties(object, moduleValue3.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object, getTrackUserProfileProperties(a0), guildId);
copyDataProperties(object, getTrackUserRelationshipProperties(a0), guildId);
object['location_stack'] = analyticsLocations;
object['profile_ui'] = profileUi;
object['view_started_at'] = viewStartedAt;
object['fetch_started_at'] = fetchStartedAt;
object['time_to_interactive_ms'] = timeToInteractiveMs;
object['time_to_load_ms'] = timeToLoadMs;
object['time_to_fetch_ms'] = timeToFetchMs;
Reflect.apply(track, defaultImport, [USER_PROFILE_UI_VIEWED, object]);
}
}
}
function trackUserProfileActivityJoined(a0) { // fn#67499, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:4490, offset: 0x01c25c01, size: 288 bytes, params: 2, frame: 30
const guildId = a0.guildId;
const channelId = a0.channelId;
const analyticsLocations = a0.analyticsLocations;
const activityType = a0.activityType;
const activityName = a0.activityName;
const activityPlatform = a0.activityPlatform;
const activitySessionId = a0.activitySessionId;
const applicationId = a0.applicationId;
const voiceChannelId = a0.voiceChannelId;
const defaultImport = AnalyticsUtils;
const track = defaultImport.track;
const USER_PROFILE_ACTIVITY_JOINED = AnalyticEvents.USER_PROFILE_ACTIVITY_JOINED;
const object = {};
copyDataProperties(object, AppAnalyticsUtilsModule.collectGuildAnalyticsMetadata(guildId), guildId);
copyDataProperties(object, AppAnalyticsUtilsModule.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object, getTrackUserProfileProperties(a0), guildId);
copyDataProperties(object, getTrackUserRelationshipProperties(a0), guildId);
object['location_stack'] = analyticsLocations;
object['activity_type'] = voiceChannelId != null ? 'VOICE' : getActivityType(activityType);
object['activity_name'] = activityName;
object['activity_platform'] = activityPlatform;
object['activity_session_id'] = activitySessionId;
object['application_id'] = applicationId;
object['voice_channel_id'] = voiceChannelId;
Reflect.apply(track, defaultImport, [USER_PROFILE_ACTIVITY_JOINED, object]);
}
function trackUserProfileActivityAction(a0) { // fn#67500, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:5079, offset: 0x01c25d21, size: 531 bytes, params: 2, frame: 32
const guildId = a0.guildId;
const channelId = a0.channelId;
const analyticsLocations = a0.analyticsLocations;
const action = a0.action;
const display = a0.display;
const activity = a0.activity;
const stream = a0.stream;
const entry = a0.entry;
const outbox = a0.outbox;
const voiceChannelId = a0.voiceChannelId;
const value2 = undefined;
const defaultImport = AnalyticsUtils;
const track = defaultImport.track;
const USER_PROFILE_ACTIVITY_ACTION = AnalyticEvents.USER_PROFILE_ACTIVITY_ACTION;
const object = {};
copyDataProperties(object, AppAnalyticsUtilsModule.collectGuildAnalyticsMetadata(guildId), guildId);
copyDataProperties(object, AppAnalyticsUtilsModule.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object, getTrackUserProfileProperties(a0), guildId);
copyDataProperties(object, getTrackUserRelationshipProperties(a0), guildId);
object['location_stack'] = analyticsLocations;
object['activity_action'] = action;
object['activity_display'] = display;
object['activity_type'] = getActivityType(stream != null ? ActivityTypes.STREAMING : activity == null ? value2 : activity.type);
object['activity_name'] = activity == null ? value2 : activity.name;
object['activity_platform'] = activity == null ? value2 : activity.platform;
object['activity_session_id'] = activity == null ? value2 : activity.session_id;
object['activity_application_id'] = activity == null ? value2 : activity.application_id;
object['item_id'] = entry == null ? value2 : entry.id;
object['author_id_v2'] = entry == null ? value2 : entry.author_id;
object['item_ids'] = outbox == null ? value2 : outbox.entries.map(function(a0) {
return a0.id;
}).filter(_fun67494);
});
object['author_ids_v2'] = outbox == null ? value2 : outbox.entries.map(function(a0) {
return a0.author_id;
});
object['voice_channel_id'] = voiceChannelId;
Reflect.apply(track, defaultImport, [USER_PROFILE_ACTIVITY_ACTION, object]);
return value2;
}
r6 = r6 ?? [];
object2.profile_badges = r6;
const avatarDecoration = user.avatarDecoration;
object2.avatar_decoration_sku_id = avatarDecoration == null ? value : avatarDecoration.skuId;
object2.profile_effect_sku_id = displayProfile == null || displayProfile.profileEffect == null ? value : displayProfile.profileEffect.skuId;
object2.user_status = getUserStatus(user.id);
object2.is_guild_profile = (displayProfile == null ? value : displayProfile.guildId) != null;
object2.is_bot_profile = user.bot;
const r2 = displayProfile == null ? value : displayProfile.private;
object2.is_private_to_viewer = r2 != null && r2;
return object2;
}
function getTrackUserRelationshipProperties({userId}) { // fn#67495, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:2424, offset: 0x01c2586b, size: 182 bytes, params: 2, frame: 15
if (userId == null) {
return {};
}
const userAffinity = UserAffinitiesV2Store.getUserAffinity(userId);
const object2 = {related_user_id: userId};
object2.relationship_type = RelationshipStore.getRelationshipType(userId);
object2.related_since = RelationshipStore.getSince(userId);
object2.num_mutual_friends = UserProfileStore.getMutualFriendsCount(userId);
object2.num_mutual_guilds = UserProfileStore.getMutualGuilds(userId)?.length;
object2.communication_probability = userAffinity?.communicationProbability;
object2.communication_rank = userAffinity?.communicationRank;
return object2;
}
function getTrackUserProfileApplicationProperties(a0) { // fn#67496, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:2864, offset: 0x01c25921, size: 83 bytes, params: 2, frame: 15
const value = null;
return {application_id: a0,
application_linked: value != a0 ? AuthorizedAppsStore.getFetchStateForApplication(a0) !== FetchState.FETCHED ? value : value != AuthorizedAppsStore.getNewestTokenForApplication(a0) : value};
}
function trackUserProfileAction(a0) { // fn#67497, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:3029, offset: 0x01c25974, size: 273 bytes, params: 2, frame: 30
const guildId = a0.guildId;
const channelId = a0.channelId;
const messageId = a0.messageId;
const roleId = a0.roleId;
const widgetType = a0.widgetType;
const analyticsLocations = a0.analyticsLocations;
const action = a0.action;
const section = a0.section;
const applicationId = a0.applicationId;
const defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
const track = defaultImport.track;
const USER_PROFILE_ACTION = AnalyticEvents.USER_PROFILE_ACTION;
const object2 = {};
const appAnalyticsUtilsModule = require(4863) /* metro dependency 4863: AppAnalyticsUtils */;
copyDataProperties(object2, appAnalyticsUtilsModule.collectGuildAnalyticsMetadata(guildId), guildId);
const moduleValue2 = appAnalyticsUtilsModule;
copyDataProperties(object2, moduleValue2.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object2, getTrackUserProfileProperties(a0), guildId);
copyDataProperties(object2, getTrackUserRelationshipProperties(a0), guildId);
copyDataProperties(object2, getTrackUserProfileApplicationProperties(applicationId), guildId);
object2['location_stack'] = analyticsLocations;
object2['profile_action'] = action;
object2['profile_section'] = section;
object2['source_message_id'] = messageId;
object2['source_role_id'] = roleId;
object2['widget_type'] = widgetType;
Reflect.apply(track, defaultImport, [USER_PROFILE_ACTION, object2]);
}
function maybeTrackUserProfileUiViewed(a0) { // fn#67498, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:3804, offset: 0x01c25a85, size: 380 bytes, params: 2, frame: 30
var r1;
var guildId;
var channelId;
var analyticsLocations;
var profileUi;
var viewStartedAt;
var fetchStartedAt;
var timeToInteractiveMs;
var timeToLoadMs;
var timeToFetchMs;
var value2;
var defaultImport;
var track;
var USER_PROFILE_UI_VIEWED;
var object2;
var moduleValue2;
var moduleValue3;
const userProfilePerformanceAnalyticsExperimentModule = require(8517) /* metro dependency 8517: UserProfilePerformanceAnalyticsExperiment */;
if (userProfilePerformanceAnalyticsExperimentModule.isUserProfilePerformanceAnalyticsEnabled('UserProfileAnalyticsUtils')) {
guildId = a0.guildId;
channelId = a0.channelId;
analyticsLocations = a0.analyticsLocations;
profileUi = a0.profileUi;
viewStartedAt = a0.viewStartedAt;
fetchStartedAt = a0.fetchStartedAt;
timeToInteractiveMs = a0.timeToInteractiveMs;
timeToLoadMs = a0.timeToLoadMs;
timeToFetchMs = a0.timeToFetchMs;
value2 = 0;
r1 = timeToInteractiveMs ?? value2;
r1 = r1 <= value2 || (timeToLoadMs ?? value2) <= value2;
r1 = !r1 ? (timeToFetchMs ?? value2) <= value2 : r1;
if (!r1) {
defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
track = defaultImport.track;
USER_PROFILE_UI_VIEWED = AnalyticEvents.USER_PROFILE_UI_VIEWED;
object2 = {};
moduleValue2 = require(4863) /* metro dependency 4863: AppAnalyticsUtils */;
copyDataProperties(object2, moduleValue2.collectGuildAnalyticsMetadata(guildId), guildId);
moduleValue3 = require(4863) /* metro dependency 4863: AppAnalyticsUtils */;
copyDataProperties(object2, moduleValue3.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object2, getTrackUserProfileProperties(a0), guildId);
copyDataProperties(object2, getTrackUserRelationshipProperties(a0), guildId);
object2['location_stack'] = analyticsLocations;
object2['profile_ui'] = profileUi;
object2['view_started_at'] = viewStartedAt;
object2['fetch_started_at'] = fetchStartedAt;
object2['time_to_interactive_ms'] = timeToInteractiveMs;
object2['time_to_load_ms'] = timeToLoadMs;
object2['time_to_fetch_ms'] = timeToFetchMs;
Reflect.apply(track, defaultImport, [USER_PROFILE_UI_VIEWED, object2]);
}
}
}
function trackUserProfileActivityJoined(a0) { // fn#67499, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:4490, offset: 0x01c25c01, size: 288 bytes, params: 2, frame: 30
const guildId = a0.guildId;
const channelId = a0.channelId;
const analyticsLocations = a0.analyticsLocations;
const activityType = a0.activityType;
const activityName = a0.activityName;
const activityPlatform = a0.activityPlatform;
const activitySessionId = a0.activitySessionId;
const applicationId = a0.applicationId;
const voiceChannelId = a0.voiceChannelId;
const defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
const track = defaultImport.track;
const USER_PROFILE_ACTIVITY_JOINED = AnalyticEvents.USER_PROFILE_ACTIVITY_JOINED;
const object2 = {};
const appAnalyticsUtilsModule = require(4863) /* metro dependency 4863: AppAnalyticsUtils */;
copyDataProperties(object2, appAnalyticsUtilsModule.collectGuildAnalyticsMetadata(guildId), guildId);
const moduleValue2 = appAnalyticsUtilsModule;
copyDataProperties(object2, moduleValue2.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object2, getTrackUserProfileProperties(a0), guildId);
copyDataProperties(object2, getTrackUserRelationshipProperties(a0), guildId);
object2['location_stack'] = analyticsLocations;
object2['activity_type'] = voiceChannelId != null ? 'VOICE' : getActivityType(activityType);
object2['activity_name'] = activityName;
object2['activity_platform'] = activityPlatform;
object2['activity_session_id'] = activitySessionId;
object2['application_id'] = applicationId;
object2['voice_channel_id'] = voiceChannelId;
Reflect.apply(track, defaultImport, [USER_PROFILE_ACTIVITY_JOINED, object2]);
}
function trackUserProfileActivityAction(a0) { // fn#67500, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:5079, offset: 0x01c25d21, size: 531 bytes, params: 2, frame: 32
const guildId = a0.guildId;
const channelId = a0.channelId;
const analyticsLocations = a0.analyticsLocations;
const action = a0.action;
const display = a0.display;
const activity = a0.activity;
const stream = a0.stream;
const entry = a0.entry;
const outbox = a0.outbox;
const voiceChannelId = a0.voiceChannelId;
const value2 = undefined;
const defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
const track = defaultImport.track;
const USER_PROFILE_ACTIVITY_ACTION = AnalyticEvents.USER_PROFILE_ACTIVITY_ACTION;
const object2 = {};
const appAnalyticsUtilsModule = require(4863) /* metro dependency 4863: AppAnalyticsUtils */;
copyDataProperties(object2, appAnalyticsUtilsModule.collectGuildAnalyticsMetadata(guildId), guildId);
const moduleValue2 = appAnalyticsUtilsModule;
copyDataProperties(object2, moduleValue2.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object2, getTrackUserProfileProperties(a0), guildId);
copyDataProperties(object2, getTrackUserRelationshipProperties(a0), guildId);
object2['location_stack'] = analyticsLocations;
object2['activity_action'] = action;
object2['activity_display'] = display;
object2['activity_type'] = getActivityType(stream != null ? ActivityTypes.STREAMING : activity == null ? value2 : activity.type);
object2['activity_name'] = activity == null ? value2 : activity.name;
object2['activity_platform'] = activity == null ? value2 : activity.platform;
object2['activity_session_id'] = activity == null ? value2 : activity.session_id;
object2['activity_application_id'] = activity == null ? value2 : activity.application_id;
object2['item_id'] = entry == null ? value2 : entry.id;
object2['author_id_v2'] = entry == null ? value2 : entry.author_id;
object2['item_ids'] = outbox == null ? value2 : outbox.entries.map(function(a0) {
return a0.id;
});
object2['author_ids_v2'] = outbox == null ? value2 : outbox.entries.map(function(a0) {
return a0.author_id;
});
object2['voice_channel_id'] = voiceChannelId;
Reflect.apply(track, defaultImport, [USER_PROFILE_ACTIVITY_ACTION, object2]);
return value2;
}
function trackUserProfileBadgeAction(a0) { // fn#67503, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:5994, offset: 0x01c25f3f, size: 292 bytes, params: 2, frame: 28
var r7;
var badgeById;
const guildId = a0.guildId;
const channelId = a0.channelId;
const analyticsLocations = a0.analyticsLocations;
const badgeId = a0.badgeId;
const badgeAction = a0.badgeAction;
const position = a0.position;
const userId = a0.userId;
const value = undefined;
if (badgeId != null) {
if (userId != null) {
badgeById = BadgeDirectoryStore.getBadgeById(badgeId, userId);
r7 = badgeById == null ? value : badgeById.current_tier;
function trackUserProfileBadgeAction(a0) { // fn#67503, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:5994, offset: 0x01c25f3f, size: 292 bytes, params: 2, frame: 28
var r7;
var badgeById;
const guildId = a0.guildId;
const channelId = a0.channelId;
const analyticsLocations = a0.analyticsLocations;
const badgeId = a0.badgeId;
const badgeAction = a0.badgeAction;
const position = a0.position;
const userId = a0.userId;
const value = undefined;
if (badgeId != null) {
if (userId != null) {
badgeById = BadgeDirectoryStore.getBadgeById(badgeId, userId);
r7 = badgeById == null ? value : badgeById.current_tier;
} else {
r7 = value;
}
} else {
r7 = value;
}
} else {
r7 = value;
const defaultImport = AnalyticsUtils;
const track = defaultImport.track;
const USER_PROFILE_BADGE_ACTION = AnalyticEvents.USER_PROFILE_BADGE_ACTION;
const object = {};
copyDataProperties(object, AppAnalyticsUtilsModule.collectGuildAnalyticsMetadata(guildId), guildId);
copyDataProperties(object, AppAnalyticsUtilsModule.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object, getTrackUserProfileProperties(a0), guildId);
copyDataProperties(object, getTrackUserRelationshipProperties(a0), guildId);
object['location_stack'] = analyticsLocations;
object['badge_action'] = badgeAction;
object['badge_id'] = badgeId;
object['badge_tier'] = r7;
object['position'] = position;
Reflect.apply(track, defaultImport, [USER_PROFILE_BADGE_ACTION, object]);
return value;
}
const defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
const track = defaultImport.track;
const USER_PROFILE_BADGE_ACTION = AnalyticEvents.USER_PROFILE_BADGE_ACTION;
const object2 = {};
const appAnalyticsUtilsModule = require(4863) /* metro dependency 4863: AppAnalyticsUtils */;
copyDataProperties(object2, appAnalyticsUtilsModule.collectGuildAnalyticsMetadata(guildId), guildId);
const moduleValue2 = appAnalyticsUtilsModule;
copyDataProperties(object2, moduleValue2.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object2, getTrackUserProfileProperties(a0), guildId);
copyDataProperties(object2, getTrackUserRelationshipProperties(a0), guildId);
object2['location_stack'] = analyticsLocations;
object2['badge_action'] = badgeAction;
object2['badge_id'] = badgeId;
object2['badge_tier'] = r7;
object2['position'] = position;
Reflect.apply(track, defaultImport, [USER_PROFILE_BADGE_ACTION, object2]);
return value;
function trackDmProfileToggled({displayProfile, isProfileOpen}) { // fn#67504, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:6496, offset: 0x01c26063, size: 317 bytes, params: 2, frame: 23
const userId = displayProfile?.userId;
const r12 = userId != null ? PresenceStore.findActivity(userId, _fun67505) : null;
const defaultImport = AnalyticsUtils;
const track = defaultImport.track;
const DM_PROFILE_TOGGLED = AnalyticEvents.DM_PROFILE_TOGGLED;
const object = {is_profile_open: isProfileOpen};
const Boolean = global.Boolean;
object.has_images = Boolean((r12 == null || r12.assets == null ? undefined : r12.assets.large_image) ?? (r12 == null || r12.assets == null ? undefined : r12.assets.small_image));
object.is_friend = RelationshipStore.isFriend(userId);
object.viewed_profile_user_id = userId;
object.profile_has_nitro_customization = displayProfile?.hasPremiumCustomization();
object.profile_has_theme_color_customized = displayProfile?.hasThemeColors();
object.profile_has_theme_animation = displayProfile?.popoutAnimationParticleType != null;
Reflect.apply(track, defaultImport, [DM_PROFILE_TOGGLED, object]);
function _fun67505({type}) { // fn#67505, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:6599, offset: 0x01c261a0, size: 73 bytes, params: 2, frame: 13
const value = environment.__proto__;
const applicationStreamingStoreBinding = ApplicationStreamingStore;
const getAnyStreamForUser = applicationStreamingStoreBinding.getAnyStreamForUser;
return Reflect.apply(getAnyStreamForUser, applicationStreamingStoreBinding,
[userId]) != null ? type === ActivityTypes.PLAYING : type !== ActivityTypes.CUSTOM_STATUS;
}
}
function trackUserProfileEditAction(a0) { // fn#67506, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:7174, offset: 0x01c261e9, size: 299 bytes, params: 2, frame: 30
const guildId = a0.guildId;
const channelId = a0.channelId;
const analyticsLocations = a0.analyticsLocations;
const action = a0.action;
const widgetEdited = a0.widgetEdited;
const gameId = a0.gameId;
const numResults = a0.numResults;
const numCharacters = a0.numCharacters;
const applicationId = a0.applicationId;
const trackUserProfileActionBinding = trackUserProfileAction;
let object = {};
copyDataProperties(object, a0, guildId);
object['action'] = action;
trackUserProfileActionBinding(object);
const defaultImport = AnalyticsUtils;
const track = defaultImport.track;
const USER_PROFILE_EDIT_ACTION = AnalyticEvents.USER_PROFILE_EDIT_ACTION;
object = {};
copyDataProperties(object, AppAnalyticsUtilsModule.collectGuildAnalyticsMetadata(guildId), guildId);
copyDataProperties(object, AppAnalyticsUtilsModule.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object, getTrackUserProfileProperties(a0), guildId);
copyDataProperties(object, getTrackUserProfileApplicationProperties(applicationId), guildId);
object['location_stack'] = analyticsLocations;
object['edit_action'] = action;
object['widget_edited'] = widgetEdited;
object['game_id'] = gameId;
object['num_results'] = numResults;
object['num_characters'] = numCharacters;
object['application_id'] = applicationId;
Reflect.apply(track, defaultImport, [USER_PROFILE_EDIT_ACTION, object]);
}
function trackUserProfileEditSaved(a0) { // fn#67507, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:7721, offset: 0x01c26314, size: 276 bytes, params: 2, frame: 29
const guildId = a0.guildId;
const channelId = a0.channelId;
const analyticsLocations = a0.analyticsLocations;
const widgetEdited = a0.widgetEdited;
const gameIds = a0.gameIds;
const tags = a0.tags;
const numCharactersCommentary = a0.numCharactersCommentary;
const isWidgetRemoved = a0.isWidgetRemoved;
const trackUserProfileActionBinding = trackUserProfileAction;
let object = {};
copyDataProperties(object, a0, guildId);
object['action'] = 'EDIT_SAVED';
trackUserProfileActionBinding(object);
const defaultImport = AnalyticsUtils;
const track = defaultImport.track;
const USER_PROFILE_EDIT_SAVED = AnalyticEvents.USER_PROFILE_EDIT_SAVED;
object = {};
copyDataProperties(object, AppAnalyticsUtilsModule.collectGuildAnalyticsMetadata(guildId), guildId);
copyDataProperties(object, AppAnalyticsUtilsModule.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object, getTrackUserProfileProperties(a0), guildId);
object['location_stack'] = analyticsLocations;
object['widget_edited'] = widgetEdited;
object['game_ids'] = gameIds;
object['tags'] = tags;
object['num_characters_commentary'] = numCharactersCommentary;
object['is_widget_removed'] = isWidgetRemoved;
Reflect.apply(track, defaultImport, [USER_PROFILE_EDIT_SAVED, object]);
}
function trackUserProfileWishlistAction(a0) { // fn#67508, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:8226, offset: 0x01c26428, size: 275 bytes, params: 2, frame: 28
const guildId = a0.guildId;
const channelId = a0.channelId;
const analyticsLocations = a0.analyticsLocations;
const action = a0.action;
const wishlistId = a0.wishlistId;
const skuId = a0.skuId;
const productLines = a0.productLines;
const trackUserProfileActionBinding = trackUserProfileAction;
let object = {};
copyDataProperties(object, a0, guildId);
object['action'] = action;
trackUserProfileActionBinding(object);
const defaultImport = AnalyticsUtils;
const track = defaultImport.track;
const USER_PROFILE_WISHLIST_ACTION = AnalyticEvents.USER_PROFILE_WISHLIST_ACTION;
object = {};
copyDataProperties(object, AppAnalyticsUtilsModule.collectGuildAnalyticsMetadata(guildId), guildId);
copyDataProperties(object, AppAnalyticsUtilsModule.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object, getTrackUserProfileProperties(a0), guildId);
object['location_stack'] = analyticsLocations;
object['action_type'] = action;
object['wishlist_id'] = wishlistId;
object['sku_id'] = skuId;
object['product_lines'] = productLines != null ? global.Array.from(productLines) : [];
Reflect.apply(track, defaultImport, [USER_PROFILE_WISHLIST_ACTION, object]);
}
}
function trackDmProfileToggled({displayProfile, isProfileOpen}) { // fn#67504, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:6496, offset: 0x01c26063, size: 317 bytes, params: 2, frame: 23
const userId = displayProfile?.userId;
const r12 = userId != null ? PresenceStore.findActivity(userId, _fun67505) : null;
const defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
const track = defaultImport.track;
const DM_PROFILE_TOGGLED = AnalyticEvents.DM_PROFILE_TOGGLED;
const object2 = {is_profile_open: isProfileOpen};
const Boolean = global.Boolean;
object2.has_images = Boolean((r12 == null || r12.assets == null ? undefined : r12.assets.large_image) ?? (r12 == null || r12.assets == null ? undefined : r12.assets.small_image));
object2.is_friend = RelationshipStore.isFriend(userId);
object2.viewed_profile_user_id = userId;
object2.profile_has_nitro_customization = displayProfile?.hasPremiumCustomization();
object2.profile_has_theme_color_customized = displayProfile?.hasThemeColors();
object2.profile_has_theme_animation = displayProfile?.popoutAnimationParticleType != null;
Reflect.apply(track, defaultImport, [DM_PROFILE_TOGGLED, object2]);
}
function trackUserProfileEditAction(a0) { // fn#67506, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:7174, offset: 0x01c261e9, size: 299 bytes, params: 2, frame: 30
const guildId = a0.guildId;
const channelId = a0.channelId;
const analyticsLocations = a0.analyticsLocations;
const action = a0.action;
const widgetEdited = a0.widgetEdited;
const gameId = a0.gameId;
const numResults = a0.numResults;
const numCharacters = a0.numCharacters;
const applicationId = a0.applicationId;
const trackUserProfileActionBinding = trackUserProfileAction;
let object2 = {};
copyDataProperties(object2, a0, guildId);
object2['action'] = action;
trackUserProfileActionBinding(object2);
const defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
const track = defaultImport.track;
const USER_PROFILE_EDIT_ACTION = AnalyticEvents.USER_PROFILE_EDIT_ACTION;
object2 = {};
const appAnalyticsUtilsModule = require(4863) /* metro dependency 4863: AppAnalyticsUtils */;
copyDataProperties(object2, appAnalyticsUtilsModule.collectGuildAnalyticsMetadata(guildId), guildId);
const moduleValue2 = appAnalyticsUtilsModule;
copyDataProperties(object2, moduleValue2.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object2, getTrackUserProfileProperties(a0), guildId);
copyDataProperties(object2, getTrackUserProfileApplicationProperties(applicationId), guildId);
object2['location_stack'] = analyticsLocations;
object2['edit_action'] = action;
object2['widget_edited'] = widgetEdited;
object2['game_id'] = gameId;
object2['num_results'] = numResults;
object2['num_characters'] = numCharacters;
object2['application_id'] = applicationId;
Reflect.apply(track, defaultImport, [USER_PROFILE_EDIT_ACTION, object2]);
}
function trackUserProfileEditSaved(a0) { // fn#67507, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:7721, offset: 0x01c26314, size: 276 bytes, params: 2, frame: 29
const guildId = a0.guildId;
const channelId = a0.channelId;
const analyticsLocations = a0.analyticsLocations;
const widgetEdited = a0.widgetEdited;
const gameIds = a0.gameIds;
const tags = a0.tags;
const numCharactersCommentary = a0.numCharactersCommentary;
const isWidgetRemoved = a0.isWidgetRemoved;
const trackUserProfileActionBinding = trackUserProfileAction;
let object2 = {};
copyDataProperties(object2, a0, guildId);
object2['action'] = 'EDIT_SAVED';
trackUserProfileActionBinding(object2);
const defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
const track = defaultImport.track;
const USER_PROFILE_EDIT_SAVED = AnalyticEvents.USER_PROFILE_EDIT_SAVED;
object2 = {};
const appAnalyticsUtilsModule = require(4863) /* metro dependency 4863: AppAnalyticsUtils */;
copyDataProperties(object2, appAnalyticsUtilsModule.collectGuildAnalyticsMetadata(guildId), guildId);
const moduleValue2 = appAnalyticsUtilsModule;
copyDataProperties(object2, moduleValue2.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object2, getTrackUserProfileProperties(a0), guildId);
object2['location_stack'] = analyticsLocations;
object2['widget_edited'] = widgetEdited;
object2['game_ids'] = gameIds;
object2['tags'] = tags;
object2['num_characters_commentary'] = numCharactersCommentary;
object2['is_widget_removed'] = isWidgetRemoved;
Reflect.apply(track, defaultImport, [USER_PROFILE_EDIT_SAVED, object2]);
}
function trackUserProfileWishlistAction(a0) { // fn#67508, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:8226, offset: 0x01c26428, size: 275 bytes, params: 2, frame: 28
const guildId = a0.guildId;
const channelId = a0.channelId;
const analyticsLocations = a0.analyticsLocations;
const action = a0.action;
const wishlistId = a0.wishlistId;
const skuId = a0.skuId;
const productLines = a0.productLines;
const trackUserProfileActionBinding = trackUserProfileAction;
let object2 = {};
copyDataProperties(object2, a0, guildId);
object2['action'] = action;
trackUserProfileActionBinding(object2);
const defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
const track = defaultImport.track;
const USER_PROFILE_WISHLIST_ACTION = AnalyticEvents.USER_PROFILE_WISHLIST_ACTION;
object2 = {};
const appAnalyticsUtilsModule = require(4863) /* metro dependency 4863: AppAnalyticsUtils */;
copyDataProperties(object2, appAnalyticsUtilsModule.collectGuildAnalyticsMetadata(guildId), guildId);
const moduleValue2 = appAnalyticsUtilsModule;
copyDataProperties(object2, moduleValue2.collectChannelAnalyticsMetadataFromId(channelId), guildId);
copyDataProperties(object2, getTrackUserProfileProperties(a0), guildId);
object2['location_stack'] = analyticsLocations;
object2['action_type'] = action;
object2['wishlist_id'] = wishlistId;
object2['sku_id'] = skuId;
object2['product_lines'] = productLines != null ? global.Array.from(productLines) : [];
Reflect.apply(track, defaultImport, [USER_PROFILE_WISHLIST_ACTION, object2]);
}
function _fun67505({type}) { // fn#67505, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8700:6599, offset: 0x01c261a0, size: 73 bytes, params: 2, frame: 13
const value = environment.__proto__;
const getAnyStreamForUser = ApplicationStreamingStore.getAnyStreamForUser;
return Reflect.apply(getAnyStreamForUser, ApplicationStreamingStore,
[userId]) != null ? type === ActivityTypes.PLAYING : type !== ActivityTypes.CUSTOM_STATUS;
function _fun67494(a0) { // fn#67494, offset: 0x00d8c8a1, size: 16 bytes, params: 2, frame: 2
return typeof a0 === 'string';
}
global.__d(_fun67485, 8515, [7670, 5221, 4492, 5109, 1945, 4396, 3793, 1878, 5189, 8516, 661, 482, 1423, 8490, 683,
4863, 8517,
2]) /* metro module 8515, dependencies: [7670, 5221, 4492, 5109, 1945, 4396, 3793, 1878, 5189, 8516, 661, 482, 1423, 8490, 683, 4863, 8517, 2] */;
@@ -1,41 +1,45 @@
/* Metro module 5210; source: modules/user_profile/UserProfileApplicationWidgetTypes.tsx; dependencies: [6, 7, 5190, 2] */
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 * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as WidgetTypeModule from '../../external/discord_common/js/shared/shared-constants/WidgetType.tsx'; /* Metro dependency 5190 */
function _fun45962(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#45962, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5388:6, offset: 0x0119ca84, size: 132 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = importDefault(6) /* metro dependency 6 */;
const env0_3 = importDefault(7) /* metro dependency 7 */;
const value = _fun45963();
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/UserProfileApplicationWidgetTypes.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/UserProfileApplicationWidgetTypes.tsx');
exports.ApplicationWidget = value;
function _fun45963() { // fn#45963, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5388:118, offset: 0x0119cb08, size: 201 bytes, params: 1, frame: 15
return CreateClass(ApplicationWidget, [{key: 'toSubmission', value: function() {
return {id: this.id, data: {type: this.type, application_id: this.applicationId}};
}}, {key: 'isDiscardable', value: function() {
return false;
}}, {key: 'isValid', value: function() {
return true;
}}, {key: 'isEqual', value: value_45968}, {key: 'getUniqueKey', value: function() {
return '' + this.type + '-' + this.applicationId;
}}, {key: 'getProfileAnalyticsOptions', value: function() {
return {widgetType: this.type, applicationId: this.applicationId};
}}, {key: 'getProfileEditAnalyticsOptions', value: function() {
return {widgetEdited: this.type, applicationId: this.applicationId};
}}]);
function ApplicationWidget({id, applicationId}) { // fn#45964, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5388:129, offset: 0x0119cbd1, size: 90 bytes, params: 2, frame: 16
env1_2(this, ApplicationWidget);
this.id = id;
const WidgetType = (WidgetTypeModule).WidgetType;
const APPLICATION = WidgetType.APPLICATION;
this.type = APPLICATION;
this.applicationId = applicationId;
}
function value_45968(a0) { // fn#45968, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5388:533, offset: 0x0119cc54, size: 36 bytes, params: 2, frame: 3
return a0 instanceof ApplicationWidget && a0.applicationId === this.applicationId;
}
}
}
function _fun45963() { // fn#45963, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5388:118, offset: 0x0119cb08, size: 201 bytes, params: 1, frame: 15
return env0_3(ApplicationWidget, [{key: 'toSubmission', value: function() {
return {id: this.id, data: {type: this.type, application_id: this.applicationId}};
}}, {key: 'isDiscardable', value: function() {
return false;
}}, {key: 'isValid', value: function() {
return true;
}}, {key: 'isEqual', value: value_45968}, {key: 'getUniqueKey', value: function() {
return '' + this.type + '-' + this.applicationId;
}}, {key: 'getProfileAnalyticsOptions', value: function() {
return {widgetType: this.type, applicationId: this.applicationId};
}}, {key: 'getProfileEditAnalyticsOptions', value: function() {
return {widgetEdited: this.type, applicationId: this.applicationId};
}}]);
}
function ApplicationWidget({id, applicationId}) { // fn#45964, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5388:129, offset: 0x0119cbd1, size: 90 bytes, params: 2, frame: 16
env1_2(this, ApplicationWidget);
this.id = id;
const WidgetType = (require(5190) /* metro dependency 5190: WidgetType */).WidgetType;
const APPLICATION = WidgetType.APPLICATION;
this.type = APPLICATION;
this.applicationId = applicationId;
}
function value_45968(a0) { // fn#45968, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5388:533, offset: 0x0119cc54, size: 36 bytes, params: 2, frame: 3
return a0 instanceof ApplicationWidget && a0.applicationId === this.applicationId;
}
global.__d(_fun45962, 5210, [6, 7, 5190, 2]) /* metro module 5210, dependencies: [6, 7, 5190, 2] */;
@@ -1,98 +1,115 @@
/* Metro module 5191; source: modules/user_profile/UserProfileGameWidgetTypes.tsx; dependencies: [6, 7, 5190, 5192, 5193, 2] */
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 * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as WidgetTypeModule from '../../external/discord_common/js/shared/shared-constants/WidgetType.tsx'; /* Metro dependency 5190 */
function _fun45772(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#45772, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5369:6, offset: 0x0119800e, size: 279 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = importDefault(6) /* metro dependency 6 */;
const env0_3 = importDefault(7) /* metro dependency 7 */;
const WidgetType = (require(5190) /* metro dependency 5190: WidgetType */).WidgetType;
const WidgetType = (WidgetTypeModule).WidgetType;
const CURRENT_GAMES = WidgetType.CURRENT_GAMES;
items = [CURRENT_GAMES];
items2 = [CURRENT_GAMES];
const FAVORITE_GAMES = WidgetType.FAVORITE_GAMES;
items[1] = FAVORITE_GAMES;
items2[1] = FAVORITE_GAMES;
const WANT_TO_PLAY_GAMES = WidgetType.WANT_TO_PLAY_GAMES;
items[2] = WANT_TO_PLAY_GAMES;
items2[2] = WANT_TO_PLAY_GAMES;
const PLAYED_GAMES = WidgetType.PLAYED_GAMES;
items[3] = PLAYED_GAMES;
items2[3] = PLAYED_GAMES;
const value = _fun45773();
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/UserProfileGameWidgetTypes.tsx');
exports.GAME_WIDGET_TYPES = items;
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/UserProfileGameWidgetTypes.tsx');
exports.GAME_WIDGET_TYPES = items2;
exports.isGameWidgetType = isGameWidgetType;
exports.isGameWidget = isGameWidget;
exports.BaseGameWidget = value;
}
function _fun45773() { // fn#45773, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5369:263, offset: 0x01198125, size: 201 bytes, params: 1, frame: 15
return env0_3(BaseGameWidget, [{key: 'toSubmission', value: function() {
var object = {id: this.id};
var object2 = {type: this.type};
object2.games = this.games.map(_fun45776);
object.data = object2;
return object;
}}, {key: 'isDiscardable', value: function() {
return this.games.length === 0;
}}, {key: 'isValid', value: value_45778}, {key: 'isEqual', value: value_45779}, {key: 'getUniqueKey',
value: function() {
return this.type;
}}, {key: 'getProfileAnalyticsOptions', value: function() {
return {widgetType: this.type};
}}, {key: 'getProfileEditAnalyticsOptions', value: function() {
return {widgetEdited: this.type};
}}]);
}
function BaseGameWidget({id, type, games}) { // fn#45774, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5369:274, offset: 0x011981ee, size: 64 bytes, params: 2, frame: 16
env1_2(this, BaseGameWidget);
this.id = id;
this.type = type;
this.games = games;
}
function value_45775() { // fn#45775, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5369:430, offset: 0x0119822e, size: 59 bytes, params: 1, frame: 13
const object3 = {};
object3.id = this.id;
const object4 = {};
object4.type = this.type;
object4.games = this.games.map(function(a0) {
return {game_id: a0.applicationId, comment: a0.comment, tags: a0.tags};
});
object3.data = object4;
return object3;
}
function value_45778() { // fn#45778, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5369:659, offset: 0x011982a6, size: 80 bytes, params: 1, frame: 14
var r0;
let length = this.games.length;
let value = length > 0;
if (value) {
length = this.games.length;
value = environment.__proto__;
value = length <= (require(5192) /* metro dependency 5192: GameWidgetLimits */).GAME_WIDGET_LIMITS_BY_TYPE[this.type];
r0 = value;
} else {
r0 = value;
}
return r0;
}
function value_45779(a0) { // fn#45779, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5369:786, offset: 0x011982f6, size: 97 bytes, params: 2, frame: 17
var r1;
var r0;
let value = a0 instanceof BaseGameWidget;
if (value) {
value = a0.type === this.type;
if (value) {
value = environment.__proto__;
value = require(5193) /* metro dependency 5193: WidgetUtils */;
value = value.areWidgetGamesEqual(this.games, a0.games, this.type);
r1 = value;
} else {
r1 = value;
function _fun45773() { // fn#45773, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5369:263, offset: 0x01198125, size: 201 bytes, params: 1, frame: 15
return CreateClass(BaseGameWidget, [{key: 'toSubmission', value: function() {
var object = {id: this.id};
var object2 = {type: this.type};
object2.games = this.games.map(_fun45776);
object.data = object2;
return object;
}}, {key: 'isDiscardable', value: function() {
return this.games.length === 0;
}}, {key: 'isValid', value: value_45778}, {key: 'isEqual', value: value_45779}, {key: 'getUniqueKey',
value: function() {
return this.type;
}}, {key: 'getProfileAnalyticsOptions', value: function() {
return {widgetType: this.type};
}}, {key: 'getProfileEditAnalyticsOptions', value: function() {
return {widgetEdited: this.type};
}}]);
function BaseGameWidget({id, type, games}) { // fn#45774, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5369:274, offset: 0x011981ee, size: 64 bytes, params: 2, frame: 16
env1_2(this, BaseGameWidget);
this.id = id;
this.type = type;
this.games = games;
}
r0 = r1;
} else {
r0 = value;
function value_45775() { // fn#45775, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5369:430, offset: 0x0119822e, size: 59 bytes, params: 1, frame: 13
const object = {};
object.id = this.id;
const object2 = {};
object2.type = this.type;
object2.games = this.games.map(function(a0) {
return {game_id: a0.applicationId, comment: a0.comment, tags: a0.tags};
});
object.data = object2;
return object;
}
function value_45778() { // fn#45778, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5369:659, offset: 0x011982a6, size: 80 bytes, params: 1, frame: 14
var r0;
let length = this.games.length;
let value = length > 0;
if (value) {
length = this.games.length;
value = environment.__proto__;
value = length <= (require(5192) /* metro dependency 5192: GameWidgetLimits */).GAME_WIDGET_LIMITS_BY_TYPE[this.type];
r0 = value;
} else {
r0 = value;
}
return r0;
}
function value_45779(a0) { // fn#45779, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5369:786, offset: 0x011982f6, size: 97 bytes, params: 2, frame: 17
var r1;
var r0;
let value = a0 instanceof BaseGameWidget;
if (value) {
value = a0.type === this.type;
if (value) {
value = environment.__proto__;
value = require(5193) /* metro dependency 5193: WidgetUtils */;
value = value.areWidgetGamesEqual(this.games, a0.games, this.type);
r1 = value;
} else {
r1 = value;
}
r0 = r1;
} else {
r0 = value;
}
return r0;
}
}
return r0;
function isGameWidgetType(a0) { // fn#45783, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5369:1273, offset: 0x00e3c556, size: 22 bytes, params: 2, frame: 11
return env0_4.includes(a0);
}
function isGameWidget(a0) { // fn#45784, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5369:1339, offset: 0x00cf42a0, size: 16 bytes, params: 2, frame: 2
return a0 instanceof env0_5;
}
}
function _fun45776({applicationId, comment, tags}) { // fn#45776, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5369:502, offset: 0x01198269, size: 39 bytes, params: 2, frame: 3
return {game_id: applicationId, comment: comment, tags: tags};
}
global.__d(_fun45772, 5191, [6, 7, 5190, 5192, 5193,
2]) /* metro module 5191, dependencies: [6, 7, 5190, 5192, 5193, 2] */;
@@ -1,16 +1,22 @@
/* Metro module 7593; source: modules/user_profile/UserProfileGradientUtils.tsx; dependencies: [57, 661, 673, 4001, 22, 4002, 674, 2] */
import Module00057 from '../../by-id/module-00057.js'; /* Metro dependency 57 */
import Module00674 from '../../by-id/module-00674.js'; /* Metro dependency 674 */
import Color from '../../utils/Color.tsx'; /* Metro dependency 4001 */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ConstantsModule from '../../Constants.tsx'; /* Metro dependency 661 */
import * as ColorUtilsModule from '../../external/discord_common/js/shared/utils/ColorUtils.tsx'; /* Metro dependency 673 */
import * as SharedModule from '../../design/shared.tsx'; /* Metro dependency 4002 */
function _fun60898(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#60898, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:6, offset: 0x01714407, size: 290 bytes, params: 8, frame: 23
const env0_0 = require;
const closure = function(a0) {
var value = null;
return value == a0 ? value : require(dependencyMap[2]).getDarkness(a0) > 0.5 ? ThemeTypes.DARK : ThemeTypes.LIGHT;
};
const closure2 = getValueInColorGradientByPercentage;
const closure3 = getGradientPercentageColorInRgb;
const getValueInColorGradientByPercentage2 = getValueInColorGradientByPercentage;
const getGradientPercentageColorInRgb2 = getGradientPercentageColorInRgb;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = (require(661) /* metro dependency 661: Constants */).ThemeTypes;
let value = require(22) /* metro dependency 22 */;
value = value.memoize(_fun60902, function(a0) {
return a0;
@@ -18,15 +24,106 @@ function _fun60898(global, require, importDefault, importAll, module, exports, d
const value3 = (require(22) /* metro dependency 22 */).memoize(_fun60904, function(a0, a1, a2) {
return '' + a0 + '-' + a1 + '-' + a2;
});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/UserProfileGradientUtils.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/UserProfileGradientUtils.tsx');
exports.getProfileTheme = closure;
exports.getValueInColorGradientByPercentage = closure2;
exports.getValueInColorGradientByPercentage = getValueInColorGradientByPercentage2;
exports.calculateOverlayedColor = calculateOverlayedColor;
exports.calculateButtonColor = value;
exports.calculateModalV2BackgroundColor = value3;
exports.getGradientPercentageColorInRgb = closure3;
exports.getGradientPercentageColorInRgb = getGradientPercentageColorInRgb2;
exports.calculateGradientSplitColors = calculateGradientSplitColors;
exports.getUserProfileGradientContainerColors = getUserProfileGradientContainerColors;
function getGradientPercentageColorInRgb(a0, a1, a2) { // fn#60901, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:835, offset: 0x0171461c, size: 88 bytes, params: 4, frame: 20
const valueInColorGradientByPercentage = getValueInColorGradientByPercentage(a0, a1, a2);
return 'rgba(' + valueInColorGradientByPercentage[0] + ', ' + valueInColorGradientByPercentage[1] + ', ' + valueInColorGradientByPercentage[2] + ', 1)';
}
function _fun60902(a0) { // fn#60902, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:400, offset: 0x01714674, size: 104 bytes, params: 2, frame: 17
var value;
const getContrastingColor = (SharedModule).getContrastingColor;
const WCAGContrastRatios = (SharedModule).WCAGContrastRatios;
const HighContrastText = WCAGContrastRatios.HighContrastText;
value = Reflect.apply(getContrastingColor, value, [a0, {base: '#ffffff', contrastRatio: HighContrastText}]);
return (ColorUtilsModule).hex2int(value);
}
function _fun60904(a0, a1, a2) { // fn#60904, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:575, offset: 0x017146dc, size: 308 bytes, params: 4, frame: 22
const r5 = a2 ?? getProfileTheme(a0);
const LIGHT = ThemeTypes.LIGHT;
const defaultImport = Module00674;
const value4 = defaultImport.mix(defaultImport(a0), defaultImport(a1), 0.5, 'lab');
const Math = global.Math;
const value6 = Math.round(100 * value4.get('hsl.l')) / 100;
const r2 = r5 !== LIGHT ? (require(22) /* metro dependency 22 */).clamp(value6, 0,
0.1) : (require(22) /* metro dependency 22 */).clamp(value6, 0.8, 1);
value = defaultImport(value4);
value = value.set('hsl.l', r2);
return value.num();
}
function calculateOverlayedColor(a0, a1) { // fn#60906, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:1193, offset: 0x0171483a, size: 291 bytes, params: 3, frame: 25
const value2 = (ColorUtilsModule).int2rgbArray(a0);
if (a1 == null) {
return 0;
}
const string = (Color).parseString(a1);
if (string == null) {
return 0;
}
const env0_0 = [value2[0], value2[1], value2[2]];
const env0_1 = string.alpha;
const value4 = Module00057([string.red, string.green, string.blue].map(_fun60907), 3);
return (ColorUtilsModule).rgb2int('rgba(' + value4[0] + ', ' + value4[1] + ', ' + value4[2] + ')');
function _fun60907(a0, a1) { // fn#60907, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:1398, offset: 0x0171495d, size: 65 bytes, params: 3, frame: 14
const Math = global.Math;
return Math.floor(alpha * a0 + (1 - alpha) * env0_0[a1]);
}
}
function calculateGradientSplitColors(a0, a1, a2, a3, a4) { // fn#60908, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:1673, offset: 0x0171499e, size: 134 bytes, params: 6, frame: 19
if (a2 === 0) {
return [];
}
const value2 = (ColorUtilsModule).int2rgbArray(a0);
const value3 = (ColorUtilsModule).int2rgbArray(a1);
const getGradientPercentageColorInRgbBinding = getGradientPercentageColorInRgb;
return [getGradientPercentageColorInRgbBinding(value2, value3,
100 * a3 / a2), getGradientPercentageColorInRgbBinding(value2, value3, 100 * a4 / a2)];
}
function getUserProfileGradientContainerColors(a0, a1, a2) { // fn#60909, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:1937, offset: 0x01714a24, size: 254 bytes, params: 4, frame: 18
var r1;
var r2;
var r0;
var items2;
let value = a2;
if (typeof value === 'string') {
items2 = [a0 == null ? value : (require(673) /* metro dependency 673: ColorUtils */).int2rgba(a0, 1)];
if (a1 == null) {
r2 = value;
} else {
value = require(673) /* metro dependency 673: ColorUtils */;
value = value.int2rgba(a1, 1);
r2 = value;
}
items2[1] = r2;
r0 = items2;
} else {
items2 = [a0 != null ? (require(673) /* metro dependency 673: ColorUtils */).int2rgba(a0, 1) : value[0]];
if (a1 != null) {
value = require(673) /* metro dependency 673: ColorUtils */;
value = value.int2rgba(a1, 1);
r1 = value;
} else {
r1 = value[1];
}
items2[1] = r1;
r0 = items2;
}
return r0;
}
}
function getValueInColorGradientByPercentage(a0, a1, a2) { // fn#60900, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:220, offset: 0x01714580, size: 156 bytes, params: 4, frame: 18
@@ -41,94 +138,5 @@ function getValueInColorGradientByPercentage(a0, a1, a2) { // fn#60900, source:
return items2;
}
function getGradientPercentageColorInRgb(a0, a1, a2) { // fn#60901, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:835, offset: 0x0171461c, size: 88 bytes, params: 4, frame: 20
const valueInColorGradientByPercentage = getValueInColorGradientByPercentage(a0, a1, a2);
return 'rgba(' + valueInColorGradientByPercentage[0] + ', ' + valueInColorGradientByPercentage[1] + ', ' + valueInColorGradientByPercentage[2] + ', 1)';
}
function _fun60902(a0) { // fn#60902, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:400, offset: 0x01714674, size: 104 bytes, params: 2, frame: 17
var value;
const getContrastingColor = (require(4002) /* metro dependency 4002: shared */).getContrastingColor;
const WCAGContrastRatios = (require(4002) /* metro dependency 4002: shared */).WCAGContrastRatios;
const HighContrastText = WCAGContrastRatios.HighContrastText;
value = Reflect.apply(getContrastingColor, value, [a0, {base: '#ffffff', contrastRatio: HighContrastText}]);
return (require(673) /* metro dependency 673: ColorUtils */).hex2int(value);
}
function _fun60904(a0, a1, a2) { // fn#60904, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:575, offset: 0x017146dc, size: 308 bytes, params: 4, frame: 22
const r5 = a2 ?? getProfileTheme(a0);
const LIGHT = ThemeTypes.LIGHT;
const defaultImport = importDefault(674) /* metro dependency 674 */;
const value4 = defaultImport.mix(defaultImport(a0), defaultImport(a1), 0.5, 'lab');
const Math = global.Math;
const value6 = Math.round(100 * value4.get('hsl.l')) / 100;
const r2 = r5 !== LIGHT ? (require(22) /* metro dependency 22 */).clamp(value6, 0,
0.1) : (require(22) /* metro dependency 22 */).clamp(value6, 0.8, 1);
value = defaultImport(value4);
value = value.set('hsl.l', r2);
return value.num();
}
function calculateOverlayedColor(a0, a1) { // fn#60906, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:1193, offset: 0x0171483a, size: 291 bytes, params: 3, frame: 25
const value2 = (require(673) /* metro dependency 673: ColorUtils */).int2rgbArray(a0);
if (a1 == null) {
return 0;
}
const string = (importDefault(4001) /* metro dependency 4001: Color */).parseString(a1);
if (string == null) {
return 0;
}
const env0_0 = [value2[0], value2[1], value2[2]];
const env0_1 = string.alpha;
const value4 = env0_3([string.red, string.green, string.blue].map(_fun60907), 3);
return (require(673) /* metro dependency 673: ColorUtils */).rgb2int('rgba(' + value4[0] + ', ' + value4[1] + ', ' + value4[2] + ')');
}
function calculateGradientSplitColors(a0, a1, a2, a3, a4) { // fn#60908, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:1673, offset: 0x0171499e, size: 134 bytes, params: 6, frame: 19
if (a2 === 0) {
return [];
}
const value2 = (require(673) /* metro dependency 673: ColorUtils */).int2rgbArray(a0);
const value3 = (require(673) /* metro dependency 673: ColorUtils */).int2rgbArray(a1);
const getGradientPercentageColorInRgbBinding = getGradientPercentageColorInRgb;
return [getGradientPercentageColorInRgbBinding(value2, value3,
100 * a3 / a2), getGradientPercentageColorInRgbBinding(value2, value3, 100 * a4 / a2)];
}
function getUserProfileGradientContainerColors(a0, a1, a2) { // fn#60909, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:1937, offset: 0x01714a24, size: 254 bytes, params: 4, frame: 18
var r1;
var r2;
var r0;
var items2;
let value = a2;
if (typeof value === 'string') {
items2 = [a0 == null ? value : (require(673) /* metro dependency 673: ColorUtils */).int2rgba(a0, 1)];
if (a1 == null) {
r2 = value;
} else {
value = require(673) /* metro dependency 673: ColorUtils */;
value = value.int2rgba(a1, 1);
r2 = value;
}
items2[1] = r2;
r0 = items2;
} else {
items2 = [a0 != null ? (require(673) /* metro dependency 673: ColorUtils */).int2rgba(a0, 1) : value[0]];
if (a1 != null) {
value = require(673) /* metro dependency 673: ColorUtils */;
value = value.int2rgba(a1, 1);
r1 = value;
} else {
r1 = value[1];
}
items2[1] = r1;
r0 = items2;
}
return r0;
}
function _fun60907(a0, a1) { // fn#60907, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7771:1398, offset: 0x0171495d, size: 65 bytes, params: 3, frame: 14
const Math = global.Math;
return Math.floor(alpha * a0 + (1 - alpha) * env0_0[a1]);
}
global.__d(_fun60898, 7593, [57, 661, 673, 4001, 22, 4002, 674,
2]) /* metro module 7593, dependencies: [57, 661, 673, 4001, 22, 4002, 674, 2] */;
@@ -1,22 +1,38 @@
/* Metro module 6814; source: modules/user_profile/UserProfileRoleUtils.tsx; dependencies: [1940, 2] */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
function _fun53582(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#53582, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6992:6, offset: 0x01350212, size: 94 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/UserProfileRoleUtils.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/UserProfileRoleUtils.tsx');
exports.sortRolesByVerification = sortRolesByVerification;
}
function sortRolesByVerification(a0, a1) { // fn#53583, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6992:197, offset: 0x01350270, size: 120 bytes, params: 3, frame: 17
var r1;
var r0;
let tags = a0.tags;
let value = undefined;
const value2 = value !== (tags == null ? value : tags.guild_connections);
tags = a1.tags;
const value3 = value !== (tags == null ? value : tags.guild_connections);
if (value2) {
if (value3) {
function sortRolesByVerification(a0, a1) { // fn#53583, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6992:197, offset: 0x01350270, size: 120 bytes, params: 3, frame: 17
var r1;
var r0;
let tags = a0.tags;
let value = undefined;
const value2 = value !== (tags == null ? value : tags.guild_connections);
tags = a1.tags;
const value3 = value !== (tags == null ? value : tags.guild_connections);
if (value2) {
if (value3) {
if (value2) {
value = require(1940) /* metro dependency 1940: GuildRoleUtils */;
value = value.compareGuildRoles(a0, a1);
r1 = value;
} else if (value3) {
r1 = -1;
} else {
value = require(1940) /* metro dependency 1940: GuildRoleUtils */;
value = value.compareGuildRoles(a0, a1);
r1 = value;
}
r0 = r1;
} else {
r0 = 1;
}
} else {
if (value2) {
value = require(1940) /* metro dependency 1940: GuildRoleUtils */;
value = value.compareGuildRoles(a0, a1);
@@ -29,23 +45,10 @@ function sortRolesByVerification(a0, a1) { // fn#53583, source: /ci/build/discor
r1 = value;
}
r0 = r1;
} else {
r0 = 1;
}
} else {
if (value2) {
value = require(1940) /* metro dependency 1940: GuildRoleUtils */;
value = value.compareGuildRoles(a0, a1);
r1 = value;
} else if (value3) {
r1 = -1;
} else {
value = require(1940) /* metro dependency 1940: GuildRoleUtils */;
value = value.compareGuildRoles(a0, a1);
r1 = value;
}
r0 = r1;
return r0;
}
return r0;
}
global.__d(_fun53582, 6814, [1940, 2]) /* metro module 6814, dependencies: [1940, 2] */;
@@ -1,307 +1,313 @@
/* Metro module 8400; source: modules/user_profile/UserProfileSettingsActionCreators.tsx; dependencies: [1945, 1878, 5189, 5062, 8401, 694, 2] */
import UserStore from '../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import GuildMemberStore from '../../stores/GuildMemberStore.tsx'; /* Metro dependency 1945 */
import UserProfileStore from './UserProfileStore.tsx'; /* Metro dependency 5189 */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
function _fun66746(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#66746, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8585:6, offset: 0x01c0802b, size: 150 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const guildMemberStore = importDefault(1945) /* metro dependency 1945: GuildMemberStore */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const userProfileStore = importDefault(5189) /* metro dependency 5189: UserProfileStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/UserProfileSettingsActionCreators.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/UserProfileSettingsActionCreators.tsx');
exports.setPendingChanges = setPendingChanges;
}
function setPendingChanges(a0) { // fn#66747, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8585:238, offset: 0x01c080c1, size: 1681 bytes, params: 2, frame: 26
var r9;
var r10;
var r14;
var imageUri;
var avatar;
var skuId;
var skuId2;
var skuId4;
var r8;
var banner;
var accentColor;
var themeColors;
var object3;
var nickname;
var value9;
var displayNameStyles2;
var pronouns2;
var value11;
var value12;
var avatarDecoration;
var value14;
var value15;
var nameplate;
var value16;
var collectibles;
var value17;
var profileEffect;
var value18;
var profileFrame;
var value19;
var bannerOriginalMd5;
var value21;
var value22;
var bio2;
var value23;
var moduleValue;
var guildId2;
var dispatch;
var object4;
const guildId = a0.guildId;
let value = null;
const value2 = Object.create(value);
value2.guildId = 0;
const value3 = copyDataProperties({}, a0, value2, undefined);
const currentUser = UserStore.getCurrentUser();
if (value != currentUser) {
r9 = value == guildId ? UserProfileStore.getUserProfile(currentUser.id) : UserProfileStore.getGuildMemberProfile(currentUser.id,
guildId);
r10 = value != guildId ? GuildMemberStore.getMember(guildId, currentUser.id) : value;
object3 = {};
if ('globalName' in value3) {
if (value3.globalName === currentUser.globalName) {
object3.pendingGlobalName = undefined;
} else if (value3.globalName !== '') {
object3.pendingGlobalName = value3.globalName;
} else if (value === currentUser.globalName) {
object3.pendingGlobalName = undefined;
} else {
object3.pendingGlobalName = value3.globalName;
}
}
if ('nickname' in value3) {
nickname = value3.nickname;
value9 = undefined;
if (nickname === (value == r10 ? value9 : r10.nick)) {
object3.pendingNickname = value9;
} else if (value3.nickname !== '') {
object3.pendingNickname = value3.nickname;
} else if (value === (value == r10 ? value9 : r10.nick)) {
object3.pendingNickname = value9;
} else {
object3.pendingNickname = value3.nickname;
}
}
if ('displayNameStyles' in value3) {
displayNameStyles2 = value3.displayNameStyles;
r14 = value != guildId ? value == r10 ? undefined : r10.displayNameStyles : currentUser.displayNameStyles;
if ((importDefault(5062) /* metro dependency 5062 */)(value != displayNameStyles2 ? displayNameStyles2 : value,
function setPendingChanges(a0) { // fn#66747, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8585:238, offset: 0x01c080c1, size: 1681 bytes, params: 2, frame: 26
var r9;
var r10;
var r14;
var imageUri;
var avatar;
var skuId;
var skuId2;
var skuId4;
var r8;
var banner;
var accentColor;
var themeColors;
var userProfileStoreBinding;
var object;
var nickname;
var value9;
var displayNameStyles2;
var pronouns2;
var value11;
var value12;
var avatarDecoration;
var value14;
var value15;
var nameplate;
var value16;
var collectibles;
var value17;
var profileEffect;
var value18;
var profileFrame;
var value19;
var bannerOriginalMd5;
var value21;
var value22;
var bio2;
var value23;
var moduleValue;
var guildId2;
var dispatch;
var object2;
const guildId = a0.guildId;
let value = null;
const value2 = Object.create(value);
value2.guildId = 0;
const value3 = copyDataProperties({}, a0, value2, undefined);
const currentUser = UserStore.getCurrentUser();
if (value != currentUser) {
userProfileStoreBinding = UserProfileStore;
r9 = value == guildId ? userProfileStoreBinding.getUserProfile(currentUser.id) : UserProfileStore.getGuildMemberProfile(currentUser.id,
value != r14 ? r14 : value)) {
object3.pendingDisplayNameStyles = undefined;
} else {
object3.pendingDisplayNameStyles = displayNameStyles2;
guildId);
r10 = value != guildId ? GuildMemberStore.getMember(guildId, currentUser.id) : value;
object = {};
if ('globalName' in value3) {
if (value3.globalName === currentUser.globalName) {
object.pendingGlobalName = undefined;
} else if (value3.globalName !== '') {
object.pendingGlobalName = value3.globalName;
} else if (value === currentUser.globalName) {
object.pendingGlobalName = undefined;
} else {
object.pendingGlobalName = value3.globalName;
}
}
}
if ('pronouns' in value3) {
pronouns2 = value3.pronouns;
value11 = undefined;
if (pronouns2 === (value == r9 ? value11 : r9.pronouns)) {
object3.pendingPronouns = value11;
} else {
object3.pendingPronouns = value3.pronouns;
if ('nickname' in value3) {
nickname = value3.nickname;
value9 = undefined;
if (nickname === (value == r10 ? value9 : r10.nick)) {
object.pendingNickname = value9;
} else if (value3.nickname !== '') {
object.pendingNickname = value3.nickname;
} else if (value === (value == r10 ? value9 : r10.nick)) {
object.pendingNickname = value9;
} else {
object.pendingNickname = value3.nickname;
}
}
}
if ('avatar' in value3) {
if (value == guildId) {
if (value != guildId) {
object3.pendingAvatar = value3.avatar;
if ('displayNameStyles' in value3) {
displayNameStyles2 = value3.displayNameStyles;
r14 = value != guildId ? value == r10 ? undefined : r10.displayNameStyles : currentUser.displayNameStyles;
if ((importDefault(5062) /* metro dependency 5062 */)(value != displayNameStyles2 ? displayNameStyles2 : value,
value != r14 ? r14 : value)) {
object.pendingDisplayNameStyles = undefined;
} else {
object.pendingDisplayNameStyles = displayNameStyles2;
}
}
if ('pronouns' in value3) {
pronouns2 = value3.pronouns;
value11 = undefined;
if (pronouns2 === (value == r9 ? value11 : r9.pronouns)) {
object.pendingPronouns = value11;
} else {
object.pendingPronouns = value3.pronouns;
}
}
if ('avatar' in value3) {
if (value == guildId) {
if (value != guildId) {
object.pendingAvatar = value3.avatar;
} else {
avatar = value3.avatar;
imageUri = value == avatar ? undefined : avatar.imageUri;
avatar = currentUser.avatar;
if (imageUri === avatar) {
object.pendingAvatar = undefined;
} else {
object.pendingAvatar = value3.avatar;
}
}
} else {
avatar = value3.avatar;
imageUri = value == avatar ? undefined : avatar.imageUri;
avatar = currentUser.avatar;
value12 = undefined;
imageUri = value == avatar ? value12 : avatar.imageUri;
avatar = value == r10 ? value12 : r10.avatar;
if (imageUri === avatar) {
object3.pendingAvatar = undefined;
object.pendingAvatar = undefined;
} else if (value != guildId) {
object.pendingAvatar = value3.avatar;
} else {
object3.pendingAvatar = value3.avatar;
}
}
} else {
avatar = value3.avatar;
value12 = undefined;
imageUri = value == avatar ? value12 : avatar.imageUri;
avatar = value == r10 ? value12 : r10.avatar;
if (imageUri === avatar) {
object3.pendingAvatar = undefined;
} else if (value != guildId) {
object3.pendingAvatar = value3.avatar;
} else {
avatar = value3.avatar;
imageUri = value == avatar ? undefined : avatar.imageUri;
avatar = currentUser.avatar;
if (imageUri === avatar) {
object3.pendingAvatar = undefined;
} else {
object3.pendingAvatar = value3.avatar;
avatar = value3.avatar;
imageUri = value == avatar ? undefined : avatar.imageUri;
avatar = currentUser.avatar;
if (imageUri === avatar) {
object.pendingAvatar = undefined;
} else {
object.pendingAvatar = value3.avatar;
}
}
}
}
}
if ('avatarDecoration' in value3) {
if (value == guildId) {
if (value != guildId) {
object3.pendingAvatarDecoration = value3.avatarDecoration;
} else {
avatarDecoration = value3.avatarDecoration;
value15 = undefined;
skuId = value == avatarDecoration ? value15 : avatarDecoration.skuId;
avatarDecoration = currentUser.avatarDecoration;
if (skuId === (value == avatarDecoration ? value15 : avatarDecoration.skuId)) {
object3.pendingAvatarDecoration = undefined;
if ('avatarDecoration' in value3) {
if (value == guildId) {
if (value != guildId) {
object.pendingAvatarDecoration = value3.avatarDecoration;
} else {
object3.pendingAvatarDecoration = value3.avatarDecoration;
avatarDecoration = value3.avatarDecoration;
value15 = undefined;
skuId = value == avatarDecoration ? value15 : avatarDecoration.skuId;
avatarDecoration = currentUser.avatarDecoration;
if (skuId === (value == avatarDecoration ? value15 : avatarDecoration.skuId)) {
object.pendingAvatarDecoration = undefined;
} else {
object.pendingAvatarDecoration = value3.avatarDecoration;
}
}
}
} else {
avatarDecoration = value3.avatarDecoration;
value14 = undefined;
skuId = value == avatarDecoration ? value14 : avatarDecoration.skuId;
if (value == r10) {
skuId2 = value14;
} else {
avatarDecoration = r10.avatarDecoration;
skuId2 = value == avatarDecoration ? value14 : avatarDecoration.skuId;
}
if (skuId === skuId2) {
object3.pendingAvatarDecoration = undefined;
} else if (value != guildId) {
object3.pendingAvatarDecoration = value3.avatarDecoration;
} else {
avatarDecoration = value3.avatarDecoration;
value15 = undefined;
skuId = value == avatarDecoration ? value15 : avatarDecoration.skuId;
avatarDecoration = currentUser.avatarDecoration;
if (skuId === (value == avatarDecoration ? value15 : avatarDecoration.skuId)) {
object3.pendingAvatarDecoration = undefined;
value14 = undefined;
skuId = value == avatarDecoration ? value14 : avatarDecoration.skuId;
if (value == r10) {
skuId2 = value14;
} else {
object3.pendingAvatarDecoration = value3.avatarDecoration;
avatarDecoration = r10.avatarDecoration;
skuId2 = value == avatarDecoration ? value14 : avatarDecoration.skuId;
}
if (skuId === skuId2) {
object.pendingAvatarDecoration = undefined;
} else if (value != guildId) {
object.pendingAvatarDecoration = value3.avatarDecoration;
} else {
avatarDecoration = value3.avatarDecoration;
value15 = undefined;
skuId = value == avatarDecoration ? value15 : avatarDecoration.skuId;
avatarDecoration = currentUser.avatarDecoration;
if (skuId === (value == avatarDecoration ? value15 : avatarDecoration.skuId)) {
object.pendingAvatarDecoration = undefined;
} else {
object.pendingAvatarDecoration = value3.avatarDecoration;
}
}
}
}
}
if ('nameplate' in value3) {
if (value == guildId) {
if (value != guildId) {
object3.pendingNameplate = value3.nameplate;
if ('nameplate' in value3) {
if (value == guildId) {
if (value != guildId) {
object.pendingNameplate = value3.nameplate;
} else {
nameplate = value3.nameplate;
value17 = undefined;
skuId = value == nameplate ? value17 : nameplate.skuId;
collectibles = currentUser.collectibles;
if (skuId === (value == collectibles || value == collectibles.nameplate ? value17 : collectibles.nameplate.skuId)) {
object.pendingNameplate = undefined;
} else {
object.pendingNameplate = value3.nameplate;
}
}
} else {
nameplate = value3.nameplate;
value17 = undefined;
skuId = value == nameplate ? value17 : nameplate.skuId;
collectibles = currentUser.collectibles;
if (skuId === (value == collectibles || value == collectibles.nameplate ? value17 : collectibles.nameplate.skuId)) {
object3.pendingNameplate = undefined;
} else {
object3.pendingNameplate = value3.nameplate;
}
}
} else {
nameplate = value3.nameplate;
value16 = undefined;
skuId = value == nameplate ? value16 : nameplate.skuId;
if (value == r10) {
skuId4 = value16;
} else {
collectibles = r10.collectibles;
if (value == collectibles) {
value16 = undefined;
skuId = value == nameplate ? value16 : nameplate.skuId;
if (value == r10) {
skuId4 = value16;
} else {
nameplate = collectibles.nameplate;
skuId4 = value == nameplate ? value16 : nameplate.skuId;
collectibles = r10.collectibles;
if (value == collectibles) {
skuId4 = value16;
} else {
nameplate = collectibles.nameplate;
skuId4 = value == nameplate ? value16 : nameplate.skuId;
}
}
}
if (skuId === skuId4) {
object3.pendingNameplate = undefined;
} else if (value != guildId) {
object3.pendingNameplate = value3.nameplate;
} else {
nameplate = value3.nameplate;
value17 = undefined;
skuId = value == nameplate ? value17 : nameplate.skuId;
collectibles = currentUser.collectibles;
if (skuId === (value == collectibles || value == collectibles.nameplate ? value17 : collectibles.nameplate.skuId)) {
object3.pendingNameplate = undefined;
if (skuId === skuId4) {
object.pendingNameplate = undefined;
} else if (value != guildId) {
object.pendingNameplate = value3.nameplate;
} else {
object3.pendingNameplate = value3.nameplate;
nameplate = value3.nameplate;
value17 = undefined;
skuId = value == nameplate ? value17 : nameplate.skuId;
collectibles = currentUser.collectibles;
if (skuId === (value == collectibles || value == collectibles.nameplate ? value17 : collectibles.nameplate.skuId)) {
object.pendingNameplate = undefined;
} else {
object.pendingNameplate = value3.nameplate;
}
}
}
}
}
if ('profileEffect' in value3) {
profileEffect = value3.profileEffect;
value18 = undefined;
if ((value == profileEffect ? value18 : profileEffect.skuId) === (value == r9 || value == r9.profileEffect ? value18 : r9.profileEffect.skuId)) {
object3.pendingProfileEffect = value18;
} else {
object3.pendingProfileEffect = value3.profileEffect;
if ('profileEffect' in value3) {
profileEffect = value3.profileEffect;
value18 = undefined;
if ((value == profileEffect ? value18 : profileEffect.skuId) === (value == r9 || value == r9.profileEffect ? value18 : r9.profileEffect.skuId)) {
object.pendingProfileEffect = value18;
} else {
object.pendingProfileEffect = value3.profileEffect;
}
}
}
if ('profileFrame' in value3) {
profileFrame = value3.profileFrame;
value19 = undefined;
if ((value == profileFrame ? value19 : profileFrame.skuId) === (value == r9 || value == r9.profileFrame ? value19 : r9.profileFrame.skuId)) {
object3.pendingProfileFrame = value19;
} else {
object3.pendingProfileFrame = value3.profileFrame;
if ('profileFrame' in value3) {
profileFrame = value3.profileFrame;
value19 = undefined;
if ((value == profileFrame ? value19 : profileFrame.skuId) === (value == r9 || value == r9.profileFrame ? value19 : r9.profileFrame.skuId)) {
object.pendingProfileFrame = value19;
} else {
object.pendingProfileFrame = value3.profileFrame;
}
}
}
if ('banner' in value3) {
banner = value3.banner;
if ((value != banner ? banner : value) === (value != guildId ? value != (value == r9 ? undefined : r9.banner) ? value == r9 ? undefined : r9.banner : value : value != currentUser.banner ? currentUser.banner : value)) {
object3.pendingBanner = undefined;
object3.pendingBannerOriginalMd5 = undefined;
} else {
object3.pendingBanner = value3.banner;
bannerOriginalMd5 = value3.bannerOriginalMd5;
object3.pendingBannerOriginalMd5 = value != bannerOriginalMd5 ? bannerOriginalMd5 : value;
if ('banner' in value3) {
banner = value3.banner;
if ((value != banner ? banner : value) === (value != guildId ? value != (value == r9 ? undefined : r9.banner) ? value == r9 ? undefined : r9.banner : value : value != currentUser.banner ? currentUser.banner : value)) {
object.pendingBanner = undefined;
object.pendingBannerOriginalMd5 = undefined;
} else {
object.pendingBanner = value3.banner;
bannerOriginalMd5 = value3.bannerOriginalMd5;
object.pendingBannerOriginalMd5 = value != bannerOriginalMd5 ? bannerOriginalMd5 : value;
}
}
}
if ('accentColor' in value3) {
accentColor = value3.accentColor;
r8 = value != accentColor ? accentColor : value;
value21 = undefined;
accentColor = value == r9 ? value21 : r9.accentColor;
object3.pendingAccentColor = r8 === (value != accentColor ? accentColor : value) ? value21 : r8;
}
if ('themeColors' in value3) {
r10 = value == guildId || value == value3.themeColors || value != value3.themeColors[0] ? value != value3.themeColors ? value3.themeColors : value : value == value3.themeColors[1] ? value : value != value3.themeColors ? value3.themeColors : value;
value22 = undefined;
themeColors = value == r9 ? value22 : r9.themeColors;
if ((importDefault(5062) /* metro dependency 5062 */)(r10, value != themeColors ? themeColors : value)) {
object3.pendingThemeColors = value22;
} else {
object3.pendingThemeColors = value3.themeColors;
if ('accentColor' in value3) {
accentColor = value3.accentColor;
r8 = value != accentColor ? accentColor : value;
value21 = undefined;
accentColor = value == r9 ? value21 : r9.accentColor;
object.pendingAccentColor = r8 === (value != accentColor ? accentColor : value) ? value21 : r8;
}
}
if ('bio' in value3) {
bio2 = value3.bio;
value23 = undefined;
if (bio2 === (value == r9 ? value23 : r9.bio)) {
object3.pendingBio = value23;
} else {
object3.pendingBio = value3.bio;
if ('themeColors' in value3) {
r10 = value == guildId || value == value3.themeColors || value != value3.themeColors[0] ? value != value3.themeColors ? value3.themeColors : value : value == value3.themeColors[1] ? value : value != value3.themeColors ? value3.themeColors : value;
value22 = undefined;
themeColors = value == r9 ? value22 : r9.themeColors;
if ((importDefault(5062) /* metro dependency 5062 */)(r10, value != themeColors ? themeColors : value)) {
object.pendingThemeColors = value22;
} else {
object.pendingThemeColors = value3.themeColors;
}
}
}
if ('primaryGuildId' in value3) {
moduleValue = require(8401) /* metro dependency 8401: GuildTagUtils */;
guildId2 = moduleValue.getUserPrimaryGuild(currentUser.primaryGuild).guildId;
if (value3.primaryGuildId === (value != guildId2 ? guildId2 : value)) {
object3.pendingPrimaryGuildId = undefined;
} else {
object3.pendingPrimaryGuildId = value3.primaryGuildId;
if ('bio' in value3) {
bio2 = value3.bio;
value23 = undefined;
if (bio2 === (value == r9 ? value23 : r9.bio)) {
object.pendingBio = value23;
} else {
object.pendingBio = value3.bio;
}
}
if ('primaryGuildId' in value3) {
moduleValue = require(8401) /* metro dependency 8401: GuildTagUtils */;
guildId2 = moduleValue.getUserPrimaryGuild(currentUser.primaryGuild).guildId;
if (value3.primaryGuildId === (value != guildId2 ? guildId2 : value)) {
object.pendingPrimaryGuildId = undefined;
} else {
object.pendingPrimaryGuildId = value3.primaryGuildId;
}
}
if ('legacyUsernameDisabled' in value3) {
object.pendingLegacyUsernameDisabled = value3.legacyUsernameDisabled;
}
value = importDefault(694) /* metro dependency 694: Dispatcher */;
dispatch = value.dispatch;
object2 = {type: 'USER_PROFILE_SETTINGS_SET_PENDING_CHANGES', guildId: guildId};
copyDataProperties(object2, object, value2);
Reflect.apply(dispatch, value, [object2]);
}
if ('legacyUsernameDisabled' in value3) {
object3.pendingLegacyUsernameDisabled = value3.legacyUsernameDisabled;
}
value = importDefault(694) /* metro dependency 694: Dispatcher */;
dispatch = value.dispatch;
object4 = {type: 'USER_PROFILE_SETTINGS_SET_PENDING_CHANGES', guildId: guildId};
copyDataProperties(object4, object3, value2);
Reflect.apply(dispatch, value, [object4]);
}
}
global.__d(_fun66746, 8400, [1945, 1878, 5189, 5062, 8401, 694,
2]) /* metro module 8400, dependencies: [1945, 1878, 5189, 5062, 8401, 694, 2] */;
@@ -1,4 +1,16 @@
/* Metro module 7624; source: modules/user_profile/UserProfileSettingsStore.tsx; dependencies: [6, 7, 15, 17, 18, 661, 1417, 7625, 662, 566, 694, 2] */
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 Flux from '../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ConstantsModule from '../../Constants.tsx'; /* Metro dependency 661 */
import * as RouteConstantsModule from '../routing/RouteConstants.tsx'; /* Metro dependency 662 */
import * as FavoritesConstantsModule from '../favorites/FavoritesConstants.tsx'; /* Metro dependency 1417 */
import * as NotificationsInboxConstantsModule from '../notifications_inbox/NotificationsInboxConstants.tsx'; /* Metro dependency 7625 */
function _fun61063(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#61063, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:6, offset: 0x0171995d, size: 785 bytes, params: 8, frame: 30
const closure = function() {
env0_16 = FormStates.OPEN;
@@ -8,7 +20,7 @@ function _fun61063(global, require, importDefault, importAll, module, exports, d
env0_16 = FormStates.CLOSED;
env0_17 = {};
};
const closure3 = USER_PROFILE_SETTINGS_RESET_TRY_IT_OUT_CHANGES;
const USER_PROFILE_SETTINGS_RESET_TRY_IT_OUT_CHANGES2 = USER_PROFILE_SETTINGS_RESET_TRY_IT_OUT_CHANGES;
const closure4 = function() {
env0_13 = {};
env0_17 = {};
@@ -20,19 +32,14 @@ function _fun61063(global, require, importDefault, importAll, module, exports, d
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_0 = importDefault(6) /* metro dependency 6 */;
const env0_1 = importDefault(7) /* metro dependency 7 */;
const env0_2 = importDefault(15) /* metro dependency 15 */;
const env0_3 = importDefault(17) /* metro dependency 17 */;
const env0_4 = importDefault(18) /* metro dependency 18 */;
let value = require(661) /* metro dependency 661: Constants */;
let value = ConstantsModule;
const env0_5 = value.BIO_MAX_LENGTH;
const FormStates = value.FormStates;
const env0_7 = value.ME;
const env0_8 = value.UserSettingsSections;
const FAVORITES_RAW_GUILD_ID = (require(1417) /* metro dependency 1417: FavoritesConstants */).FAVORITES_RAW_GUILD_ID;
const NOTIFICATIONS_INBOX_RAW_GUILD_ID = (require(7625) /* metro dependency 7625: NotificationsInboxConstants */).NOTIFICATIONS_INBOX_RAW_GUILD_ID;
const PSEUDO_GUILD_IDS = (require(662) /* metro dependency 662: RouteConstants */).PSEUDO_GUILD_IDS;
const FAVORITES_RAW_GUILD_ID = (FavoritesConstantsModule).FAVORITES_RAW_GUILD_ID;
const NOTIFICATIONS_INBOX_RAW_GUILD_ID = (NotificationsInboxConstantsModule).NOTIFICATIONS_INBOX_RAW_GUILD_ID;
const PSEUDO_GUILD_IDS = (RouteConstantsModule).PSEUDO_GUILD_IDS;
const env0_9 = {};
object = {};
const env0_11 = {};
@@ -45,7 +52,7 @@ function _fun61063(global, require, importDefault, importAll, module, exports, d
let env0_13 = {};
let env0_16 = FormStates.CLOSED;
let env0_17 = {};
const Store = (importDefault(566) /* metro dependency 566: flux */).Store;
const Store = (Flux).Store;
const value2 = _fun61072(Store);
value2.displayName = 'UserProfileSettingsStore';
const value5 = new value2(importDefault(694) /* metro dependency 694: Dispatcher */,
@@ -75,286 +82,307 @@ function _fun61063(global, require, importDefault, importAll, module, exports, d
env0_17 = {};
}, USER_PROFILE_SETTINGS_RESET_PENDING_ACCOUNT_CHANGES: USER_PROFILE_SETTINGS_RESET_PENDING_ACCOUNT_CHANGES,
USER_PROFILE_SETTINGS_RESET_PENDING_PROFILE_CHANGES: USER_PROFILE_SETTINGS_RESET_PENDING_PROFILE_CHANGES,
USER_PROFILE_SETTINGS_RESET_PENDING_CHANGES: closure4, USER_PROFILE_SETTINGS_RESET_TRY_IT_OUT_CHANGES: closure3,
USER_PROFILE_SETTINGS_RESET_PENDING_CHANGES: closure4,
USER_PROFILE_SETTINGS_RESET_TRY_IT_OUT_CHANGES: USER_PROFILE_SETTINGS_RESET_TRY_IT_OUT_CHANGES2,
USER_PROFILE_SETTINGS_RESET_PENDING_LEGACY_USERNAME_DISABLED: USER_PROFILE_SETTINGS_RESET_PENDING_LEGACY_USERNAME_DISABLED,
USER_PROFILE_SETTINGS_RESET_PENDING_PRIMARY_GUILD_CHANGES: USER_PROFILE_SETTINGS_RESET_PENDING_PRIMARY_GUILD_CHANGES,
USER_PROFILE_UPDATE_FAILURE: USER_PROFILE_UPDATE_FAILURE, LOGOUT: closure5});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/UserProfileSettingsStore.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/UserProfileSettingsStore.tsx');
exports.default = value5;
exports.IGNORE_GUILD_IDS = set;
}
function _isNativeReflectConstruct_61064() { // fn#61064, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:327, offset: 0x01719c6e, size: 94 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) {
function _isNativeReflectConstruct_61064() { // fn#61064, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:327, offset: 0x01719c6e, size: 94 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_61064_isNativeReflectConstruct = function() {
return !!result;
})();
}
return (_isNativeReflectConstruct_61064_isNativeReflectConstruct = function() {
return !!result;
})();
}
function USER_PROFILE_SETTINGS_RESET_TRY_IT_OUT_CHANGES() { // fn#61069, offset: 0x01719d02, size: 15 bytes, params: 1, frame: 2
}
function _fun61072(a0) { // fn#61072, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:871, offset: 0x01719d43, size: 229 bytes, params: 2, frame: 16
const closure = UserProfileSettingsStore;
env0_4(closure, a0);
return env0_1(closure, [{key: 'selectedGuildId', get: get_61074}, {key: 'getFormState', value: function() {
return CLOSED;
}}, {key: 'getErrors', value: value_61076}, {key: 'getPendingChanges', value: value_61077},
{key: 'getTryItOutChanges', value: value_61078}, {key: 'hasUnsavedChanges', value: value_61079},
{key: 'showNotice', value: value_61082}, {key: 'canSubmit', value: value_61085}]);
}
function USER_PROFILE_SETTINGS_INIT({guildId}) { // fn#61087, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:2286, offset: 0x0171a04c, size: 75 bytes, params: 2, frame: 13
env0_15 = guildId == null || env0_12.has(guildId) ? undefined : guildId;
env0_16 = FormStates.OPEN;
env0_17 = {};
}
function USER_PROFILE_SETTINGS_SET_GUILD({guildId}) { // fn#61088, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:2395, offset: 0x0171a097, size: 61 bytes, params: 2, frame: 13
env0_15 = guildId == null || env0_12.has(guildId) ? undefined : guildId;
env0_17 = {};
}
function USER_PROFILE_SETTINGS_SUBMIT_SUCCESS({guildId}) { // fn#61090, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:2681, offset: 0x0171a0ef, size: 73 bytes, params: 2, frame: 4
const SUBMITTING = FormStates.SUBMITTING;
if (CLOSED !== SUBMITTING) {
return false;
function USER_PROFILE_SETTINGS_RESET_TRY_IT_OUT_CHANGES() { // fn#61069, offset: 0x01719d02, size: 15 bytes, params: 1, frame: 2
}
env0_16 = FormStates.OPEN;
env0_17[guildId ?? ME] = env0_11;
}
function USER_PROFILE_SETTINGS_SUBMIT_FAILURE({guildId, errors}) { // fn#61091, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:2820, offset: 0x0171a138, size: 83 bytes, params: 2, frame: 6
const SUBMITTING = FormStates.SUBMITTING;
if (CLOSED !== SUBMITTING) {
return false;
}
env0_16 = FormStates.OPEN;
env0_17[guildId ?? ME] = errors ?? env0_11;
}
function _fun61072(a0) { // fn#61072, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:871, offset: 0x01719d43, size: 229 bytes, params: 2, frame: 16
const UserProfileSettingsStore2 = UserProfileSettingsStore;
Inherits(UserProfileSettingsStore2, a0);
return CreateClass(UserProfileSettingsStore2, [{key: 'selectedGuildId', get: get_61074}, {key: 'getFormState',
value: function() {
return CLOSED;
}}, {key: 'getErrors', value: value_61076}, {key: 'getPendingChanges', value: value_61077},
{key: 'getTryItOutChanges', value: value_61078}, {key: 'hasUnsavedChanges', value: value_61079},
{key: 'showNotice', value: value_61082}, {key: 'canSubmit', value: value_61085}]);
function UserProfileSettingsStore() { // fn#61073, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:883, offset: 0x01719e28, size: 113 bytes, params: 1, frame: 20
const value = environment.__proto__;
env1_0(this, UserProfileSettingsStore);
const value3 = env1_3(UserProfileSettingsStore);
return env1_2(this, _isNativeReflectConstruct_61064() ? global.Reflect.construct(value3, arguments,
env1_3(this).constructor) : value3.apply(this, arguments));
}
function USER_PROFILE_SETTINGS_SET_PENDING_CHANGES(a0) { // fn#61092, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:2983, offset: 0x0171a18b, size: 101 bytes, params: 2, frame: 18
a0.type;
const guildId = a0.guildId;
const value = Object.create(null);
value.type = 0;
value.guildId = 0;
const value2 = copyDataProperties({}, a0, value, null);
const binding = env0_13;
const r1 = guildId ?? ME;
const object2 = {};
copyDataProperties(object2, env0_13[guildId ?? ME], value);
copyDataProperties(object2, value2, value);
binding[r1] = object2;
}
function get_61074() { // fn#61074, offset: 0x00df0e8b, size: 9 bytes, params: 1, frame: 1
return env1_15;
}
function USER_PROFILE_SETTINGS_SET_TRY_IT_OUT_AVATAR({avatar}) { // fn#61093, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:3126, offset: 0x0171a1f0, size: 44 bytes, params: 2, frame: 13
const object2 = {};
copyDataProperties(object2, env0_14, avatar);
object2['tryItOutAvatar'] = avatar;
}
function value_61076(a0) { // fn#61076, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:1317, offset: 0x01719e99, size: 34 bytes, params: 2, frame: 5
return env1_17[a0 ?? ME] ?? env1_11;
}
function USER_PROFILE_SETTINGS_SET_TRY_IT_OUT_AVATAR_DECORATION({avatarDecoration}) { // fn#61094, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:3253, offset: 0x0171a21c, size: 42 bytes, params: 2, frame: 13
const object2 = {};
copyDataProperties(object2, env0_14, avatarDecoration);
object2['tryItOutAvatarDecoration'] = avatarDecoration;
}
function value_61077(a0) { // fn#61077, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:1404, offset: 0x01719ebb, size: 34 bytes, params: 2, frame: 5
return env1_13[a0 ?? ME] ?? env1_9;
}
function USER_PROFILE_SETTINGS_SET_TRY_IT_OUT_PROFILE_EFFECT({profileEffect}) { // fn#61095, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:3407, offset: 0x0171a246, size: 44 bytes, params: 2, frame: 13
const object2 = {};
copyDataProperties(object2, env0_14, profileEffect);
object2['tryItOutProfileEffect'] = profileEffect;
}
function value_61078() { // fn#61078, offset: 0x00df0f5a, size: 9 bytes, params: 1, frame: 1
return env1_14;
}
function USER_PROFILE_SETTINGS_SET_TRY_IT_OUT_BANNER({banner}) { // fn#61096, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:3544, offset: 0x0171a272, size: 42 bytes, params: 2, frame: 13
const object2 = {};
copyDataProperties(object2, env0_14, banner);
object2['tryItOutBanner'] = banner;
}
function value_61079() { // fn#61079, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:1545, offset: 0x01719edd, size: 45 bytes, params: 1, frame: 11
var environment;
let Object = global.Object;
const values = Object.values;
const value = environment.__proto__;
return Reflect.apply(values, Object, [env1_13]).some(function(a0) {
var Object = global.Object;
return Object.values(a0).some(_fun61081);
});
function _fun61080(a0) { // fn#61080, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:1586, offset: 0x01719f0a, size: 41 bytes, params: 2, frame: 11
const Object = global.Object;
return Object.values(a0).some(function(a0) {
return a0 !== undefined;
});
}
function USER_PROFILE_SETTINGS_SET_TRY_IT_OUT_THEME_COLORS({themeColors}) { // fn#61097, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:3666, offset: 0x0171a29c, size: 44 bytes, params: 2, frame: 13
const object2 = {};
copyDataProperties(object2, env0_14, themeColors);
object2['tryItOutThemeColors'] = themeColors;
}
}
function USER_PROFILE_SETTINGS_SET_TRY_IT_OUT_DISPLAY_NAME_STYLES({displayNameStyles}) { // fn#61098, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:3810, offset: 0x0171a2c8, size: 42 bytes, params: 2, frame: 13
const object2 = {};
copyDataProperties(object2, env0_14, displayNameStyles);
object2['tryItOutDisplayNameStyles'] = displayNameStyles;
}
function value_61082() { // fn#61082, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:1656, offset: 0x01719f33, size: 121 bytes, params: 1, frame: 16
var environment;
var r0;
let Object = global.Object;
const values = Object.values;
const getPendingChanges = this.getPendingChanges;
let value = environment.__proto__;
const value3 = Reflect.apply(values, Object, [Reflect.apply(getPendingChanges, this, [ME])]).some(function(a0) {
return a0 !== undefined;
});
if (value3) {
r0 = !!value3;
} else {
Object = global.Object;
value = Object.values(this.getPendingChanges(env1_15));
value = !!value.some(function(a0) {
return a0 !== undefined;
});
r0 = value;
}
return r0;
}
function USER_PROFILE_SETTINGS_SET_TRY_IT_OUT_PRESET({banner, themeColors, avatarDecoration, displayNameStyles}) { // fn#61099, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:3959, offset: 0x0171a2f2, size: 89 bytes, params: 2, frame: 16
const object2 = {};
copyDataProperties(object2, env0_14, banner);
object2['tryItOutBanner'] = banner;
object2['tryItOutThemeColors'] = themeColors;
object2['tryItOutAvatarDecoration'] = avatarDecoration;
object2['tryItOutDisplayNameStyles'] = displayNameStyles;
}
function USER_PROFILE_SETTINGS_RESET_PENDING_ACCOUNT_CHANGES() { // fn#61101, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:4283, offset: 0x0171a358, size: 68 bytes, params: 1, frame: 14
const Object = global.Object;
const fromEntries = Object.fromEntries;
const Object2 = global.Object;
const value2 = Object2.entries(env0_13);
env0_13 = Reflect.apply(fromEntries, Object, [value2.map(_fun61102)]);
}
function USER_PROFILE_SETTINGS_RESET_PENDING_PROFILE_CHANGES() { // fn#61103, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:4603, offset: 0x0171a42b, size: 68 bytes, params: 1, frame: 14
const Object = global.Object;
const fromEntries = Object.fromEntries;
const Object2 = global.Object;
const value2 = Object2.entries(env0_13);
env0_13 = Reflect.apply(fromEntries, Object, [value2.map(_fun61104)]);
}
function USER_PROFILE_SETTINGS_RESET_PENDING_LEGACY_USERNAME_DISABLED() { // fn#61105, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:5121, offset: 0x0171a510, size: 84 bytes, params: 1, frame: 14
let binding = env0_13;
const r3 = binding[ME] ?? ({});
const value2 = r3 == null;
const value3 = undefined;
if (value3 === (value2 ? value3 : r3.pendingLegacyUsernameDisabled)) {
return false;
}
binding = env0_13;
const object2 = {};
copyDataProperties(object2, binding[ME], value2);
object2['pendingLegacyUsernameDisabled'] = value3;
binding[ME] = object2;
return value3;
}
function USER_PROFILE_SETTINGS_RESET_PENDING_PRIMARY_GUILD_CHANGES() { // fn#61106, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:5384, offset: 0x0171a564, size: 84 bytes, params: 1, frame: 14
let binding = env0_13;
const r3 = binding[ME] ?? ({});
const value2 = r3 == null;
const value3 = undefined;
if (value3 === (value2 ? value3 : r3.pendingPrimaryGuildId)) {
return false;
}
binding = env0_13;
const object2 = {};
copyDataProperties(object2, binding[ME], value2);
object2['pendingPrimaryGuildId'] = value3;
binding[ME] = object2;
return value3;
}
function USER_PROFILE_UPDATE_FAILURE({guildId, errors}) { // fn#61107, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:5598, offset: 0x0171a5b8, size: 61 bytes, params: 2, frame: 6
env0_16 = FormStates.OPEN;
env0_17[guildId ?? ME] = errors ?? env0_11;
}
function UserProfileSettingsStore() { // fn#61073, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:883, offset: 0x01719e28, size: 113 bytes, params: 1, frame: 20
const value = environment.__proto__;
env1_0(this, UserProfileSettingsStore);
const value3 = env1_3(UserProfileSettingsStore);
return env1_2(this, _isNativeReflectConstruct_61064() ? global.Reflect.construct(value3, arguments,
env1_3(this).constructor) : value3.apply(this, arguments));
}
function value_61076(a0) { // fn#61076, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:1317, offset: 0x01719e99, size: 34 bytes, params: 2, frame: 5
return env1_17[a0 ?? ME] ?? env1_11;
}
function value_61077(a0) { // fn#61077, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:1404, offset: 0x01719ebb, size: 34 bytes, params: 2, frame: 5
return env1_13[a0 ?? ME] ?? env1_9;
}
function value_61079() { // fn#61079, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:1545, offset: 0x01719edd, size: 45 bytes, params: 1, frame: 11
var environment;
let Object = global.Object;
const values = Object.values;
const value = environment.__proto__;
return Reflect.apply(values, Object, [env1_13]).some(function(a0) {
var Object = global.Object;
return Object.values(a0).some(_fun61081);
});
}
function value_61082() { // fn#61082, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:1656, offset: 0x01719f33, size: 121 bytes, params: 1, frame: 16
var environment;
var r0;
let Object = global.Object;
const values = Object.values;
const getPendingChanges = this.getPendingChanges;
let value = environment.__proto__;
const value3 = Reflect.apply(values, Object, [Reflect.apply(getPendingChanges, this, [ME])]).some(function(a0) {
return a0 !== undefined;
});
if (value3) {
r0 = !!value3;
} else {
Object = global.Object;
value = Object.values(this.getPendingChanges(env1_15));
value = !!value.some(function(a0) {
return a0 !== undefined;
});
r0 = value;
}
return r0;
}
function value_61085() { // fn#61085, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:1829, offset: 0x01719fac, size: 106 bytes, params: 1, frame: 15
var r2;
var property;
var getPendingChanges;
var value3;
var pendingBio;
var value4;
const items2 = [ME, env1_15];
let length = items2.length;
const value2 = 0;
if (value2 < length) {
r2 = value2;
reducibleLoop1: while (true) {
property = items2[r2];
getPendingChanges = this.getPendingChanges;
value3 = Reflect.apply(getPendingChanges, this, [property]);
pendingBio = value3.pendingBio;
if (pendingBio !== undefined) {
pendingBio = value3.pendingBio;
reducibleJoin3: while (true) {
if (pendingBio.length > BIO_MAX_LENGTH) {
return false;
function value_61085() { // fn#61085, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:1829, offset: 0x01719fac, size: 106 bytes, params: 1, frame: 15
var r2;
var property;
var getPendingChanges;
var value3;
var pendingBio;
var value4;
const items2 = [ME, env1_15];
let length = items2.length;
const value2 = 0;
if (value2 < length) {
r2 = value2;
reducibleLoop1: while (true) {
property = items2[r2];
getPendingChanges = this.getPendingChanges;
value3 = Reflect.apply(getPendingChanges, this, [property]);
pendingBio = value3.pendingBio;
if (pendingBio !== undefined) {
pendingBio = value3.pendingBio;
reducibleJoin3: while (true) {
if (pendingBio.length > BIO_MAX_LENGTH) {
return false;
}
break reducibleJoin3;
}
}
break reducibleJoin3;
value4 = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1;
length = items2.length;
if (!(value4 < length)) {
return true;
}
r2 = value4;
continue reducibleLoop1;
}
}
value4 = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1;
length = items2.length;
if (!(value4 < length)) {
return true;
}
r2 = value4;
continue reducibleLoop1;
return true;
}
}
return true;
function USER_PROFILE_SETTINGS_INIT({guildId}) { // fn#61087, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:2286, offset: 0x0171a04c, size: 75 bytes, params: 2, frame: 13
env0_15 = guildId == null || env0_12.has(guildId) ? undefined : guildId;
env0_16 = FormStates.OPEN;
env0_17 = {};
}
function USER_PROFILE_SETTINGS_SET_GUILD({guildId}) { // fn#61088, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:2395, offset: 0x0171a097, size: 61 bytes, params: 2, frame: 13
env0_15 = guildId == null || env0_12.has(guildId) ? undefined : guildId;
env0_17 = {};
}
function USER_PROFILE_SETTINGS_SUBMIT_SUCCESS({guildId}) { // fn#61090, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:2681, offset: 0x0171a0ef, size: 73 bytes, params: 2, frame: 4
const SUBMITTING = FormStates.SUBMITTING;
if (CLOSED !== SUBMITTING) {
return false;
}
env0_16 = FormStates.OPEN;
env0_17[guildId ?? ME] = env0_11;
}
function USER_PROFILE_SETTINGS_SUBMIT_FAILURE({guildId, errors}) { // fn#61091, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:2820, offset: 0x0171a138, size: 83 bytes, params: 2, frame: 6
const SUBMITTING = FormStates.SUBMITTING;
if (CLOSED !== SUBMITTING) {
return false;
}
env0_16 = FormStates.OPEN;
env0_17[guildId ?? ME] = errors ?? env0_11;
}
function USER_PROFILE_SETTINGS_SET_PENDING_CHANGES(a0) { // fn#61092, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:2983, offset: 0x0171a18b, size: 101 bytes, params: 2, frame: 18
a0.type;
const guildId = a0.guildId;
const value = Object.create(null);
value.type = 0;
value.guildId = 0;
const value2 = copyDataProperties({}, a0, value, null);
const binding = env0_13;
const r1 = guildId ?? ME;
const object = {};
copyDataProperties(object, env0_13[guildId ?? ME], value);
copyDataProperties(object, value2, value);
binding[r1] = object;
}
function USER_PROFILE_SETTINGS_SET_TRY_IT_OUT_AVATAR({avatar}) { // fn#61093, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:3126, offset: 0x0171a1f0, size: 44 bytes, params: 2, frame: 13
const object = {};
copyDataProperties(object, env0_14, avatar);
object['tryItOutAvatar'] = avatar;
}
function USER_PROFILE_SETTINGS_SET_TRY_IT_OUT_AVATAR_DECORATION({avatarDecoration}) { // fn#61094, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:3253, offset: 0x0171a21c, size: 42 bytes, params: 2, frame: 13
const object = {};
copyDataProperties(object, env0_14, avatarDecoration);
object['tryItOutAvatarDecoration'] = avatarDecoration;
}
function USER_PROFILE_SETTINGS_SET_TRY_IT_OUT_PROFILE_EFFECT({profileEffect}) { // fn#61095, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:3407, offset: 0x0171a246, size: 44 bytes, params: 2, frame: 13
const object = {};
copyDataProperties(object, env0_14, profileEffect);
object['tryItOutProfileEffect'] = profileEffect;
}
function USER_PROFILE_SETTINGS_SET_TRY_IT_OUT_BANNER({banner}) { // fn#61096, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:3544, offset: 0x0171a272, size: 42 bytes, params: 2, frame: 13
const object = {};
copyDataProperties(object, env0_14, banner);
object['tryItOutBanner'] = banner;
}
function USER_PROFILE_SETTINGS_SET_TRY_IT_OUT_THEME_COLORS({themeColors}) { // fn#61097, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:3666, offset: 0x0171a29c, size: 44 bytes, params: 2, frame: 13
const object = {};
copyDataProperties(object, env0_14, themeColors);
object['tryItOutThemeColors'] = themeColors;
}
function USER_PROFILE_SETTINGS_SET_TRY_IT_OUT_DISPLAY_NAME_STYLES({displayNameStyles}) { // fn#61098, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:3810, offset: 0x0171a2c8, size: 42 bytes, params: 2, frame: 13
const object = {};
copyDataProperties(object, env0_14, displayNameStyles);
object['tryItOutDisplayNameStyles'] = displayNameStyles;
}
function USER_PROFILE_SETTINGS_SET_TRY_IT_OUT_PRESET({banner, themeColors, avatarDecoration, displayNameStyles}) { // fn#61099, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:3959, offset: 0x0171a2f2, size: 89 bytes, params: 2, frame: 16
const object = {};
copyDataProperties(object, env0_14, banner);
object['tryItOutBanner'] = banner;
object['tryItOutThemeColors'] = themeColors;
object['tryItOutAvatarDecoration'] = avatarDecoration;
object['tryItOutDisplayNameStyles'] = displayNameStyles;
}
function USER_PROFILE_SETTINGS_RESET_PENDING_ACCOUNT_CHANGES() { // fn#61101, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:4283, offset: 0x0171a358, size: 68 bytes, params: 1, frame: 14
const Object = global.Object;
const fromEntries = Object.fromEntries;
const Object2 = global.Object;
const value2 = Object2.entries(env0_13);
env0_13 = Reflect.apply(fromEntries, Object, [value2.map(_fun61102)]);
}
function USER_PROFILE_SETTINGS_RESET_PENDING_PROFILE_CHANGES() { // fn#61103, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:4603, offset: 0x0171a42b, size: 68 bytes, params: 1, frame: 14
const Object = global.Object;
const fromEntries = Object.fromEntries;
const Object2 = global.Object;
const value2 = Object2.entries(env0_13);
env0_13 = Reflect.apply(fromEntries, Object, [value2.map(_fun61104)]);
}
function USER_PROFILE_SETTINGS_RESET_PENDING_LEGACY_USERNAME_DISABLED() { // fn#61105, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:5121, offset: 0x0171a510, size: 84 bytes, params: 1, frame: 14
let binding = env0_13;
const r3 = binding[ME] ?? ({});
const value2 = r3 == null;
const value3 = undefined;
if (value3 === (value2 ? value3 : r3.pendingLegacyUsernameDisabled)) {
return false;
}
binding = env0_13;
const object = {};
copyDataProperties(object, binding[ME], value2);
object['pendingLegacyUsernameDisabled'] = value3;
binding[ME] = object;
return value3;
}
function USER_PROFILE_SETTINGS_RESET_PENDING_PRIMARY_GUILD_CHANGES() { // fn#61106, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:5384, offset: 0x0171a564, size: 84 bytes, params: 1, frame: 14
let binding = env0_13;
const r3 = binding[ME] ?? ({});
const value2 = r3 == null;
const value3 = undefined;
if (value3 === (value2 ? value3 : r3.pendingPrimaryGuildId)) {
return false;
}
binding = env0_13;
const object = {};
copyDataProperties(object, binding[ME], value2);
object['pendingPrimaryGuildId'] = value3;
binding[ME] = object;
return value3;
}
function USER_PROFILE_UPDATE_FAILURE({guildId, errors}) { // fn#61107, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:5598, offset: 0x0171a5b8, size: 61 bytes, params: 2, frame: 6
env0_16 = FormStates.OPEN;
env0_17[guildId ?? ME] = errors ?? env0_11;
}
}
function _fun61081(a0) { // fn#61081, offset: 0x00e8d99a, size: 11 bytes, params: 2, frame: 2
return a0 !== undefined;
}
function _fun61102(a0) { // fn#61102, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:4371, offset: 0x0171a39c, size: 143 bytes, params: 2, frame: 17
@@ -394,15 +422,15 @@ function _fun61102(a0) { // fn#61102, source: /ci/build/discord/discord/discord_
r0.return();
}
const items2 = [r1];
const object2 = {};
copyDataProperties(object2, r2, undefined);
object2['pendingGlobalName'] = value;
object2['pendingNickname'] = value;
object2['pendingDisplayNameStyles'] = value;
object2['pendingAvatar'] = value;
object2['pendingAvatarDecoration'] = value;
object2['pendingNameplate'] = value;
items2[1] = object2;
const object = {};
copyDataProperties(object, r2, undefined);
object['pendingGlobalName'] = value;
object['pendingNickname'] = value;
object['pendingDisplayNameStyles'] = value;
object['pendingAvatar'] = value;
object['pendingAvatarDecoration'] = value;
object['pendingNameplate'] = value;
items2[1] = object;
return items2;
}
@@ -443,24 +471,19 @@ function _fun61104(a0) { // fn#61104, source: /ci/build/discord/discord/discord_
r0.return();
}
const items2 = [r1];
const object2 = {};
copyDataProperties(object2, r2, undefined);
object2['pendingPronouns'] = value;
object2['pendingProfileEffect'] = value;
object2['pendingProfileFrame'] = value;
object2['pendingBanner'] = value;
object2['pendingBannerOriginalMd5'] = value;
object2['pendingAccentColor'] = value;
object2['pendingThemeColors'] = value;
object2['pendingBio'] = value;
items2[1] = object2;
const object = {};
copyDataProperties(object, r2, undefined);
object['pendingPronouns'] = value;
object['pendingProfileEffect'] = value;
object['pendingProfileFrame'] = value;
object['pendingBanner'] = value;
object['pendingBannerOriginalMd5'] = value;
object['pendingAccentColor'] = value;
object['pendingThemeColors'] = value;
object['pendingBio'] = value;
items2[1] = object;
return items2;
}
function _fun61080(a0) { // fn#61080, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7802:1586, offset: 0x01719f0a, size: 41 bytes, params: 2, frame: 11
const Object = global.Object;
return Object.values(a0).some(function(a0) {
return a0 !== undefined;
});
}
global.__d(_fun61063, 7624, [6, 7, 15, 17, 18, 661, 1417, 7625, 662, 566, 694,
2]) /* metro module 7624, dependencies: [6, 7, 15, 17, 18, 661, 1417, 7625, 662, 566, 694, 2] */;
File diff suppressed because it is too large. Load diff
@@ -1,10 +1,13 @@
/* Metro module 5195; source: modules/user_profile/UserProfileWidgetConstants.tsx; dependencies: [4234, 5190, 1244, 2] */
import ApplicationStore from '../applications/ApplicationStore.tsx'; /* Metro dependency 4234 */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as WidgetTypeModule from '../../external/discord_common/js/shared/shared-constants/WidgetType.tsx'; /* Metro dependency 5190 */
function _fun45867(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#45867, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5373:6, offset: 0x01199d46, size: 499 bytes, params: 8, frame: 20
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const applicationStore = importDefault(4234) /* metro dependency 4234: ApplicationStore */;
const WidgetType = (require(5190) /* metro dependency 5190: WidgetType */).WidgetType;
const WidgetType = (WidgetTypeModule).WidgetType;
let APPLICATION = WidgetType.APPLICATION;
items3 = [APPLICATION];
let FAVORITE_GAMES = WidgetType.FAVORITE_GAMES;
@@ -15,39 +18,40 @@ function _fun45867(global, require, importDefault, importAll, module, exports, d
items3[3] = CURRENT_GAMES;
let WANT_TO_PLAY_GAMES = WidgetType.WANT_TO_PLAY_GAMES;
items3[4] = WANT_TO_PLAY_GAMES;
const object3 = {};
const object = {};
FAVORITE_GAMES = WidgetType.FAVORITE_GAMES;
object3[FAVORITE_GAMES] = function() {
object[FAVORITE_GAMES] = function() {
return require(dependencyMap[2]).intl.string(require(dependencyMap[2]).t.sUQar8);
};
CURRENT_GAMES = WidgetType.CURRENT_GAMES;
object3[CURRENT_GAMES] = function() {
object[CURRENT_GAMES] = function() {
return require(dependencyMap[2]).intl.string(require(dependencyMap[2]).t.SqNnus);
};
WANT_TO_PLAY_GAMES = WidgetType.WANT_TO_PLAY_GAMES;
object3[WANT_TO_PLAY_GAMES] = function() {
object[WANT_TO_PLAY_GAMES] = function() {
return require(dependencyMap[2]).intl.string(require(dependencyMap[2]).t.bWSQwW);
};
PLAYED_GAMES = WidgetType.PLAYED_GAMES;
object3[PLAYED_GAMES] = function() {
object[PLAYED_GAMES] = function() {
return require(dependencyMap[2]).intl.string(require(dependencyMap[2]).t.scOKET);
};
APPLICATION = WidgetType.APPLICATION;
object3[APPLICATION] = _fun45872;
object[APPLICATION] = _fun45872;
FAVORITE_GAMES = WidgetType.FAVORITE_GAMES;
const items4 = [FAVORITE_GAMES];
CURRENT_GAMES = WidgetType.CURRENT_GAMES;
const items2 = [CURRENT_GAMES];
FAVORITE_GAMES = WidgetType.FAVORITE_GAMES;
items2[1] = FAVORITE_GAMES;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/UserProfileWidgetConstants.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/UserProfileWidgetConstants.tsx');
exports.WIDGET_SORT_ORDER = items3;
exports.WIDGET_TITLES_BY_TYPE = object3;
exports.WIDGET_TITLES_BY_TYPE = object;
exports.WIDGETS_SUPPORTING_COMMENT = items4;
exports.WIDGETS_SUPPORTING_TAGS = items2;
function _fun45872({applicationId}) { // fn#45872, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5373:627, offset: 0x0119a039, size: 58 bytes, params: 2, frame: 12
return ApplicationStore.getApplication(applicationId)?.name ?? '';
}
}
function _fun45872({applicationId}) { // fn#45872, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5373:627, offset: 0x0119a039, size: 58 bytes, params: 2, frame: 12
return ApplicationStore.getApplication(applicationId)?.name ?? '';
}
global.__d(_fun45867, 5195, [4234, 5190, 1244, 2]) /* metro module 5195, dependencies: [4234, 5190, 1244, 2] */;
File diff suppressed because it is too large. Load diff
+377 -329
View File
@@ -1,4 +1,15 @@
/* Metro module 5194; source: modules/user_profile/WidgetStore.tsx; dependencies: [57, 6, 7, 15, 17, 18, 1878, 5189, 22, 566, 694, 2] */
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 Module00057 from '../../by-id/module-00057.js'; /* Metro dependency 57 */
import Flux from '../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
import UserStore from '../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import UserProfileStore from './UserProfileStore.tsx'; /* Metro dependency 5189 */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
function _fun45829(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#45829, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:6, offset: 0x011993f7, size: 469 bytes, params: 8, frame: 18
const _arrayLikeToArray_45832 = function(a0, a1) {
var r0;
@@ -45,16 +56,8 @@ function _fun45829(global, require, importDefault, importAll, module, exports, d
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = importDefault(57) /* metro dependency 57 */;
const env0_3 = importDefault(6) /* metro dependency 6 */;
const env0_4 = importDefault(7) /* metro dependency 7 */;
const env0_5 = importDefault(15) /* metro dependency 15 */;
const env0_6 = importDefault(17) /* metro dependency 17 */;
const env0_7 = importDefault(18) /* metro dependency 18 */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const userProfileStore = importDefault(5189) /* metro dependency 5189: UserProfileStore */;
object = {suggestedGamesIds: [], suggestedWishlistGamesIds: []};
const Store = (importDefault(566) /* metro dependency 566: flux */).Store;
const Store = (Flux).Store;
let value = _fun45836(Store);
value = new value(importDefault(694) /* metro dependency 694: Dispatcher */,
{WIDGET_PENDING_SET: WIDGET_PENDING_SET, WIDGET_PENDING_SAVE_START: function() {
@@ -72,341 +75,386 @@ function _fun45829(global, require, importDefault, importAll, module, exports, d
env0_10 = null;
env0_11 = null;
}, WIDGET_SUGGESTED_REMOVE_GAME: WIDGET_SUGGESTED_REMOVE_GAME});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/WidgetStore.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/WidgetStore.tsx');
exports.default = value;
}
function _createForOfIteratorHelperLoose_45830(a0, a1) { // fn#45830, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:189, offset: 0x011995cc, size: 370 bytes, params: 3, frame: 20
var r6;
var r9;
var r5;
var value3;
var regexp;
const env0_0 = a0;
const Symbol = global.Symbol;
let value = typeof Symbol !== 'undefined';
let r1 = value && a0[global.Symbol.iterator];
r1 = !r1 ? a0['@@iterator'] : r1;
if (r1) {
value = r1.call(a0);
return value.next.bind(value);
}
const Array = global.Array;
if (Array.isArray(a0)) {
function _createForOfIteratorHelperLoose_45830(a0, a1) { // fn#45830, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:189, offset: 0x011995cc, size: 370 bytes, params: 3, frame: 20
var r6;
var r9;
var r5;
var value3;
var regexp;
const env0_0 = a0;
const Symbol = global.Symbol;
let value = typeof Symbol !== 'undefined';
let r1 = value && a0[global.Symbol.iterator];
r1 = !r1 ? a0['@@iterator'] : r1;
if (r1) {
value = r1.call(a0);
return value.next.bind(value);
}
return _fun45831;
}
value = undefined;
if (a0) {
if (typeof a0 === 'string') {
value = _arrayLikeToArray_45832(a0, value);
r5 = value;
} else {
value3 = ({}).toString.call(a0).slice(8, -1);
r6 = value3 === 'Object' && a0.constructor;
r9 = r6 ? a0.constructor.name : value3;
if (r9 === 'Map') {
r6 = global.Array.from(a0);
} else if (r9 === 'Set') {
r6 = global.Array.from(a0);
} else if (r9 === 'Arguments') {
const Array = global.Array;
if (Array.isArray(a0)) {
if (r1) {
}
return _fun45831;
}
value = undefined;
if (a0) {
if (typeof a0 === 'string') {
value = _arrayLikeToArray_45832(a0, value);
r6 = value;
r5 = value;
} else {
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
if (regexp.test(r9)) {
value3 = ({}).toString.call(a0).slice(8, -1);
r6 = value3 === 'Object' && a0.constructor;
r9 = r6 ? a0.constructor.name : value3;
if (r9 === 'Map') {
r6 = global.Array.from(a0);
} else if (r9 === 'Set') {
r6 = global.Array.from(a0);
} else if (r9 === 'Arguments') {
value = _arrayLikeToArray_45832(a0, value);
r6 = value;
} else {
r6 = value;
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
if (regexp.test(r9)) {
value = _arrayLikeToArray_45832(a0, value);
r6 = value;
} else {
r6 = value;
}
}
r5 = r6;
}
} else {
r5 = value;
}
if (r5) {
if (r5) {
}
return _fun45831;
}
const TypeError = global.TypeError;
throw new TypeError('Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');
function _fun45831() { // fn#45831, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:760, offset: 0x00c39d73, size: 69 bytes, params: 1, frame: 5
return env0_1 >= env0_0.length ? {done: true} : {done: false,
value: env0_0[typeof env0_1 === 'bigint' ? env0_1 : +env0_1]};
}
}
function _isNativeReflectConstruct_45833() { // fn#45833, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:1099, offset: 0x0119973e, size: 94 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_45833_isNativeReflectConstruct = function() {
return !!result;
})();
}
function _fun45836(a0) { // fn#45836, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:1390, offset: 0x0119979c, size: 385 bytes, params: 2, frame: 16
const WidgetStore2 = WidgetStore;
Inherits(WidgetStore2, a0);
return CreateClass(WidgetStore2, [{key: 'initialize', value: function() {
this.waitFor(UserStore);
}}, {key: 'getPendingWidgets', value: value_45839}, {key: 'getSaveablePendingWidgets', value: value_45840},
{key: 'hasPendingChanges', value: value_45842}, {key: 'getWidgetUpdates', value: value_45843},
{key: 'getChangedWidgets', value: function() {
return this.getWidgetUpdates().changedWidgets;
}}, {key: 'getRemovedWidgets', value: function() {
return this.getWidgetUpdates().removedWidgets;
}}, {key: 'hasUnsavedChanges', value: function() {
var r0;
var {changedWidgets, removedWidgets, hasOrderChanges} = this.getWidgetUpdates();
r0 = changedWidgets.length > 0 || removedWidgets.length > 0;
r0 = !r0 ? hasOrderChanges : r0;
return r0;
}}, {key: 'canSaveChanges', value: function() {
var r0;
var value = this.getSaveablePendingWidgets();
var value2 = value != null;
if (value2) {
value = value.every(_fun45850);
r0 = value;
} else {
r0 = value2;
}
return r0;
}}, {key: 'isSubmitting', get: get_45851}, {key: 'suggestedFetchError', get: get_45852},
{key: 'suggestedFetchIsLoading', get: get_45853}, {key: 'suggestedFetchAttempted', get: get_45854},
{key: 'suggestedGameIds', get: get_45855}]);
function WidgetStore() { // fn#45837, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:1402, offset: 0x00e07435, size: 113 bytes, params: 1, frame: 20
const value = environment.__proto__;
env1_3(this, WidgetStore);
const value3 = env1_6(WidgetStore);
return env1_5(this, _isNativeReflectConstruct_45833() ? global.Reflect.construct(value3, arguments,
env1_6(this).constructor) : value3.apply(this, arguments));
}
function value_45839() { // fn#45839, offset: 0x00fbd9ec, size: 9 bytes, params: 1, frame: 1
return env1_10;
}
function value_45840() { // fn#45840, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:1796, offset: 0x0119991d, size: 39 bytes, params: 1, frame: 12
var environment;
const value = environment.__proto__;
const value2 = null;
return value2 == env1_10 ? value2 : env1_10.filter(function(a0) {
return !a0.isDiscardable();
});
}
function value_45842() { // fn#45842, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:1894, offset: 0x01199958, size: 77 bytes, params: 1, frame: 15
var r1;
var r0;
var value3;
var defaultImport;
const value = environment.__proto__;
const value2 = env1_10 !== null;
if (value2) {
value3 = env1_11 === null;
if (value3) {
r1 = value3;
} else {
defaultImport = importDefault(22) /* metro dependency 22 */;
r1 = !defaultImport.isEqual(env1_10, env1_11);
}
r0 = r1;
} else {
r0 = value2;
}
return r0;
}
function value_45843() { // fn#45843, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:1989, offset: 0x011999a5, size: 457 bytes, params: 1, frame: 26
var r6;
var r0;
var r3;
var r8;
var id;
var id2;
var value13;
var value14;
var property;
var property2;
var value15;
var value16;
var isEqual2;
var value17;
var value20;
var value21;
var property3;
var has;
var value22;
var id3;
var value24;
var value25;
const saveablePendingWidgets = this.getSaveablePendingWidgets();
if (saveablePendingWidgets == null) {
return {changedWidgets: saveablePendingWidgets ?? [], removedWidgets: [], hasOrderChanges: false};
}
if (env1_11 == null) {
return {changedWidgets: saveablePendingWidgets ?? [], removedWidgets: [], hasOrderChanges: false};
}
let Map = global.Map;
const binding = env1_11;
let map = binding.map;
map = new Map(Reflect.apply(map, binding, [function(a0) {
return [a0.id, a0];
}]));
Map = global.Map;
map = new Map(saveablePendingWidgets.map(function(a0) {
return [a0.id, a0];
}));
const items2 = [];
const items3 = [];
const _createForOfIteratorHelperLoose_45830Binding = _createForOfIteratorHelperLoose_45830;
const value9 = undefined;
const value10 = _createForOfIteratorHelperLoose_45830Binding(map);
const value11 = value10();
let done = value11.done;
const value12 = 0;
if (!done) {
r6 = value11;
while (true) {
value13 = r6.value;
value14 = env1_2(value13, 2);
property = value14[value12];
property2 = value14[1];
value15 = map.get(property);
value16 = value15 != null;
if (value16) {
isEqual2 = property2.isEqual(value15);
r0 = isEqual2;
} else {
r0 = value16;
}
if (r0) {
continue;
}
items2.push(property2);
value17 = value10();
done = value17.done;
if (done) {
break;
}
r6 = value17;
continue;
}
}
r5 = r6;
}
} else {
r5 = value;
}
if (r5) {
if (r5) {
}
return _fun45831;
}
const TypeError = global.TypeError;
throw new TypeError('Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');
}
function _isNativeReflectConstruct_45833() { // fn#45833, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:1099, offset: 0x0119973e, size: 94 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_45833_isNativeReflectConstruct = function() {
return !!result;
})();
}
function _fun45836(a0) { // fn#45836, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:1390, offset: 0x0119979c, size: 385 bytes, params: 2, frame: 16
const closure = WidgetStore;
env0_7(closure, a0);
return env0_4(closure, [{key: 'initialize', value: function() {
this.waitFor(UserStore);
}}, {key: 'getPendingWidgets', value: value_45839}, {key: 'getSaveablePendingWidgets', value: value_45840},
{key: 'hasPendingChanges', value: value_45842}, {key: 'getWidgetUpdates', value: value_45843},
{key: 'getChangedWidgets', value: function() {
return this.getWidgetUpdates().changedWidgets;
}}, {key: 'getRemovedWidgets', value: function() {
return this.getWidgetUpdates().removedWidgets;
}}, {key: 'hasUnsavedChanges', value: function() {
var r0;
var {changedWidgets, removedWidgets, hasOrderChanges} = this.getWidgetUpdates();
r0 = changedWidgets.length > 0 || removedWidgets.length > 0;
r0 = !r0 ? hasOrderChanges : r0;
return r0;
}}, {key: 'canSaveChanges', value: function() {
var r0;
var value = this.getSaveablePendingWidgets();
var value2 = value != null;
if (value2) {
value = value.every(_fun45850);
r0 = value;
} else {
r0 = value2;
}
return r0;
}}, {key: 'isSubmitting', get: get_45851}, {key: 'suggestedFetchError', get: get_45852},
{key: 'suggestedFetchIsLoading', get: get_45853}, {key: 'suggestedFetchAttempted', get: get_45854},
{key: 'suggestedGameIds', get: get_45855}]);
}
function WIDGET_PENDING_SET({widgets}) { // fn#45856, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:3436, offset: 0x01199c0f, size: 94 bytes, params: 2, frame: 13
var r0;
var currentUser;
if (env0_11 === null) {
currentUser = UserStore.getCurrentUser();
if (currentUser != null) {
r0 = UserProfileStore.getUserProfile(currentUser.id)?.widgets ?? [];
}
}
}
function WIDGET_PENDING_SAVE_SUCCESS() { // fn#45858, offset: 0x01199c6d, size: 31 bytes, params: 1, frame: 3
if (env0_10 === null) {
}
}
function WIDGET_SUGGESTED_FETCH_SUCCESS({suggestedGamesIds, suggestedWishlistGamesIds}) { // fn#45860, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:3896, offset: 0x01199c8c, size: 48 bytes, params: 2, frame: 4
const binding = env0_13;
binding.suggestedGamesIds = suggestedGamesIds;
binding.suggestedWishlistGamesIds = suggestedWishlistGamesIds;
}
function WIDGET_SUGGESTED_REMOVE_GAME({applicationId}) { // fn#45864, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:4316, offset: 0x01199cf7, size: 79 bytes, params: 2, frame: 13
const binding = env0_13;
binding.suggestedGamesIds = binding.suggestedGamesIds.filter(function(a0) {
return a0 !== applicationId;
});
binding.suggestedWishlistGamesIds = binding.suggestedWishlistGamesIds.filter(function(a0) {
return a0 !== applicationId;
});
}
function value_45840() { // fn#45840, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:1796, offset: 0x0119991d, size: 39 bytes, params: 1, frame: 12
var environment;
const value = environment.__proto__;
const value2 = null;
return value2 == env1_10 ? value2 : env1_10.filter(function(a0) {
return !a0.isDiscardable();
});
}
function value_45842() { // fn#45842, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:1894, offset: 0x01199958, size: 77 bytes, params: 1, frame: 15
var r1;
var r0;
var value3;
var defaultImport;
const value = environment.__proto__;
const value2 = env1_10 !== null;
if (value2) {
value3 = env1_11 === null;
if (value3) {
r1 = value3;
} else {
defaultImport = importDefault(22) /* metro dependency 22 */;
r1 = !defaultImport.isEqual(env1_10, env1_11);
}
r0 = r1;
} else {
r0 = value2;
}
return r0;
}
function value_45843() { // fn#45843, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:1989, offset: 0x011999a5, size: 457 bytes, params: 1, frame: 26
var r6;
var r0;
var r3;
var r8;
var id;
var id2;
var value13;
var value14;
var property;
var property2;
var value15;
var value16;
var isEqual2;
var value17;
var value20;
var value21;
var property3;
var has;
var value22;
var id3;
var value24;
var value25;
const saveablePendingWidgets = this.getSaveablePendingWidgets();
if (saveablePendingWidgets == null) {
return {changedWidgets: saveablePendingWidgets ?? [], removedWidgets: [], hasOrderChanges: false};
}
if (env1_11 == null) {
return {changedWidgets: saveablePendingWidgets ?? [], removedWidgets: [], hasOrderChanges: false};
}
let Map = global.Map;
const binding = env1_11;
let map = binding.map;
map = new Map(Reflect.apply(map, binding, [function(a0) {
return [a0.id, a0];
}]));
Map = global.Map;
map = new Map(saveablePendingWidgets.map(function(a0) {
return [a0.id, a0];
}));
const items2 = [];
const items3 = [];
const _createForOfIteratorHelperLoose_45830Binding = _createForOfIteratorHelperLoose_45830;
const value9 = undefined;
const value10 = _createForOfIteratorHelperLoose_45830Binding(map);
const value11 = value10();
let done = value11.done;
const value12 = 0;
if (!done) {
r6 = value11;
while (true) {
value13 = r6.value;
value14 = env1_2(value13, 2);
property = value14[value12];
property2 = value14[1];
value15 = map.get(property);
value16 = value15 != null;
if (value16) {
isEqual2 = property2.isEqual(value15);
r0 = isEqual2;
const value18 = _createForOfIteratorHelperLoose_45830(map);
const value19 = value18();
done = value19.done;
if (!done) {
r3 = value19;
while (true) {
value20 = r3.value;
value21 = env1_2(value20, 2);
property = value21[value12];
property3 = value21[1];
has = map.has;
if (!Reflect.apply(has, map, [property])) {
items3.push(property3);
}
value22 = value18();
done = value22.done;
if (done) {
break;
}
r3 = value22;
continue;
}
}
let length = saveablePendingWidgets.length;
const value23 = false;
if (value12 < length) {
r8 = value12;
while (true) {
property = saveablePendingWidgets[r8];
id = property == null ? value9 : property.id;
property = env1_11[r8];
if (property == null) {
id2 = value9;
continue;
}
id3 = property.id;
id2 = id3;
value24 = true;
if (id !== id2) {
r3 = value24;
break;
}
value25 = typeof r8 === 'bigint' ? r8 + 1n : +r8 + 1;
length = saveablePendingWidgets.length;
if (value25 < length) {
r8 = value25;
continue;
}
r3 = value23;
break;
}
} else {
r0 = value16;
r3 = value23;
}
if (r0) {
continue;
}
items2.push(property2);
value17 = value10();
done = value17.done;
if (done) {
break;
}
r6 = value17;
continue;
return {changedWidgets: items2, removedWidgets: items3, hasOrderChanges: r3};
}
}
const value18 = _createForOfIteratorHelperLoose_45830(map);
const value19 = value18();
done = value19.done;
if (!done) {
r3 = value19;
while (true) {
value20 = r3.value;
value21 = env1_2(value20, 2);
property = value21[value12];
property3 = value21[1];
has = map.has;
if (!Reflect.apply(has, map, [property])) {
items3.push(property3);
}
value22 = value18();
done = value22.done;
if (done) {
break;
}
r3 = value22;
continue;
}
}
let length = saveablePendingWidgets.length;
const value23 = false;
if (value12 < length) {
r8 = value12;
while (true) {
property = saveablePendingWidgets[r8];
id = property == null ? value9 : property.id;
property = env1_11[r8];
if (property == null) {
id2 = value9;
continue;
}
id3 = property.id;
id2 = id3;
value24 = true;
if (id !== id2) {
r3 = value24;
break;
}
value25 = typeof r8 === 'bigint' ? r8 + 1n : +r8 + 1;
length = saveablePendingWidgets.length;
if (value25 < length) {
r8 = value25;
continue;
}
r3 = value23;
break;
}
} else {
r3 = value23;
}
return {changedWidgets: items2, removedWidgets: items3, hasOrderChanges: r3};
}
function value_45849() { // fn#45849, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:3022, offset: 0x01199bd6, size: 42 bytes, params: 1, frame: 12
var r0;
let value = this.getSaveablePendingWidgets();
const value2 = value != null;
if (value2) {
value = value.every(function(a0) {
return a0.isValid();
function value_45849() { // fn#45849, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:3022, offset: 0x01199bd6, size: 42 bytes, params: 1, frame: 12
var r0;
let value = this.getSaveablePendingWidgets();
const value2 = value != null;
if (value2) {
value = value.every(function(a0) {
return a0.isValid();
});
r0 = value;
} else {
r0 = value2;
}
return r0;
}
function get_45851() { // fn#45851, offset: 0x00e2f9de, size: 9 bytes, params: 1, frame: 1
return env1_12;
}
function get_45852() { // fn#45852, offset: 0x00df0f5a, size: 9 bytes, params: 1, frame: 1
return env1_14;
}
function get_45853() { // fn#45853, offset: 0x00df0e8b, size: 9 bytes, params: 1, frame: 1
return env1_15;
}
function get_45854() { // fn#45854, offset: 0x00df0e94, size: 9 bytes, params: 1, frame: 1
return env1_16;
}
function get_45855() { // fn#45855, offset: 0x00e2f9d5, size: 9 bytes, params: 1, frame: 1
return env1_13;
}
}
function WIDGET_PENDING_SET({widgets}) { // fn#45856, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:3436, offset: 0x01199c0f, size: 94 bytes, params: 2, frame: 13
var r0;
var currentUser;
var userProfileStoreBinding;
if (env0_11 === null) {
currentUser = UserStore.getCurrentUser();
if (currentUser != null) {
userProfileStoreBinding = UserProfileStore;
r0 = userProfileStoreBinding.getUserProfile(currentUser.id)?.widgets ?? [];
}
}
}
function WIDGET_PENDING_SAVE_SUCCESS() { // fn#45858, offset: 0x01199c6d, size: 31 bytes, params: 1, frame: 3
if (env0_10 === null) {
}
}
function WIDGET_SUGGESTED_FETCH_SUCCESS({suggestedGamesIds, suggestedWishlistGamesIds}) { // fn#45860, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:3896, offset: 0x01199c8c, size: 48 bytes, params: 2, frame: 4
const binding = env0_13;
binding.suggestedGamesIds = suggestedGamesIds;
binding.suggestedWishlistGamesIds = suggestedWishlistGamesIds;
}
function WIDGET_SUGGESTED_REMOVE_GAME({applicationId}) { // fn#45864, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:4316, offset: 0x01199cf7, size: 79 bytes, params: 2, frame: 13
const binding = env0_13;
binding.suggestedGamesIds = binding.suggestedGamesIds.filter(function(a0) {
return a0 !== applicationId;
});
binding.suggestedWishlistGamesIds = binding.suggestedWishlistGamesIds.filter(function(a0) {
return a0 !== applicationId;
});
r0 = value;
} else {
r0 = value2;
}
return r0;
}
function _fun45850(a0) { // fn#45850, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:5372:3097, offset: 0x01199c00, size: 15 bytes, params: 2, frame: 9
return a0.isValid();
}
global.__d(_fun45829, 5194, [57, 6, 7, 15, 17, 18, 1878, 5189, 22, 566, 694,
2]) /* metro module 5194, dependencies: [57, 6, 7, 15, 17, 18, 1878, 5189, 22, 566, 694, 2] */;
File diff suppressed because it is too large. Load diff
@@ -1,17 +1,21 @@
/* Metro module 8517; source: modules/user_profile/experiments/UserProfilePerformanceAnalyticsExperiment.tsx; dependencies: [1854, 2] */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ApexModule from '../../experiments/apex/index.tsx'; /* Metro dependency 1854 */
function _fun67512(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67512, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8702:6, offset: 0x01c27339, size: 171 bytes, params: 8, frame: 22
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_0 = (require(1854) /* metro dependency 1854: apex */).createApexExperiment({'kind': 'user',
const env0_0 = (ApexModule).createApexExperiment({'kind': 'user',
'name': '2026-04-user-profile-performance-analytics', defaultConfig: {performanceAnalyticsEnabled: false},
variations: {[0]: {performanceAnalyticsEnabled: false}, [1]: {performanceAnalyticsEnabled: true}}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/experiments/UserProfilePerformanceAnalyticsExperiment.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/experiments/UserProfilePerformanceAnalyticsExperiment.tsx');
exports.isUserProfilePerformanceAnalyticsEnabled = isUserProfilePerformanceAnalyticsEnabled;
function isUserProfilePerformanceAnalyticsEnabled(a0) { // fn#67513, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8702:477, offset: 0x01c273e4, size: 35 bytes, params: 2, frame: 12
const binding = env0_0;
const getConfig = binding.getConfig;
return Reflect.apply(getConfig, binding, [{location: a0}]).performanceAnalyticsEnabled;
}
}
function isUserProfilePerformanceAnalyticsEnabled(a0) { // fn#67513, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8702:477, offset: 0x01c273e4, size: 35 bytes, params: 2, frame: 12
const binding = env0_0;
const getConfig = binding.getConfig;
return Reflect.apply(getConfig, binding, [{location: a0}]).performanceAnalyticsEnabled;
}
global.__d(_fun67512, 8517, [1854, 2]) /* metro module 8517, dependencies: [1854, 2] */;
@@ -1,11 +1,27 @@
/* Metro module 7626; source: modules/user_profile/experiments/UserProfileWYSIWYGEditingExperiment.tsx; dependencies: [1854, 2] */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ApexModule from '../../experiments/apex/index.tsx'; /* Metro dependency 1854 */
function _fun61111(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#61111, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7804:6, offset: 0x0171aacb, size: 169 bytes, params: 8, frame: 21
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_0 = (require(1854) /* metro dependency 1854: apex */).createApexExperiment({'name': '2026-03-wysiwyg-user-profile-editing',
const env0_0 = (ApexModule).createApexExperiment({'name': '2026-03-wysiwyg-user-profile-editing',
'kind': 'user', defaultConfig: {enabled: false}, variations: {[1]: {enabled: true}}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/experiments/UserProfileWYSIWYGEditingExperiment.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/experiments/UserProfileWYSIWYGEditingExperiment.tsx');
exports.useIsEligibleForUserProfileWYSIWYGEditing = useIsEligibleForUserProfileWYSIWYGEditing;
exports.getIsEligibleForUserProfileWYSIWYGEditing = getIsEligibleForUserProfileWYSIWYGEditing;
function useIsEligibleForUserProfileWYSIWYGEditing(a0) { // fn#61112, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7804:391, offset: 0x00e364db, size: 34 bytes, params: 2, frame: 12
const binding = env0_0;
const useConfig = binding.useConfig;
return Reflect.apply(useConfig, binding, [{location: a0}]).enabled;
}
function getIsEligibleForUserProfileWYSIWYGEditing(a0) { // fn#61113, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7804:531, offset: 0x00e3651f, size: 34 bytes, params: 2, frame: 12
const binding = env0_0;
const getConfig = binding.getConfig;
return Reflect.apply(getConfig, binding, [{location: a0}]).enabled;
}
}
global.__d(_fun61111, 7626, [1854, 2]) /* metro module 7626, dependencies: [1854, 2] */;
@@ -1,76 +1,83 @@
/* Metro module 10377; source: modules/user_profile/hooks/native/useCardGridLayout.tsx; dependencies: [6816, 1478, 2] */
import * as FileImportTrackerModule from '../../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ConstantsModule from '../../native/Constants.tsx'; /* Metro dependency 6816 */
function _fun80398(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#80398, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10563:6, offset: 0x01e792cf, size: 142 bytes, params: 8, frame: 18
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = (require(6816) /* metro dependency 6816: Constants */).PROFILE_SIDE_PADDING;
const calculateTotalGaps = function(a0, a1) {
return a1 * (a0 - 1);
};
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/native/useCardGridLayout.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/native/useCardGridLayout.tsx');
exports.default = useCardGridLayout;
}
function calculateCardWidth(a0, a1, a2) { // fn#80400, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10563:180, offset: 0x01e79370, size: 34 bytes, params: 4, frame: 13
return (a1 - calculateTotalGaps(a0, a2)) / a0;
}
function useCardGridLayout() { // fn#80401, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10563:318, offset: 0x01e79392, size: 419 bytes, params: 1, frame: 25
var r11;
var value9;
var value10;
const value = a0;
const r0 = value !== undefined ? value : {};
let minCardSize = r0.minCardSize;
minCardSize = minCardSize === undefined ? 150 : minCardSize;
let maxCardSize = r0.maxCardSize;
maxCardSize = maxCardSize === undefined ? 180 : maxCardSize;
let gap = r0.gap;
gap = gap === undefined ? 16 : gap;
const containerWidth = r0.containerWidth;
const maxWidth = r0.maxWidth;
const sidePadding = r0.sidePadding;
let r7 = sidePadding !== undefined ? sidePadding : PROFILE_SIDE_PADDING;
const value2 = 1;
const width = importDefault(dependencyMap[value2])().width;
let Math = global.Math;
let min = Math.min;
const r10 = containerWidth ?? width;
let r1 = maxWidth ?? Infinity;
const value5 = Reflect.apply(min, Math, [r10, r1]) - 2 * r7;
Math = global.Math;
const max = Math.max;
const Math2 = global.Math;
const value7 = Reflect.apply(max, Math, [value2, Math2.floor((value5 + gap) / (minCardSize + gap))]);
const value8 = calculateCardWidth(value2, value5, gap);
if (value8 > maxCardSize) {
if (value2 < value7) {
r7 = value2;
while (true) {
value9 = typeof r7 === 'bigint' ? r7 + 1n : +r7 + 1;
value10 = calculateCardWidth(value9, value5, gap);
if (!(value10 > maxCardSize)) {
function useCardGridLayout() { // fn#80401, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10563:318, offset: 0x01e79392, size: 419 bytes, params: 1, frame: 25
var r11;
var value9;
var value10;
const value = a0;
const r0 = value !== undefined ? value : {};
let minCardSize = r0.minCardSize;
minCardSize = minCardSize === undefined ? 150 : minCardSize;
let maxCardSize = r0.maxCardSize;
maxCardSize = maxCardSize === undefined ? 180 : maxCardSize;
let gap = r0.gap;
gap = gap === undefined ? 16 : gap;
const containerWidth = r0.containerWidth;
const maxWidth = r0.maxWidth;
const sidePadding = r0.sidePadding;
let r7 = sidePadding !== undefined ? sidePadding : PROFILE_SIDE_PADDING;
const value2 = 1;
const width = importDefault(dependencyMap[value2])().width;
let Math = global.Math;
let min = Math.min;
const r10 = containerWidth ?? width;
let r1 = maxWidth ?? Infinity;
const value5 = Reflect.apply(min, Math, [r10, r1]) - 2 * r7;
Math = global.Math;
const max = Math.max;
const Math2 = global.Math;
const value7 = Reflect.apply(max, Math, [value2, Math2.floor((value5 + gap) / (minCardSize + gap))]);
const value8 = calculateCardWidth(value2, value5, gap);
if (value8 > maxCardSize) {
if (value2 < value7) {
r7 = value2;
while (true) {
value9 = typeof r7 === 'bigint' ? r7 + 1n : +r7 + 1;
value10 = calculateCardWidth(value9, value5, gap);
if (!(value10 > maxCardSize)) {
r1 = value9;
r11 = value10;
break;
}
if (value9 < value7) {
r7 = value9;
continue;
}
r1 = value9;
r11 = value10;
break;
}
if (value9 < value7) {
r7 = value9;
continue;
}
r1 = value9;
r11 = value10;
break;
} else {
r1 = value2;
r11 = value8;
}
} else {
r1 = value2;
r11 = value8;
}
} else {
r1 = value2;
r11 = value8;
Math = global.Math;
min = Math.min;
const Math3 = global.Math;
const value11 = Reflect.apply(min, Math, [Math3.max(r11, minCardSize), maxCardSize]);
return value11 * r1 + calculateTotalGaps(r1, gap) > value5 ? {columns: value2, cardWidth: undefined,
rowWidth: undefined, gap: gap} : {columns: r1, cardWidth: value11, rowWidth: value11 * r1 + gap * (r1 - value2),
gap: gap};
}
Math = global.Math;
min = Math.min;
const Math3 = global.Math;
const value11 = Reflect.apply(min, Math, [Math3.max(r11, minCardSize), maxCardSize]);
return value11 * r1 + calculateTotalGaps(r1, gap) > value5 ? {columns: value2, cardWidth: undefined,
rowWidth: undefined, gap: gap} : {columns: r1, cardWidth: value11, rowWidth: value11 * r1 + gap * (r1 - value2),
gap: gap};
}
global.__d(_fun80398, 10377, [6816, 1478, 2]) /* metro module 10377, dependencies: [6816, 1478, 2] */;
@@ -1,51 +1,54 @@
/* Metro module 13199; source: modules/user_profile/hooks/native/useScrollToUserProfileEditFormSection.tsx; dependencies: [31, 27, 4502, 7623, 566, 2] */
import AccessibilityStore from '../../../a11y/AccessibilityStore.tsx'; /* Metro dependency 4502 */
import ProfileCustomizationNavigationStore from '../../../profile_customization/ProfileCustomizationNavigationStore.tsx'; /* Metro dependency 7623 */
import * as FileImportTrackerModule from '../../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
function _fun100726(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100726, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13389:6, offset: 0x021f586f, size: 171 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = importAll(31) /* metro dependency 31 */;
const env0_3 = (require(27) /* metro dependency 27 */).findNodeHandle;
const accessibilityStore = importDefault(4502) /* metro dependency 4502: AccessibilityStore */;
const profileCustomizationNavigationStore = importDefault(7623) /* metro dependency 7623: ProfileCustomizationNavigationStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/native/useScrollToUserProfileEditFormSection.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/native/useScrollToUserProfileEditFormSection.tsx');
exports.default = useScrollToUserProfileEditFormSection;
}
function useScrollToUserProfileEditFormSection(a0, a1) { // fn#100727, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13389:270, offset: 0x021f591a, size: 114 bytes, params: 3, frame: 16
const env0_0 = a0;
const env0_1 = a1;
const value2 = ReactModule.useRef({});
const env0_3 = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore], function() {
return AccessibilityStore.useReducedMotion;
});
ReactModule.useEffect(_fun100729);
return value2;
function _fun100729() { // fn#100729, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13389:420, offset: 0x021f598c, size: 80 bytes, params: 1, frame: 15
if (require != null && ReactModule.current?.[require] != null) {
global.setTimeout(_fun100730, 0);
}
function _fun100730() { // fn#100730, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13389:493, offset: 0x021f59dc, size: 98 bytes, params: 1, frame: 16
var environment;
let value = environment.__proto__;
const property = env1_2.current[require];
value = findNodeHandle(env1_0.current);
if (value != null) {
if (property != null) {
property.measureLayout(value, _fun100731);
}
ProfileCustomizationNavigationStore.setState({scrollPosition: null});
}
function _fun100731(a0, a1) { // fn#100731, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13389:570, offset: 0x021f5a3e, size: 61 bytes, params: 3, frame: 13
const current = env2_0.current;
if (current != null) {
current.scrollTo({x: a0, y: a1, animated: !useReducedMotion});
}
}
function useScrollToUserProfileEditFormSection(a0, a1) { // fn#100727, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13389:270, offset: 0x021f591a, size: 114 bytes, params: 3, frame: 16
const env0_0 = a0;
const env0_1 = a1;
const binding = env0_2;
const value2 = binding.useRef({});
const env0_3 = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore], function() {
return AccessibilityStore.useReducedMotion;
});
binding.useEffect(_fun100729);
return value2;
}
}
function _fun100729() { // fn#100729, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13389:420, offset: 0x021f598c, size: 80 bytes, params: 1, frame: 15
if (require != null && env0_2.current?.[require] != null) {
global.setTimeout(_fun100730, 0);
}
}
function _fun100730() { // fn#100730, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13389:493, offset: 0x021f59dc, size: 98 bytes, params: 1, frame: 16
var environment;
let value = environment.__proto__;
const property = env1_2.current[require];
value = findNodeHandle(env1_0.current);
if (value != null) {
if (property != null) {
property.measureLayout(value, _fun100731);
}
ProfileCustomizationNavigationStore.setState({scrollPosition: null});
}
}
function _fun100731(a0, a1) { // fn#100731, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13389:570, offset: 0x021f5a3e, size: 61 bytes, params: 3, frame: 13
const current = env2_0.current;
if (current != null) {
current.scrollTo({x: a0, y: a1, animated: !useReducedMotion});
}
}
global.__d(_fun100726, 13199, [31, 27, 4502, 7623, 566,
2]) /* metro module 13199, dependencies: [31, 27, 4502, 7623, 566, 2] */;
@@ -1,30 +1,32 @@
/* Metro module 10245; source: modules/user_profile/hooks/native/useTrackUserProfileActivityView.tsx; dependencies: [57, 31, 10046, 566, 2] */
import Module00057 from '../../../../by-id/module-00057.js'; /* Metro dependency 57 */
import ContentInventoryOutboxStore from '../../../content_inventory/ContentInventoryOutboxStore.tsx'; /* Metro dependency 10046 */
import * as FileImportTrackerModule from '../../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
function _fun79574(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#79574, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10431:6, offset: 0x01e58ad0, size: 160 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = importDefault(57) /* metro dependency 57 */;
const value = require(31) /* metro dependency 31 */;
const env0_3 = value.useEffect;
const env0_4 = value.useState;
const contentInventoryOutboxStore = importDefault(10046) /* metro dependency 10046: ContentInventoryOutboxStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/native/useTrackUserProfileActivityView.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/native/useTrackUserProfileActivityView.tsx');
exports.default = useTrackUserProfileActivityView;
}
function useTrackUserProfileActivityView({userId, onAction}) { // fn#79575, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10431:266, offset: 0x01e58b70, size: 168 bytes, params: 2, frame: 17
const value2 = (require(566) /* metro dependency 566: flux */).useStateFromStores([ContentInventoryOutboxStore],
function() {
return ContentInventoryOutboxStore.isFetchingUserOutbox(userId);
});
const [property, env0_2] = env0_2Binding(useState(false), 2);
useEffect(_fun79577, [!value2 && !property, onAction]);
function _fun79577() { // fn#79577, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10431:443, offset: 0x01e58c35, size: 48 bytes, params: 1, frame: 12
if (ReactModule.useEffect) {
onAction({action: 'VIEW_ACTIVITY_CARD'});
env0_2(true);
}
}
function useTrackUserProfileActivityView({userId, onAction}) { // fn#79575, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10431:266, offset: 0x01e58b70, size: 168 bytes, params: 2, frame: 17
const value2 = (require(566) /* metro dependency 566: flux */).useStateFromStores([ContentInventoryOutboxStore],
function() {
return ContentInventoryOutboxStore.isFetchingUserOutbox(userId);
});
const [property, env0_2] = env0_2Binding(useState(false), 2);
useEffect(_fun79577, [!value2 && !property, onAction]);
}
function _fun79577() { // fn#79577, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10431:443, offset: 0x01e58c35, size: 48 bytes, params: 1, frame: 12
if (env0_3) {
onAction({action: 'VIEW_ACTIVITY_CARD'});
env0_2(true);
}
}
global.__d(_fun79574, 10245, [57, 31, 10046, 566,
2]) /* metro module 10245, dependencies: [57, 31, 10046, 566, 2] */;
@@ -1,33 +1,34 @@
/* Metro module 10379; source: modules/user_profile/hooks/native/useTrackUserProfileWishlistView.tsx; dependencies: [31, 10035, 566, 2] */
import WishlistStore from '../../../wishlists/WishlistStore.tsx'; /* Metro dependency 10035 */
import * as FileImportTrackerModule from '../../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
function _fun80403(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#80403, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10565:6, offset: 0x01e795a4, size: 144 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const value = require(31) /* metro dependency 31 */;
const env0_2 = value.useEffect;
const env0_3 = value.useRef;
const wishlistStore = importDefault(10035) /* metro dependency 10035: WishlistStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/native/useTrackUserProfileWishlistView.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/native/useTrackUserProfileWishlistView.tsx');
exports.default = useTrackUserProfileWishlistView;
}
function useTrackUserProfileWishlistView({wishlistId, onAction, productLines, isVisible}) { // fn#80404, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10565:254, offset: 0x01e79634, size: 176 bytes, params: 2, frame: 20
isVisible = isVisible === undefined || isVisible;
const value2 = (require(566) /* metro dependency 566: flux */).useStateFromStores([WishlistStore], function() {
return WishlistStore.isFetching(wishlistId);
});
const env0_5 = useRef(false);
useEffect(_fun80406, [isVisible, value2, onAction, wishlistId, productLines]);
}
function _fun80406() { // fn#80406, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10565:423, offset: 0x01e796ff, size: 115 bytes, params: 1, frame: 14
if (isVisible) {
if (!(env0_4 || env0_5.current)) {
onAction({action: 'VIEW_WISHLIST', wishlistId: wishlistId, productLines: productLines ?? undefined});
env0_5.current = true;
function useTrackUserProfileWishlistView({wishlistId, onAction, productLines, isVisible}) { // fn#80404, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10565:254, offset: 0x01e79634, size: 176 bytes, params: 2, frame: 20
isVisible = isVisible === undefined || isVisible;
const value2 = (require(566) /* metro dependency 566: flux */).useStateFromStores([WishlistStore], function() {
return WishlistStore.isFetching(wishlistId);
});
const env0_5 = useRef(false);
useEffect(_fun80406, [isVisible, value2, onAction, wishlistId, productLines]);
function _fun80406() { // fn#80406, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10565:423, offset: 0x01e796ff, size: 115 bytes, params: 1, frame: 14
if (isVisible) {
if (!(env0_4 || env0_5.current)) {
onAction({action: 'VIEW_WISHLIST', wishlistId: wishlistId, productLines: productLines ?? undefined});
env0_5.current = true;
}
} else {
env0_5.current = false;
}
}
} else {
env0_5.current = false;
}
}
global.__d(_fun80403, 10379, [31, 10035, 566, 2]) /* metro module 10379, dependencies: [31, 10035, 566, 2] */;
@@ -1,114 +1,113 @@
/* Metro module 13201; source: modules/user_profile/hooks/native/useUploadAvatar.tsx; dependencies: [5, 31, 1878, 661, 1880, 632, 7882, 4080, 4660, 3802, 8403, 7613, 8400, 8402, 2] */
import Module00005 from '../../../../by-id/module-00005.js'; /* Metro dependency 5 */
import UserStore from '../../../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import * as FileImportTrackerModule from '../../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as ConstantsModule from '../../../../Constants.tsx'; /* Metro dependency 661 */
import * as PremiumConstantsModule from '../../../premium/PremiumConstants.tsx'; /* Metro dependency 1880 */
function _fun100743(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100743, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13391:6, offset: 0x021f6283, size: 239 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(5) /* metro dependency 5 */;
const env0_4 = (require(31) /* metro dependency 31 */).useCallback;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const constantsModule = require(661) /* metro dependency 661: Constants */;
const env0_6 = constantsModule.AnalyticsPages;
const env0_7 = constantsModule.UPLOAD_MEDIUM_SIZE;
const env0_8 = constantsModule.Base64GIFPrefix;
const env0_9 = constantsModule.AnalyticsSections;
const env0_10 = constantsModule.UpsellTypes;
const env0_11 = (require(1880) /* metro dependency 1880: PremiumConstants */).PremiumUpsellTypes;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/native/useUploadAvatar.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/native/useUploadAvatar.tsx');
exports.default = useUploadAvatar;
}
function useUploadAvatar({guildId, isTryItOut, analyticsLocations}) { // fn#100744, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13391:375, offset: 0x021f6372, size: 180 bytes, params: 2, frame: 19
isTryItOut = !(isTryItOut === undefined) && isTryItOut;
const currentUser = (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([UserStore],
function() {
return UserStore.getCurrentUser();
});
return useCallback(currentUser(_fun100748), [currentUser, guildId, isTryItOut, useCallback(function() {
importDefault(dependencyMap[6]).handleShowUpsellAlert({initialUpsellKey: UpsellTypes.ANIMATED_AVATAR,
analyticsLocation: {page: AnalyticsPages.USER_SETTINGS, section: AnalyticsSections.SETTINGS_OVERVIEW},
analyticsProperties: {type: PremiumUpsellTypes.ANIMATED_USER_AVATAR_MODAL},
analyticsLocations: analyticsLocations});
}, [analyticsLocations])]);
}
function* _fun100748() { // fn#100748, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13391:756, offset: 0x021f64ae, size: 412 bytes, params: 1, frame: 23
var r3;
var value7;
var match;
var RegExp;
var value9;
var value10;
var regExp;
var binding3;
var value12;
var createPendingImage;
var pendingImage;
var binding4;
if (true) {
value = environment.__proto__.__proto__;
var binding = env2_1;
var binding2 = env2_2;
binding(binding2[7]).hideActionSheet();
var value4 = binding(binding2[8]);
var openImagePicker = value4.openImagePicker;
var object2 = {size: env2_7};
yield Reflect.apply(openImagePicker, value4, [object2]);
var value5 = undefined;
if (false) {
return value5;
}
var base64 = value5.base64;
var originalMd5 = value5.originalMd5;
if (base64 != null) {
value7 = environment.__proto__;
r3 = importDefault || env2_1(env2_2[9]).canUseAnimatedAvatar(env1_3);
match = base64.match;
RegExp = global.RegExp;
value9 = '^' + env2_8;
value10 = Object.create(RegExp.prototype, {constructor: {value: RegExp}});
regExp = new RegExp(value9, 'i');
if (Reflect.apply(match, base64, [regExp instanceof Object ? regExp : value10]) == null) {
binding = env2_0;
binding3 = env2_2;
value12 = binding(binding3[10]);
createPendingImage = value12.createPendingImage;
object2 = {imageUri: base64};
object2.description = binding(binding3[10]).generateAvatarDescription();
object2.originalMd5 = originalMd5;
pendingImage = Reflect.apply(createPendingImage, value12, [object2]);
binding = env2_0;
binding4 = env2_2;
if (importDefault) {
binding(binding4[11]).setTryItOutAvatar(pendingImage);
} else {
value = binding(binding4[12]);
value.setPendingChanges({guildId: require, avatar: pendingImage});
value = binding(binding4[13]);
value.announcePendingAvatarChange('set');
function useUploadAvatar({guildId, isTryItOut, analyticsLocations}) { // fn#100744, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13391:375, offset: 0x021f6372, size: 180 bytes, params: 2, frame: 19
isTryItOut = !(isTryItOut === undefined) && isTryItOut;
const currentUser = (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([UserStore],
function() {
return UserStore.getCurrentUser();
});
return useCallback(currentUser(_fun100748), [currentUser, guildId, isTryItOut, useCallback(function() {
importDefault(dependencyMap[6]).handleShowUpsellAlert({initialUpsellKey: UpsellTypes.ANIMATED_AVATAR,
analyticsLocation: {page: AnalyticsPages.USER_SETTINGS, section: AnalyticsSections.SETTINGS_OVERVIEW},
analyticsProperties: {type: PremiumUpsellTypes.ANIMATED_USER_AVATAR_MODAL},
analyticsLocations: analyticsLocations});
}, [analyticsLocations])]);
function* _fun100748() { // fn#100748, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13391:756, offset: 0x021f64ae, size: 412 bytes, params: 1, frame: 23
var r3;
var value7;
var match;
var RegExp;
var value9;
var value10;
var regExp;
var binding3;
var value12;
var createPendingImage;
var pendingImage;
var binding4;
if (true) {
value = environment.__proto__.__proto__;
var binding = env2_1;
var binding2 = env2_2;
binding(binding2[7]).hideActionSheet();
var value4 = binding(binding2[8]);
var openImagePicker = value4.openImagePicker;
var object = {size: env2_7};
yield Reflect.apply(openImagePicker, value4, [object]);
var value5 = undefined;
if (false) {
return value5;
}
} else if (r3) {
binding = env2_0;
binding3 = env2_2;
value12 = binding(binding3[10]);
createPendingImage = value12.createPendingImage;
object2 = {imageUri: base64};
object2.description = binding(binding3[10]).generateAvatarDescription();
object2.originalMd5 = originalMd5;
pendingImage = Reflect.apply(createPendingImage, value12, [object2]);
binding = env2_0;
binding4 = env2_2;
if (importDefault) {
binding(binding4[11]).setTryItOutAvatar(pendingImage);
} else {
value = binding(binding4[12]);
value.setPendingChanges({guildId: require, avatar: pendingImage});
value = binding(binding4[13]);
value.announcePendingAvatarChange('set');
var base64 = value5.base64;
var originalMd5 = value5.originalMd5;
if (base64 != null) {
value7 = environment.__proto__;
r3 = importDefault || env2_1(env2_2[9]).canUseAnimatedAvatar(env1_3);
match = base64.match;
RegExp = global.RegExp;
value9 = '^' + env2_8;
value10 = Object.create(RegExp.prototype, {constructor: {value: RegExp}});
regExp = new RegExp(value9, 'i');
if (Reflect.apply(match, base64, [regExp instanceof Object ? regExp : value10]) == null) {
binding = env2_0;
binding3 = env2_2;
value12 = binding(binding3[10]);
createPendingImage = value12.createPendingImage;
object = {imageUri: base64};
object.description = binding(binding3[10]).generateAvatarDescription();
object.originalMd5 = originalMd5;
pendingImage = Reflect.apply(createPendingImage, value12, [object]);
binding = env2_0;
binding4 = env2_2;
if (importDefault) {
binding(binding4[11]).setTryItOutAvatar(pendingImage);
} else {
value = binding(binding4[12]);
value.setPendingChanges({guildId: require, avatar: pendingImage});
value = binding(binding4[13]);
value.announcePendingAvatarChange('set');
}
} else if (r3) {
binding = env2_0;
binding3 = env2_2;
value12 = binding(binding3[10]);
createPendingImage = value12.createPendingImage;
object = {imageUri: base64};
object.description = binding(binding3[10]).generateAvatarDescription();
object.originalMd5 = originalMd5;
pendingImage = Reflect.apply(createPendingImage, value12, [object]);
binding = env2_0;
binding4 = env2_2;
if (importDefault) {
binding(binding4[11]).setTryItOutAvatar(pendingImage);
} else {
value = binding(binding4[12]);
value.setPendingChanges({guildId: require, avatar: pendingImage});
value = binding(binding4[13]);
value.announcePendingAvatarChange('set');
}
} else {
useCallback();
}
}
} else {
useCallback();
}
}
}
}
global.__d(_fun100743, 13201, [5, 31, 1878, 661, 1880, 632, 7882, 4080, 4660, 3802, 8403, 7613, 8400, 8402,
2]) /* metro module 13201, dependencies: [5, 31, 1878, 661, 1880, 632, 7882, 4080, 4660, 3802, 8403, 7613, 8400, 8402, 2] */;
@@ -1,65 +1,68 @@
/* Metro module 8746; source: modules/user_profile/hooks/native/useUserProfileAnalyticsProperties.tsx; dependencies: [31, 8516, 2] */
import * as FileImportTrackerModule from '../../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as ConstantsModule from '../../Constants.tsx'; /* Metro dependency 8516 */
function _fun68479(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68479, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8931:6, offset: 0x01c505af, size: 128 bytes, params: 8, frame: 18
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_0 = importAll(31) /* metro dependency 31 */;
const env0_1 = (require(8516) /* metro dependency 8516: Constants */).UserProfileAnalyticsTypes;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/native/useUserProfileAnalyticsProperties.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/native/useUserProfileAnalyticsProperties.tsx');
exports.default = useUserProfileAnalyticsProperties;
}
function useUserProfileAnalyticsProperties({userId, user, channelId, guildId, displayProfile, guildMember, profileEffectSkuId, type}) { // fn#68480, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8931:257, offset: 0x01c5062f, size: 263 bytes, params: 2, frame: 24
const userId2 = userId;
let value = undefined;
let binding = userId2;
value = binding.useMemo(_fun68481, [userId, channelId, guildId, displayProfile,
guildMember == null ? value : guildMember.avatarDecoration, user == null ? value : user.avatarDecoration,
profileEffectSkuId, type]);
binding = userId2;
return binding.useMemo(_fun68483, [guildId, value, binding.useMemo(_fun68482, [displayProfile, guildMember])]);
function _fun68481() { // fn#68481, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8931:417, offset: 0x01c50736, size: 270 bytes, params: 1, frame: 16
const object = {};
object.type = type ?? UserProfileAnalyticsTypes.USER_SHEET;
object.other_user_id = userId;
object.channel_id = channelId;
object.guild_id = guildId;
object.profile_has_nitro_customization = displayProfile != null && displayProfile?.hasPremiumCustomization();
object.profile_has_theme_color_customized = displayProfile != null && displayProfile.hasThemeColors();
displayProfileBinding = displayProfile;
const value6 = undefined;
object.profile_has_theme_animation = (displayProfileBinding == null ? value6 : displayProfile.popoutAnimationParticleType) != null;
const Boolean = global.Boolean;
object.has_avatar_decoration = Boolean(guildMember == null ? value6 : guildMember.avatarDecoration) || global.Boolean(user == null ? value6 : user.avatarDecoration);
object.has_profile_effect = profileEffectSkuId != null;
return object;
}
function useUserProfileAnalyticsProperties({userId, user, channelId, guildId, displayProfile, guildMember, profileEffectSkuId, type}) { // fn#68480, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8931:257, offset: 0x01c5062f, size: 263 bytes, params: 2, frame: 24
const env0_0 = userId;
let value = undefined;
let binding = env0_0;
value = binding.useMemo(_fun68481, [userId, channelId, guildId, displayProfile,
guildMember == null ? value : guildMember.avatarDecoration, user == null ? value : user.avatarDecoration,
profileEffectSkuId, type]);
binding = env0_0;
return binding.useMemo(_fun68483, [guildId, value, binding.useMemo(_fun68482, [displayProfile, guildMember])]);
}
function _fun68482() { // fn#68482, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8931:956, offset: 0x01c50844, size: 163 bytes, params: 1, frame: 16
const object = {};
let Boolean = global.Boolean;
const guildMemberBinding = guildMember;
const value2 = undefined;
object.has_nickname = Boolean(guildMemberBinding == null ? value2 : guildMember.nick);
Boolean = global.Boolean;
object.has_guild_member_avatar = Boolean(guildMember == null ? value2 : guildMember.avatar);
object.has_guild_member_banner = displayProfile == null ? value2 : displayProfile.isUsingGuildMemberBanner();
object.has_guild_member_bio = displayProfile == null ? value2 : displayProfile.isUsingGuildMemberBio();
return object;
}
function _fun68481() { // fn#68481, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8931:417, offset: 0x01c50736, size: 270 bytes, params: 1, frame: 16
const object2 = {};
object2.type = type ?? UserProfileAnalyticsTypes.USER_SHEET;
object2.other_user_id = userId;
object2.channel_id = channelId;
object2.guild_id = guildId;
object2.profile_has_nitro_customization = displayProfile != null && displayProfile?.hasPremiumCustomization();
object2.profile_has_theme_color_customized = displayProfile != null && displayProfile.hasThemeColors();
displayProfileBinding = displayProfile;
const value6 = undefined;
object2.profile_has_theme_animation = (displayProfileBinding == null ? value6 : displayProfile.popoutAnimationParticleType) != null;
const Boolean = global.Boolean;
object2.has_avatar_decoration = Boolean(guildMember == null ? value6 : guildMember.avatarDecoration) || global.Boolean(user == null ? value6 : user.avatarDecoration);
object2.has_profile_effect = profileEffectSkuId != null;
return object2;
}
function _fun68483() { // fn#68483, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8931:1221, offset: 0x01c508e7, size: 45 bytes, params: 1, frame: 12
var r0;
var object;
const guildIdBinding = guildId;
if (guildIdBinding == null) {
r0 = env0_8;
} else {
object = {};
copyDataProperties(object, env0_9, copyDataProperties(object, env0_8, guildIdBinding));
r0 = object;
}
return r0;
}
function _fun68482() { // fn#68482, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8931:956, offset: 0x01c50844, size: 163 bytes, params: 1, frame: 16
const object2 = {};
let Boolean = global.Boolean;
const guildMemberBinding = guildMember;
const value2 = undefined;
object2.has_nickname = Boolean(guildMemberBinding == null ? value2 : guildMember.nick);
Boolean = global.Boolean;
object2.has_guild_member_avatar = Boolean(guildMember == null ? value2 : guildMember.avatar);
object2.has_guild_member_banner = displayProfile == null ? value2 : displayProfile.isUsingGuildMemberBanner();
object2.has_guild_member_bio = displayProfile == null ? value2 : displayProfile.isUsingGuildMemberBio();
return object2;
}
function _fun68483() { // fn#68483, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8931:1221, offset: 0x01c508e7, size: 45 bytes, params: 1, frame: 12
var r0;
var object2;
const guildIdBinding = guildId;
if (guildIdBinding == null) {
r0 = env0_8;
} else {
object2 = {};
copyDataProperties(object2, env0_9, copyDataProperties(object2, env0_8, guildIdBinding));
r0 = object2;
}
return r0;
}
global.__d(_fun68479, 8746, [31, 8516, 2]) /* metro module 8746, dependencies: [31, 8516, 2] */;
@@ -1,12 +1,15 @@
/* Metro module 8752; source: modules/user_profile/hooks/native/useUserProfileBannerHeight.tsx; dependencies: [6816, 1478, 2] */
import * as FileImportTrackerModule from '../../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ConstantsModule from '../../native/Constants.tsx'; /* Metro dependency 6816 */
function _fun68528(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68528, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8937:6, offset: 0x01c52944, size: 120 bytes, params: 8, frame: 18
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = (require(6816) /* metro dependency 6816: Constants */).BANNER_ASPECT_RATIO;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/native/useUserProfileBannerHeight.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/native/useUserProfileBannerHeight.tsx');
exports.default = function(a0) {
var property = importDefault(dependencyMap[1])().width;
return global.Math.round((a0 == null ? property : global.Math.min(property, a0)) / BANNER_ASPECT_RATIO);
};
}
global.__d(_fun68528, 8752, [6816, 1478, 2]) /* metro module 8752, dependencies: [6816, 1478, 2] */;
@@ -1,86 +1,84 @@
/* Metro module 8497; source: modules/user_profile/hooks/native/useUserProfileColors.tsx; dependencies: [4502, 482, 4048, 6791, 566, 1357, 3860, 697, 7593, 673, 2] */
import MobileVisualRefreshExperiment from '../../../themes/experiments/MobileVisualRefreshExperiment.tsx'; /* Metro dependency 1357 */
import UseTheme from '../../../../hooks/useTheme.tsx'; /* Metro dependency 4048 */
import AccessibilityStore from '../../../a11y/AccessibilityStore.tsx'; /* Metro dependency 4502 */
import * as FileImportTrackerModule from '../../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ConstantsModule from '../../../../external/discord_common/js/shared/Constants.tsx'; /* Metro dependency 482 */
import * as UseTokenModule from '../../../../design/tokens/native/useToken.tsx'; /* Metro dependency 3860 */
import * as UseProfileThemeValuesNativeModule from '../../useProfileThemeValues.native.tsx'; /* Metro dependency 6791 */
import * as UserProfileGradientUtilsModule from '../../UserProfileGradientUtils.tsx'; /* Metro dependency 7593 */
function _fun67409(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67409, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8682:6, offset: 0x01c21719, size: 140 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const accessibilityStore = importDefault(4502) /* metro dependency 4502: AccessibilityStore */;
const env0_4 = (require(482) /* metro dependency 482: Constants */).ThemeTypes;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/native/useUserProfileColors.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/native/useUserProfileColors.tsx');
exports.useUserProfileColors = useUserProfileColors;
function useUserProfileColors({theme, primaryColor, secondaryColor}) { // fn#67410, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8682:243, offset: 0x01c217a5, size: 761 bytes, params: 2, frame: 27
const value2 = (UseTheme)();
const value3 = (UseProfileThemeValuesNativeModule).useProfileThemeValues(theme);
const syncProfileThemeWithUserTheme = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore],
function() {
return AccessibilityStore.syncProfileThemeWithUserTheme;
});
const value4 = (MobileVisualRefreshExperiment)('useUserProfileColors');
object = {};
let useToken = UseTokenModule.useToken;
let USER_PROFILE_GRADIENT_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.USER_PROFILE_GRADIENT_BACKGROUND;
object.gradientFallbackBackground = Reflect.apply(useToken, UseTokenModule, [USER_PROFILE_GRADIENT_BACKGROUND,
value2]);
useToken = UseTokenModule.useToken;
USER_PROFILE_GRADIENT_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.USER_PROFILE_GRADIENT_BACKGROUND;
object.gradientSecondaryBackground = Reflect.apply(useToken, UseTokenModule, [USER_PROFILE_GRADIENT_BACKGROUND,
value2]);
useToken = UseTokenModule.useToken;
const USER_PROFILE_CONTAINER_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.USER_PROFILE_CONTAINER_BACKGROUND;
object.containerBackground = Reflect.apply(useToken, UseTokenModule, [USER_PROFILE_CONTAINER_BACKGROUND, value2]);
useToken = UseTokenModule.useToken;
const BORDER_MUTED = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_MUTED;
object.containerBorderColor = Reflect.apply(useToken, UseTokenModule, [BORDER_MUTED, value2]);
useToken = UseTokenModule.useToken;
const BACKGROUND_BASE_LOWER = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOWER;
object.avatarBackground = Reflect.apply(useToken, UseTokenModule, [BACKGROUND_BASE_LOWER, value2]);
useToken = UseTokenModule.useToken;
const BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object.statusBackground = Reflect.apply(useToken, UseTokenModule, [BACKGROUND_SURFACE_HIGH, value2]);
useToken = UseTokenModule.useToken;
const BACKGROUND_MOD_NORMAL = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_NORMAL;
const value5 = Reflect.apply(useToken, UseTokenModule, [BACKGROUND_MOD_NORMAL, theme]);
const OPACITY_WHITE_24 = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.OPACITY_WHITE_24;
const r4 = value4 ? object.containerBackground : theme !== ThemeTypes.LIGHT ? value5 : OPACITY_WHITE_24;
if (primaryColor == null) {
return object;
}
if (secondaryColor == null) {
return object;
}
if (value3 == null) {
return object;
}
const sectionBox = value3.sectionBox;
const overlay = value3.overlay;
const overlaySyncedWithUserTheme = value3.overlaySyncedWithUserTheme;
const value6 = UserProfileGradientUtilsModule.calculateOverlayedColor(primaryColor,
syncProfileThemeWithUserTheme ? overlaySyncedWithUserTheme : overlay);
const object2 = {};
copyDataProperties(object2, object, value2);
object2['containerBackground'] = r4;
let value = require(673) /* metro dependency 673: ColorUtils */;
let int2hex = value.int2hex;
value = Reflect.apply(int2hex, value, [UserProfileGradientUtilsModule.calculateOverlayedColor(secondaryColor, overlay)]);
object2['gradientSecondaryBackground'] = value;
value = require(673) /* metro dependency 673: ColorUtils */;
value = value.int2hex(value6);
object2['avatarBackground'] = value;
int2hex = (require(673) /* metro dependency 673: ColorUtils */).int2hex;
value = Reflect.apply(int2hex, value, [UserProfileGradientUtilsModule.calculateOverlayedColor(value6, sectionBox)]);
object2['statusBackground'] = value;
return object2;
}
}
function useUserProfileColors({theme, primaryColor, secondaryColor}) { // fn#67410, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8682:243, offset: 0x01c217a5, size: 761 bytes, params: 2, frame: 27
var object3;
const value2 = (importDefault(4048) /* metro dependency 4048: useTheme */)();
const value3 = (require(6791) /* metro dependency 6791: useProfileThemeValuesNative */).useProfileThemeValues(theme);
const syncProfileThemeWithUserTheme = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore],
function() {
return AccessibilityStore.syncProfileThemeWithUserTheme;
});
const value4 = (importDefault(1357) /* metro dependency 1357: MobileVisualRefreshExperiment */)('useUserProfileColors');
object3 = {};
const useTokenModule = require(3860) /* metro dependency 3860: useToken */;
let useToken = useTokenModule.useToken;
let USER_PROFILE_GRADIENT_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.USER_PROFILE_GRADIENT_BACKGROUND;
object3.gradientFallbackBackground = Reflect.apply(useToken, useTokenModule, [USER_PROFILE_GRADIENT_BACKGROUND,
value2]);
const moduleValue4 = useTokenModule;
useToken = moduleValue4.useToken;
USER_PROFILE_GRADIENT_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.USER_PROFILE_GRADIENT_BACKGROUND;
object3.gradientSecondaryBackground = Reflect.apply(useToken, moduleValue4, [USER_PROFILE_GRADIENT_BACKGROUND,
value2]);
const moduleValue5 = useTokenModule;
useToken = moduleValue5.useToken;
const USER_PROFILE_CONTAINER_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.USER_PROFILE_CONTAINER_BACKGROUND;
object3.containerBackground = Reflect.apply(useToken, moduleValue5, [USER_PROFILE_CONTAINER_BACKGROUND, value2]);
const moduleValue6 = useTokenModule;
useToken = moduleValue6.useToken;
const BORDER_MUTED = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_MUTED;
object3.containerBorderColor = Reflect.apply(useToken, moduleValue6, [BORDER_MUTED, value2]);
const moduleValue7 = useTokenModule;
useToken = moduleValue7.useToken;
const BACKGROUND_BASE_LOWER = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOWER;
object3.avatarBackground = Reflect.apply(useToken, moduleValue7, [BACKGROUND_BASE_LOWER, value2]);
const moduleValue8 = useTokenModule;
useToken = moduleValue8.useToken;
const BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object3.statusBackground = Reflect.apply(useToken, moduleValue8, [BACKGROUND_SURFACE_HIGH, value2]);
const moduleValue9 = useTokenModule;
useToken = moduleValue9.useToken;
const BACKGROUND_MOD_NORMAL = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_NORMAL;
const value5 = Reflect.apply(useToken, moduleValue9, [BACKGROUND_MOD_NORMAL, theme]);
const OPACITY_WHITE_24 = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.OPACITY_WHITE_24;
const r4 = value4 ? object3.containerBackground : theme !== ThemeTypes.LIGHT ? value5 : OPACITY_WHITE_24;
if (primaryColor == null) {
return object3;
}
if (secondaryColor == null) {
return object3;
}
if (value3 == null) {
return object3;
}
const sectionBox = value3.sectionBox;
const overlay = value3.overlay;
const overlaySyncedWithUserTheme = value3.overlaySyncedWithUserTheme;
const userProfileGradientUtilsModule = require(7593) /* metro dependency 7593: UserProfileGradientUtils */;
const value6 = userProfileGradientUtilsModule.calculateOverlayedColor(primaryColor,
syncProfileThemeWithUserTheme ? overlaySyncedWithUserTheme : overlay);
const object4 = {};
copyDataProperties(object4, object3, value2);
object4['containerBackground'] = r4;
let value = require(673) /* metro dependency 673: ColorUtils */;
let int2hex = value.int2hex;
const moduleValue11 = userProfileGradientUtilsModule;
value = Reflect.apply(int2hex, value, [moduleValue11.calculateOverlayedColor(secondaryColor, overlay)]);
object4['gradientSecondaryBackground'] = value;
value = require(673) /* metro dependency 673: ColorUtils */;
value = value.int2hex(value6);
object4['avatarBackground'] = value;
int2hex = (require(673) /* metro dependency 673: ColorUtils */).int2hex;
const moduleValue12 = userProfileGradientUtilsModule;
value = Reflect.apply(int2hex, value, [moduleValue12.calculateOverlayedColor(value6, sectionBox)]);
object4['statusBackground'] = value;
return object4;
}
global.__d(_fun67409, 8497, [4502, 482, 4048, 6791, 566, 1357, 3860, 697, 7593, 673,
2]) /* metro module 8497, dependencies: [4502, 482, 4048, 6791, 566, 1357, 3860, 697, 7593, 673, 2] */;
@@ -1,50 +1,55 @@
/* Metro module 8512; source: modules/user_profile/hooks/native/useUserProfileGradientColors.tsx; dependencies: [31, 4502, 566, 3868, 6791, 7593, 2] */
import AccessibilityStore from '../../../a11y/AccessibilityStore.tsx'; /* Metro dependency 4502 */
import * as FileImportTrackerModule from '../../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as NativeModule from '../../../../external/discord_common/js/packages/design/native.tsx'; /* Metro dependency 3868 */
import * as UseProfileThemeValuesNativeModule from '../../useProfileThemeValues.native.tsx'; /* Metro dependency 6791 */
function _fun67456(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67456, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8697:6, offset: 0x01c23710, size: 133 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = importAll(31) /* metro dependency 31 */;
const accessibilityStore = importDefault(4502) /* metro dependency 4502: AccessibilityStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/native/useUserProfileGradientColors.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/native/useUserProfileGradientColors.tsx');
exports.useUserProfileGradientColors = useUserProfileGradientColors;
}
function useUserProfileGradientColors(a0, a1, a2) { // fn#67457, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8697:247, offset: 0x01c23795, size: 213 bytes, params: 4, frame: 21
const env0_0 = a0;
const env0_1 = a1;
const env0_2 = a2;
const value2 = undefined;
const syncProfileThemeWithUserTheme = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore],
function() {
return AccessibilityStore.syncProfileThemeWithUserTheme;
});
const nativeModule = require(3868) /* metro dependency 3868: native */;
const useThemeContext = nativeModule.useThemeContext;
const value3 = (require(6791) /* metro dependency 6791: useProfileThemeValuesNative */).useProfileThemeValues(Reflect.apply(useThemeContext,
nativeModule, []).theme);
const value4 = value3 == null;
return env0_2.useMemo(_fun67459, [a2, a0, a1,
syncProfileThemeWithUserTheme ? value4 ? value2 : value3.overlaySyncedWithUserTheme : value4 ? value2 : value3.overlay]);
}
function _fun67459() { // fn#67459, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8697:528, offset: 0x01c2386a, size: 191 bytes, params: 1, frame: 17
var r4;
var value3;
var moduleValue;
const value2 = null;
if (value2 != env0_0) {
if (value2 != env0_3) {
value3 = environment.__proto__;
moduleValue = require(7593) /* metro dependency 7593: UserProfileGradientUtils */;
r4 = moduleValue.calculateOverlayedColor(env0_0, env0_3);
} else {
r4 = value2;
function useUserProfileGradientColors(a0, a1, a2) { // fn#67457, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8697:247, offset: 0x01c23795, size: 213 bytes, params: 4, frame: 21
const env0_0 = a0;
const env0_1 = a1;
const env0_2 = a2;
const value2 = undefined;
const syncProfileThemeWithUserTheme = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore],
function() {
return AccessibilityStore.syncProfileThemeWithUserTheme;
});
const useThemeContext = NativeModule.useThemeContext;
const value3 = (UseProfileThemeValuesNativeModule).useProfileThemeValues(Reflect.apply(useThemeContext,
NativeModule, []).theme);
const value4 = value3 == null;
return env0_2.useMemo(_fun67459, [a2, a0, a1,
syncProfileThemeWithUserTheme ? value4 ? value2 : value3.overlaySyncedWithUserTheme : value4 ? value2 : value3.overlay]);
function _fun67459() { // fn#67459, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8697:528, offset: 0x01c2386a, size: 191 bytes, params: 1, frame: 17
var r4;
var value3;
var moduleValue;
const value2 = null;
if (value2 != env0_0) {
if (value2 != env0_3) {
value3 = environment.__proto__;
moduleValue = require(7593) /* metro dependency 7593: UserProfileGradientUtils */;
r4 = moduleValue.calculateOverlayedColor(env0_0, env0_3);
} else {
r4 = value2;
}
} else {
r4 = value2;
}
return (require(7593) /* metro dependency 7593: UserProfileGradientUtils */).getUserProfileGradientContainerColors(r4,
value2 != require && value2 != env0_3 ? (require(7593) /* metro dependency 7593: UserProfileGradientUtils */).calculateOverlayedColor(require,
env0_3) : value2, importDefault);
}
} else {
r4 = value2;
}
return (require(7593) /* metro dependency 7593: UserProfileGradientUtils */).getUserProfileGradientContainerColors(r4,
value2 != require && value2 != env0_3 ? (require(7593) /* metro dependency 7593: UserProfileGradientUtils */).calculateOverlayedColor(require,
env0_3) : value2, importDefault);
}
global.__d(_fun67456, 8512, [31, 4502, 566, 3868, 6791, 7593,
2]) /* metro module 8512, dependencies: [31, 4502, 566, 3868, 6791, 7593, 2] */;
@@ -1,25 +1,29 @@
/* Metro module 10346; source: modules/user_profile/hooks/native/useWishlistViewerCoachmark.tsx; dependencies: [57, 31, 1365, 7013, 2] */
import Module00057 from '../../../../by-id/module-00057.js'; /* Metro dependency 57 */
import * as FileImportTrackerModule from '../../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as Dismissible_contentModule from '../../../../external/discord_common/js/packages/protos/discord_protos/discord_users/v1/dismissible_content.tsx'; /* Metro dependency 1365 */
function _fun80197(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#80197, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10532:6, offset: 0x01e70d11, size: 133 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = importDefault(57) /* metro dependency 57 */;
const env0_3 = importAll(31) /* metro dependency 31 */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/native/useWishlistViewerCoachmark.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/native/useWishlistViewerCoachmark.tsx');
exports.useWishlistViewerCoachmark = useWishlistViewerCoachmark;
function useWishlistViewerCoachmark({isCurrentUser, shouldShowWishlistTab}) { // fn#80198, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10532:243, offset: 0x01e70d96, size: 160 bytes, params: 2, frame: 16
const useMemo = ReactModule.useMemo;
const value = Module00057((require(7013) /* metro dependency 7013: useSelectedDismissibleContent */).useSelectedDismissibleContent(Reflect.apply(useMemo,
ReactModule, [function() {
return isCurrentUser ? [] : shouldShowWishlistTab ? [require(dependencyMap[2]).DismissibleContent.WISHLIST_MOBILE_VIEWER_COACHMARK] : [];
}, [isCurrentUser, shouldShowWishlistTab]])), 2);
const property = value[0];
const property2 = value[1];
const DismissibleContent = (Dismissible_contentModule).DismissibleContent;
const WISHLIST_MOBILE_VIEWER_COACHMARK = DismissibleContent.WISHLIST_MOBILE_VIEWER_COACHMARK;
return {isVisible: property === WISHLIST_MOBILE_VIEWER_COACHMARK, markAsDismissed: property2};
}
}
function useWishlistViewerCoachmark({isCurrentUser, shouldShowWishlistTab}) { // fn#80198, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10532:243, offset: 0x01e70d96, size: 160 bytes, params: 2, frame: 16
const binding = env0_3;
const useMemo = binding.useMemo;
const value = env0_2((require(7013) /* metro dependency 7013: useSelectedDismissibleContent */).useSelectedDismissibleContent(Reflect.apply(useMemo,
binding, [function() {
return isCurrentUser ? [] : shouldShowWishlistTab ? [require(dependencyMap[2]).DismissibleContent.WISHLIST_MOBILE_VIEWER_COACHMARK] : [];
}, [isCurrentUser, shouldShowWishlistTab]])), 2);
const property = value[0];
const property2 = value[1];
const DismissibleContent = (require(1365) /* metro dependency 1365: dismissible_content */).DismissibleContent;
const WISHLIST_MOBILE_VIEWER_COACHMARK = DismissibleContent.WISHLIST_MOBILE_VIEWER_COACHMARK;
return {isVisible: property === WISHLIST_MOBILE_VIEWER_COACHMARK, markAsDismissed: property2};
}
global.__d(_fun80197, 10346, [57, 31, 1365, 7013,
2]) /* metro module 10346, dependencies: [57, 31, 1365, 7013, 2] */;
@@ -1,115 +1,118 @@
/* Metro module 10247; source: modules/user_profile/hooks/useActivityTimer.tsx; dependencies: [57, 31, 672, 8375, 4041, 2] */
import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */
import Durations from '../../../utils/Durations.tsx'; /* Metro dependency 672 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as TimersModule from '../../../external/discord_common/js/packages/timers/Timers.tsx'; /* Metro dependency 4041 */
import * as UtilsModule from '../../content_inventory/utils.tsx'; /* Metro dependency 8375 */
function _fun79580(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#79580, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10433:6, offset: 0x01e58fbb, size: 198 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const value = require(31) /* metro dependency 31 */;
const env0_4 = value.useEffect;
const env0_5 = value.useState;
const pad_79582 = function(a0) {
return (0, global.String)(a0).padStart(2, '0');
};
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useActivityTimer.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useActivityTimer.tsx');
exports.default = useActivityTimer;
exports.formatTime = formatTime;
exports.formatTime = formatTime_79588;
exports.formatTimeForA11yLabel = formatTimeForA11yLabel;
}
function extractTimeComponents(a0) { // fn#79581, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10433:165, offset: 0x01e59081, size: 191 bytes, params: 2, frame: 18
let Math = global.Math;
let floor = Math.floor;
let value = Reflect.apply(floor, Math, [a0]);
let Seconds = (importDefault(672) /* metro dependency 672: Durations */).Seconds;
let MINUTE = Seconds.MINUTE;
value %= MINUTE;
Math = global.Math;
floor = Math.floor;
Seconds = (importDefault(672) /* metro dependency 672: Durations */).Seconds;
MINUTE = Seconds.MINUTE;
const value3 = Reflect.apply(floor, Math, [a0 / MINUTE]);
Seconds = (importDefault(672) /* metro dependency 672: Durations */).Seconds;
MINUTE = Seconds.MINUTE;
const value4 = value3 % MINUTE;
Math = global.Math;
floor = Math.floor;
Seconds = (importDefault(672) /* metro dependency 672: Durations */).Seconds;
const HOUR = Seconds.HOUR;
return {hours: Reflect.apply(floor, Math, [a0 / HOUR]), minutes: value4, seconds: value};
}
function useActivityTimer({start, end}) { // fn#79583, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10433:468, offset: 0x01e59140, size: 310 bytes, params: 2, frame: 23
const Interval = (require(4041) /* metro dependency 4041: Timers */).Interval;
const value2 = Object.create(Interval.prototype, {constructor: {value: Interval}});
const interval = new Interval();
const value4 = useState(interval instanceof Object ? interval : value2);
const binding = env0_3;
const property = binding(value4, 1)[0];
const [property2, env0_1] = binding(useState(function() {
var Date = global.Date;
return Date.now();
}), 2);
useEffect(_fun79585, [property]);
const value8 = end - start;
let Millis = (importDefault(672) /* metro dependency 672: Durations */).Millis;
let SECOND = Millis.SECOND;
const value = value8 / SECOND;
let Math = global.Math;
let max = Math.max;
const Math2 = global.Math;
const min = Math2.min;
const value9 = property2 - start;
Millis = (importDefault(672) /* metro dependency 672: Durations */).Millis;
SECOND = Millis.SECOND;
const value10 = Reflect.apply(max, Math, [Reflect.apply(min, Math2, [value9 / SECOND, value]), 0]);
Math = global.Math;
max = Math.max;
const Math3 = global.Math;
return {elapsed: value10, duration: value, percentage: Reflect.apply(max, Math, [Math3.min(value10 / value, 1), 0])};
}
function formatTime(a0) { // fn#79588, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10433:853, offset: 0x01e592f3, size: 140 bytes, params: 2, frame: 22
var r0;
var pad_79582Binding;
var value;
const {hours, minutes, seconds} = extractTimeComponents(a0);
if (hours === 0) {
pad_79582Binding = pad_79582;
value = pad_79582Binding(minutes);
value = '' + value + ':' + pad_79582Binding(seconds);
r0 = value;
} else {
pad_79582Binding = pad_79582;
value = pad_79582Binding(hours);
value = '' + value + ':' + pad_79582Binding(minutes) + ':' + pad_79582Binding(seconds);
r0 = value;
function extractTimeComponents(a0) { // fn#79581, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10433:165, offset: 0x01e59081, size: 191 bytes, params: 2, frame: 18
let Math = global.Math;
let floor = Math.floor;
let value = Reflect.apply(floor, Math, [a0]);
let Seconds = (importDefault(672) /* metro dependency 672: Durations */).Seconds;
let MINUTE = Seconds.MINUTE;
value %= MINUTE;
Math = global.Math;
floor = Math.floor;
Seconds = (importDefault(672) /* metro dependency 672: Durations */).Seconds;
MINUTE = Seconds.MINUTE;
const value3 = Reflect.apply(floor, Math, [a0 / MINUTE]);
Seconds = (importDefault(672) /* metro dependency 672: Durations */).Seconds;
MINUTE = Seconds.MINUTE;
const value4 = value3 % MINUTE;
Math = global.Math;
floor = Math.floor;
Seconds = (importDefault(672) /* metro dependency 672: Durations */).Seconds;
const HOUR = Seconds.HOUR;
return {hours: Reflect.apply(floor, Math, [a0 / HOUR]), minutes: value4, seconds: value};
}
return r0;
}
function formatTimeForA11yLabel(a0) { // fn#79589, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10433:1015, offset: 0x01e5937f, size: 85 bytes, params: 2, frame: 15
const {hours, minutes, seconds} = extractTimeComponents(a0);
const value = require(8375) /* metro dependency 8375: utils */;
return value.formatTimestampToA11yLabel({hours: hours, minutes: minutes, seconds: seconds});
}
function useActivityTimer({start, end}) { // fn#79583, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10433:468, offset: 0x01e59140, size: 310 bytes, params: 2, frame: 23
const Interval = (TimersModule).Interval;
const value2 = Object.create(Interval.prototype, {constructor: {value: Interval}});
const interval = new Interval();
const value4 = useState(interval instanceof Object ? interval : value2);
const property = Module00057(value4, 1)[0];
const [property2, env0_1] = Module00057(useState(function() {
var Date = global.Date;
return Date.now();
}), 2);
useEffect(_fun79585, [property]);
const value8 = end - start;
let Millis = (importDefault(672) /* metro dependency 672: Durations */).Millis;
let SECOND = Millis.SECOND;
const value = value8 / SECOND;
let Math = global.Math;
let max = Math.max;
const Math2 = global.Math;
const min = Math2.min;
const value9 = property2 - start;
Millis = (importDefault(672) /* metro dependency 672: Durations */).Millis;
SECOND = Millis.SECOND;
const value10 = Reflect.apply(max, Math, [Reflect.apply(min, Math2, [value9 / SECOND, value]), 0]);
Math = global.Math;
max = Math.max;
const Math3 = global.Math;
return {elapsed: value10, duration: value, percentage: Reflect.apply(max, Math, [Math3.min(value10 / value, 1), 0])};
function _fun79585() { // fn#79585, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10433:602, offset: 0x01e59276, size: 73 bytes, params: 1, frame: 15
const binding = env0_0;
const start = binding.start;
const Millis = (Durations).Millis;
const HALF_SECOND = Millis.HALF_SECOND;
Reflect.apply(start, binding, [HALF_SECOND, _fun79586]);
return _fun79587;
function _fun79586() { // fn#79586, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10433:643, offset: 0x01e592bf, size: 33 bytes, params: 1, frame: 11
const value = environment.__proto__;
const binding = env1_1;
const Date = global.Date;
return binding(Date.now());
}
function _fun79585() { // fn#79585, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10433:602, offset: 0x01e59276, size: 73 bytes, params: 1, frame: 15
const binding = env0_0;
const start = binding.start;
const Millis = (importDefault(672) /* metro dependency 672: Durations */).Millis;
const HALF_SECOND = Millis.HALF_SECOND;
Reflect.apply(start, binding, [HALF_SECOND, _fun79586]);
return _fun79587;
}
function _fun79587() { // fn#79587, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10433:663, offset: 0x01e592e0, size: 19 bytes, params: 1, frame: 9
return env1_0.stop();
}
function _fun79586() { // fn#79586, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10433:643, offset: 0x01e592bf, size: 33 bytes, params: 1, frame: 11
const value = environment.__proto__;
const binding = env1_1;
const Date = global.Date;
return binding(Date.now());
}
}
}
function formatTime_79588(a0) { // fn#79588, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10433:853, offset: 0x01e592f3, size: 140 bytes, params: 2, frame: 22
var r0;
var pad_79582Binding;
var value;
const {hours, minutes, seconds} = extractTimeComponents(a0);
if (hours === 0) {
pad_79582Binding = pad_79582;
value = pad_79582Binding(minutes);
value = '' + value + ':' + pad_79582Binding(seconds);
r0 = value;
} else {
pad_79582Binding = pad_79582;
value = pad_79582Binding(hours);
value = '' + value + ':' + pad_79582Binding(minutes) + ':' + pad_79582Binding(seconds);
r0 = value;
}
return r0;
}
function formatTimeForA11yLabel(a0) { // fn#79589, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10433:1015, offset: 0x01e5937f, size: 85 bytes, params: 2, frame: 15
const {hours, minutes, seconds} = extractTimeComponents(a0);
return UtilsModule.formatTimestampToA11yLabel({hours: hours, minutes: minutes, seconds: seconds});
}
function _fun79587() { // fn#79587, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10433:663, offset: 0x01e592e0, size: 19 bytes, params: 1, frame: 9
return env1_0.stop();
}
global.__d(_fun79580, 10247, [57, 31, 672, 8375, 4041,
2]) /* metro module 10247, dependencies: [57, 31, 672, 8375, 4041, 2] */;
@@ -1,54 +1,59 @@
/* Metro module 8501; source: modules/user_profile/hooks/useBadges.tsx; dependencies: [3996, 1878, 3829, 632, 1244, 2] */
import UserStore from '../../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import StreamerModeStore from '../../../stores/StreamerModeStore.tsx'; /* Metro dependency 3996 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as UserSettingsModule from '../../user_settings/UserSettings.tsx'; /* Metro dependency 3829 */
function _fun67420(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67420, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8686:6, offset: 0x01c21e38, size: 142 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const streamerModeStore = importDefault(3996) /* metro dependency 3996: StreamerModeStore */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useBadges.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useBadges.tsx');
exports.default = useBadges;
exports.QUEST_COMPLETED_BADGE = 'quest_completed';
}
function useBadges(a0, a1) { // fn#67421, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8686:220, offset: 0x01c21ec6, size: 259 bytes, params: 3, frame: 21
const value = a1;
const value3 = undefined;
const LegacyUsernameDisabled = (UserSettingsModule).LegacyUsernameDisabled;
let r3 = value3 === value ? LegacyUsernameDisabled.useSetting() : value;
const currentUser = (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([UserStore],
function() {
return UserStore.getCurrentUser();
});
const hidePersonalInformation = (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([StreamerModeStore],
function() {
return StreamerModeStore.hidePersonalInformation;
});
if (a0 == null) {
return [];
}
let r5 = a0 == null ? value3 : a0.getBadges();
r5 = r5 ?? [];
r3 = currentUser != null && currentUser.id === a0.userId && r3 ? r5.filter(function(a0) {
return a0.id !== 'legacy_username';
}) : r5;
return hidePersonalInformation ? r3.map(_fun67425) : r3;
function _fun67425(a0) { // fn#67425, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8686:585, offset: 0x01c21fdb, size: 108 bytes, params: 2, frame: 17
var r2;
var value;
var intl;
const object = {};
copyDataProperties(object, a0, undefined);
if (a0.id === 'legacy_username') {
value = environment.__proto__;
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
value = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.Br1ls3);
r2 = value;
} else {
r2 = a0.description;
}
object['description'] = r2;
return object;
}
function useBadges(a0, a1) { // fn#67421, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8686:220, offset: 0x01c21ec6, size: 259 bytes, params: 3, frame: 21
const value = a1;
const value3 = undefined;
const LegacyUsernameDisabled = (require(3829) /* metro dependency 3829: UserSettings */).LegacyUsernameDisabled;
let r3 = value3 === value ? LegacyUsernameDisabled.useSetting() : value;
const currentUser = (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([UserStore],
function() {
return UserStore.getCurrentUser();
});
const hidePersonalInformation = (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([StreamerModeStore],
function() {
return StreamerModeStore.hidePersonalInformation;
});
if (a0 == null) {
return [];
}
let r5 = a0 == null ? value3 : a0.getBadges();
r5 = r5 ?? [];
r3 = currentUser != null && currentUser.id === a0.userId && r3 ? r5.filter(function(a0) {
return a0.id !== 'legacy_username';
}) : r5;
return hidePersonalInformation ? r3.map(_fun67425) : r3;
}
function _fun67425(a0) { // fn#67425, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8686:585, offset: 0x01c21fdb, size: 108 bytes, params: 2, frame: 17
var r2;
var value;
var intl;
const object2 = {};
copyDataProperties(object2, a0, undefined);
if (a0.id === 'legacy_username') {
value = environment.__proto__;
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
value = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.Br1ls3);
r2 = value;
} else {
r2 = a0.description;
}
object2['description'] = r2;
return object2;
}
global.__d(_fun67420, 8501, [3996, 1878, 3829, 632, 1244,
2]) /* metro module 8501, dependencies: [3996, 1878, 3829, 632, 1244, 2] */;
+67 -55
View File
@@ -1,69 +1,81 @@
/* Metro module 10482; source: modules/user_profile/hooks/useCanDM.tsx; dependencies: [5242, 3785, 1226, 1945, 3793, 3829, 566, 2] */
import AuthenticationStore from '../../../stores/AuthenticationStore.tsx'; /* Metro dependency 1226 */
import GuildMemberStore from '../../../stores/GuildMemberStore.tsx'; /* Metro dependency 1945 */
import LurkingStore from '../../lurker_mode/LurkingStore.tsx'; /* Metro dependency 3785 */
import RelationshipStore from '../../../stores/RelationshipStore.tsx'; /* Metro dependency 3793 */
import GameRelationshipStore from '../../game_relationships/GameRelationshipStore.tsx'; /* Metro dependency 5242 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
import * as UserSettingsModule from '../../user_settings/UserSettings.tsx'; /* Metro dependency 3829 */
function _fun81106(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#81106, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10668:6, offset: 0x01e9a146, size: 193 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const gameRelationshipStore = importDefault(5242) /* metro dependency 5242: GameRelationshipStore */;
const lurkingStore = importDefault(3785) /* metro dependency 3785: LurkingStore */;
const authenticationStore = importDefault(1226) /* metro dependency 1226: AuthenticationStore */;
const guildMemberStore = importDefault(1945) /* metro dependency 1945: GuildMemberStore */;
const relationshipStore = importDefault(3793) /* metro dependency 3793: RelationshipStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useCanDM.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useCanDM.tsx');
exports.default = useCanDM;
exports.canDm = canDm;
}
function useCanDM(a0, a1) { // fn#81107, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10668:229, offset: 0x01e9a207, size: 207 bytes, params: 3, frame: 19
const env0_0 = a0;
const env0_1 = a1;
const env0_2 = (require(566) /* metro dependency 566: flux */).useStateFromStores([AuthenticationStore], _fun81108);
const env0_3 = (require(566) /* metro dependency 566: flux */).useStateFromStores([LurkingStore], _fun81109);
const RestrictedGuildIds = (require(3829) /* metro dependency 3829: UserSettings */).RestrictedGuildIds;
const env0_4 = RestrictedGuildIds.useSetting();
return (require(566) /* metro dependency 566: flux */).useStateFromStores([RelationshipStore, GuildMemberStore,
GameRelationshipStore], _fun81110);
}
function canDm(a0, a1) { // fn#81112, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10668:632, offset: 0x01e9a3e7, size: 235 bytes, params: 3, frame: 18
var r1;
var value6;
const getId = AuthenticationStore.getId;
const value2 = Reflect.apply(getId, AuthenticationStore, []) === a0;
const r8 = a1 != null && LurkingStore.isLurking(a1);
const RestrictedGuildIds = (require(3829) /* metro dependency 3829: UserSettings */).RestrictedGuildIds;
const env0_0 = RestrictedGuildIds.getSetting();
const isFriend2 = RelationshipStore.isFriend(a0);
let r0 = !value2 && !r8;
if (r0) {
if (isFriend2) {
r1 = isFriend2;
} else {
value6 = GuildMemberStore.memberOf(a0);
r1 = value6.find(_fun81113) != null;
function useCanDM(a0, a1) { // fn#81107, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10668:229, offset: 0x01e9a207, size: 207 bytes, params: 3, frame: 19
const env0_0 = a0;
const env0_1 = a1;
const env0_2 = (FluxModule).useStateFromStores([AuthenticationStore], _fun81108);
const env0_3 = (FluxModule).useStateFromStores([LurkingStore], _fun81109);
const RestrictedGuildIds = (UserSettingsModule).RestrictedGuildIds;
const env0_4 = RestrictedGuildIds.useSetting();
return (FluxModule).useStateFromStores([RelationshipStore, GuildMemberStore,
GameRelationshipStore], _fun81110);
function _fun81108() { // fn#81108, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10668:290, offset: 0x01e9a2d6, size: 30 bytes, params: 1, frame: 9
const value = environment.__proto__;
return AuthenticationStore.getId() === env0_0;
}
r0 = r1;
function _fun81109() { // fn#81109, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10668:344, offset: 0x01e9a2f4, size: 40 bytes, params: 1, frame: 12
return require != null && LurkingStore.isLurking(require);
}
function _fun81110() { // fn#81110, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10668:459, offset: 0x01e9a31c, size: 178 bytes, params: 1, frame: 14
let r0 = !env0_2 && !env0_3 && (RelationshipStore.isFriend(env0_0) || GuildMemberStore.memberOf(env0_0).find(_fun81111) != null);
r0 = !r0 ? GameRelationshipStore.getGameFriendsForUser(env0_0).length > 0 && (require(3829) /* metro dependency 3829: UserSettings */).AllowGameFriendDmsInDiscord.getSetting() : r0;
return r0;
function _fun81111(a0) { // fn#81111, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10668:513, offset: 0x01e9a3ce, size: 25 bytes, params: 2, frame: 11
const binding = env1_4;
return !binding.includes(a0);
}
}
}
r0 = !r0 ? GameRelationshipStore.getGameFriendsForUser(a0).length > 0 && (require(3829) /* metro dependency 3829: UserSettings */).AllowGameFriendDmsInDiscord.getSetting() : r0;
return r0;
}
function _fun81108() { // fn#81108, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10668:290, offset: 0x01e9a2d6, size: 30 bytes, params: 1, frame: 9
const value = environment.__proto__;
return AuthenticationStore.getId() === env0_0;
}
function canDm(a0, a1) { // fn#81112, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10668:632, offset: 0x01e9a3e7, size: 235 bytes, params: 3, frame: 18
var r1;
var value6;
const authenticationStoreBinding = AuthenticationStore;
const getId = authenticationStoreBinding.getId;
const value2 = Reflect.apply(getId, authenticationStoreBinding, []) === a0;
const r8 = a1 != null && LurkingStore.isLurking(a1);
const RestrictedGuildIds = (require(3829) /* metro dependency 3829: UserSettings */).RestrictedGuildIds;
const env0_0 = RestrictedGuildIds.getSetting();
const isFriend2 = RelationshipStore.isFriend(a0);
let r0 = !value2 && !r8;
if (r0) {
if (isFriend2) {
r1 = isFriend2;
} else {
value6 = GuildMemberStore.memberOf(a0);
r1 = value6.find(_fun81113) != null;
}
r0 = r1;
}
r0 = !r0 ? GameRelationshipStore.getGameFriendsForUser(a0).length > 0 && (require(3829) /* metro dependency 3829: UserSettings */).AllowGameFriendDmsInDiscord.getSetting() : r0;
return r0;
function _fun81113(a0) { // fn#81113, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10668:788, offset: 0x00e67170, size: 25 bytes, params: 2, frame: 11
const binding = env0_0;
return !binding.includes(a0);
}
function _fun81109() { // fn#81109, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10668:344, offset: 0x01e9a2f4, size: 40 bytes, params: 1, frame: 12
return require != null && LurkingStore.isLurking(require);
}
}
function _fun81110() { // fn#81110, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10668:459, offset: 0x01e9a31c, size: 178 bytes, params: 1, frame: 14
let r0 = !env0_2 && !env0_3 && (RelationshipStore.isFriend(env0_0) || GuildMemberStore.memberOf(env0_0).find(_fun81111) != null);
r0 = !r0 ? GameRelationshipStore.getGameFriendsForUser(env0_0).length > 0 && (require(3829) /* metro dependency 3829: UserSettings */).AllowGameFriendDmsInDiscord.getSetting() : r0;
return r0;
}
function _fun81111(a0) { // fn#81111, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10668:513, offset: 0x01e9a3ce, size: 25 bytes, params: 2, frame: 11
const binding = env1_4;
return !binding.includes(a0);
}
global.__d(_fun81106, 10482, [5242, 3785, 1226, 1945, 3793, 3829, 566,
2]) /* metro module 10482, dependencies: [5242, 3785, 1226, 1945, 3793, 3829, 566, 2] */;
@@ -1,4 +1,12 @@
/* Metro module 8490; source: modules/user_profile/hooks/useDisplayProfile.tsx; dependencies: [31, 1878, 5189, 566, 8491, 1944, 8493, 2] */
import UserStore from '../../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import UserProfileStore from '../UserProfileStore.tsx'; /* Metro dependency 5189 */
import DisplayProfile from '../DisplayProfile.tsx'; /* Metro dependency 8493 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
import * as FunctionUtilsModule from '../../../utils/FunctionUtils.tsx'; /* Metro dependency 1944 */
function _fun67354(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67354, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8675:6, offset: 0x01c1facc, size: 223 bytes, params: 8, frame: 21
let env0_0 = require;
const closure = function(a0, a1) {
@@ -6,92 +14,91 @@ function _fun67354(global, require, importDefault, importAll, module, exports, d
var env0_1 = a1;
return require(dependencyMap[3]).useStateFromStores([UserStore, UserProfileStore], _fun67356);
};
const closure2 = getDisplayProfile;
const getDisplayProfile2 = getDisplayProfile;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importAll(31) /* metro dependency 31 */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const userProfileStore = importDefault(5189) /* metro dependency 5189: UserProfileStore */;
const env0_6 = (require(1944) /* metro dependency 1944: FunctionUtils */).cachedFunction(_fun67358);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useDisplayProfile.tsx');
const env0_6 = (FunctionUtilsModule).cachedFunction(_fun67358);
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useDisplayProfile.tsx');
exports.default = closure;
exports.useDisplayProfileWithFetchEffect = useDisplayProfileWithFetchEffect;
exports.getDisplayProfile = closure2;
}
exports.getDisplayProfile = getDisplayProfile2;
function useDisplayProfile(a0, a1) { // fn#67355, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8675:126, offset: 0x01c1fbab, size: 81 bytes, params: 3, frame: 15
const env0_0 = a0;
const env0_1 = a1;
return (FluxModule).useStateFromStores([UserStore, UserProfileStore], _fun67356);
function _fun67356() { // fn#67356, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8675:199, offset: 0x01c1fbfc, size: 62 bytes, params: 1, frame: 17
const value2 = null;
return value2 == env0_0 ? value2 : getDisplayProfile(env0_0, require, [UserStore, UserProfileStore]);
}
function useDisplayProfile(a0, a1) { // fn#67355, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8675:126, offset: 0x01c1fbab, size: 81 bytes, params: 3, frame: 15
const env0_0 = a0;
const env0_1 = a1;
return (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore, UserProfileStore], _fun67356);
}
}
function getDisplayProfile(a0, a1) { // fn#67357, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8675:304, offset: 0x01c1fc3a, size: 177 bytes, params: 3, frame: 18
var r1;
var r0;
var r6;
var item3;
let value = a2;
const value2 = undefined;
const iterator = (value !== value2 ? value : [UserStore, UserProfileStore])[Symbol.iterator]();
const iterator2 = iterator.next;
let item2 = Reflect.apply(iterator2, iterator, []);
let item = item2.value;
item2 = item2.done ? undefined : iterator;
const r2 = item2 === value2 ? value2 : item;
if (value) {
r0 = item2;
r1 = value;
r6 = value2;
} else {
item3 = Reflect.apply(iterator2, item2, []);
item = item3.value;
item3 = item3.done ? undefined : item2;
value = item3 === value2;
function getDisplayProfile(a0, a1) { // fn#67357, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8675:304, offset: 0x01c1fc3a, size: 177 bytes, params: 3, frame: 18
var r1;
var r0;
var r6;
var item3;
let value = a2;
const value2 = undefined;
const iterator = (value !== value2 ? value : [UserStore, UserProfileStore])[Symbol.iterator]();
const iterator2 = iterator.next;
let item2 = Reflect.apply(iterator2, iterator, []);
let item = item2.value;
item2 = item2.done ? undefined : iterator;
const r2 = item2 === value2 ? value2 : item;
if (value) {
r0 = item3;
r0 = item2;
r1 = value;
r6 = value2;
} else {
r0 = item3;
r1 = value;
r6 = item;
item3 = Reflect.apply(iterator2, item2, []);
item = item3.value;
item3 = item3.done ? undefined : item2;
value = item3 === value2;
if (value) {
r0 = item3;
r1 = value;
r6 = value2;
} else {
r0 = item3;
r1 = value;
r6 = item;
}
}
if (!r1) {
r0.return();
}
value = null;
if (value === a0) {
return value;
}
const user = r2.getUser(a0);
const userProfile = r6.getUserProfile(a0);
return value == user || value == userProfile ? value : env0_6(userProfile, r6.getGuildMemberProfile(a0, a1));
}
if (!r1) {
r0.return();
function _fun67358(a0, a1) { // fn#67358, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8675:277, offset: 0x01c1fceb, size: 53 bytes, params: 3, frame: 13
let value = DisplayProfile;
const value2 = Object.create(value.prototype, {constructor: {value: value}});
value = new value(a0, a1);
return value instanceof Object ? value : value2;
}
value = null;
if (value === a0) {
return value;
function useDisplayProfileWithFetchEffect(a0, a1) { // fn#67359, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8675:625, offset: 0x01c1fd20, size: 67 bytes, params: 3, frame: 17
const env0_0 = a0;
const env0_1 = a1;
ReactModule.useEffect(_fun67360, [a1, a0]);
return useDisplayProfile(a0, a1);
function _fun67360() { // fn#67360, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8675:692, offset: 0x01c1fd63, size: 66 bytes, params: 1, frame: 17
let value = environment.__proto__;
value = undefined;
(importDefault(8491) /* metro dependency 8491: maybeFetchUserProfile */)(env0_0, value, {guildId: require ?? value});
return value;
}
}
const user = r2.getUser(a0);
const userProfile = r6.getUserProfile(a0);
return value == user || value == userProfile ? value : env0_6(userProfile, r6.getGuildMemberProfile(a0, a1));
}
function _fun67358(a0, a1) { // fn#67358, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8675:277, offset: 0x01c1fceb, size: 53 bytes, params: 3, frame: 13
let value = importDefault(8493) /* metro dependency 8493: DisplayProfile */;
const value2 = Object.create(value.prototype, {constructor: {value: value}});
value = new value(a0, a1);
return value instanceof Object ? value : value2;
}
function useDisplayProfileWithFetchEffect(a0, a1) { // fn#67359, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8675:625, offset: 0x01c1fd20, size: 67 bytes, params: 3, frame: 17
const env0_0 = a0;
const env0_1 = a1;
env0_3.useEffect(_fun67360, [a1, a0]);
return useDisplayProfile(a0, a1);
}
function _fun67356() { // fn#67356, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8675:199, offset: 0x01c1fbfc, size: 62 bytes, params: 1, frame: 17
const value2 = null;
return value2 == env0_0 ? value2 : getDisplayProfile(env0_0, require, [UserStore, UserProfileStore]);
}
function _fun67360() { // fn#67360, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8675:692, offset: 0x01c1fd63, size: 66 bytes, params: 1, frame: 17
let value = environment.__proto__;
value = undefined;
(importDefault(8491) /* metro dependency 8491: maybeFetchUserProfile */)(env0_0, value, {guildId: require ?? value});
return value;
}
global.__d(_fun67354, 8490, [31, 1878, 5189, 566, 8491, 1944, 8493,
2]) /* metro module 8490, dependencies: [31, 1878, 5189, 566, 8491, 1944, 8493, 2] */;
@@ -1,25 +1,29 @@
/* Metro module 8821; source: modules/user_profile/hooks/useIsUserProfileObfuscated.tsx; dependencies: [5189, 566, 2] */
import UserProfileStore from '../UserProfileStore.tsx'; /* Metro dependency 5189 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
function _fun68942(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68942, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9006:6, offset: 0x01c62326, size: 114 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const userProfileStore = importDefault(5189) /* metro dependency 5189: UserProfileStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useIsUserProfileObfuscated.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useIsUserProfileObfuscated.tsx');
exports.default = useIsUserProfileObfuscated;
function useIsUserProfileObfuscated(a0) { // fn#68943, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9006:207, offset: 0x01c62398, size: 260 bytes, params: 2, frame: 17
const env0_0 = a0;
const value2 = undefined;
const userProfile = (FluxModule).useStateFromStores([UserProfileStore],
_fun68944);
let r0 = (userProfile == null ? value2 : userProfile.bio) === '' && (userProfile == null ? value2 : userProfile.pronouns) === '' && value2 === (userProfile == null ? value2 : userProfile.banner);
r0 = r0 && value2 === (userProfile == null ? value2 : userProfile.accentColor) && value2 === (userProfile == null ? value2 : userProfile.banner);
r0 = r0 && a0.flags === a0.publicFlags && ((userProfile == null ? value2 : userProfile.badges) == null || (userProfile == null || userProfile.badges == null ? value2 : userProfile.badges.length) === 0);
return r0;
function _fun68944() { // fn#68944, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9006:286, offset: 0x01c6249c, size: 32 bytes, params: 1, frame: 11
return UserProfileStore.getUserProfile(env0_0.id);
}
}
}
function useIsUserProfileObfuscated(a0) { // fn#68943, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9006:207, offset: 0x01c62398, size: 260 bytes, params: 2, frame: 17
const env0_0 = a0;
const value2 = undefined;
const userProfile = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserProfileStore],
_fun68944);
let r0 = (userProfile == null ? value2 : userProfile.bio) === '' && (userProfile == null ? value2 : userProfile.pronouns) === '' && value2 === (userProfile == null ? value2 : userProfile.banner);
r0 = r0 && value2 === (userProfile == null ? value2 : userProfile.accentColor) && value2 === (userProfile == null ? value2 : userProfile.banner);
r0 = r0 && a0.flags === a0.publicFlags && ((userProfile == null ? value2 : userProfile.badges) == null || (userProfile == null || userProfile.badges == null ? value2 : userProfile.badges.length) === 0);
return r0;
}
function _fun68944() { // fn#68944, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9006:286, offset: 0x01c6249c, size: 32 bytes, params: 1, frame: 11
return UserProfileStore.getUserProfile(env0_0.id);
}
global.__d(_fun68942, 8821, [5189, 566, 2]) /* metro module 8821, dependencies: [5189, 566, 2] */;
+238 -234
View File
@@ -1,253 +1,257 @@
/* Metro module 10328; source: modules/user_profile/hooks/useNote.tsx; dependencies: [5, 31, 10329, 661, 566, 694, 507, 2] */
import Module00005 from '../../../by-id/module-00005.js'; /* Metro dependency 5 */
import NoteStore from '../notes/NoteStore.tsx'; /* Metro dependency 10329 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
function _fun80074(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#80074, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10514:6, offset: 0x01e6c04b, size: 186 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(5) /* metro dependency 5 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
const noteStore = importDefault(10329) /* metro dependency 10329: NoteStore */;
const env0_6 = (require(661) /* metro dependency 661: Constants */).Endpoints;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useNote.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useNote.tsx');
exports.default = useNote;
}
function _fetchNote() { // fn#80075, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10514:148, offset: 0x01e6c105, size: 50 bytes, params: 1, frame: 14
return env0_3(_fun80077).apply(this, arguments);
}
function useNote(a0) { // fn#80078, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10514:653, offset: 0x01e6c282, size: 124 bytes, params: 2, frame: 16
const env0_0 = a0;
const note = (require(566) /* metro dependency 566: flux */).useStateFromStores([NoteStore], _fun80079);
env0_4.useEffect(_fun80080, [note, a0]);
return note ?? ({'loading': true, 'note': null});
}
function* _fun80077(a0) { // fn#80077, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10514:191, offset: 0x01e6c142, size: 320 bytes, params: 2, frame: 20
var object2;
var binding2;
var property;
var value4;
var HTTP;
var get;
var NOTE;
var value5;
var value6;
var value7;
var value8;
var body;
var note_user_id;
var value9;
var binding3;
var value10;
var note;
var Error;
var prototype;
var error;
var value12;
if (false) {
return undefined;
}
value = environment.__proto__.__proto__;
let binding = env2_1;
const value3 = binding(env2_2[5]);
let dispatch = value3.dispatch;
Reflect.apply(dispatch, value3, [{type: 'USER_NOTE_LOAD_START', userId: a0}]);
reducibleJoin3: while (true) {
reduciblePort47: while (true) {
exceptionLanding46: while (true) {
function _fetchNote() { // fn#80075, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10514:148, offset: 0x01e6c105, size: 50 bytes, params: 1, frame: 14
return Module00005(_fun80077).apply(this, arguments);
function* _fun80077(a0) { // fn#80077, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10514:191, offset: 0x01e6c142, size: 320 bytes, params: 2, frame: 20
var binding2;
var property;
var value4;
var HTTP;
var get;
var NOTE;
var value5;
var value6;
var value7;
var value8;
var body;
var note_user_id;
var value9;
var binding3;
var value10;
var note;
var Error;
var prototype;
var error;
var value12;
if (false) {
return undefined;
}
value = environment.__proto__.__proto__;
let binding = env2_1;
const value3 = binding(env2_2[5]);
let dispatch = value3.dispatch;
Reflect.apply(dispatch, value3, [{type: 'USER_NOTE_LOAD_START', userId: a0}]);
reducibleJoin3: while (true) {
reduciblePort47: while (true) {
exceptionLanding46: while (true) {
try {
binding = env2_0;
} catch (error) {
break exceptionLanding46;
}
break reducibleJoin3;
}
binding = env2_1;
value = binding(env2_2[5]);
dispatch = value.dispatch;
Reflect.apply(dispatch, value, [{type: 'USER_NOTE_UPDATE', id: a0}]);
break reduciblePort47;
}
return undefined;
}
try {
binding2 = env2_2;
} catch (error) {
break exceptionLanding46;
}
try {
property = binding2[6];
} catch (error) {
break exceptionLanding46;
}
try {
value4 = binding(property);
} catch (error) {
break exceptionLanding46;
}
try {
HTTP = value4.HTTP;
} catch (error) {
break exceptionLanding46;
}
try {
get = HTTP.get;
} catch (error) {
break exceptionLanding46;
}
try {
object = {'url': null, 'oldFormErrors': true, 'rejectWithError': true};
} catch (error) {
break exceptionLanding46;
}
try {
binding = env2_6;
} catch (error) {
break exceptionLanding46;
}
try {
NOTE = binding.NOTE;
} catch (error) {
break exceptionLanding46;
}
try {
value5 = Reflect.apply(NOTE, binding, [a0]);
} catch (error) {
break exceptionLanding46;
}
try {
object.url = value5;
} catch (error) {
break exceptionLanding46;
}
try {
value6 = Reflect.apply(get, HTTP, [object]);
} catch (error) {
break exceptionLanding46;
}
yield value6;
try {
value7 = undefined;
value8 = false;
} catch (error) {
break exceptionLanding46;
}
if (value8) {
return value7;
}
try {
body = value7.body;
} catch (error) {
break exceptionLanding46;
}
try {
note_user_id = body.note_user_id;
} catch (error) {
break exceptionLanding46;
}
try {
value9 = note_user_id !== a0;
} catch (error) {
break exceptionLanding46;
}
if (!value9) {
try {
binding = env2_0;
binding = env2_1;
} catch (error) {
break exceptionLanding46;
}
break reducibleJoin3;
try {
binding3 = env2_2;
} catch (error) {
break exceptionLanding46;
}
try {
property = binding3[5];
} catch (error) {
break exceptionLanding46;
}
try {
value10 = binding(property);
} catch (error) {
break exceptionLanding46;
}
try {
dispatch = value10.dispatch;
} catch (error) {
break exceptionLanding46;
}
try {
object = {};
} catch (error) {
break exceptionLanding46;
}
try {
object.type = 'USER_NOTE_UPDATE';
} catch (error) {
break exceptionLanding46;
}
try {
object.id = a0;
} catch (error) {
break exceptionLanding46;
}
try {
note = body.note;
} catch (error) {
break exceptionLanding46;
}
try {
object.note = note;
} catch (error) {
break exceptionLanding46;
}
try {
Reflect.apply(dispatch, value10, [object]);
} catch (error) {
break exceptionLanding46;
}
return undefined;
}
try {
Error = global.Error;
} catch (error) {
break exceptionLanding46;
}
try {
prototype = Error.prototype;
} catch (error) {
break exceptionLanding46;
}
try {
} catch (error) {
break exceptionLanding46;
}
try {
error = new Error('Invalid response from server');
} catch (error) {
break exceptionLanding46;
}
try {
value12 = error instanceof Object ? error : undefined;
} catch (error) {
break exceptionLanding46;
}
try {
throw value12;
} catch (error) {
break exceptionLanding46;
}
binding = env2_1;
value = binding(env2_2[5]);
dispatch = value.dispatch;
Reflect.apply(dispatch, value, [{type: 'USER_NOTE_UPDATE', id: a0}]);
break reduciblePort47;
}
return undefined;
}
try {
binding2 = env2_2;
} catch (error) {
break exceptionLanding46;
}
try {
property = binding2[6];
} catch (error) {
break exceptionLanding46;
}
try {
value4 = binding(property);
} catch (error) {
break exceptionLanding46;
}
try {
HTTP = value4.HTTP;
} catch (error) {
break exceptionLanding46;
}
try {
get = HTTP.get;
} catch (error) {
break exceptionLanding46;
}
try {
object2 = {'url': null, 'oldFormErrors': true, 'rejectWithError': true};
} catch (error) {
break exceptionLanding46;
}
try {
binding = env2_6;
} catch (error) {
break exceptionLanding46;
}
try {
NOTE = binding.NOTE;
} catch (error) {
break exceptionLanding46;
}
try {
value5 = Reflect.apply(NOTE, binding, [a0]);
} catch (error) {
break exceptionLanding46;
}
try {
object2.url = value5;
} catch (error) {
break exceptionLanding46;
}
try {
value6 = Reflect.apply(get, HTTP, [object2]);
} catch (error) {
break exceptionLanding46;
}
yield value6;
try {
value7 = undefined;
value8 = false;
} catch (error) {
break exceptionLanding46;
}
if (value8) {
return value7;
}
try {
body = value7.body;
} catch (error) {
break exceptionLanding46;
}
try {
note_user_id = body.note_user_id;
} catch (error) {
break exceptionLanding46;
}
try {
value9 = note_user_id !== a0;
} catch (error) {
break exceptionLanding46;
}
if (!value9) {
try {
binding = env2_1;
} catch (error) {
break exceptionLanding46;
function useNote(a0) { // fn#80078, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10514:653, offset: 0x01e6c282, size: 124 bytes, params: 2, frame: 16
const env0_0 = a0;
const note = (FluxModule).useStateFromStores([NoteStore], _fun80079);
ReactModule.useEffect(_fun80080, [note, a0]);
return note ?? ({'loading': true, 'note': null});
function _fun80079() { // fn#80079, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10514:711, offset: 0x01e6c2fe, size: 27 bytes, params: 1, frame: 11
return NoteStore.getNote(env0_0);
}
try {
binding3 = env2_2;
} catch (error) {
break exceptionLanding46;
function _fun80080() { // fn#80080, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10514:750, offset: 0x01e6c319, size: 37 bytes, params: 1, frame: 11
if (note == null) {
(function() {
return _fetchNote.apply(this, arguments);
})(env0_0);
}
}
try {
property = binding3[5];
} catch (error) {
break exceptionLanding46;
}
try {
value10 = binding(property);
} catch (error) {
break exceptionLanding46;
}
try {
dispatch = value10.dispatch;
} catch (error) {
break exceptionLanding46;
}
try {
object2 = {};
} catch (error) {
break exceptionLanding46;
}
try {
object2.type = 'USER_NOTE_UPDATE';
} catch (error) {
break exceptionLanding46;
}
try {
object2.id = a0;
} catch (error) {
break exceptionLanding46;
}
try {
note = body.note;
} catch (error) {
break exceptionLanding46;
}
try {
object2.note = note;
} catch (error) {
break exceptionLanding46;
}
try {
Reflect.apply(dispatch, value10, [object2]);
} catch (error) {
break exceptionLanding46;
}
return undefined;
}
try {
Error = global.Error;
} catch (error) {
break exceptionLanding46;
}
try {
prototype = Error.prototype;
} catch (error) {
break exceptionLanding46;
}
try {
} catch (error) {
break exceptionLanding46;
}
try {
error = new Error('Invalid response from server');
} catch (error) {
break exceptionLanding46;
}
try {
value12 = error instanceof Object ? error : undefined;
} catch (error) {
break exceptionLanding46;
}
try {
throw value12;
} catch (error) {
break exceptionLanding46;
}
}
function _fun80079() { // fn#80079, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10514:711, offset: 0x01e6c2fe, size: 27 bytes, params: 1, frame: 11
return NoteStore.getNote(env0_0);
}
function _fun80080() { // fn#80080, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10514:750, offset: 0x01e6c319, size: 37 bytes, params: 1, frame: 11
if (note == null) {
(function() {
return _fetchNote.apply(this, arguments);
})(env0_0);
}
}
global.__d(_fun80074, 10328, [5, 31, 10329, 661, 566, 694, 507,
2]) /* metro module 10328, dependencies: [5, 31, 10329, 661, 566, 694, 507, 2] */;
@@ -1,59 +1,67 @@
/* Metro module 8398; source: modules/user_profile/hooks/usePendingAvatarSettings.tsx; dependencies: [31, 7624, 8399, 632, 8400, 8402, 7613, 2] */
import UserProfileSettingsStore from '../UserProfileSettingsStore.tsx'; /* Metro dependency 7624 */
import UseTrackCollectiblesItemTryOut from '../../collectibles/hooks/useTrackCollectiblesItemTryOut.tsx'; /* Metro dependency 8399 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as UseStateFromStoresModule from '../../../external/discord_common/js/packages/flux/useStateFromStores.tsx'; /* Metro dependency 632 */
import * as UserProfileSettingsActionCreatorsModule from '../UserProfileSettingsActionCreators.tsx'; /* Metro dependency 8400 */
function _fun66737(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#66737, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8583:6, offset: 0x01c07a95, size: 139 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = (require(31) /* metro dependency 31 */).useCallback;
const userProfileSettingsStore = importDefault(7624) /* metro dependency 7624: UserProfileSettingsStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/usePendingAvatarSettings.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/usePendingAvatarSettings.tsx');
exports.default = usePendingAvatarSettings;
}
function usePendingAvatarSettings({isTryItOut, analyticsLocations, guildId}) { // fn#66738, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8583:227, offset: 0x01c07b20, size: 266 bytes, params: 2, frame: 21
const value2 = (UseTrackCollectiblesItemTryOut)(analyticsLocations);
const {pendingAvatar, pendingAvatarDecoration,
pendingErrors} = (UseStateFromStoresModule).useStateFromStoresObject([UserProfileSettingsStore],
_fun66739);
const value4 = useCallback(_fun66740, [guildId]);
const value5 = useCallback(_fun66741, [value2, guildId]);
object = {pendingAvatar: pendingAvatar, pendingAvatarDecoration: pendingAvatarDecoration,
pendingErrors: pendingErrors};
object.setPendingAvatar = isTryItOut ? (require(7613) /* metro dependency 7613: UserProfileActionCreators */).setTryItOutAvatar : value4;
object.setPendingAvatarDecoration = isTryItOut ? (require(7613) /* metro dependency 7613: UserProfileActionCreators */).setTryItOutAvatarDecoration : value5;
return object;
function _fun66739() { // fn#66739, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8583:365, offset: 0x01c07c2a, size: 144 bytes, params: 1, frame: 14
var tryItOutChanges;
const isTryItOutBinding = isTryItOut;
const userProfileSettingsStoreBinding = UserProfileSettingsStore;
if (isTryItOutBinding) {
tryItOutChanges = userProfileSettingsStoreBinding.getTryItOutChanges();
return {pendingAvatar: tryItOutChanges.tryItOutAvatar,
pendingAvatarDecoration: tryItOutChanges.tryItOutAvatarDecoration,
pendingErrors: userProfileSettingsStoreBinding.getErrors(guildId).avatarDecoration};
}
const getPendingChanges = userProfileSettingsStoreBinding.getPendingChanges;
const guildIdBinding = guildId;
const value = Reflect.apply(getPendingChanges, userProfileSettingsStoreBinding, [guildIdBinding]);
const getErrors = userProfileSettingsStoreBinding.getErrors;
return {pendingAvatar: value.pendingAvatar, pendingAvatarDecoration: value.pendingAvatarDecoration,
pendingErrors: Reflect.apply(getErrors, userProfileSettingsStoreBinding, [guildIdBinding]).avatarDecoration};
}
function usePendingAvatarSettings({isTryItOut, analyticsLocations, guildId}) { // fn#66738, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8583:227, offset: 0x01c07b20, size: 266 bytes, params: 2, frame: 21
var object2;
const value2 = (importDefault(8399) /* metro dependency 8399: useTrackCollectiblesItemTryOut */)(analyticsLocations);
const {pendingAvatar, pendingAvatarDecoration,
pendingErrors} = (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStoresObject([UserProfileSettingsStore],
_fun66739);
const value4 = useCallback(_fun66740, [guildId]);
const value5 = useCallback(_fun66741, [value2, guildId]);
object2 = {pendingAvatar: pendingAvatar, pendingAvatarDecoration: pendingAvatarDecoration,
pendingErrors: pendingErrors};
object2.setPendingAvatar = isTryItOut ? (require(7613) /* metro dependency 7613: UserProfileActionCreators */).setTryItOutAvatar : value4;
object2.setPendingAvatarDecoration = isTryItOut ? (require(7613) /* metro dependency 7613: UserProfileActionCreators */).setTryItOutAvatarDecoration : value5;
return object2;
}
function _fun66740(a0) { // fn#66740, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8583:776, offset: 0x01c07cba, size: 99 bytes, params: 2, frame: 16
let value = environment.__proto__;
(UserProfileSettingsActionCreatorsModule).setPendingChanges({guildId: guildId,
avatar: a0});
value = require(8402) /* metro dependency 8402: ProfileCustomizationUtils */;
value.announcePendingAvatarChange(a0 == null ? 'remove' : 'set');
}
function _fun66739() { // fn#66739, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8583:365, offset: 0x01c07c2a, size: 144 bytes, params: 1, frame: 14
var tryItOutChanges;
if (isTryItOut) {
tryItOutChanges = UserProfileSettingsStore.getTryItOutChanges();
return {pendingAvatar: tryItOutChanges.tryItOutAvatar,
pendingAvatarDecoration: tryItOutChanges.tryItOutAvatarDecoration,
pendingErrors: UserProfileSettingsStore.getErrors(guildId).avatarDecoration};
}
const getPendingChanges = UserProfileSettingsStore.getPendingChanges;
const guildIdBinding = guildId;
const value = Reflect.apply(getPendingChanges, UserProfileSettingsStore, [guildIdBinding]);
const getErrors = UserProfileSettingsStore.getErrors;
return {pendingAvatar: value.pendingAvatar, pendingAvatarDecoration: value.pendingAvatarDecoration,
pendingErrors: Reflect.apply(getErrors, UserProfileSettingsStore, [guildIdBinding]).avatarDecoration};
}
function _fun66741(a0) { // fn#66741, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8583:900, offset: 0x01c07d1d, size: 74 bytes, params: 2, frame: 15
const value = environment.__proto__;
(UserProfileSettingsActionCreatorsModule).setPendingChanges({guildId: guildId,
avatarDecoration: a0});
if (a0 != null) {
env0_2(a0);
}
}
function _fun66740(a0) { // fn#66740, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8583:776, offset: 0x01c07cba, size: 99 bytes, params: 2, frame: 16
let value = environment.__proto__;
(require(8400) /* metro dependency 8400: UserProfileSettingsActionCreators */).setPendingChanges({guildId: guildId,
avatar: a0});
value = require(8402) /* metro dependency 8402: ProfileCustomizationUtils */;
value.announcePendingAvatarChange(a0 == null ? 'remove' : 'set');
}
function _fun66741(a0) { // fn#66741, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8583:900, offset: 0x01c07d1d, size: 74 bytes, params: 2, frame: 15
const value = environment.__proto__;
(require(8400) /* metro dependency 8400: UserProfileSettingsActionCreators */).setPendingChanges({guildId: guildId,
avatarDecoration: a0});
if (a0 != null) {
env0_2(a0);
}
}
global.__d(_fun66737, 8398, [31, 7624, 8399, 632, 8400, 8402, 7613,
2]) /* metro module 8398, dependencies: [31, 7624, 8399, 632, 8400, 8402, 7613, 2] */;
@@ -1,60 +1,65 @@
/* Metro module 10249; source: modules/user_profile/hooks/usePersonalizedVoiceChannelUsers.tsx; dependencies: [5221, 5078, 1878, 4300, 661, 566, 2] */
import UserStore from '../../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import SortedVoiceStateStore from '../../../stores/views/SortedVoiceStateStore.tsx'; /* Metro dependency 4300 */
import ConsentStore from '../../../stores/ConsentStore.tsx'; /* Metro dependency 5078 */
import UserAffinitiesV2Store from '../../user_affinities/UserAffinitiesV2Store.tsx'; /* Metro dependency 5221 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
function _fun79600(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#79600, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10435:6, offset: 0x01e59cbd, size: 184 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const userAffinitiesV2Store = importDefault(5221) /* metro dependency 5221: UserAffinitiesV2Store */;
const consentStore = importDefault(5078) /* metro dependency 5078: ConsentStore */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const sortedVoiceStateStore = importDefault(4300) /* metro dependency 4300: SortedVoiceStateStore */;
const env0_6 = (require(661) /* metro dependency 661: Constants */).Consents;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/usePersonalizedVoiceChannelUsers.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/usePersonalizedVoiceChannelUsers.tsx');
exports.default = usePersonalizedVoiceChannelUsers;
function usePersonalizedVoiceChannelUsers(a0) { // fn#79601, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10435:263, offset: 0x01e59d75, size: 237 bytes, params: 2, frame: 22
const env0_0 = a0;
const value2 = (require(566) /* metro dependency 566: flux */).useStateFromStoresArray([SortedVoiceStateStore],
_fun79602, [a0.id, a0.guild_id]);
const userAffinitiesMap = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserAffinitiesV2Store],
function() {
return UserAffinitiesV2Store.getUserAffinitiesMap();
});
return (require(566) /* metro dependency 566: flux */).useStateFromStoresArray([UserStore], _fun79606,
[(require(566) /* metro dependency 566: flux */).useStateFromStores([ConsentStore], function() {
return ConsentStore.hasConsented(Consents.PERSONALIZATION);
}), userAffinitiesMap, value2]);
function _fun79602() { // fn#79602, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10435:351, offset: 0x01e59e62, size: 57 bytes, params: 1, frame: 13
var environment;
const value = environment.__proto__;
const sortedVoiceStateStoreBinding = SortedVoiceStateStore;
const getVoiceStatesForChannelAlt = sortedVoiceStateStoreBinding.getVoiceStatesForChannelAlt;
const binding = env0_0;
return Reflect.apply(getVoiceStatesForChannelAlt, sortedVoiceStateStoreBinding, [binding.id,
binding.guild_id]).map(function(a0) {
return a0.user.id;
});
}
function _fun79606() { // fn#79606, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10435:629, offset: 0x01e59ecc, size: 75 bytes, params: 1, frame: 13
const binding = env0_3;
const binding2 = env0_1;
return (binding ? binding2.sort(_fun79607) : binding2).map(function(a0) {
return UserStore.getUser(a0);
}).filter(function(a0) {
return a0 != null;
});
function _fun79607(a0, a1) { // fn#79607, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10435:644, offset: 0x01e59f17, size: 99 bytes, params: 3, frame: 15
let value = environment.__proto__;
const value2 = userAffinitiesMap.get(a1);
const value3 = undefined;
const vcProbability = value2 == null ? value3 : value2.vcProbability;
const value4 = 0;
const r0 = vcProbability ?? value4;
value = userAffinitiesMap.get(a0);
return r0 - ((value == null ? value3 : value.vcProbability) ?? value4);
}
}
}
}
function usePersonalizedVoiceChannelUsers(a0) { // fn#79601, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10435:263, offset: 0x01e59d75, size: 237 bytes, params: 2, frame: 22
const env0_0 = a0;
const value2 = (require(566) /* metro dependency 566: flux */).useStateFromStoresArray([SortedVoiceStateStore],
_fun79602, [a0.id, a0.guild_id]);
const userAffinitiesMap = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserAffinitiesV2Store],
function() {
return UserAffinitiesV2Store.getUserAffinitiesMap();
});
return (require(566) /* metro dependency 566: flux */).useStateFromStoresArray([UserStore], _fun79606,
[(require(566) /* metro dependency 566: flux */).useStateFromStores([ConsentStore], function() {
return ConsentStore.hasConsented(Consents.PERSONALIZATION);
}), userAffinitiesMap, value2]);
}
function _fun79602() { // fn#79602, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10435:351, offset: 0x01e59e62, size: 57 bytes, params: 1, frame: 13
var environment;
const value = environment.__proto__;
const getVoiceStatesForChannelAlt = SortedVoiceStateStore.getVoiceStatesForChannelAlt;
const binding = env0_0;
return Reflect.apply(getVoiceStatesForChannelAlt, SortedVoiceStateStore, [binding.id,
binding.guild_id]).map(function(a0) {
return a0.user.id;
});
}
function _fun79606() { // fn#79606, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10435:629, offset: 0x01e59ecc, size: 75 bytes, params: 1, frame: 13
const binding = env0_3;
const binding2 = env0_1;
return (binding ? binding2.sort(_fun79607) : binding2).map(function(a0) {
return UserStore.getUser(a0);
}).filter(function(a0) {
return a0 != null;
});
}
function _fun79607(a0, a1) { // fn#79607, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10435:644, offset: 0x01e59f17, size: 99 bytes, params: 3, frame: 15
let value = environment.__proto__;
const value2 = userAffinitiesMap.get(a1);
const value3 = undefined;
const vcProbability = value2 == null ? value3 : value2.vcProbability;
const value4 = 0;
const r0 = vcProbability ?? value4;
value = userAffinitiesMap.get(a0);
return r0 - ((value == null ? value3 : value.vcProbability) ?? value4);
}
global.__d(_fun79600, 10249, [5221, 5078, 1878, 4300, 661, 566,
2]) /* metro module 10249, dependencies: [5221, 5078, 1878, 4300, 661, 566, 2] */;
@@ -1,38 +1,55 @@
/* Metro module 8494; source: modules/user_profile/hooks/useProfileTheme.tsx; dependencies: [57, 4502, 8495, 661, 4048, 566, 696, 8372, 673, 7593, 4002, 2] */
import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */
import UseTheme from '../../../hooks/useTheme.tsx'; /* Metro dependency 4048 */
import AccessibilityStore from '../../a11y/AccessibilityStore.tsx'; /* Metro dependency 4502 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as UseProfileThemeOverrideStoreModule from './useProfileThemeOverrideStore.tsx'; /* Metro dependency 8495 */
function _fun67393(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67393, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8679:6, offset: 0x01c20e02, size: 178 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const accessibilityStore = importDefault(4502) /* metro dependency 4502: AccessibilityStore */;
const env0_5 = (require(8495) /* metro dependency 8495: useProfileThemeOverrideStore */).useEffectiveThemeOverride;
const env0_6 = (require(661) /* metro dependency 661: Constants */).ThemeTypes;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useProfileTheme.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useProfileTheme.tsx');
exports.default = useProfileTheme;
}
function useProfileTheme({user, displayProfile, pendingThemeColors, pendingAvatarSrc, isPreview, forceUserTheme}) { // fn#67394, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8679:264, offset: 0x01c20eb4, size: 623 bytes, params: 2, frame: 28
var r2;
var r6;
var r3;
var r4;
var moduleValue7;
const value3 = (importDefault(4048) /* metro dependency 4048: useTheme */)();
const value4 = useEffectiveThemeOverride();
const syncProfileThemeWithUserTheme = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore],
function() {
return AccessibilityStore.syncProfileThemeWithUserTheme;
});
const value8 = env0_3((require(8372) /* metro dependency 8372: useAvatarColor */).useAvatarColors(pendingAvatarSrc ?? user?.getAvatarURL(displayProfile?.guildId,
80), (require(696) /* metro dependency 696: shimsNative */).unsafe_getResolvedRawColor('PRIMARY_530',
{saturation: 1}), false), 2);
const property = value8[0];
const property2 = value8[1];
if (value4 != null) {
return value4;
}
if (displayProfile != null) {
if (displayProfile.canEditThemes) {
function useProfileTheme({user, displayProfile, pendingThemeColors, pendingAvatarSrc, isPreview, forceUserTheme}) { // fn#67394, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8679:264, offset: 0x01c20eb4, size: 623 bytes, params: 2, frame: 28
var r2;
var r6;
var r3;
var r4;
var moduleValue7;
const value3 = (UseTheme)();
const value4 = useEffectiveThemeOverride();
const syncProfileThemeWithUserTheme = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore],
function() {
return AccessibilityStore.syncProfileThemeWithUserTheme;
});
const value8 = Module00057((require(8372) /* metro dependency 8372: useAvatarColor */).useAvatarColors(pendingAvatarSrc ?? user?.getAvatarURL(displayProfile?.guildId,
80), (require(696) /* metro dependency 696: shimsNative */).unsafe_getResolvedRawColor('PRIMARY_530',
{saturation: 1}), false), 2);
const property = value8[0];
const property2 = value8[1];
if (value4 != null) {
return value4;
}
if (displayProfile != null) {
if (displayProfile.canEditThemes) {
r6 = displayProfile?.getPreviewThemeColors(pendingThemeColors);
r3 = r6?.[0];
r3 = r3 ?? (require(673) /* metro dependency 673: ColorUtils */).hex2int(property);
r2 = r6?.[1];
r2 = r2 ?? (require(673) /* metro dependency 673: ColorUtils */).hex2int(property2);
r6 = syncProfileThemeWithUserTheme || forceUserTheme ? value3 : (require(7593) /* metro dependency 7593: UserProfileGradientUtils */).getProfileTheme(r3) ?? value3;
if (r6 !== ThemeTypes.DARK) {
r4 = r6 === ThemeTypes.DARK && (require(4002) /* metro dependency 4002: shared */).isThemeLight(value3) ? ThemeTypes.DARKER : r6;
} else {
moduleValue7 = require(4002) /* metro dependency 4002: shared */;
r4 = moduleValue7.isThemeDark(value3) ? value3 : r6 === ThemeTypes.DARK && (require(4002) /* metro dependency 4002: shared */).isThemeLight(value3) ? ThemeTypes.DARKER : r6;
}
return {theme: r4, primaryColor: r3, secondaryColor: r2};
}
}
if (isPreview) {
r6 = displayProfile?.getPreviewThemeColors(pendingThemeColors);
r3 = r6?.[0];
r3 = r3 ?? (require(673) /* metro dependency 673: ColorUtils */).hex2int(property);
@@ -47,22 +64,10 @@ function useProfileTheme({user, displayProfile, pendingThemeColors, pendingAvata
}
return {theme: r4, primaryColor: r3, secondaryColor: r2};
}
return {'theme': null, 'primaryColor': null, 'secondaryColor': null, theme: value3};
}
if (isPreview) {
r6 = displayProfile?.getPreviewThemeColors(pendingThemeColors);
r3 = r6?.[0];
r3 = r3 ?? (require(673) /* metro dependency 673: ColorUtils */).hex2int(property);
r2 = r6?.[1];
r2 = r2 ?? (require(673) /* metro dependency 673: ColorUtils */).hex2int(property2);
r6 = syncProfileThemeWithUserTheme || forceUserTheme ? value3 : (require(7593) /* metro dependency 7593: UserProfileGradientUtils */).getProfileTheme(r3) ?? value3;
if (r6 !== ThemeTypes.DARK) {
r4 = r6 === ThemeTypes.DARK && (require(4002) /* metro dependency 4002: shared */).isThemeLight(value3) ? ThemeTypes.DARKER : r6;
} else {
moduleValue7 = require(4002) /* metro dependency 4002: shared */;
r4 = moduleValue7.isThemeDark(value3) ? value3 : r6 === ThemeTypes.DARK && (require(4002) /* metro dependency 4002: shared */).isThemeLight(value3) ? ThemeTypes.DARKER : r6;
}
return {theme: r4, primaryColor: r3, secondaryColor: r2};
}
return {'theme': null, 'primaryColor': null, 'secondaryColor': null, theme: value3};
}
global.__d(_fun67393, 8494, [57, 4502, 8495, 661, 4048, 566, 696, 8372, 673, 7593, 4002,
2]) /* metro module 8494, dependencies: [57, 4502, 8495, 661, 4048, 566, 696, 8372, 673, 7593, 4002, 2] */;
@@ -1,103 +1,109 @@
/* Metro module 8495; source: modules/user_profile/hooks/useProfileThemeOverrideStore.tsx; dependencies: [661, 629, 4048, 7593, 4002, 2] */
import UseTheme from '../../../hooks/useTheme.tsx'; /* Metro dependency 4048 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as Module00629Module from '../../../by-id/module-00629.js'; /* Metro dependency 629 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
function _fun67396(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67396, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8680:6, offset: 0x01c21132, size: 199 bytes, params: 8, frame: 18
let env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = (require(661) /* metro dependency 661: Constants */).ThemeTypes;
let value = require(629) /* metro dependency 629 */;
let value = Module00629Module;
value = value.create();
value = value(function(a0) {
var env0_0 = a0;
return {'themeOverride': null, 'savedClientTheme': null, setThemeOverride: _fun67398,
setSavedClientTheme: _fun67399};
});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useProfileThemeOverrideStore.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useProfileThemeOverrideStore.tsx');
exports.useProfileThemeOverrideStore = value;
exports.useEffectiveThemeOverride = useEffectiveThemeOverride;
exports.useIsBannerDisabledByOverride = useIsBannerDisabledByOverride;
exports.useHasNonNitroThemeOverride = useHasNonNitroThemeOverride;
}
function _fun67397(a0) { // fn#67397, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8680:137, offset: 0x01c211f9, size: 51 bytes, params: 2, frame: 3
const env0_0 = a0;
return {'themeOverride': null, 'savedClientTheme': null, setThemeOverride: setThemeOverride_67398,
setSavedClientTheme: setSavedClientTheme};
}
function useEffectiveThemeOverride() { // fn#67400, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8680:429, offset: 0x01c21260, size: 361 bytes, params: 1, frame: 21
var r6;
var r7;
var r5;
var r4;
var r2;
var r3;
var themeType;
var themeColors;
var profileTheme;
var moduleValue2;
const binding = env0_4;
const value2 = undefined;
const value3 = binding(function(a0) {
return a0.themeOverride;
});
const value4 = (importDefault(4048) /* metro dependency 4048: useTheme */)();
const value5 = null;
if (value5 == value3) {
return value5;
}
if (value3.mode === 'nitro') {
themeColors = value3.themeColors;
r7 = value5 == themeColors ? value2 : themeColors[0];
r5 = value5 != r7 ? r7 : value5;
themeColors = value3.themeColors;
r7 = value5 == themeColors ? value2 : themeColors[1];
r4 = value5 != r7 ? r7 : value5;
if (value5 == r5) {
r7 = value4;
} else if (value5 == r4) {
r7 = value4;
} else {
profileTheme = (require(7593) /* metro dependency 7593: UserProfileGradientUtils */).getProfileTheme(r5);
r7 = value5 == profileTheme ? value4 : profileTheme;
function _fun67397(a0) { // fn#67397, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8680:137, offset: 0x01c211f9, size: 51 bytes, params: 2, frame: 3
const env0_0 = a0;
return {'themeOverride': null, 'savedClientTheme': null, setThemeOverride: setThemeOverride_67398,
setSavedClientTheme: setSavedClientTheme};
function setThemeOverride_67398(a0) { // fn#67398, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8680:200, offset: 0x01c2122c, size: 26 bytes, params: 2, frame: 11
return env0_0({themeOverride: a0});
}
r2 = r4;
r3 = r5;
r6 = r7;
} else {
themeType = value3.themeType;
r6 = value5 == themeType ? value4 : themeType;
r2 = value5;
r3 = value5;
function setSavedClientTheme(a0) { // fn#67399, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8680:244, offset: 0x01c21246, size: 26 bytes, params: 2, frame: 11
return env0_0({savedClientTheme: a0});
}
}
const DARK = ThemeTypes.DARK;
if (r6 !== DARK) {
r4 = r6 === ThemeTypes.DARK && (require(4002) /* metro dependency 4002: shared */).isThemeLight(value4) ? ThemeTypes.DARKER : r6;
} else {
moduleValue2 = require(4002) /* metro dependency 4002: shared */;
r4 = moduleValue2.isThemeDark(value4) ? value4 : r6 === ThemeTypes.DARK && (require(4002) /* metro dependency 4002: shared */).isThemeLight(value4) ? ThemeTypes.DARKER : r6;
function useEffectiveThemeOverride() { // fn#67400, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8680:429, offset: 0x01c21260, size: 361 bytes, params: 1, frame: 21
var r6;
var r7;
var r5;
var r4;
var r2;
var r3;
var themeType;
var themeColors;
var profileTheme;
var moduleValue2;
const binding = env0_4;
const value2 = undefined;
const value3 = binding(function(a0) {
return a0.themeOverride;
});
const value4 = (UseTheme)();
const value5 = null;
if (value5 == value3) {
return value5;
}
if (value3.mode === 'nitro') {
themeColors = value3.themeColors;
r7 = value5 == themeColors ? value2 : themeColors[0];
r5 = value5 != r7 ? r7 : value5;
themeColors = value3.themeColors;
r7 = value5 == themeColors ? value2 : themeColors[1];
r4 = value5 != r7 ? r7 : value5;
if (value5 == r5) {
r7 = value4;
} else if (value5 == r4) {
r7 = value4;
} else {
profileTheme = (require(7593) /* metro dependency 7593: UserProfileGradientUtils */).getProfileTheme(r5);
r7 = value5 == profileTheme ? value4 : profileTheme;
}
r2 = r4;
r3 = r5;
r6 = r7;
} else {
themeType = value3.themeType;
r6 = value5 == themeType ? value4 : themeType;
r2 = value5;
r3 = value5;
}
const DARK = ThemeTypes.DARK;
if (r6 !== DARK) {
r4 = r6 === ThemeTypes.DARK && (require(4002) /* metro dependency 4002: shared */).isThemeLight(value4) ? ThemeTypes.DARKER : r6;
} else {
moduleValue2 = require(4002) /* metro dependency 4002: shared */;
r4 = moduleValue2.isThemeDark(value4) ? value4 : r6 === ThemeTypes.DARK && (require(4002) /* metro dependency 4002: shared */).isThemeLight(value4) ? ThemeTypes.DARKER : r6;
}
return {theme: r4, primaryColor: r3, secondaryColor: r2};
}
return {theme: r4, primaryColor: r3, secondaryColor: r2};
}
function useIsBannerDisabledByOverride() { // fn#67402, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8680:951, offset: 0x01c213d4, size: 69 bytes, params: 1, frame: 12
const value = env0_4(function(a0) {
return a0.themeOverride;
});
return value != null && (value.mode === 'non-nitro' || value.disableBanner === true);
}
function useIsBannerDisabledByOverride() { // fn#67402, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8680:951, offset: 0x01c213d4, size: 69 bytes, params: 1, frame: 12
const value = env0_4(function(a0) {
return a0.themeOverride;
});
return value != null && (value.mode === 'non-nitro' || value.disableBanner === true);
}
function useHasNonNitroThemeOverride() { // fn#67404, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8680:1114, offset: 0x01c21419, size: 49 bytes, params: 1, frame: 11
const value = env0_4(function(a0) {
return a0.themeOverride;
});
return value != null && value.mode === 'non-nitro';
}
function useHasNonNitroThemeOverride() { // fn#67404, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8680:1114, offset: 0x01c21419, size: 49 bytes, params: 1, frame: 11
const value = env0_4(function(a0) {
return a0.themeOverride;
});
return value != null && value.mode === 'non-nitro';
}
function setThemeOverride_67398(a0) { // fn#67398, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8680:200, offset: 0x01c2122c, size: 26 bytes, params: 2, frame: 11
return env0_0({themeOverride: a0});
}
function setSavedClientTheme(a0) { // fn#67399, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8680:244, offset: 0x01c21246, size: 26 bytes, params: 2, frame: 11
return env0_0({savedClientTheme: a0});
}
global.__d(_fun67396, 8495, [661, 629, 4048, 7593, 4002,
2]) /* metro module 8495, dependencies: [661, 629, 4048, 7593, 4002, 2] */;
@@ -1,31 +1,35 @@
/* Metro module 7614; source: modules/user_profile/hooks/useShouldConvertBioEmoji.tsx; dependencies: [3829, 2] */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as UserSettingsModule from '../../user_settings/UserSettings.tsx'; /* Metro dependency 3829 */
function _fun61008(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#61008, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7792:6, offset: 0x01717d6b, size: 105 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useShouldConvertBioEmoji.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useShouldConvertBioEmoji.tsx');
exports.default = useShouldConvertBioEmoji;
exports.getShouldConvertBioEmoji = getShouldConvertBioEmoji;
}
function useShouldConvertBioEmoji() { // fn#61009, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7792:191, offset: 0x01717dd4, size: 73 bytes, params: 1, frame: 14
const UseLegacyChatInput = (require(3829) /* metro dependency 3829: UserSettings */).UseLegacyChatInput;
const value = UseLegacyChatInput.useSetting();
const UseRichChatInput = (require(3829) /* metro dependency 3829: UserSettings */).UseRichChatInput;
return value || !UseRichChatInput.useSetting();
}
function getShouldConvertBioEmoji() { // fn#61010, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7792:354, offset: 0x01717e1d, size: 81 bytes, params: 1, frame: 13
var r0;
var UseRichChatInput;
const UseLegacyChatInput = (require(3829) /* metro dependency 3829: UserSettings */).UseLegacyChatInput;
const setting = UseLegacyChatInput.getSetting();
if (setting) {
r0 = setting;
} else {
UseRichChatInput = (require(3829) /* metro dependency 3829: UserSettings */).UseRichChatInput;
r0 = !UseRichChatInput.getSetting();
function useShouldConvertBioEmoji() { // fn#61009, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7792:191, offset: 0x01717dd4, size: 73 bytes, params: 1, frame: 14
const UseLegacyChatInput = (UserSettingsModule).UseLegacyChatInput;
const value = UseLegacyChatInput.useSetting();
const UseRichChatInput = (UserSettingsModule).UseRichChatInput;
return value || !UseRichChatInput.useSetting();
}
return r0;
function getShouldConvertBioEmoji() { // fn#61010, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7792:354, offset: 0x01717e1d, size: 81 bytes, params: 1, frame: 13
var r0;
var UseRichChatInput;
const UseLegacyChatInput = (require(3829) /* metro dependency 3829: UserSettings */).UseLegacyChatInput;
const setting = UseLegacyChatInput.getSetting();
if (setting) {
r0 = setting;
} else {
UseRichChatInput = (require(3829) /* metro dependency 3829: UserSettings */).UseRichChatInput;
r0 = !UseRichChatInput.getSetting();
}
return r0;
}
}
global.__d(_fun61008, 7614, [3829, 2]) /* metro module 7614, dependencies: [3829, 2] */;
@@ -1,18 +1,21 @@
/* Metro module 8820; source: modules/user_profile/hooks/useShouldShowMutualInfo.tsx; dependencies: [1878, 566, 8821, 2] */
import UserStore from '../../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
function _fun68939(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68939, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9005:6, offset: 0x01c62240, size: 118 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useShouldShowMutualInfo.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useShouldShowMutualInfo.tsx');
exports.default = useShouldShowMutualInfo;
function useShouldShowMutualInfo(a0) { // fn#68940, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9005:204, offset: 0x01c622b6, size: 112 bytes, params: 2, frame: 17
const value2 = undefined;
const currentUser = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], function() {
return UserStore.getCurrentUser();
});
return (currentUser == null ? value2 : currentUser.id) !== a0.id && !(importDefault(8821) /* metro dependency 8821: useIsUserProfileObfuscated */)(a0);
}
}
function useShouldShowMutualInfo(a0) { // fn#68940, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9005:204, offset: 0x01c622b6, size: 112 bytes, params: 2, frame: 17
const value2 = undefined;
const currentUser = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], function() {
return UserStore.getCurrentUser();
});
return (currentUser == null ? value2 : currentUser.id) !== a0.id && !(importDefault(8821) /* metro dependency 8821: useIsUserProfileObfuscated */)(a0);
}
global.__d(_fun68939, 8820, [1878, 566, 8821, 2]) /* metro module 8820, dependencies: [1878, 566, 8821, 2] */;
@@ -1,41 +1,45 @@
/* Metro module 10244; source: modules/user_profile/hooks/useTrackUserProfileActivityAction.tsx; dependencies: [31, 10046, 8514, 6771, 566, 8515, 2] */
import ContentInventoryOutboxStore from '../../content_inventory/ContentInventoryOutboxStore.tsx'; /* Metro dependency 10046 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as UserProfileAnalyticsContextModule from '../UserProfileAnalyticsContext.tsx'; /* Metro dependency 8514 */
import * as UserProfileAnalyticsUtilsModule from '../UserProfileAnalyticsUtils.tsx'; /* Metro dependency 8515 */
function _fun79570(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#79570, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10430:6, offset: 0x01e58870, size: 139 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = (require(31) /* metro dependency 31 */).useCallback;
const contentInventoryOutboxStore = importDefault(10046) /* metro dependency 10046: ContentInventoryOutboxStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useTrackUserProfileActivityAction.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useTrackUserProfileActivityAction.tsx');
exports.default = useTrackUserProfileActivityAction;
function useTrackUserProfileActivityAction({user, display, activity, entry, stream, voiceChannelId, analyticsLocations}) { // fn#79571, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10430:236, offset: 0x01e588fb, size: 284 bytes, params: 2, frame: 24
const {context,
trackUserProfileAction} = (UserProfileAnalyticsContextModule).useUserProfileAnalyticsContext();
const r4 = analyticsLocations ?? (importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */)().analyticsLocations;
const userOutbox = (require(566) /* metro dependency 566: flux */).useStateFromStores([ContentInventoryOutboxStore],
function() {
return ContentInventoryOutboxStore.getUserOutbox(user.id);
});
return useCallback(_fun79573, [trackUserProfileAction, context, display, activity, stream, entry, userOutbox,
voiceChannelId, r4]);
function _fun79573({action}) { // fn#79573, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10430:568, offset: 0x01e58a37, size: 153 bytes, params: 2, frame: 15
trackUserProfileAction({action: action, analyticsLocations: env0_8});
const trackUserProfileActivityAction = UserProfileAnalyticsUtilsModule.trackUserProfileActivityAction;
object = {action: action};
object.display = display;
object.activity = activity;
object.entry = entry;
object.stream = stream;
object.outbox = userOutbox;
object.voiceChannelId = voiceChannelId;
const binding = env0_8;
object.analyticsLocations = binding;
copyDataProperties(object, context, binding);
Reflect.apply(trackUserProfileActivityAction, UserProfileAnalyticsUtilsModule, [object]);
}
}
}
function useTrackUserProfileActivityAction({user, display, activity, entry, stream, voiceChannelId, analyticsLocations}) { // fn#79571, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10430:236, offset: 0x01e588fb, size: 284 bytes, params: 2, frame: 24
const {context,
trackUserProfileAction} = (require(8514) /* metro dependency 8514: UserProfileAnalyticsContext */).useUserProfileAnalyticsContext();
const r4 = analyticsLocations ?? (importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */)().analyticsLocations;
const userOutbox = (require(566) /* metro dependency 566: flux */).useStateFromStores([ContentInventoryOutboxStore],
function() {
return ContentInventoryOutboxStore.getUserOutbox(user.id);
});
return useCallback(_fun79573, [trackUserProfileAction, context, display, activity, stream, entry, userOutbox,
voiceChannelId, r4]);
}
function _fun79573({action}) { // fn#79573, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10430:568, offset: 0x01e58a37, size: 153 bytes, params: 2, frame: 15
var object2;
trackUserProfileAction({action: action, analyticsLocations: env0_8});
const userProfileAnalyticsUtilsModule = require(8515) /* metro dependency 8515: UserProfileAnalyticsUtils */;
const trackUserProfileActivityAction = userProfileAnalyticsUtilsModule.trackUserProfileActivityAction;
object2 = {action: action};
object2.display = display;
object2.activity = activity;
object2.entry = entry;
object2.stream = stream;
object2.outbox = userOutbox;
object2.voiceChannelId = voiceChannelId;
const binding = env0_8;
object2.analyticsLocations = binding;
copyDataProperties(object2, context, binding);
Reflect.apply(trackUserProfileActivityAction, userProfileAnalyticsUtilsModule, [object2]);
}
global.__d(_fun79570, 10244, [31, 10046, 8514, 6771, 566, 8515,
2]) /* metro module 10244, dependencies: [31, 10046, 8514, 6771, 566, 8515, 2] */;
@@ -1,98 +1,110 @@
/* Metro module 10276; source: modules/user_profile/hooks/useUserProfileActivity.tsx; dependencies: [31, 10046, 4396, 8831, 566, 10277, 8375, 9572, 9571, 2] */
import PresenceStore from '../../../stores/PresenceStore.tsx'; /* Metro dependency 4396 */
import UseDiscoverableApplicationStream from '../../blocking/useDiscoverableApplicationStream.tsx'; /* Metro dependency 8831 */
import ContentInventoryOutboxStore from '../../content_inventory/ContentInventoryOutboxStore.tsx'; /* Metro dependency 10046 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
import * as UtilsModule from '../../content_inventory/utils.tsx'; /* Metro dependency 8375 */
import * as UserProfileStackedActivityCardUtilsModule from '../utils/UserProfileStackedActivityCardUtils.tsx'; /* Metro dependency 10277 */
function _fun79734(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#79734, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10462:6, offset: 0x01e60424, size: 171 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = (require(31) /* metro dependency 31 */).useMemo;
const contentInventoryOutboxStore = importDefault(10046) /* metro dependency 10046: ContentInventoryOutboxStore */;
const presenceStore = importDefault(4396) /* metro dependency 4396: PresenceStore */;
const env0_6 = [];
const env0_7 = [];
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useUserProfileActivity.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useUserProfileActivity.tsx');
exports.default = useUserProfileActivity;
}
function useUserProfileActivity(a0) { // fn#79735, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10462:241, offset: 0x01e604cf, size: 214 bytes, params: 2, frame: 20
const env0_0 = a0;
const value2 = undefined;
const value3 = (importDefault(8831) /* metro dependency 8831: useDiscoverableApplicationStream */)(a0);
const activities = (require(566) /* metro dependency 566: flux */).useStateFromStores([PresenceStore], _fun79736);
const userOutbox = (require(566) /* metro dependency 566: flux */).useStateFromStores([ContentInventoryOutboxStore],
_fun79737);
const value = useMemo(_fun79738, [activities, userOutbox == null ? value2 : userOutbox.entries]);
return {live: value.live, recent: value.recent, stream: value3, outbox: userOutbox};
}
function _fun79737() { // fn#79737, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10462:386, offset: 0x01e605a5, size: 27 bytes, params: 1, frame: 11
return ContentInventoryOutboxStore.getUserOutbox(env0_0);
}
function _fun79738() { // fn#79738, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10462:416, offset: 0x01e605c0, size: 135 bytes, params: 1, frame: 15
const value2 = undefined;
const userProfileLiveActivities = (require(10277) /* metro dependency 10277: UserProfileStackedActivityCardUtils */).getUserProfileLiveActivities(activities);
let r1 = userOutbox == null ? value2 : userOutbox.entries.filter(_fun79739);
const r5 = userProfileLiveActivities.length !== 0 ? userProfileLiveActivities : env1_6;
r1 = r1 == null || r1.length === 0 ? env1_7 : r1;
return {live: r5, recent: r1};
}
function _fun79739(a0) { // fn#79739, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10462:502, offset: 0x01e60647, size: 241 bytes, params: 2, frame: 16
var environment;
var r1;
var r0;
var moduleValue2;
var moduleValue3;
var binding;
const env0_0 = a0;
let value = environment.__proto__.__proto__;
const isEntryLive2 = (require(8375) /* metro dependency 8375: utils */).isEntryLive(a0);
if (isEntryLive2) {
r0 = !isEntryLive2;
} else {
moduleValue2 = require(9572) /* metro dependency 9572: ContentInventoryTypes */;
if (moduleValue2.isListenedSessionEntry(a0)) {
r1 = a0.extra.entries.length > 0 && !env0_0.some(_fun79740);
} else {
moduleValue3 = require(9572) /* metro dependency 9572: ContentInventoryTypes */;
if (moduleValue3.isWatchedMediaEntry(a0)) {
binding = env0_0;
r1 = !binding.some(_fun79741);
} else {
value = require(9572) /* metro dependency 9572: ContentInventoryTypes */;
value = value.isRecentActivityEntry(a0);
r1 = value;
}
function useUserProfileActivity(a0) { // fn#79735, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10462:241, offset: 0x01e604cf, size: 214 bytes, params: 2, frame: 20
const env0_0 = a0;
const value2 = undefined;
const value3 = (UseDiscoverableApplicationStream)(a0);
const activities = (FluxModule).useStateFromStores([PresenceStore], _fun79736);
const userOutbox = (FluxModule).useStateFromStores([ContentInventoryOutboxStore],
_fun79737);
const value = useMemo(_fun79738, [activities, userOutbox == null ? value2 : userOutbox.entries]);
return {live: value.live, recent: value.recent, stream: value3, outbox: userOutbox};
function _fun79736() { // fn#79736, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10462:327, offset: 0x01c6398b, size: 27 bytes, params: 1, frame: 11
return PresenceStore.getActivities(env0_0);
}
r0 = r1;
function _fun79737() { // fn#79737, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10462:386, offset: 0x01e605a5, size: 27 bytes, params: 1, frame: 11
return ContentInventoryOutboxStore.getUserOutbox(env0_0);
}
function _fun79738() { // fn#79738, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10462:416, offset: 0x01e605c0, size: 135 bytes, params: 1, frame: 15
const value2 = undefined;
const userProfileLiveActivities = (UserProfileStackedActivityCardUtilsModule).getUserProfileLiveActivities(activities);
let r1 = userOutbox == null ? value2 : userOutbox.entries.filter(_fun79739);
const r5 = userProfileLiveActivities.length !== 0 ? userProfileLiveActivities : env1_6;
r1 = r1 == null || r1.length === 0 ? env1_7 : r1;
return {live: r5, recent: r1};
function _fun79739(a0) { // fn#79739, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10462:502, offset: 0x01e60647, size: 241 bytes, params: 2, frame: 16
var environment;
var r1;
var r0;
var moduleValue2;
var moduleValue3;
var binding;
const env0_0 = a0;
let value = environment.__proto__.__proto__;
const isEntryLive2 = (UtilsModule).isEntryLive(a0);
if (isEntryLive2) {
r0 = !isEntryLive2;
} else {
moduleValue2 = require(9572) /* metro dependency 9572: ContentInventoryTypes */;
if (moduleValue2.isListenedSessionEntry(a0)) {
r1 = a0.extra.entries.length > 0 && !env0_0.some(_fun79740);
} else {
moduleValue3 = require(9572) /* metro dependency 9572: ContentInventoryTypes */;
if (moduleValue3.isWatchedMediaEntry(a0)) {
binding = env0_0;
r1 = !binding.some(_fun79741);
} else {
value = require(9572) /* metro dependency 9572: ContentInventoryTypes */;
value = value.isRecentActivityEntry(a0);
r1 = value;
}
}
r0 = r1;
}
return r0;
function _fun79740(a0) { // fn#79740, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10462:600, offset: 0x01e60738, size: 58 bytes, params: 2, frame: 14
var r0;
let value = a0 != null;
if (value) {
value = environment.__proto__.__proto__.__proto__;
value = require(9571) /* metro dependency 9571: matchUtils */;
value = value.isMatchingListeningActivity(env0_0, a0);
r0 = value;
} else {
r0 = value;
}
return r0;
}
function _fun79741(a0) { // fn#79741, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10462:695, offset: 0x01e60772, size: 58 bytes, params: 2, frame: 14
var r0;
let value = a0 != null;
if (value) {
value = environment.__proto__.__proto__.__proto__;
value = require(9571) /* metro dependency 9571: matchUtils */;
value = value.isMatchingWatchActivity(env0_0, a0);
r0 = value;
} else {
r0 = value;
}
return r0;
}
}
}
}
return r0;
}
function _fun79740(a0) { // fn#79740, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10462:600, offset: 0x01e60738, size: 58 bytes, params: 2, frame: 14
var r0;
let value = a0 != null;
if (value) {
value = environment.__proto__.__proto__.__proto__;
value = require(9571) /* metro dependency 9571: matchUtils */;
value = value.isMatchingListeningActivity(env0_0, a0);
r0 = value;
} else {
r0 = value;
}
return r0;
}
function _fun79741(a0) { // fn#79741, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10462:695, offset: 0x01e60772, size: 58 bytes, params: 2, frame: 14
var r0;
let value = a0 != null;
if (value) {
value = environment.__proto__.__proto__.__proto__;
value = require(9571) /* metro dependency 9571: matchUtils */;
value = value.isMatchingWatchActivity(env0_0, a0);
r0 = value;
} else {
r0 = value;
}
return r0;
}
global.__d(_fun79734, 10276, [31, 10046, 4396, 8831, 566, 10277, 8375, 9572, 9571,
2]) /* metro module 10276, dependencies: [31, 10046, 4396, 8831, 566, 10277, 8375, 9572, 9571, 2] */;
@@ -1,12 +1,15 @@
/* Metro module 10372; source: modules/user_profile/hooks/useUserProfileApplicationRoleConnections.tsx; dependencies: [31, 5189, 566, 2] */
import UserProfileStore from '../UserProfileStore.tsx'; /* Metro dependency 5189 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
function _fun80350(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#80350, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10558:6, offset: 0x01e76e8b, size: 143 bytes, params: 8, frame: 18
let env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = (require(31) /* metro dependency 31 */).useMemo;
const userProfileStore = importDefault(5189) /* metro dependency 5189: UserProfileStore */;
const env0_4 = [];
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useUserProfileApplicationRoleConnections.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useUserProfileApplicationRoleConnections.tsx');
exports.default = function(a0) {
var env0_0 = a0;
var value2 = undefined;
@@ -14,21 +17,22 @@ function _fun80350(global, require, importDefault, importAll, module, exports, d
var env0_1 = value3;
return useMemo(_fun80353, [value3 == null ? value2 : value3.applicationRoleConnections]);
};
function useUserProfileApplicationRoleConnections(a0) { // fn#80351, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10558:244, offset: 0x01e76f1a, size: 112 bytes, params: 2, frame: 16
const env0_0 = a0;
const value2 = undefined;
const userProfile = (FluxModule).useStateFromStores([UserProfileStore],
_fun80352);
return useMemo(_fun80353, [userProfile == null ? value2 : userProfile.applicationRoleConnections]);
function _fun80352() { // fn#80352, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10558:335, offset: 0x01e76f8a, size: 27 bytes, params: 1, frame: 11
return UserProfileStore.getUserProfile(env0_0);
}
function _fun80353() { // fn#80353, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10558:371, offset: 0x01e76fa5, size: 53 bytes, params: 1, frame: 4
return userProfile?.applicationRoleConnections == null ? env1_4 : userProfile.applicationRoleConnections;
}
}
}
function useUserProfileApplicationRoleConnections(a0) { // fn#80351, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10558:244, offset: 0x01e76f1a, size: 112 bytes, params: 2, frame: 16
const env0_0 = a0;
const value2 = undefined;
const userProfile = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserProfileStore],
_fun80352);
return useMemo(_fun80353, [userProfile == null ? value2 : userProfile.applicationRoleConnections]);
}
function _fun80352() { // fn#80352, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10558:335, offset: 0x01e76f8a, size: 27 bytes, params: 1, frame: 11
return UserProfileStore.getUserProfile(env0_0);
}
function _fun80353() { // fn#80353, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10558:371, offset: 0x01e76fa5, size: 53 bytes, params: 1, frame: 4
return userProfile?.applicationRoleConnections == null ? env1_4 : userProfile.applicationRoleConnections;
}
global.__d(_fun80350, 10372, [31, 5189, 566, 2]) /* metro module 10372, dependencies: [31, 5189, 566, 2] */;
@@ -1,49 +1,55 @@
/* Metro module 10371; source: modules/user_profile/hooks/useUserProfileConnections.tsx; dependencies: [31, 5189, 5039, 566, 4915, 2] */
import UserProfileStore from '../UserProfileStore.tsx'; /* Metro dependency 5189 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
import * as ConnectionsHooksModule from '../../connections/ConnectionsHooks.tsx'; /* Metro dependency 5039 */
function _fun80345(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#80345, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10557:6, offset: 0x01e76c9c, size: 147 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = (require(31) /* metro dependency 31 */).useMemo;
const userProfileStore = importDefault(5189) /* metro dependency 5189: UserProfileStore */;
const env0_5 = [];
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useUserProfileConnections.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useUserProfileConnections.tsx');
exports.default = useUserProfileConnections;
}
function useUserProfileConnections(a0) { // fn#80346, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10557:229, offset: 0x01e76d2f, size: 152 bytes, params: 2, frame: 18
const env0_0 = a0;
const value2 = undefined;
const value3 = (ConnectionsHooksModule).usePlatformAllowed({forUserProfile: true});
const userProfile = (FluxModule).useStateFromStores([UserProfileStore],
_fun80347);
return useMemo(_fun80348, [userProfile == null ? value2 : userProfile.connectedAccounts, value3]);
function _fun80347() { // fn#80347, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10557:355, offset: 0x01e76dc7, size: 27 bytes, params: 1, frame: 11
return UserProfileStore.getUserProfile(env0_0);
}
function useUserProfileConnections(a0) { // fn#80346, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10557:229, offset: 0x01e76d2f, size: 152 bytes, params: 2, frame: 18
const env0_0 = a0;
const value2 = undefined;
const value3 = (require(5039) /* metro dependency 5039: ConnectionsHooks */).usePlatformAllowed({forUserProfile: true});
const userProfile = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserProfileStore],
_fun80347);
return useMemo(_fun80348, [userProfile == null ? value2 : userProfile.connectedAccounts, value3]);
}
function _fun80348() { // fn#80348, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10557:391, offset: 0x01e76de2, size: 72 bytes, params: 1, frame: 12
return userProfile?.connectedAccounts == null ? env1_5 : userProfile.connectedAccounts.filter(_fun80349);
function _fun80349({type}) { // fn#80349, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10557:468, offset: 0x01e76e2a, size: 97 bytes, params: 2, frame: 15
var r0;
let value = environment.__proto__.__proto__;
const value2 = (importDefault(4915) /* metro dependency 4915: Platforms */).get(type);
const value3 = value2 != null;
if (value3) {
value = importDefault(4915) /* metro dependency 4915: Platforms */;
value = value.isSupported(type);
r0 = value;
} else {
r0 = value3;
}
if (r0) {
value = environment.__proto__;
value = env1_1(value2);
r0 = value;
}
return r0;
}
function _fun80347() { // fn#80347, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10557:355, offset: 0x01e76dc7, size: 27 bytes, params: 1, frame: 11
return UserProfileStore.getUserProfile(env0_0);
}
}
function _fun80348() { // fn#80348, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10557:391, offset: 0x01e76de2, size: 72 bytes, params: 1, frame: 12
return userProfile?.connectedAccounts == null ? env1_5 : userProfile.connectedAccounts.filter(_fun80349);
}
function _fun80349({type}) { // fn#80349, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10557:468, offset: 0x01e76e2a, size: 97 bytes, params: 2, frame: 15
var r0;
let value = environment.__proto__.__proto__;
const value2 = (importDefault(4915) /* metro dependency 4915: Platforms */).get(type);
const value3 = value2 != null;
if (value3) {
value = importDefault(4915) /* metro dependency 4915: Platforms */;
value = value.isSupported(type);
r0 = value;
} else {
r0 = value3;
}
if (r0) {
value = environment.__proto__;
value = env1_1(value2);
r0 = value;
}
return r0;
}
global.__d(_fun80345, 10371, [31, 5189, 5039, 566, 4915,
2]) /* metro module 10371, dependencies: [31, 5189, 5039, 566, 4915, 2] */;
@@ -1,94 +1,99 @@
/* Metro module 8818; source: modules/user_profile/hooks/useUserProfileMutuals.tsx; dependencies: [57, 31, 5221, 4896, 5189, 566, 22, 8819, 2] */
import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */
import SortedGuildStore from '../../../stores/SortedGuildStore.tsx'; /* Metro dependency 4896 */
import UserProfileStore from '../UserProfileStore.tsx'; /* Metro dependency 5189 */
import UserAffinitiesV2Store from '../../user_affinities/UserAffinitiesV2Store.tsx'; /* Metro dependency 5221 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as Module00022Module from '../../../by-id/module-00022.js'; /* Metro dependency 22 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
function _fun68927(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68927, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9003:6, offset: 0x01c61d7b, size: 187 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = (require(31) /* metro dependency 31 */).useMemo;
const userAffinitiesV2Store = importDefault(5221) /* metro dependency 5221: UserAffinitiesV2Store */;
const sortedGuildStore = importDefault(4896) /* metro dependency 4896: SortedGuildStore */;
const userProfileStore = importDefault(5189) /* metro dependency 5189: UserProfileStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useUserProfileMutuals.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useUserProfileMutuals.tsx');
exports.default = useUserProfileMutuals;
}
function useUserProfileMutuals(a0) { // fn#68928, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9003:250, offset: 0x01c61e36, size: 358 bytes, params: 2, frame: 24
const env0_0 = a0;
const useStateFromStoresArray = FluxModule.useStateFromStoresArray;
const value3 = Module00057(Reflect.apply(useStateFromStoresArray, FluxModule, [[UserProfileStore], _fun68929]), 5);
const property = value3[0];
const property2 = value3[1];
const property3 = value3[2];
const property4 = value3[3];
const property5 = value3[4];
const userAffinitiesMap = FluxModule.useStateFromStores([UserAffinitiesV2Store], function() {
return UserAffinitiesV2Store.getUserAffinitiesMap();
});
const flattenedGuildIds = FluxModule.useStateFromStores([SortedGuildStore], function() {
return SortedGuildStore.getFlattenedGuildIds();
});
const value4 = useMemo(_fun68932, [property2, userAffinitiesMap]);
const value5 = useMemo(_fun68934, [property3, flattenedGuildIds]);
return {mutualFriendsCount: property ?? (importDefault(8819) /* metro dependency 8819: usePrevValue */)(property),
mutualFriends: value4 ?? (importDefault(8819) /* metro dependency 8819: usePrevValue */)(value4),
mutualGuilds: value5 ?? (importDefault(8819) /* metro dependency 8819: usePrevValue */)(value5),
isFetching: property4, isFetchingFriends: property5};
function _fun68929() { // fn#68929, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9003:327, offset: 0x01c61f9c, size: 120 bytes, params: 1, frame: 13
const value = environment.__proto__;
const userProfileStoreBinding = UserProfileStore;
const getMutualFriendsCount = userProfileStoreBinding.getMutualFriendsCount;
const binding = env0_0;
const getMutualFriends = userProfileStoreBinding.getMutualFriends;
const getMutualGuilds = userProfileStoreBinding.getMutualGuilds;
return [Reflect.apply(getMutualFriendsCount, userProfileStoreBinding, [binding.id]), Reflect.apply(getMutualFriends,
userProfileStoreBinding, [binding.id]), Reflect.apply(getMutualGuilds, userProfileStoreBinding, [binding.id]),
userProfileStoreBinding.isFetchingProfile(binding.id), userProfileStoreBinding.isFetchingFriends(binding.id)];
}
function useUserProfileMutuals(a0) { // fn#68928, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9003:250, offset: 0x01c61e36, size: 358 bytes, params: 2, frame: 24
const env0_0 = a0;
const fluxModule = require(566) /* metro dependency 566: flux */;
const useStateFromStoresArray = fluxModule.useStateFromStoresArray;
const value3 = env0_3(Reflect.apply(useStateFromStoresArray, fluxModule, [[UserProfileStore], _fun68929]), 5);
const property = value3[0];
const property2 = value3[1];
const property3 = value3[2];
const property4 = value3[3];
const property5 = value3[4];
const userAffinitiesMap = fluxModule.useStateFromStores([UserAffinitiesV2Store], function() {
return UserAffinitiesV2Store.getUserAffinitiesMap();
});
const flattenedGuildIds = fluxModule.useStateFromStores([SortedGuildStore], function() {
return SortedGuildStore.getFlattenedGuildIds();
});
const value4 = useMemo(_fun68932, [property2, userAffinitiesMap]);
const value5 = useMemo(_fun68934, [property3, flattenedGuildIds]);
return {mutualFriendsCount: property ?? (importDefault(8819) /* metro dependency 8819: usePrevValue */)(property),
mutualFriends: value4 ?? (importDefault(8819) /* metro dependency 8819: usePrevValue */)(value4),
mutualGuilds: value5 ?? (importDefault(8819) /* metro dependency 8819: usePrevValue */)(value5),
isFetching: property4, isFetchingFriends: property5};
}
function _fun68932() { // fn#68932, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9003:645, offset: 0x01c6203a, size: 87 bytes, params: 1, frame: 14
var environment;
var r0;
var value2;
var moduleValue;
if (env0_1 == null) {
r0 = env0_1;
} else if (env0_1.length < 2) {
r0 = env0_1;
} else {
value2 = environment.__proto__;
moduleValue = require(22) /* metro dependency 22 */;
r0 = moduleValue.sortBy(env0_1, _fun68933);
}
return r0;
function _fun68933({user}) { // fn#68933, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9003:689, offset: 0x01c62091, size: 72 bytes, params: 2, frame: 12
let value = environment.__proto__;
const communicationProbability = userAffinitiesMap.get(user.id)?.communicationProbability;
value = -1;
return value * (communicationProbability ?? value);
}
function _fun68929() { // fn#68929, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9003:327, offset: 0x01c61f9c, size: 120 bytes, params: 1, frame: 13
const value = environment.__proto__;
const getMutualFriendsCount = UserProfileStore.getMutualFriendsCount;
const binding = env0_0;
const getMutualFriends = UserProfileStore.getMutualFriends;
const getMutualGuilds = UserProfileStore.getMutualGuilds;
return [Reflect.apply(getMutualFriendsCount, UserProfileStore, [binding.id]), Reflect.apply(getMutualFriends,
UserProfileStore, [binding.id]), Reflect.apply(getMutualGuilds, UserProfileStore, [binding.id]),
UserProfileStore.isFetchingProfile(binding.id), UserProfileStore.isFetchingFriends(binding.id)];
}
}
function _fun68934() { // fn#68934, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9003:808, offset: 0x01c620d9, size: 131 bytes, params: 1, frame: 16
if (env0_2 == null) {
return env0_2;
}
if (env0_2.length < 2) {
return env0_2;
}
const Object = global.Object;
const fromEntries = Object.fromEntries;
const flattenedGuildIdsBinding = flattenedGuildIds;
const env0_0 = Reflect.apply(fromEntries, Object, [flattenedGuildIdsBinding.map(function(a0, a1) {
return [a0, a1];
})]);
return Module00022Module.sortBy(env0_2, _fun68936);
function _fun68936({guild}) { // fn#68936, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9003:918, offset: 0x01c6215c, size: 44 bytes, params: 2, frame: 2
return env0_0[guild.id] ?? flattenedGuildIds.length;
}
}
function _fun68932() { // fn#68932, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9003:645, offset: 0x01c6203a, size: 87 bytes, params: 1, frame: 14
var environment;
var r0;
var value2;
var moduleValue;
if (env0_1 == null) {
r0 = env0_1;
} else if (env0_1.length < 2) {
r0 = env0_1;
} else {
value2 = environment.__proto__;
moduleValue = require(22) /* metro dependency 22 */;
r0 = moduleValue.sortBy(env0_1, _fun68933);
}
return r0;
}
function _fun68934() { // fn#68934, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9003:808, offset: 0x01c620d9, size: 131 bytes, params: 1, frame: 16
if (env0_2 == null) {
return env0_2;
}
if (env0_2.length < 2) {
return env0_2;
}
const Object = global.Object;
const fromEntries = Object.fromEntries;
const flattenedGuildIdsBinding = flattenedGuildIds;
const env0_0 = Reflect.apply(fromEntries, Object, [flattenedGuildIdsBinding.map(function(a0, a1) {
return [a0, a1];
})]);
const moduleValue = require(22) /* metro dependency 22 */;
return moduleValue.sortBy(env0_2, _fun68936);
}
function _fun68933({user}) { // fn#68933, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9003:689, offset: 0x01c62091, size: 72 bytes, params: 2, frame: 12
let value = environment.__proto__;
const communicationProbability = userAffinitiesMap.get(user.id)?.communicationProbability;
value = -1;
return value * (communicationProbability ?? value);
}
function _fun68936({guild}) { // fn#68936, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9003:918, offset: 0x01c6215c, size: 44 bytes, params: 2, frame: 2
return env0_0[guild.id] ?? flattenedGuildIds.length;
}
global.__d(_fun68927, 8818, [57, 31, 5221, 4896, 5189, 566, 22, 8819,
2]) /* metro module 8818, dependencies: [57, 31, 5221, 4896, 5189, 566, 22, 8819, 2] */;
@@ -1,47 +1,53 @@
/* Metro module 10278; source: modules/user_profile/hooks/useUserProfileVoiceActivity.tsx; dependencies: [4396, 4297, 6885, 8832, 566, 2] */
import VoiceStateStore from '../../../stores/VoiceStateStore.tsx'; /* Metro dependency 4297 */
import PresenceStore from '../../../stores/PresenceStore.tsx'; /* Metro dependency 4396 */
import UseUserVoiceActivity from '../../activity_status/useUserVoiceActivity.tsx'; /* Metro dependency 8832 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
function _fun79750(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#79750, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10464:6, offset: 0x01e60b56, size: 153 bytes, params: 8, frame: 20
const env0_0 = require;
const closure = isUserProfileVoiceActivityForChannel;
const isUserProfileVoiceActivityForChannel2 = isUserProfileVoiceActivityForChannel;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const presenceStore = importDefault(4396) /* metro dependency 4396: PresenceStore */;
const voiceStateStore = importDefault(4297) /* metro dependency 4297: VoiceStateStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useUserProfileVoiceActivity.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useUserProfileVoiceActivity.tsx');
exports.default = useUserProfileVoiceActivity;
exports.isUserProfileVoiceActivityForChannel = closure;
}
function isUserProfileVoiceActivityForChannel({activity, voiceChannelId, voiceStateForSession}) { // fn#79751, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10464:116, offset: 0x01e60bef, size: 76 bytes, params: 2, frame: 14
return (importDefault(6885) /* metro dependency 6885: isEmbeddedActivity */)(activity) && voiceStateForSession?.channelId === voiceChannelId;
}
function useUserProfileVoiceActivity({userId, guildId}) { // fn#79752, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10464:370, offset: 0x01e60c3b, size: 172 bytes, params: 2, frame: 17
var object2;
const value = undefined;
const {voiceState,
voiceChannel} = (importDefault(8832) /* metro dependency 8832: useUserVoiceActivity */)({userId: userId,
guildId: guildId});
const env0_1 = voiceChannel == null ? value : voiceChannel.id;
object2 = {voiceState: voiceState, voiceChannel: voiceChannel};
object2.voiceActivity = (require(566) /* metro dependency 566: flux */).useStateFromStores([PresenceStore,
VoiceStateStore], _fun79753);
return object2;
}
function _fun79753() { // fn#79753, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10464:602, offset: 0x01e60ce7, size: 71 bytes, params: 1, frame: 14
var environment;
var value2;
if (userId != null) {
if (id != null) {
value2 = environment.__proto__;
return PresenceStore.findActivity(userId, function(a0) {
var isUserProfileVoiceActivityForChannelBinding = isUserProfileVoiceActivityForChannel;
var object = {activity: a0};
object.voiceChannelId = id;
object.voiceStateForSession = VoiceStateStore.getVoiceStateForSession(userId, a0.session_id);
return isUserProfileVoiceActivityForChannelBinding(object);
}) ?? undefined;
}
exports.isUserProfileVoiceActivityForChannel = isUserProfileVoiceActivityForChannel2;
function isUserProfileVoiceActivityForChannel({activity, voiceChannelId, voiceStateForSession}) { // fn#79751, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10464:116, offset: 0x01e60bef, size: 76 bytes, params: 2, frame: 14
return (importDefault(6885) /* metro dependency 6885: isEmbeddedActivity */)(activity) && voiceStateForSession?.channelId === voiceChannelId;
}
function useUserProfileVoiceActivity({userId, guildId}) { // fn#79752, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10464:370, offset: 0x01e60c3b, size: 172 bytes, params: 2, frame: 17
const value = undefined;
const {voiceState,
voiceChannel} = (UseUserVoiceActivity)({userId: userId,
guildId: guildId});
const env0_1 = voiceChannel == null ? value : voiceChannel.id;
object = {voiceState: voiceState, voiceChannel: voiceChannel};
object.voiceActivity = (require(566) /* metro dependency 566: flux */).useStateFromStores([PresenceStore,
VoiceStateStore], _fun79753);
return object;
function _fun79753() { // fn#79753, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10464:602, offset: 0x01e60ce7, size: 71 bytes, params: 1, frame: 14
var environment;
var value2;
var presenceStoreBinding;
if (userId != null) {
if (id != null) {
value2 = environment.__proto__;
presenceStoreBinding = PresenceStore;
return presenceStoreBinding.findActivity(userId, function(a0) {
var isUserProfileVoiceActivityForChannelBinding = isUserProfileVoiceActivityForChannel;
var object = {activity: a0};
object.voiceChannelId = id;
object.voiceStateForSession = VoiceStateStore.getVoiceStateForSession(userId, a0.session_id);
return isUserProfileVoiceActivityForChannelBinding(object);
}) ?? undefined;
}
}
}
}
}
global.__d(_fun79750, 10278, [4396, 4297, 6885, 8832, 566,
2]) /* metro module 10278, dependencies: [4396, 4297, 6885, 8832, 566, 2] */;
@@ -1,81 +1,89 @@
/* Metro module 10367; source: modules/user_profile/hooks/useVisibleUserProfileConnectionsAndAppIdentities.tsx; dependencies: [31, 10368, 10371, 4239, 6777, 1360, 4915, 2] */
import Platforms from '../../../lib/Platforms.tsx'; /* Metro dependency 4915 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
function _fun80305(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#80305, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10553:6, offset: 0x01e75fb6, size: 121 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importAll(31) /* metro dependency 31 */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/hooks/useVisibleUserProfileConnectionsAndAppIdentities.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/hooks/useVisibleUserProfileConnectionsAndAppIdentities.tsx');
exports.default = useVisibleUserProfileConnectionsAndAppIdentities;
}
function useVisibleUserProfileConnectionsAndAppIdentities(a0) { // fn#80306, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10553:229, offset: 0x01e7602f, size: 290 bytes, params: 2, frame: 22
const filteredAppIdentities = importDefault(dependencyMap[1])(a0).filteredAppIdentities;
const value2 = importDefault(dependencyMap[2])(a0);
const value3 = require(dependencyMap[3]).useIsRiotSocialSDKMigrationEnabled({location: 'useVisibleUserProfileConnectionsAndAppIdentities'});
const value = ReactModule.useMemo(_fun80307, [filteredAppIdentities, value3]);
const defaultImport = importDefault(dependencyMap[4]);
object = [];
arraySpread(object, value, 0, dependencyMap);
const value4 = defaultImport(object);
const value5 = value4.filter(require(dependencyMap[5]).isNotNullish);
object = {};
object.appIdentities = ReactModule.useMemo(_fun80309, [filteredAppIdentities, value5]);
object.connections = ReactModule.useMemo(_fun80313, [value2, value, value3]);
return object;
function _fun80307() { // fn#80307, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10553:463, offset: 0x01e76151, size: 115 bytes, params: 1, frame: 15
var r1;
var set;
const binding = env0_2;
const Set = global.Set;
if (binding) {
r1 = filteredAppIdentities?.map(function(a0) {
return a0.application_id;
});
r1 = r1 ?? [];
set = new Set();
} else {
set = new Set([]);
}
return set;
}
function useVisibleUserProfileConnectionsAndAppIdentities(a0) { // fn#80306, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10553:229, offset: 0x01e7602f, size: 290 bytes, params: 2, frame: 22
const filteredAppIdentities = importDefault(dependencyMap[1])(a0).filteredAppIdentities;
const value2 = importDefault(dependencyMap[2])(a0);
const value3 = require(dependencyMap[3]).useIsRiotSocialSDKMigrationEnabled({location: 'useVisibleUserProfileConnectionsAndAppIdentities'});
const binding = env0_3;
const value = binding.useMemo(_fun80307, [filteredAppIdentities, value3]);
const defaultImport = importDefault(dependencyMap[4]);
object = [];
arraySpread(object, value, 0, dependencyMap);
const value4 = defaultImport(object);
const value5 = value4.filter(require(dependencyMap[5]).isNotNullish);
object = {};
object.appIdentities = binding.useMemo(_fun80309, [filteredAppIdentities, value5]);
object.connections = binding.useMemo(_fun80313, [value2, value, value3]);
return object;
}
function _fun80309() { // fn#80309, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10553:651, offset: 0x01e761cf, size: 45 bytes, params: 1, frame: 12
return filteredAppIdentities.map(_fun80310).filter(function(a0) {
return a0.application != null;
});
function _fun80310(a0) { // fn#80310, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10553:662, offset: 0x01e761fc, size: 47 bytes, params: 2, frame: 12
const env0_0 = a0;
const object = {identity: a0};
object.application = env1_4.find(_fun80311);
return object;
function _fun80311({id}) { // fn#80311, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10553:698, offset: 0x01e7622b, size: 27 bytes, params: 2, frame: 2
return id === env0_0.application_id;
}
}
}
function _fun80313() { // fn#80313, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10553:799, offset: 0x01e76256, size: 40 bytes, params: 1, frame: 12
const binding = env0_2;
const binding2 = env0_1;
return binding ? binding2.filter(_fun80314) : binding2;
function _fun80314({type}) { // fn#80314, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10553:815, offset: 0x01e7627e, size: 93 bytes, params: 2, frame: 12
var r0;
var binding;
let value = environment.__proto__.__proto__;
value = undefined;
const value2 = (Platforms).get(type);
value = (value2 == null ? value : value2.replacedBy) == null;
if (value) {
r0 = value;
} else {
value = environment.__proto__;
binding = env1_3;
value = !binding.has(value2.replacedBy);
r0 = value;
}
return r0;
}
}
function _fun80307() { // fn#80307, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10553:463, offset: 0x01e76151, size: 115 bytes, params: 1, frame: 15
var r1;
var set;
const binding = env0_2;
const Set = global.Set;
if (binding) {
r1 = filteredAppIdentities?.map(function(a0) {
return a0.application_id;
});
r1 = r1 ?? [];
set = new Set();
} else {
set = new Set([]);
}
return set;
}
function _fun80309() { // fn#80309, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10553:651, offset: 0x01e761cf, size: 45 bytes, params: 1, frame: 12
return filteredAppIdentities.map(_fun80310).filter(function(a0) {
return a0.application != null;
});
}
function _fun80313() { // fn#80313, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10553:799, offset: 0x01e76256, size: 40 bytes, params: 1, frame: 12
const binding = env0_2;
const binding2 = env0_1;
return binding ? binding2.filter(_fun80314) : binding2;
}
function _fun80310(a0) { // fn#80310, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10553:662, offset: 0x01e761fc, size: 47 bytes, params: 2, frame: 12
const env0_0 = a0;
const object2 = {identity: a0};
object2.application = env1_4.find(_fun80311);
return object2;
}
function _fun80314({type}) { // fn#80314, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10553:815, offset: 0x01e7627e, size: 93 bytes, params: 2, frame: 12
var r0;
var binding;
let value = environment.__proto__.__proto__;
value = undefined;
const value2 = (importDefault(4915) /* metro dependency 4915: Platforms */).get(type);
value = (value2 == null ? value : value2.replacedBy) == null;
if (value) {
r0 = value;
} else {
value = environment.__proto__;
binding = env1_3;
value = !binding.has(value2.replacedBy);
r0 = value;
}
return r0;
}
global.__d(_fun80305, 10367, [31, 10368, 10371, 4239, 6777, 1360, 4915,
2]) /* metro module 10367, dependencies: [31, 10368, 10371, 4239, 6777, 1360, 4915, 2] */;
@@ -1,65 +1,162 @@
/* Metro module 8491; source: modules/user_profile/maybeFetchUserProfile.tsx; dependencies: [1379, 1945, 5189, 5120, 8372, 5043, 694, 8061, 8492, 2] */
import ChannelStore from '../../stores/ChannelStore.tsx'; /* Metro dependency 1379 */
import GuildMemberStore from '../../stores/GuildMemberStore.tsx'; /* Metro dependency 1945 */
import UserProfileStore from './UserProfileStore.tsx'; /* Metro dependency 5189 */
import PreloadUserBannerImage from './preloadUserBannerImage.tsx'; /* Metro dependency 8492 */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as UserActionCreatorsModule from '../../actions/UserActionCreators.tsx'; /* Metro dependency 8061 */
function _fun67361(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67361, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8676:6, offset: 0x01c1fda5, size: 150 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */;
const guildMemberStore = importDefault(1945) /* metro dependency 1945: GuildMemberStore */;
const userProfileStore = importDefault(5189) /* metro dependency 5189: UserProfileStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/maybeFetchUserProfile.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/maybeFetchUserProfile.tsx');
exports.default = maybeFetchUserProfile;
}
function maybeFetchUserProfile(a0, a1) { // fn#67362, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8676:216, offset: 0x01c1fe3b, size: 984 bytes, params: 3, frame: 36
var r21;
var id;
var object3;
var mutualGuilds;
var mutualFriends;
var mutualFriendsCount;
var moduleValue;
var moduleValue2;
var moduleValue4;
var getVisibleConnectionsRole;
var object4;
var value17;
let value = a2;
const env0_0 = a0;
const value2 = undefined;
const r0 = value !== value2 ? value : {};
const type = r0.type;
let withMutualGuilds = r0.withMutualGuilds;
withMutualGuilds = !(withMutualGuilds === value2) && withMutualGuilds;
let withMutualFriendsCount = r0.withMutualFriendsCount;
withMutualFriendsCount = !(withMutualFriendsCount === value2) && withMutualFriendsCount;
let withMutualFriends = r0.withMutualFriends;
withMutualFriends = !(withMutualFriends === value2) && withMutualFriends;
let dispatchWait = r0.dispatchWait;
dispatchWait = !(dispatchWait === value2) && dispatchWait;
let waitForRefetch = r0.waitForRefetch;
waitForRefetch = waitForRefetch === value2 || waitForRefetch;
const guildId = r0.guildId;
const channelId = r0.channelId;
const joinRequestId = r0.joinRequestId;
const abortSignal = r0.abortSignal;
if (a0 === '') {
return global.Promise.resolve();
}
if (UserProfileStore.isFetchingProfile(a0, guildId)) {
return global.Promise.resolve();
}
const userProfile = UserProfileStore.getUserProfile(a0);
const guildMemberProfile = UserProfileStore.getGuildMemberProfile(a0, guildId);
let r7 = guildId == null ? userProfile : guildMemberProfile;
const Date = global.Date;
const value5 = Date.now();
let r9 = (r7 == null ? value2 : r7.fetchEndedAt) ?? 0;
const value7 = value5 - r9 >= 60000;
if ((r7 == null || r7.fetchError == null ? value2 : r7.fetchError.status) === 404) {
if (value7) {
mutualGuilds = UserProfileStore.getMutualGuilds(a0);
mutualFriends = UserProfileStore.getMutualFriends(a0);
mutualFriendsCount = UserProfileStore.getMutualFriendsCount(a0);
function maybeFetchUserProfile(a0, a1) { // fn#67362, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8676:216, offset: 0x01c1fe3b, size: 984 bytes, params: 3, frame: 36
var r21;
var id;
var object;
var mutualGuilds;
var mutualFriends;
var mutualFriendsCount;
var moduleValue;
var moduleValue2;
var moduleValue4;
var getVisibleConnectionsRole;
var object2;
var value17;
let value = a2;
const env0_0 = a0;
const value2 = undefined;
const r0 = value !== value2 ? value : {};
const type = r0.type;
let withMutualGuilds = r0.withMutualGuilds;
withMutualGuilds = !(withMutualGuilds === value2) && withMutualGuilds;
let withMutualFriendsCount = r0.withMutualFriendsCount;
withMutualFriendsCount = !(withMutualFriendsCount === value2) && withMutualFriendsCount;
let withMutualFriends = r0.withMutualFriends;
withMutualFriends = !(withMutualFriends === value2) && withMutualFriends;
let dispatchWait = r0.dispatchWait;
dispatchWait = !(dispatchWait === value2) && dispatchWait;
let waitForRefetch = r0.waitForRefetch;
waitForRefetch = waitForRefetch === value2 || waitForRefetch;
const guildId = r0.guildId;
const channelId = r0.channelId;
const joinRequestId = r0.joinRequestId;
const abortSignal = r0.abortSignal;
if (a0 === '') {
return global.Promise.resolve();
}
let userProfileStoreBinding = UserProfileStore;
if (userProfileStoreBinding.isFetchingProfile(a0, guildId)) {
return global.Promise.resolve();
}
userProfileStoreBinding = UserProfileStore;
const userProfile = userProfileStoreBinding.getUserProfile(a0);
const guildMemberProfile = userProfileStoreBinding.getGuildMemberProfile(a0, guildId);
let r7 = guildId == null ? userProfile : guildMemberProfile;
const Date = global.Date;
const value5 = Date.now();
let r9 = (r7 == null ? value2 : r7.fetchEndedAt) ?? 0;
const value7 = value5 - r9 >= 60000;
if ((r7 == null || r7.fetchError == null ? value2 : r7.fetchError.status) === 404) {
if (value7) {
userProfileStoreBinding = UserProfileStore;
mutualGuilds = userProfileStoreBinding.getMutualGuilds(a0);
mutualFriends = userProfileStoreBinding.getMutualFriends(a0);
mutualFriendsCount = userProfileStoreBinding.getMutualFriendsCount(a0);
r9 = guildId == null ? userProfile == null : guildMemberProfile == null;
if (r9) {
r7 = !r9;
} else {
r21 = value7 || mutualGuilds == null && withMutualGuilds;
r21 = !r21 ? mutualFriends == null && withMutualFriends : r21;
r21 = !r21 ? mutualFriendsCount == null && withMutualFriendsCount : r21;
r7 = r21;
}
if (r9) {
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileEffect : userProfile == null ? value2 : userProfile.profileEffect;
if (r9 != null) {
moduleValue = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue.maybeFetchCollectiblesProduct(r9.skuId);
}
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileFrame : userProfile == null ? value2 : userProfile.profileFrame;
if (r9 != null) {
moduleValue2 = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue2.maybeFetchCollectiblesProduct(r9.skuId);
}
if (a1 != null) {
(require(8372) /* metro dependency 8372: useAvatarColor */).maybeFetchColors(a1);
}
object = {type: type, withMutualGuilds: withMutualGuilds, withMutualFriends: withMutualFriends,
withMutualFriendsCount: withMutualFriendsCount, guildId: guildId, joinRequestId: joinRequestId,
abortSignal: abortSignal};
if (guildId == null) {
id = value2;
} else {
moduleValue4 = require(5043) /* metro dependency 5043: ConnectionsUtils */;
getVisibleConnectionsRole = moduleValue4.getVisibleConnectionsRole;
object2 = {};
object2.guildMember = GuildMemberStore.getMember(guildId, a0);
object2.channel = ChannelStore.getChannel(channelId);
value17 = Reflect.apply(getVisibleConnectionsRole, moduleValue4, [object2]);
id = value17 == null ? value2 : value17.id;
}
object.connectionsRoleId = id;
if (dispatchWait) {
(importDefault(694) /* metro dependency 694: Dispatcher */).wait(_fun67363);
return global.Promise.resolve();
}
value = (require(8061) /* metro dependency 8061: UserActionCreators */).fetchProfile(a0, object,
importDefault(8492) /* metro dependency 8492: preloadUserBannerImage */);
return r7 ? waitForRefetch ? value : global.Promise.resolve() : value;
}
if (r7) {
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileEffect : userProfile == null ? value2 : userProfile.profileEffect;
if (r9 != null) {
moduleValue = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue.maybeFetchCollectiblesProduct(r9.skuId);
}
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileFrame : userProfile == null ? value2 : userProfile.profileFrame;
if (r9 != null) {
moduleValue2 = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue2.maybeFetchCollectiblesProduct(r9.skuId);
}
if (a1 != null) {
(require(8372) /* metro dependency 8372: useAvatarColor */).maybeFetchColors(a1);
}
object = {type: type, withMutualGuilds: withMutualGuilds, withMutualFriends: withMutualFriends,
withMutualFriendsCount: withMutualFriendsCount, guildId: guildId, joinRequestId: joinRequestId,
abortSignal: abortSignal};
if (guildId == null) {
id = value2;
} else {
moduleValue4 = require(5043) /* metro dependency 5043: ConnectionsUtils */;
getVisibleConnectionsRole = moduleValue4.getVisibleConnectionsRole;
object2 = {};
object2.guildMember = GuildMemberStore.getMember(guildId, a0);
object2.channel = ChannelStore.getChannel(channelId);
value17 = Reflect.apply(getVisibleConnectionsRole, moduleValue4, [object2]);
id = value17 == null ? value2 : value17.id;
}
object.connectionsRoleId = id;
if (dispatchWait) {
(importDefault(694) /* metro dependency 694: Dispatcher */).wait(_fun67363);
return global.Promise.resolve();
}
value = (require(8061) /* metro dependency 8061: UserActionCreators */).fetchProfile(a0, object,
importDefault(8492) /* metro dependency 8492: preloadUserBannerImage */);
return r7 ? waitForRefetch ? value : global.Promise.resolve() : value;
}
return global.Promise.resolve();
}
return global.Promise.resolve();
}
if ((r7 == null || r7.fetchError == null ? value2 : r7.fetchError.status) !== 429) {
userProfileStoreBinding = UserProfileStore;
mutualGuilds = userProfileStoreBinding.getMutualGuilds(a0);
mutualFriends = userProfileStoreBinding.getMutualFriends(a0);
mutualFriendsCount = userProfileStoreBinding.getMutualFriendsCount(a0);
r9 = guildId == null ? userProfile == null : guildMemberProfile == null;
if (r9) {
r7 = !r9;
@@ -83,7 +180,7 @@ function maybeFetchUserProfile(a0, a1) { // fn#67362, source: /ci/build/discord/
if (a1 != null) {
(require(8372) /* metro dependency 8372: useAvatarColor */).maybeFetchColors(a1);
}
object3 = {type: type, withMutualGuilds: withMutualGuilds, withMutualFriends: withMutualFriends,
object = {type: type, withMutualGuilds: withMutualGuilds, withMutualFriends: withMutualFriends,
withMutualFriendsCount: withMutualFriendsCount, guildId: guildId, joinRequestId: joinRequestId,
abortSignal: abortSignal};
if (guildId == null) {
@@ -91,18 +188,18 @@ function maybeFetchUserProfile(a0, a1) { // fn#67362, source: /ci/build/discord/
} else {
moduleValue4 = require(5043) /* metro dependency 5043: ConnectionsUtils */;
getVisibleConnectionsRole = moduleValue4.getVisibleConnectionsRole;
object4 = {};
object4.guildMember = GuildMemberStore.getMember(guildId, a0);
object4.channel = ChannelStore.getChannel(channelId);
value17 = Reflect.apply(getVisibleConnectionsRole, moduleValue4, [object4]);
object2 = {};
object2.guildMember = GuildMemberStore.getMember(guildId, a0);
object2.channel = ChannelStore.getChannel(channelId);
value17 = Reflect.apply(getVisibleConnectionsRole, moduleValue4, [object2]);
id = value17 == null ? value2 : value17.id;
}
object3.connectionsRoleId = id;
object.connectionsRoleId = id;
if (dispatchWait) {
(importDefault(694) /* metro dependency 694: Dispatcher */).wait(_fun67363);
return global.Promise.resolve();
}
value = (require(8061) /* metro dependency 8061: UserActionCreators */).fetchProfile(a0, object3,
value = (require(8061) /* metro dependency 8061: UserActionCreators */).fetchProfile(a0, object,
importDefault(8492) /* metro dependency 8492: preloadUserBannerImage */);
return r7 ? waitForRefetch ? value : global.Promise.resolve() : value;
}
@@ -120,7 +217,7 @@ function maybeFetchUserProfile(a0, a1) { // fn#67362, source: /ci/build/discord/
if (a1 != null) {
(require(8372) /* metro dependency 8372: useAvatarColor */).maybeFetchColors(a1);
}
object3 = {type: type, withMutualGuilds: withMutualGuilds, withMutualFriends: withMutualFriends,
object = {type: type, withMutualGuilds: withMutualGuilds, withMutualFriends: withMutualFriends,
withMutualFriendsCount: withMutualFriendsCount, guildId: guildId, joinRequestId: joinRequestId,
abortSignal: abortSignal};
if (guildId == null) {
@@ -128,210 +225,123 @@ function maybeFetchUserProfile(a0, a1) { // fn#67362, source: /ci/build/discord/
} else {
moduleValue4 = require(5043) /* metro dependency 5043: ConnectionsUtils */;
getVisibleConnectionsRole = moduleValue4.getVisibleConnectionsRole;
object4 = {};
object4.guildMember = GuildMemberStore.getMember(guildId, a0);
object4.channel = ChannelStore.getChannel(channelId);
value17 = Reflect.apply(getVisibleConnectionsRole, moduleValue4, [object4]);
object2 = {};
object2.guildMember = GuildMemberStore.getMember(guildId, a0);
object2.channel = ChannelStore.getChannel(channelId);
value17 = Reflect.apply(getVisibleConnectionsRole, moduleValue4, [object2]);
id = value17 == null ? value2 : value17.id;
}
object3.connectionsRoleId = id;
object.connectionsRoleId = id;
if (dispatchWait) {
(importDefault(694) /* metro dependency 694: Dispatcher */).wait(_fun67363);
return global.Promise.resolve();
}
value = (require(8061) /* metro dependency 8061: UserActionCreators */).fetchProfile(a0, object3,
value = (require(8061) /* metro dependency 8061: UserActionCreators */).fetchProfile(a0, object,
importDefault(8492) /* metro dependency 8492: preloadUserBannerImage */);
return r7 ? waitForRefetch ? value : global.Promise.resolve() : value;
}
return global.Promise.resolve();
}
return global.Promise.resolve();
if (value7) {
userProfileStoreBinding = UserProfileStore;
mutualGuilds = userProfileStoreBinding.getMutualGuilds(a0);
mutualFriends = userProfileStoreBinding.getMutualFriends(a0);
mutualFriendsCount = userProfileStoreBinding.getMutualFriendsCount(a0);
r9 = guildId == null ? userProfile == null : guildMemberProfile == null;
if (r9) {
r7 = !r9;
} else {
r21 = value7 || mutualGuilds == null && withMutualGuilds;
r21 = !r21 ? mutualFriends == null && withMutualFriends : r21;
r21 = !r21 ? mutualFriendsCount == null && withMutualFriendsCount : r21;
r7 = r21;
}
if (r9) {
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileEffect : userProfile == null ? value2 : userProfile.profileEffect;
if (r9 != null) {
moduleValue = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue.maybeFetchCollectiblesProduct(r9.skuId);
}
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileFrame : userProfile == null ? value2 : userProfile.profileFrame;
if (r9 != null) {
moduleValue2 = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue2.maybeFetchCollectiblesProduct(r9.skuId);
}
if (a1 != null) {
(require(8372) /* metro dependency 8372: useAvatarColor */).maybeFetchColors(a1);
}
object = {type: type, withMutualGuilds: withMutualGuilds, withMutualFriends: withMutualFriends,
withMutualFriendsCount: withMutualFriendsCount, guildId: guildId, joinRequestId: joinRequestId,
abortSignal: abortSignal};
if (guildId == null) {
id = value2;
} else {
moduleValue4 = require(5043) /* metro dependency 5043: ConnectionsUtils */;
getVisibleConnectionsRole = moduleValue4.getVisibleConnectionsRole;
object2 = {};
object2.guildMember = GuildMemberStore.getMember(guildId, a0);
object2.channel = ChannelStore.getChannel(channelId);
value17 = Reflect.apply(getVisibleConnectionsRole, moduleValue4, [object2]);
id = value17 == null ? value2 : value17.id;
}
object.connectionsRoleId = id;
if (dispatchWait) {
(importDefault(694) /* metro dependency 694: Dispatcher */).wait(_fun67363);
return global.Promise.resolve();
}
value = (require(8061) /* metro dependency 8061: UserActionCreators */).fetchProfile(a0, object,
importDefault(8492) /* metro dependency 8492: preloadUserBannerImage */);
return r7 ? waitForRefetch ? value : global.Promise.resolve() : value;
}
if (r7) {
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileEffect : userProfile == null ? value2 : userProfile.profileEffect;
if (r9 != null) {
moduleValue = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue.maybeFetchCollectiblesProduct(r9.skuId);
}
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileFrame : userProfile == null ? value2 : userProfile.profileFrame;
if (r9 != null) {
moduleValue2 = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue2.maybeFetchCollectiblesProduct(r9.skuId);
}
if (a1 != null) {
(require(8372) /* metro dependency 8372: useAvatarColor */).maybeFetchColors(a1);
}
object = {type: type, withMutualGuilds: withMutualGuilds, withMutualFriends: withMutualFriends,
withMutualFriendsCount: withMutualFriendsCount, guildId: guildId, joinRequestId: joinRequestId,
abortSignal: abortSignal};
if (guildId == null) {
id = value2;
} else {
moduleValue4 = require(5043) /* metro dependency 5043: ConnectionsUtils */;
getVisibleConnectionsRole = moduleValue4.getVisibleConnectionsRole;
object2 = {};
object2.guildMember = GuildMemberStore.getMember(guildId, a0);
object2.channel = ChannelStore.getChannel(channelId);
value17 = Reflect.apply(getVisibleConnectionsRole, moduleValue4, [object2]);
id = value17 == null ? value2 : value17.id;
}
object.connectionsRoleId = id;
if (dispatchWait) {
(importDefault(694) /* metro dependency 694: Dispatcher */).wait(_fun67363);
return global.Promise.resolve();
}
value = (require(8061) /* metro dependency 8061: UserActionCreators */).fetchProfile(a0, object,
importDefault(8492) /* metro dependency 8492: preloadUserBannerImage */);
return r7 ? waitForRefetch ? value : global.Promise.resolve() : value;
}
return global.Promise.resolve();
}
const Promise = global.Promise;
return Promise.resolve();
function _fun67363() { // fn#67363, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8676:1579, offset: 0x01c20213, size: 67 bytes, params: 1, frame: 18
return UserActionCreatorsModule.fetchProfile(env0_0, env0_1,
PreloadUserBannerImage);
}
}
if ((r7 == null || r7.fetchError == null ? value2 : r7.fetchError.status) !== 429) {
mutualGuilds = UserProfileStore.getMutualGuilds(a0);
mutualFriends = UserProfileStore.getMutualFriends(a0);
mutualFriendsCount = UserProfileStore.getMutualFriendsCount(a0);
r9 = guildId == null ? userProfile == null : guildMemberProfile == null;
if (r9) {
r7 = !r9;
} else {
r21 = value7 || mutualGuilds == null && withMutualGuilds;
r21 = !r21 ? mutualFriends == null && withMutualFriends : r21;
r21 = !r21 ? mutualFriendsCount == null && withMutualFriendsCount : r21;
r7 = r21;
}
if (r9) {
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileEffect : userProfile == null ? value2 : userProfile.profileEffect;
if (r9 != null) {
moduleValue = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue.maybeFetchCollectiblesProduct(r9.skuId);
}
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileFrame : userProfile == null ? value2 : userProfile.profileFrame;
if (r9 != null) {
moduleValue2 = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue2.maybeFetchCollectiblesProduct(r9.skuId);
}
if (a1 != null) {
(require(8372) /* metro dependency 8372: useAvatarColor */).maybeFetchColors(a1);
}
object3 = {type: type, withMutualGuilds: withMutualGuilds, withMutualFriends: withMutualFriends,
withMutualFriendsCount: withMutualFriendsCount, guildId: guildId, joinRequestId: joinRequestId,
abortSignal: abortSignal};
if (guildId == null) {
id = value2;
} else {
moduleValue4 = require(5043) /* metro dependency 5043: ConnectionsUtils */;
getVisibleConnectionsRole = moduleValue4.getVisibleConnectionsRole;
object4 = {};
object4.guildMember = GuildMemberStore.getMember(guildId, a0);
object4.channel = ChannelStore.getChannel(channelId);
value17 = Reflect.apply(getVisibleConnectionsRole, moduleValue4, [object4]);
id = value17 == null ? value2 : value17.id;
}
object3.connectionsRoleId = id;
if (dispatchWait) {
(importDefault(694) /* metro dependency 694: Dispatcher */).wait(_fun67363);
return global.Promise.resolve();
}
value = (require(8061) /* metro dependency 8061: UserActionCreators */).fetchProfile(a0, object3,
importDefault(8492) /* metro dependency 8492: preloadUserBannerImage */);
return r7 ? waitForRefetch ? value : global.Promise.resolve() : value;
}
if (r7) {
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileEffect : userProfile == null ? value2 : userProfile.profileEffect;
if (r9 != null) {
moduleValue = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue.maybeFetchCollectiblesProduct(r9.skuId);
}
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileFrame : userProfile == null ? value2 : userProfile.profileFrame;
if (r9 != null) {
moduleValue2 = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue2.maybeFetchCollectiblesProduct(r9.skuId);
}
if (a1 != null) {
(require(8372) /* metro dependency 8372: useAvatarColor */).maybeFetchColors(a1);
}
object3 = {type: type, withMutualGuilds: withMutualGuilds, withMutualFriends: withMutualFriends,
withMutualFriendsCount: withMutualFriendsCount, guildId: guildId, joinRequestId: joinRequestId,
abortSignal: abortSignal};
if (guildId == null) {
id = value2;
} else {
moduleValue4 = require(5043) /* metro dependency 5043: ConnectionsUtils */;
getVisibleConnectionsRole = moduleValue4.getVisibleConnectionsRole;
object4 = {};
object4.guildMember = GuildMemberStore.getMember(guildId, a0);
object4.channel = ChannelStore.getChannel(channelId);
value17 = Reflect.apply(getVisibleConnectionsRole, moduleValue4, [object4]);
id = value17 == null ? value2 : value17.id;
}
object3.connectionsRoleId = id;
if (dispatchWait) {
(importDefault(694) /* metro dependency 694: Dispatcher */).wait(_fun67363);
return global.Promise.resolve();
}
value = (require(8061) /* metro dependency 8061: UserActionCreators */).fetchProfile(a0, object3,
importDefault(8492) /* metro dependency 8492: preloadUserBannerImage */);
return r7 ? waitForRefetch ? value : global.Promise.resolve() : value;
}
return global.Promise.resolve();
}
if (value7) {
mutualGuilds = UserProfileStore.getMutualGuilds(a0);
mutualFriends = UserProfileStore.getMutualFriends(a0);
mutualFriendsCount = UserProfileStore.getMutualFriendsCount(a0);
r9 = guildId == null ? userProfile == null : guildMemberProfile == null;
if (r9) {
r7 = !r9;
} else {
r21 = value7 || mutualGuilds == null && withMutualGuilds;
r21 = !r21 ? mutualFriends == null && withMutualFriends : r21;
r21 = !r21 ? mutualFriendsCount == null && withMutualFriendsCount : r21;
r7 = r21;
}
if (r9) {
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileEffect : userProfile == null ? value2 : userProfile.profileEffect;
if (r9 != null) {
moduleValue = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue.maybeFetchCollectiblesProduct(r9.skuId);
}
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileFrame : userProfile == null ? value2 : userProfile.profileFrame;
if (r9 != null) {
moduleValue2 = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue2.maybeFetchCollectiblesProduct(r9.skuId);
}
if (a1 != null) {
(require(8372) /* metro dependency 8372: useAvatarColor */).maybeFetchColors(a1);
}
object3 = {type: type, withMutualGuilds: withMutualGuilds, withMutualFriends: withMutualFriends,
withMutualFriendsCount: withMutualFriendsCount, guildId: guildId, joinRequestId: joinRequestId,
abortSignal: abortSignal};
if (guildId == null) {
id = value2;
} else {
moduleValue4 = require(5043) /* metro dependency 5043: ConnectionsUtils */;
getVisibleConnectionsRole = moduleValue4.getVisibleConnectionsRole;
object4 = {};
object4.guildMember = GuildMemberStore.getMember(guildId, a0);
object4.channel = ChannelStore.getChannel(channelId);
value17 = Reflect.apply(getVisibleConnectionsRole, moduleValue4, [object4]);
id = value17 == null ? value2 : value17.id;
}
object3.connectionsRoleId = id;
if (dispatchWait) {
(importDefault(694) /* metro dependency 694: Dispatcher */).wait(_fun67363);
return global.Promise.resolve();
}
value = (require(8061) /* metro dependency 8061: UserActionCreators */).fetchProfile(a0, object3,
importDefault(8492) /* metro dependency 8492: preloadUserBannerImage */);
return r7 ? waitForRefetch ? value : global.Promise.resolve() : value;
}
if (r7) {
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileEffect : userProfile == null ? value2 : userProfile.profileEffect;
if (r9 != null) {
moduleValue = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue.maybeFetchCollectiblesProduct(r9.skuId);
}
r9 = guildId != null ? guildMemberProfile == null ? value2 : guildMemberProfile.profileFrame : userProfile == null ? value2 : userProfile.profileFrame;
if (r9 != null) {
moduleValue2 = require(5120) /* metro dependency 5120: CollectiblesActionCreators */;
moduleValue2.maybeFetchCollectiblesProduct(r9.skuId);
}
if (a1 != null) {
(require(8372) /* metro dependency 8372: useAvatarColor */).maybeFetchColors(a1);
}
object3 = {type: type, withMutualGuilds: withMutualGuilds, withMutualFriends: withMutualFriends,
withMutualFriendsCount: withMutualFriendsCount, guildId: guildId, joinRequestId: joinRequestId,
abortSignal: abortSignal};
if (guildId == null) {
id = value2;
} else {
moduleValue4 = require(5043) /* metro dependency 5043: ConnectionsUtils */;
getVisibleConnectionsRole = moduleValue4.getVisibleConnectionsRole;
object4 = {};
object4.guildMember = GuildMemberStore.getMember(guildId, a0);
object4.channel = ChannelStore.getChannel(channelId);
value17 = Reflect.apply(getVisibleConnectionsRole, moduleValue4, [object4]);
id = value17 == null ? value2 : value17.id;
}
object3.connectionsRoleId = id;
if (dispatchWait) {
(importDefault(694) /* metro dependency 694: Dispatcher */).wait(_fun67363);
return global.Promise.resolve();
}
value = (require(8061) /* metro dependency 8061: UserActionCreators */).fetchProfile(a0, object3,
importDefault(8492) /* metro dependency 8492: preloadUserBannerImage */);
return r7 ? waitForRefetch ? value : global.Promise.resolve() : value;
}
return global.Promise.resolve();
}
const Promise = global.Promise;
return Promise.resolve();
}
function _fun67363() { // fn#67363, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8676:1579, offset: 0x01c20213, size: 67 bytes, params: 1, frame: 18
const userActionCreatorsModule = require(8061) /* metro dependency 8061: UserActionCreators */;
return userActionCreatorsModule.fetchProfile(env0_0, env0_1,
importDefault(8492) /* metro dependency 8492: preloadUserBannerImage */);
}
global.__d(_fun67361, 8491, [1379, 1945, 5189, 5120, 8372, 5043, 694, 8061, 8492,
2]) /* metro module 8491, dependencies: [1379, 1945, 5189, 5120, 8372, 5043, 694, 8061, 8492, 2] */;
@@ -1,125 +1,131 @@
/* Metro module 10496; source: modules/user_profile/native/ActionSheetBackdropToast.tsx; dependencies: [31, 27, 6276, 33, 477, 4501, 697, 1585, 1478, 5314, 4017, 4504, 4573, 2] */
import UseWindowDimensionsNative from '../../screen/useWindowDimensions.native.tsx'; /* Metro dependency 1478 */
import UseSafeAreaInsetsNative from '../../safe_area/useSafeAreaInsets.native.tsx'; /* Metro dependency 1585 */
import ReanimatedRexport from '../../reanimated/ReanimatedRexport.tsx'; /* Metro dependency 4017 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as PlatformUtilsModule from '../../../utils/PlatformUtils.tsx'; /* Metro dependency 477 */
import * as ReanimatedRexportModule from '../../reanimated/ReanimatedRexport.tsx'; /* Metro dependency 4017 */
import * as TimingModule from '../../../design/animation/reanimated/timing/timing.tsx'; /* Metro dependency 4504 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
import * as NavigatorConstantsNativeModule from '../../../design/components/Navigator/native/NavigatorConstants.native.tsx'; /* Metro dependency 5314 */
import * as ActionSheetConstantsModule from '../../action_sheet/native/ActionSheetConstants.tsx'; /* Metro dependency 6276 */
function _fun81195(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#81195, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10682:6, offset: 0x01e9db22, size: 384 bytes, params: 8, frame: 22
var object4;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importAll(31) /* metro dependency 31 */;
let value = require(27) /* metro dependency 27 */;
let value = ReactNativeModule;
const env0_4 = value.View;
const StyleSheet = value.StyleSheet;
const env0_5 = (require(6276) /* metro dependency 6276: ActionSheetConstants */).ACTION_SHEET_START_HEIGHT_RATIO;
const env0_6 = (require(33) /* metro dependency 33 */).jsx;
const env0_7 = (require(477) /* metro dependency 477: PlatformUtils */).isIOS();
const env0_7 = (PlatformUtilsModule).isIOS();
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object4 = {};
const object5 = {};
copyDataProperties(object5, StyleSheet.absoluteFillObject, undefined);
object5['flex'] = 1;
object5['alignItems'] = 'center';
object5['justifyContent'] = 'center';
object4.container = object5;
const object6 = {'position': 'absolute', 'bottom': 16, 'backgroundColor': null, 'borderRadius': null,
object = {};
const object2 = {};
copyDataProperties(object2, StyleSheet.absoluteFillObject, undefined);
object2['flex'] = 1;
object2['alignItems'] = 'center';
object2['justifyContent'] = 'center';
object.container = object2;
const object3 = {'position': 'absolute', 'bottom': 16, 'backgroundColor': null, 'borderRadius': null,
'paddingTop': 6, 'paddingBottom': 8, 'paddingHorizontal': 16};
const MOBILE_TOAST_BACKGROUND_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_TOAST_BACKGROUND_DEFAULT;
object6.backgroundColor = MOBILE_TOAST_BACKGROUND_DEFAULT;
object6.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
object4.toast = object6;
const env0_8 = Reflect.apply(createStyles, value, [object4]);
object4 = {code: 'function ActionSheetBackdropToastTsx1(){const{isInIOS,isExpanded,maxDynamicContentSize,TOAST_BOTTOM_MARGIN,nonExpandedHeight,ACTION_SHEET_START_HEIGHT_RATIO,TOAST_BOTTOM_GAP,positionDelta,TOAST_ANIMATION_Y_DELTA,opacity}=this.__closure;return{bottom:(isInIOS?isExpanded?maxDynamicContentSize+TOAST_BOTTOM_MARGIN:nonExpandedHeight+TOAST_BOTTOM_MARGIN:isExpanded?maxDynamicContentSize+TOAST_BOTTOM_MARGIN:ACTION_SHEET_START_HEIGHT_RATIO*maxDynamicContentSize+TOAST_BOTTOM_GAP)+ +(1-positionDelta.get())*TOAST_ANIMATION_Y_DELTA,opacity:opacity.get()};}'};
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/ActionSheetBackdropToast.tsx');
object3.backgroundColor = MOBILE_TOAST_BACKGROUND_DEFAULT;
object3.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
object.toast = object3;
const env0_8 = Reflect.apply(createStyles, value, [object]);
object = {code: 'function ActionSheetBackdropToastTsx1(){const{isInIOS,isExpanded,maxDynamicContentSize,TOAST_BOTTOM_MARGIN,nonExpandedHeight,ACTION_SHEET_START_HEIGHT_RATIO,TOAST_BOTTOM_GAP,positionDelta,TOAST_ANIMATION_Y_DELTA,opacity}=this.__closure;return{bottom:(isInIOS?isExpanded?maxDynamicContentSize+TOAST_BOTTOM_MARGIN:nonExpandedHeight+TOAST_BOTTOM_MARGIN:isExpanded?maxDynamicContentSize+TOAST_BOTTOM_MARGIN:ACTION_SHEET_START_HEIGHT_RATIO*maxDynamicContentSize+TOAST_BOTTOM_GAP)+ +(1-positionDelta.get())*TOAST_ANIMATION_Y_DELTA,opacity:opacity.get()};}'};
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/ActionSheetBackdropToast.tsx');
exports.ActionSheetBackdropToast = ActionSheetBackdropToast;
function ActionSheetBackdropToast({text, isExpanded}) { // fn#81196, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10682:1190, offset: 0x01e9dca2, size: 488 bytes, params: 2, frame: 28
const styles = useStyles();
const top = (UseSafeAreaInsetsNative)().top;
const height = (UseWindowDimensionsNative)().height;
const value2 = height * ACTION_SHEET_START_HEIGHT_RATIO;
const NAV_BAR_HEIGHT_MULTILINE = (NavigatorConstantsNativeModule).NAV_BAR_HEIGHT_MULTILINE;
const value3 = height - NAV_BAR_HEIGHT_MULTILINE - top;
const value4 = (ReanimatedRexportModule).useSharedValue(0);
const env0_3 = value4;
const value5 = (ReanimatedRexportModule).useSharedValue(0);
env0_3.useEffect(_fun81197, [value4, value5]);
const useAnimatedStyle = ReanimatedRexportModule.useAnimatedStyle;
const ActionSheetBackdropToastX2 = ActionSheetBackdropToastX;
ActionSheetBackdropToastX2.__closure = {isInIOS: env0_7, isExpanded: isExpanded, maxDynamicContentSize: value3,
TOAST_BOTTOM_MARGIN: 24, nonExpandedHeight: value2,
ACTION_SHEET_START_HEIGHT_RATIO: ACTION_SHEET_START_HEIGHT_RATIO, TOAST_BOTTOM_GAP: 46, positionDelta: value4,
TOAST_ANIMATION_Y_DELTA: 15, opacity: value5};
ActionSheetBackdropToastX2.__workletHash = 9630436597435;
ActionSheetBackdropToastX2.__initData = env0_9;
const value6 = Reflect.apply(useAnimatedStyle, ReanimatedRexportModule, [ActionSheetBackdropToastX2]);
const items3 = [styles.container];
const View2 = (ReanimatedRexport).View;
const items2 = [styles.toast, value6];
const Text = (TextModule).Text;
return (
<View style={items3} pointerEvents="none">
<View2 style={items2}>
<Text variant="text-sm/medium" color="mobile-text-heading-primary">
{text}
</Text>
</View2>
</View>
);
function _fun81197() { // fn#81197, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10682:1377, offset: 0x01e9de8a, size: 253 bytes, params: 1, frame: 25
let binding = env0_3;
let set = binding.set;
const withDelay = ReanimatedRexportModule.withDelay;
let withTiming = TimingModule.withTiming;
let object = {duration: 200};
const Easing = ReanimatedRexportModule.Easing;
const Easing2 = ReanimatedRexportModule.Easing;
object.easing = Easing.in(Easing2.ease);
Reflect.apply(set, binding, [Reflect.apply(withDelay, ReanimatedRexportModule, [100, Reflect.apply(withTiming,
TimingModule, [1, object])])]);
binding = env0_4;
set = binding.set;
withTiming = TimingModule.withTiming;
object = {duration: 300};
const Easing3 = ReanimatedRexportModule.Easing;
object.easing = Easing.in(Easing3.linear);
Reflect.apply(set, binding, [Reflect.apply(withTiming, TimingModule, [1, object])]);
return _fun81198;
function _fun81198() { // fn#81198, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10682:1594, offset: 0x01e9df87, size: 175 bytes, params: 1, frame: 22
let value = environment.__proto__;
let binding = env1_3;
let set = binding.set;
const withDelay = ReanimatedRexportModule.withDelay;
let withTiming = TimingModule.withTiming;
Reflect.apply(set, binding, [Reflect.apply(withDelay, ReanimatedRexportModule, [200, Reflect.apply(withTiming,
TimingModule, [0])])]);
binding = env1_4;
set = binding.set;
value = TimingModule;
withTiming = value.withTiming;
const Easing = ReanimatedRexportModule.Easing;
const out = Easing.out;
const Easing2 = ReanimatedRexportModule.Easing;
Reflect.apply(set, binding, [Reflect.apply(withTiming, value, [0, {duration: 200, easing: Reflect.apply(out, Easing,
[Easing2.exp])}])]);
}
}
function ActionSheetBackdropToastX() { // fn#81199, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10682:1794, owner: ActionSheetBackdropToast.x, offset: 0x01e9e036, size: 140 bytes, params: 1, frame: 13
const object = {};
const value = environment.__proto__;
const binding = env1_7;
const isExpandedBinding = isExpanded;
object.bottom = (binding ? isExpandedBinding ? env0_2 + 24 : env0_1 + 24 : isExpandedBinding ? env0_2 + 24 : ACTION_SHEET_START_HEIGHT_RATIO * env0_2 + 46) + 15 * (1 - env0_3.get());
object.opacity = env0_4.get();
return object;
}
}
}
function ActionSheetBackdropToast({text, isExpanded}) { // fn#81196, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10682:1190, offset: 0x01e9dca2, size: 488 bytes, params: 2, frame: 28
const styles = useStyles();
const top = (importDefault(1585) /* metro dependency 1585: useSafeAreaInsetsNative */)().top;
const height = (importDefault(1478) /* metro dependency 1478: useWindowDimensionsNative */)().height;
const value2 = height * ACTION_SHEET_START_HEIGHT_RATIO;
const NAV_BAR_HEIGHT_MULTILINE = (require(5314) /* metro dependency 5314: NavigatorConstantsNative */).NAV_BAR_HEIGHT_MULTILINE;
const value3 = height - NAV_BAR_HEIGHT_MULTILINE - top;
const value4 = (require(4017) /* metro dependency 4017: ReanimatedRexport */).useSharedValue(0);
const env0_3 = value4;
const value5 = (require(4017) /* metro dependency 4017: ReanimatedRexport */).useSharedValue(0);
env0_3.useEffect(_fun81197, [value4, value5]);
const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */;
const useAnimatedStyle = reanimatedRexportModule.useAnimatedStyle;
const closure = ActionSheetBackdropToastX;
closure.__closure = {isInIOS: env0_7, isExpanded: isExpanded, maxDynamicContentSize: value3,
TOAST_BOTTOM_MARGIN: 24, nonExpandedHeight: value2,
ACTION_SHEET_START_HEIGHT_RATIO: ACTION_SHEET_START_HEIGHT_RATIO, TOAST_BOTTOM_GAP: 46, positionDelta: value4,
TOAST_ANIMATION_Y_DELTA: 15, opacity: value5};
closure.__workletHash = 9630436597435;
closure.__initData = env0_9;
const value6 = Reflect.apply(useAnimatedStyle, reanimatedRexportModule, [closure]);
const items3 = [styles.container];
const View2 = (importDefault(4017) /* metro dependency 4017: ReanimatedRexport */).View;
const items2 = [styles.toast, value6];
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
return (
<View style={items3} pointerEvents="none">
<View2 style={items2}>
<Text variant="text-sm/medium" color="mobile-text-heading-primary">
{text}
</Text>
</View2>
</View>
);
}
function _fun81197() { // fn#81197, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10682:1377, offset: 0x01e9de8a, size: 253 bytes, params: 1, frame: 25
let binding = env0_3;
let set = binding.set;
const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */;
const withDelay = reanimatedRexportModule.withDelay;
const timingModule = require(4504) /* metro dependency 4504: timing */;
let withTiming = timingModule.withTiming;
let object2 = {duration: 200};
const Easing = reanimatedRexportModule.Easing;
const Easing2 = reanimatedRexportModule.Easing;
object2.easing = Easing.in(Easing2.ease);
Reflect.apply(set, binding, [Reflect.apply(withDelay, reanimatedRexportModule, [100, Reflect.apply(withTiming,
timingModule, [1, object2])])]);
binding = env0_4;
set = binding.set;
const value = timingModule;
withTiming = value.withTiming;
object2 = {duration: 300};
const Easing3 = reanimatedRexportModule.Easing;
object2.easing = Easing.in(Easing3.linear);
Reflect.apply(set, binding, [Reflect.apply(withTiming, value, [1, object2])]);
return _fun81198;
}
function ActionSheetBackdropToastX() { // fn#81199, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10682:1794, owner: ActionSheetBackdropToast.x, offset: 0x01e9e036, size: 140 bytes, params: 1, frame: 13
const object2 = {};
const value = environment.__proto__;
const binding = env1_7;
const isExpandedBinding = isExpanded;
object2.bottom = (binding ? isExpandedBinding ? env0_2 + 24 : env0_1 + 24 : isExpandedBinding ? env0_2 + 24 : ACTION_SHEET_START_HEIGHT_RATIO * env0_2 + 46) + 15 * (1 - env0_3.get());
object2.opacity = env0_4.get();
return object2;
}
function _fun81198() { // fn#81198, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10682:1594, offset: 0x01e9df87, size: 175 bytes, params: 1, frame: 22
let value = environment.__proto__;
let binding = env1_3;
let set = binding.set;
const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */;
const withDelay = reanimatedRexportModule.withDelay;
const timingModule = require(4504) /* metro dependency 4504: timing */;
let withTiming = timingModule.withTiming;
Reflect.apply(set, binding, [Reflect.apply(withDelay, reanimatedRexportModule, [200, Reflect.apply(withTiming,
timingModule, [0])])]);
binding = env1_4;
set = binding.set;
value = timingModule;
withTiming = value.withTiming;
const Easing = reanimatedRexportModule.Easing;
const out = Easing.out;
const Easing2 = reanimatedRexportModule.Easing;
Reflect.apply(set, binding, [Reflect.apply(withTiming, value, [0, {duration: 200, easing: Reflect.apply(out, Easing,
[Easing2.exp])}])]);
}
global.__d(_fun81195, 10496, [31, 27, 6276, 33, 477, 4501, 697, 1585, 1478, 5314, 4017, 4504, 4573,
2]) /* metro module 10496, dependencies: [31, 27, 6276, 33, 477, 4501, 697, 1585, 1478, 5314, 4017, 4504, 4573, 2] */;
@@ -1,181 +1,225 @@
/* Metro module 10483; source: modules/user_profile/native/AddFriendNicknameModal.tsx; dependencies: [5, 57, 31, 27, 3793, 1878, 33, 4501, 697, 566, 1244, 5080, 8783, 5467, 4596, 4573, 6985, 3995, 2] */
import Module00005 from '../../../by-id/module-00005.js'; /* Metro dependency 5 */
import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */
import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */
import UserStore from '../../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import RelationshipStore from '../../../stores/RelationshipStore.tsx'; /* Metro dependency 3793 */
import Alert from '../../../components_native/common/Alert.tsx'; /* Metro dependency 4596 */
import ModalActionCreators from '../../../actions/ModalActionCreators.tsx'; /* Metro dependency 5080 */
import KeyboardAwareView from '../../keyboard/native/KeyboardAwareView.tsx'; /* Metro dependency 5467 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
import * as TextFieldNativeModule from '../../../design/components/TextField/native/TextField.native.tsx'; /* Metro dependency 6985 */
function _fun81114(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#81114, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10669:6, offset: 0x01e9a4d2, size: 343 bytes, params: 8, frame: 21
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(5) /* metro dependency 5 */;
const env0_4 = importDefault(57) /* metro dependency 57 */;
const env0_5 = importAll(31) /* metro dependency 31 */;
const env0_6 = (require(27) /* metro dependency 27 */).View;
const relationshipStore = importDefault(3793) /* metro dependency 3793: RelationshipStore */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
let value = require(33) /* metro dependency 33 */;
let value = JsxRuntimeModule;
const env0_9 = value.jsx;
const env0_10 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
const BACKGROUND_SCRIM = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SCRIM;
const BACKGROUND_SCRIM = (Native).colors.BACKGROUND_SCRIM;
const env0_11 = Reflect.apply(createStyles, value, [{container: {'flex': 1, 'backgroundColor': null,
'justifyContent': 'center', 'alignItems': 'center', backgroundColor: BACKGROUND_SCRIM},
title: {textAlign: 'center'}, description: {'marginTop': 8, 'marginBottom': 16, 'textAlign': 'center',
'lineHeight': 18}}]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/AddFriendNicknameModal.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/AddFriendNicknameModal.tsx');
exports.default = AddFriendNicknameModal;
}
function AddFriendNicknameModal({userId, showUserProfile}) { // fn#81115, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10669:526, offset: 0x01e9a629, size: 855 bytes, params: 2, frame: 32
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let env0_4 = undefined;
const styles = useStyles();
const binding = undefined;
const [env0_2, env0_3] = env0_4(binding.useState(false), 2);
const nickname = (require(566) /* metro dependency 566: flux */).useStateFromStores([RelationshipStore],
function() {
return RelationshipStore.getNickname(userId);
});
env0_4 = binding.useRef(nickname ?? null);
const value5 = undefined.useCallback(_fun81117, []);
const user = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], function() {
return UserStore.getUser(userId);
});
const r20 = nickname == null ? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.BGYkaH) : intl.string((require(1244) /* metro dependency 1244: indexNative */).t['8pOYUE']);
const value8 = undefined.useCallback(_fun81119, [showUserProfile]);
const value9 = _fun81120();
const KeyboardAwareView = importDefault(5467) /* metro dependency 5467: KeyboardAwareView */;
const Alert = importDefault(4596) /* metro dependency 4596: Alert */;
const alertProps = {confirmText: intl.string((require(1244) /* metro dependency 1244: indexNative */).t['R3BPH+']),
onConfirm: value9,
cancelText: intl.string((require(1244) /* metro dependency 1244: indexNative */).t['ETE/oC']), onCancel: value8};
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const items2 = [<Text style={styles.title} accessibilityRole="header" variant="heading-lg/extrabold" color="mobile-text-heading-primary">{r20}</Text>];
items2[1] = <Text style={styles.description} variant="text-sm/medium" color="text-default">{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['NdQ+lP'])}</Text>;
const TextField = (require(6985) /* metro dependency 6985: TextFieldNative */).TextField;
items2[2] = <TextField onChange={value5} autoFocus placeholder={(importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user)} defaultValue={nickname} maxLength={32} isClearable />;
return (
<View style={styles.container}>
<KeyboardAwareView>
<Alert {...alertProps}>
{items2}
</Alert>
</KeyboardAwareView>
</View>
);
}
function _fun81119() { // fn#81119, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10669:924, offset: 0x01e9a9af, size: 58 bytes, params: 1, frame: 12
const value = environment.__proto__;
(importDefault(5080) /* metro dependency 5080: ModalActionCreators */).pop();
if (showUserProfile != null) {
showUserProfile();
}
}
function _fun81120() { // fn#81120, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10669:966, offset: 0x01e9a9e9, size: 36 bytes, params: 1, frame: 12
const env0_0 = env1_3(_fun81122);
return _fun81123;
}
function* _fun81122() { // fn#81122, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10669:986, offset: 0x01e9aa18, size: 171 bytes, params: 1, frame: 18
var binding;
var binding2;
var property;
var value4;
var updateRelationship;
var current;
var value5;
var value7;
var value8;
var value9;
var error;
if (true) {
value = environment.__proto__.__proto__;
if (!dependencyMap) {
env2_3(true);
try {
binding = env3_1;
} catch (error) {
env2_3(false);
throw error;
}
try {
binding2 = env3_2;
} catch (error) {
env2_3(false);
throw error;
}
try {
property = binding2[12];
} catch (error) {
env2_3(false);
throw error;
}
try {
value4 = binding(property);
} catch (error) {
env2_3(false);
throw error;
}
try {
updateRelationship = value4.updateRelationship;
} catch (error) {
env2_3(false);
throw error;
}
try {
} catch (error) {
env2_3(false);
throw error;
}
try {
binding = env2_4;
} catch (error) {
env2_3(false);
throw error;
}
try {
current = binding.current;
} catch (error) {
env2_3(false);
throw error;
}
try {
value5 = current != null;
} catch (error) {
env2_3(false);
throw error;
}
try {
value7 = Reflect.apply(updateRelationship, value4, [require, value5 ? current : '']);
} catch (error) {
env2_3(false);
throw error;
}
yield value7;
try {
value8 = undefined;
value9 = false;
} catch (error) {
env2_3(false);
throw error;
}
if (value9) {
env2_3(false);
return value8;
}
try {
binding = env2_5;
} catch (error) {
env2_3(false);
throw error;
}
try {
binding();
} catch (error) {
env2_3(false);
throw error;
}
env2_3(false);
function AddFriendNicknameModal({userId, showUserProfile}) { // fn#81115, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10669:526, offset: 0x01e9a629, size: 855 bytes, params: 2, frame: 32
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let env0_4 = undefined;
const styles = useStyles();
const binding = undefined;
const [env0_2, env0_3] = env0_4(binding.useState(false), 2);
const nickname = (require(566) /* metro dependency 566: flux */).useStateFromStores([RelationshipStore],
function() {
return RelationshipStore.getNickname(userId);
});
env0_4 = binding.useRef(nickname ?? null);
const value5 = undefined.useCallback(_fun81117, []);
const user = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], function() {
return UserStore.getUser(userId);
});
const r20 = nickname == null ? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.BGYkaH) : intl.string((require(1244) /* metro dependency 1244: indexNative */).t['8pOYUE']);
const value8 = undefined.useCallback(_fun81119, [showUserProfile]);
const value9 = _fun81120();
const alertProps = {confirmText: intl.string((require(1244) /* metro dependency 1244: indexNative */).t['R3BPH+']),
onConfirm: value9,
cancelText: intl.string((require(1244) /* metro dependency 1244: indexNative */).t['ETE/oC']), onCancel: value8};
const Text = (TextModule).Text;
const items2 = [
<Text
style={styles.title}
accessibilityRole="header"
variant="heading-lg/extrabold"
color="mobile-text-heading-primary"
>
{r20}
</Text>,
];
items2[1] = (
<Text
style={styles.description}
variant="text-sm/medium"
color="text-default"
>
{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['NdQ+lP'])}
</Text>
);
const TextField = (TextFieldNativeModule).TextField;
items2[2] = (
<TextField
onChange={value5}
autoFocus
placeholder={(importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user)}
defaultValue={nickname}
maxLength={32}
isClearable
/>
);
return (
<View style={styles.container}>
<KeyboardAwareView>
<Alert {...alertProps}>
{items2}
</Alert>
</KeyboardAwareView>
</View>
);
function _fun81117(a0) { // fn#81117, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10669:739, offset: 0x01e9a99b, size: 20 bytes, params: 2, frame: 2
env0_4.current = a0;
}
function _fun81119() { // fn#81119, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10669:924, offset: 0x01e9a9af, size: 58 bytes, params: 1, frame: 12
const value = environment.__proto__;
(ModalActionCreators).pop();
if (showUserProfile != null) {
showUserProfile();
}
}
function _fun81120() { // fn#81120, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10669:966, offset: 0x01e9a9e9, size: 36 bytes, params: 1, frame: 12
const env0_0 = env1_3(_fun81122);
return _fun81123;
function* _fun81122() { // fn#81122, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10669:986, offset: 0x01e9aa18, size: 171 bytes, params: 1, frame: 18
var binding;
var binding2;
var property;
var value4;
var updateRelationship;
var current;
var value5;
var value7;
var value8;
var value9;
var error;
if (true) {
value = environment.__proto__.__proto__;
if (!dependencyMap) {
env2_3(true);
try {
binding = env3_1;
} catch (error) {
env2_3(false);
throw error;
}
try {
binding2 = env3_2;
} catch (error) {
env2_3(false);
throw error;
}
try {
property = binding2[12];
} catch (error) {
env2_3(false);
throw error;
}
try {
value4 = binding(property);
} catch (error) {
env2_3(false);
throw error;
}
try {
updateRelationship = value4.updateRelationship;
} catch (error) {
env2_3(false);
throw error;
}
try {
} catch (error) {
env2_3(false);
throw error;
}
try {
binding = env2_4;
} catch (error) {
env2_3(false);
throw error;
}
try {
current = binding.current;
} catch (error) {
env2_3(false);
throw error;
}
try {
value5 = current != null;
} catch (error) {
env2_3(false);
throw error;
}
try {
value7 = Reflect.apply(updateRelationship, value4, [require, value5 ? current : '']);
} catch (error) {
env2_3(false);
throw error;
}
yield value7;
try {
value8 = undefined;
value9 = false;
} catch (error) {
env2_3(false);
throw error;
}
if (value9) {
env2_3(false);
return value8;
}
try {
binding = env2_5;
} catch (error) {
env2_3(false);
throw error;
}
try {
binding();
} catch (error) {
env2_3(false);
throw error;
}
env2_3(false);
}
}
}
function _fun81123() { // fn#81123, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10669:1113, offset: 0x00c3945f, size: 30 bytes, params: 1, frame: 13
return env0_0.apply(this, arguments);
}
}
}
}
global.__d(_fun81114, 10483, [5, 57, 31, 27, 3793, 1878, 33, 4501, 697, 566, 1244, 5080, 8783, 5467, 4596, 4573,
6985, 3995,
2]) /* metro module 10483, dependencies: [5, 57, 31, 27, 3793, 1878, 33, 4501, 697, 566, 1244, 5080, 8783, 5467, 4596, 4573, 6985, 3995, 2] */;
@@ -1,197 +1,218 @@
/* Metro module 8868; source: modules/user_profile/native/AddOrOpenAppButton.tsx; dependencies: [5, 57, 31, 7861, 661, 1483, 33, 8869, 8870, 4080, 6797, 8809, 3856, 1471, 6249, 10083, 1244, 4578, 697, 6772, 4603, 4015, 1583, 683, 2] */
import Module00005 from '../../../by-id/module-00005.js'; /* Metro dependency 5 */
import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */
import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */
import ActionSheetActionCreators from '../../action_sheet/native/ActionSheetActionCreators.tsx'; /* Metro dependency 4080 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as IndexNativeModule from '../../../intl/index.native.tsx'; /* Metro dependency 1244 */
import * as AppLauncherNativeConstantsModule from '../../app_launcher/native/AppLauncherNativeConstants.tsx'; /* Metro dependency 1483 */
import * as ToastUtilsModule from '../../toast/native/ToastUtils.tsx'; /* Metro dependency 3856 */
import * as ButtonNativeModule from '../../../design/components/Button/native/Button.native.tsx'; /* Metro dependency 4578 */
import * as ApplicationCommandIndexStoreModule from '../../application_commands/ApplicationCommandIndexStore.tsx'; /* Metro dependency 7861 */
import * as GetApplicationInstallURLModule from '../../applications/getApplicationInstallURL.tsx'; /* Metro dependency 8809 */
import * as ApplicationUtilsModule from '../../../utils/native/ApplicationUtils.tsx'; /* Metro dependency 8870 */
function _fun69132(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#69132, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:6, offset: 0x01c6a3d0, size: 262 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(5) /* metro dependency 5 */;
const env0_4 = importDefault(57) /* metro dependency 57 */;
const env0_5 = importAll(31) /* metro dependency 31 */;
const env0_6 = (require(7861) /* metro dependency 7861: ApplicationCommandIndexStore */).getSection;
const env0_7 = (require(661) /* metro dependency 661: Constants */).AnalyticEvents;
const env0_8 = (require(1483) /* metro dependency 1483: AppLauncherNativeConstants */).AppLauncherRouteName;
const env0_9 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/AddOrOpenAppButton.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/AddOrOpenAppButton.tsx');
exports.default = AddOrOpenAppButton;
}
function AddAppButton({application, guildId}) { // fn#69133, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:217, offset: 0x01c6a4d6, size: 451 bytes, params: 2, frame: 24
var r6;
var defaultImport;
const binding = env0_5;
const useCallback = binding.useCallback;
let customInstallUrl = application.customInstallUrl;
const value2 = Reflect.apply(useCallback, binding, [_fun69134, [customInstallUrl, application.id,
application.installParams, application.integrationTypesConfig, guildId]]);
const value3 = env0_5.useCallback(_fun69135, [application]);
customInstallUrl = application.customInstallUrl;
if (customInstallUrl == null) {
r6 = (require(10083) /* metro dependency 10083: PlusSmallIcon */).PlusSmallIcon;
} else {
defaultImport = importDefault(1471) /* metro dependency 1471: URLUtils */;
r6 = defaultImport.isDiscordUrl(customInstallUrl) ? (require(10083) /* metro dependency 10083: PlusSmallIcon */).PlusSmallIcon : (require(6249) /* metro dependency 6249: LinkExternalSmallIcon */).LinkExternalSmallIcon;
}
const value4 = env0_5.useMemo(function() {
var object = {name: 'longpress'};
object.label = require(dependencyMap[16]).intl.string(require(dependencyMap[16]).t.XWDihq);
return [object];
}, []);
const value5 = env0_5.useCallback(_fun69137, [application]);
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const NgXl3C = (require(1244) /* metro dependency 1244: indexNative */).t.NgXl3C;
const WHITE = (importDefault(697) /* metro dependency 697: native */).colors.WHITE;
return (
<Button
text={Reflect.apply(string, intl, [NgXl3C])}
onPress={value2}
onLongPress={value3}
accessibilityActions={value4}
onAccessibilityAction={value5}
icon={((Component) => <Component size="sm" color={WHITE} />)(r6)}
/>
);
}
function OpenAppButton({profileApplication, botUserId, channel}) { // fn#69138, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:1219, offset: 0x01c6a839, size: 238 bytes, params: 2, frame: 20
const [property, env0_3] = env0_4(env0_5.useState(false), 2);
const value5 = env0_5.useCallback(env0_3(_fun69140), [botUserId, channel, profileApplication.id]);
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
return (
<Button
text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['Cia+A8'])}
loading={property}
onPress={value5}
/>
);
}
function AddOrOpenAppButton({application, botUserId, channel, guildId}) { // fn#69142, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:2217, offset: 0x01c6ab49, size: 121 bytes, params: 2, frame: 19
return (importDefault(8869) /* metro dependency 8869: useIsAppDM */)(channel) && channel != null ? <OpenAppButton profileApplication={application} botUserId={botUserId} channel={channel} /> : <AddAppButton application={application} guildId={guildId} />;
}
function _fun69134() { // fn#69134, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:287, offset: 0x01c6a699, size: 123 bytes, params: 1, frame: 17
const value = environment.__proto__;
const applicationUtilsModule = require(8870) /* metro dependency 8870: ApplicationUtils */;
const installApplication = applicationUtilsModule.installApplication;
const applicationBinding = application;
Reflect.apply(installApplication, applicationUtilsModule, [{applicationId: applicationBinding.id,
customInstallUrl: applicationBinding.customInstallUrl, installParams: applicationBinding.installParams,
integrationTypesConfig: applicationBinding.integrationTypesConfig, guildId: guildId}]);
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet();
}
function _fun69135() { // fn#69135, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:580, offset: 0x01c6a714, size: 90 bytes, params: 1, frame: 16
let value = environment.__proto__;
value = require(6797) /* metro dependency 6797: ClipboardUtilsNative */;
const copy = value.copy;
const getApplicationInstallURLModule = require(8809) /* metro dependency 8809: getApplicationInstallURL */;
const getApplicationInstallURL = getApplicationInstallURLModule.getApplicationInstallURL;
Reflect.apply(copy, value, [Reflect.apply(getApplicationInstallURL, getApplicationInstallURLModule, [application])]);
(require(3856) /* metro dependency 3856: ToastUtils */).presentLinkCopied();
}
function _fun69137({nativeEvent}) { // fn#69137, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:891, offset: 0x01c6a7c4, size: 117 bytes, params: 2, frame: 16
var value;
var copy;
var moduleValue;
if (nativeEvent.actionName === 'longPress') {
value = environment.__proto__;
value = require(6797) /* metro dependency 6797: ClipboardUtilsNative */;
copy = value.copy;
moduleValue = require(8809) /* metro dependency 8809: getApplicationInstallURL */;
Reflect.apply(copy, value, [moduleValue.getApplicationInstallURL(application)]);
value = require(3856) /* metro dependency 3856: ToastUtils */;
value.presentLinkCopied();
}
}
function* _fun69140() { // fn#69140, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:1351, offset: 0x01c6a932, size: 367 bytes, params: 1, frame: 20
var r7;
var binding2;
var value10;
var value13;
var track;
var APP_PROFILE_OPEN_APP_BUTTON_CLICKED;
let value = undefined;
if (true) {
value = undefined;
var binding = env2_6;
var id = require.id;
var value5 = binding({type: 'channel', channel: dependencyMap}, id);
var descriptor = value5.descriptor;
var application = descriptor == null ? value : descriptor.application;
if (application == null) {
env1_3(true);
function AddAppButton({application, guildId}) { // fn#69133, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:217, offset: 0x01c6a4d6, size: 451 bytes, params: 2, frame: 24
var r6;
var defaultImport;
const useCallback = ReactModule.useCallback;
let customInstallUrl = application.customInstallUrl;
const value2 = Reflect.apply(useCallback, ReactModule, [_fun69134, [customInstallUrl, application.id,
application.installParams, application.integrationTypesConfig, guildId]]);
const value3 = ReactModule.useCallback(_fun69135, [application]);
customInstallUrl = application.customInstallUrl;
if (customInstallUrl == null) {
r6 = (require(10083) /* metro dependency 10083: PlusSmallIcon */).PlusSmallIcon;
} else {
defaultImport = importDefault(1471) /* metro dependency 1471: URLUtils */;
r6 = defaultImport.isDiscordUrl(customInstallUrl) ? (require(10083) /* metro dependency 10083: PlusSmallIcon */).PlusSmallIcon : (require(6249) /* metro dependency 6249: LinkExternalSmallIcon */).LinkExternalSmallIcon;
}
descriptor = value5.descriptor;
application = descriptor == null ? value : descriptor.application;
if (application != null) {
r7 = application;
env1_3(false);
if (value5 == null) {
return value;
const value4 = ReactModule.useMemo(function() {
var object = {name: 'longpress'};
object.label = require(dependencyMap[16]).intl.string(require(dependencyMap[16]).t.XWDihq);
return [object];
}, []);
const value5 = ReactModule.useCallback(_fun69137, [application]);
const Button = (ButtonNativeModule).Button;
const intl = (IndexNativeModule).intl;
const string = intl.string;
const NgXl3C = (IndexNativeModule).t.NgXl3C;
const WHITE = (Native).colors.WHITE;
return (
<Button
text={Reflect.apply(string, intl, [NgXl3C])}
onPress={value2}
onLongPress={value3}
accessibilityActions={value4}
onAccessibilityAction={value5}
icon={((Component) => <Component size="sm" color={WHITE} />)(r6)}
/>
);
function _fun69134() { // fn#69134, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:287, offset: 0x01c6a699, size: 123 bytes, params: 1, frame: 17
const value = environment.__proto__;
const installApplication = ApplicationUtilsModule.installApplication;
const applicationBinding = application;
Reflect.apply(installApplication, ApplicationUtilsModule, [{applicationId: applicationBinding.id,
customInstallUrl: applicationBinding.customInstallUrl, installParams: applicationBinding.installParams,
integrationTypesConfig: applicationBinding.integrationTypesConfig, guildId: guildId}]);
(ActionSheetActionCreators).hideActionSheet();
}
function _fun69135() { // fn#69135, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:580, offset: 0x01c6a714, size: 90 bytes, params: 1, frame: 16
let value = environment.__proto__;
value = require(6797) /* metro dependency 6797: ClipboardUtilsNative */;
const copy = value.copy;
const getApplicationInstallURL = GetApplicationInstallURLModule.getApplicationInstallURL;
Reflect.apply(copy, value, [Reflect.apply(getApplicationInstallURL, GetApplicationInstallURLModule, [application])]);
(ToastUtilsModule).presentLinkCopied();
}
function _fun69137({nativeEvent}) { // fn#69137, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:891, offset: 0x01c6a7c4, size: 117 bytes, params: 2, frame: 16
var value;
var copy;
var moduleValue;
if (nativeEvent.actionName === 'longPress') {
value = environment.__proto__;
value = require(6797) /* metro dependency 6797: ClipboardUtilsNative */;
copy = value.copy;
moduleValue = require(8809) /* metro dependency 8809: getApplicationInstallURL */;
Reflect.apply(copy, value, [moduleValue.getApplicationInstallURL(application)]);
value = require(3856) /* metro dependency 3856: ToastUtils */;
value.presentLinkCopied();
}
binding = env2_1;
binding2 = env2_2;
binding(binding2[9]).hideActionSheet();
value10 = binding(binding2[20]);
yield value10.openPrivateChannel({recipientIds: importDefault});
if (false) {
return undefined;
}
}
function OpenAppButton({profileApplication, botUserId, channel}) { // fn#69138, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:1219, offset: 0x01c6a839, size: 238 bytes, params: 2, frame: 20
const [property, env0_3] = Module00057(ReactModule.useState(false), 2);
const value5 = ReactModule.useCallback(env0_3(_fun69140), [botUserId, channel, profileApplication.id]);
const Button = (ButtonNativeModule).Button;
const intl = (IndexNativeModule).intl;
return (
<Button
text={intl.string((IndexNativeModule).t['Cia+A8'])}
loading={property}
onPress={value5}
/>
);
function* _fun69140() { // fn#69140, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:1351, offset: 0x01c6a932, size: 367 bytes, params: 1, frame: 20
var r7;
var binding2;
var value10;
var value13;
var track;
var APP_PROFILE_OPEN_APP_BUTTON_CLICKED;
let value = undefined;
if (true) {
value = undefined;
var binding = env2_6;
var id = require.id;
var value5 = binding({type: 'channel', channel: dependencyMap}, id);
var descriptor = value5.descriptor;
var application = descriptor == null ? value : descriptor.application;
if (application == null) {
env1_3(true);
}
descriptor = value5.descriptor;
application = descriptor == null ? value : descriptor.application;
if (application != null) {
r7 = application;
env1_3(false);
if (value5 == null) {
return value;
}
binding = env2_1;
binding2 = env2_2;
binding(binding2[9]).hideActionSheet();
value10 = binding(binding2[20]);
yield value10.openPrivateChannel({recipientIds: importDefault});
if (false) {
return undefined;
}
global.setTimeout(_fun69141, 0);
binding = env2_1;
value13 = binding(env2_2[23]);
value13.track(env2_7.APP_PROFILE_OPEN_APP_BUTTON_CLICKED, {application_id: r7.id});
return value;
}
binding = env2_1;
var value6 = binding(env2_2[19]);
var fetchApplication = value6.fetchApplication;
id = require.id;
yield Reflect.apply(fetchApplication, value6, [id]);
var value7 = undefined;
if (false) {
return value7;
}
r7 = value7;
env1_3(false);
if (value5 == null) {
return value;
}
binding = env2_1;
binding2 = env2_2;
binding(binding2[9]).hideActionSheet();
value10 = binding(binding2[20]);
yield value10.openPrivateChannel({recipientIds: importDefault});
if (false) {
return undefined;
}
global.setTimeout(_fun69141, 0);
binding = env2_1;
value13 = binding(env2_2[23]);
track = value13.track;
APP_PROFILE_OPEN_APP_BUTTON_CLICKED = env2_7.APP_PROFILE_OPEN_APP_BUTTON_CLICKED;
id = r7.id;
Reflect.apply(track, value13, [APP_PROFILE_OPEN_APP_BUTTON_CLICKED, {application_id: id}]);
}
global.setTimeout(_fun69141, 0);
binding = env2_1;
value13 = binding(env2_2[23]);
value13.track(env2_7.APP_PROFILE_OPEN_APP_BUTTON_CLICKED, {application_id: r7.id});
return value;
function _fun69141() { // fn#69141, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:1675, offset: 0x01c6aaa1, size: 168 bytes, params: 1, frame: 16
var openCustomKeyboard;
var object;
const value = environment.__proto__.__proto__.__proto__;
const bestActiveInput = env3_0(env3_2[21]).getBestActiveInput();
if (bestActiveInput != null) {
openCustomKeyboard = bestActiveInput.openCustomKeyboard;
object = {};
object.type = env3_0(env3_2[22]).KeyboardTypes.APP_LAUNCHER;
object.context = {initialRouteName: env3_8.APPLICATION_VIEW, initiallyExpanded: true, application: env0_1,
installOnDemand: !env0_0.isGuildInstalled && !env0_0.isUserInstalled};
Reflect.apply(openCustomKeyboard, bestActiveInput, [object]);
}
}
}
binding = env2_1;
var value6 = binding(env2_2[19]);
var fetchApplication = value6.fetchApplication;
id = require.id;
yield Reflect.apply(fetchApplication, value6, [id]);
var value7 = undefined;
if (false) {
return value7;
}
r7 = value7;
env1_3(false);
if (value5 == null) {
return value;
}
binding = env2_1;
binding2 = env2_2;
binding(binding2[9]).hideActionSheet();
value10 = binding(binding2[20]);
yield value10.openPrivateChannel({recipientIds: importDefault});
if (false) {
return undefined;
}
global.setTimeout(_fun69141, 0);
binding = env2_1;
value13 = binding(env2_2[23]);
track = value13.track;
APP_PROFILE_OPEN_APP_BUTTON_CLICKED = env2_7.APP_PROFILE_OPEN_APP_BUTTON_CLICKED;
id = r7.id;
Reflect.apply(track, value13, [APP_PROFILE_OPEN_APP_BUTTON_CLICKED, {application_id: id}]);
}
return value;
}
function _fun69141() { // fn#69141, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:1675, offset: 0x01c6aaa1, size: 168 bytes, params: 1, frame: 16
var openCustomKeyboard;
var object2;
const value = environment.__proto__.__proto__.__proto__;
const bestActiveInput = env3_0(env3_2[21]).getBestActiveInput();
if (bestActiveInput != null) {
openCustomKeyboard = bestActiveInput.openCustomKeyboard;
object2 = {};
object2.type = env3_0(env3_2[22]).KeyboardTypes.APP_LAUNCHER;
object2.context = {initialRouteName: env3_8.APPLICATION_VIEW, initiallyExpanded: true, application: env0_1,
installOnDemand: !env0_0.isGuildInstalled && !env0_0.isUserInstalled};
Reflect.apply(openCustomKeyboard, bestActiveInput, [object2]);
}
function AddOrOpenAppButton({application, botUserId, channel, guildId}) { // fn#69142, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9053:2217, offset: 0x01c6ab49, size: 121 bytes, params: 2, frame: 19
return (
(importDefault(8869) /* metro dependency 8869: useIsAppDM */)(channel) && channel != null
? (
<OpenAppButton
profileApplication={application}
botUserId={botUserId}
channel={channel}
/>
)
: (
<AddAppButton application={application} guildId={guildId} />
)
);
}
}
global.__d(_fun69132, 8868, [5, 57, 31, 7861, 661, 1483, 33, 8869, 8870, 4080, 6797, 8809, 3856, 1471, 6249, 10083,
1244, 4578, 697, 6772, 4603, 4015, 1583, 683,
2]) /* metro module 8868, dependencies: [5, 57, 31, 7861, 661, 1483, 33, 8869, 8870, 4080, 6797, 8809, 3856, 1471, 6249, 10083, 1244, 4578, 697, 6772, 4603, 4015, 1583, 683, 2] */;
@@ -1,37 +1,48 @@
/* Metro module 10349; source: modules/user_profile/native/ApplicationIconAndName.tsx; dependencies: [33, 4501, 697, 1305, 4573, 2] */
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 NativeModule from '../../../design/void/native.tsx'; /* Metro dependency 1305 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
function _fun80208(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#80208, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10535:6, offset: 0x01e714c1, size: 175 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const value = require(33) /* metro dependency 33 */;
const env0_3 = value.jsx;
const env0_4 = value.Fragment;
const env0_5 = value.jsxs;
const env0_6 = (require(4501) /* metro dependency 4501: createStyles */).createStyles(function(a0) {
var object2 = {width: a0, height: a0, marginTop: -1, marginRight: 4};
object2.borderRadius = importDefault(dependencyMap[2]).radii.xs;
return {gameIcon: object2};
});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/ApplicationIconAndName.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/ApplicationIconAndName.tsx');
exports.default = ApplicationIconAndName;
function ApplicationIconAndName({application, textVariant, iconSize, useComma}) { // fn#80210, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10535:352, offset: 0x01e715c0, size: 269 bytes, params: 2, frame: 26
useComma = !(useComma === undefined) && useComma;
const styles = useStyles(iconSize);
const jsxRuntimeEnv0_4Binding = jsxRuntimeEnv0_4;
const Icon = (NativeModule).Icon;
const iconURL = application.getIconURL(iconSize);
const value3 = '';
const icon = (
<Icon
style={styles.gameIcon}
resizeMode="contain"
source={{uri: iconURL ?? value3}}
disableColor
key={application.id}
/>
);
const Text = (TextModule).Text;
return (
<>
{icon}
<Text variant={textVariant}>
{value3 + application.name + (useComma ? ', ' : value3)}
</Text>
</>
);
}
}
function ApplicationIconAndName({application, textVariant, iconSize, useComma}) { // fn#80210, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10535:352, offset: 0x01e715c0, size: 269 bytes, params: 2, frame: 26
useComma = !(useComma === undefined) && useComma;
const styles = useStyles(iconSize);
const jsxRuntimeEnv0_4Binding = jsxRuntimeEnv0_4;
const Icon = (require(1305) /* metro dependency 1305: native */).Icon;
const iconURL = application.getIconURL(iconSize);
const value3 = '';
const icon = <Icon style={styles.gameIcon} resizeMode="contain" source={{uri: iconURL ?? value3}} disableColor key={application.id} />;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
return (
<>
{icon}
<Text variant={textVariant}>
{value3 + application.name + (useComma ? ', ' : value3)}
</Text>
</>
);
}
global.__d(_fun80208, 10349, [33, 4501, 697, 1305, 4573,
2]) /* metro module 10349, dependencies: [33, 4501, 697, 1305, 4573, 2] */;
@@ -1,184 +1,259 @@
/* Metro module 8779; source: modules/user_profile/native/BotUserProfileContent.tsx; dependencies: [31, 27, 1878, 6816, 6276, 33, 8496, 8752, 8760, 1585, 8514, 566, 4617, 3995, 6902, 8501, 8693, 8494, 8497, 6797, 3856, 8761, 8780, 4017, 8510, 8513, 4080, 8692, 1962, 8695, 1244, 8817, 8867, 8063, 8868, 4578, 6682, 697, 5080, 4603, 10210, 8762, 6792, 10288, 10327, 2] */
import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */
import UseSafeAreaInsetsNative from '../../safe_area/useSafeAreaInsets.native.tsx'; /* Metro dependency 1585 */
import UserStore from '../../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import ReanimatedRexport from '../../reanimated/ReanimatedRexport.tsx'; /* Metro dependency 4017 */
import NicknameUtils from '../../../utils/NicknameUtils.tsx'; /* Metro dependency 4617 */
import UseProfileTheme from '../hooks/useProfileTheme.tsx'; /* Metro dependency 8494 */
import UserProfileSharedStyles from './UserProfileSharedStyles.tsx'; /* Metro dependency 8496 */
import UseBadges from '../hooks/useBadges.tsx'; /* Metro dependency 8501 */
import UserProfileCustomStatusBubble from './UserProfileCustomStatusBubble.tsx'; /* Metro dependency 8513 */
import UseCustomStatusActivityForUser from '../../custom_status/utils/useCustomStatusActivityForUser.tsx'; /* Metro dependency 8693 */
import UserProfilePrimaryInfo from './UserProfilePrimaryInfo.tsx'; /* Metro dependency 8695 */
import UseUserProfileBannerHeight from '../hooks/native/useUserProfileBannerHeight.tsx'; /* Metro dependency 8752 */
import UseUserProfileOverscrollStyles from './useUserProfileOverscrollStyles.tsx'; /* Metro dependency 8760 */
import UserProfileOverscrollBanner from './UserProfileOverscrollBanner.tsx'; /* Metro dependency 8761 */
import BotUserProfileOverflowMenu from './BotUserProfileOverflowMenu.tsx'; /* Metro dependency 8780 */
import UserProfileTextButtonGroup from './UserProfileTextButtonGroup.tsx'; /* Metro dependency 8867 */
import UserProfileActivity from './UserProfileActivity.tsx'; /* Metro dependency 10210 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as ToastUtilsModule from '../../toast/native/ToastUtils.tsx'; /* Metro dependency 3856 */
import * as ButtonNativeModule from '../../../design/components/Button/native/Button.native.tsx'; /* Metro dependency 4578 */
import * as ActionSheetConstantsModule from '../../action_sheet/native/ActionSheetConstants.tsx'; /* Metro dependency 6276 */
import * as ChatIconModule from '../../../design/components/Icon/native/redesign/generated/ChatIcon.tsx'; /* Metro dependency 6682 */
import * as ClipboardUtilsNativeModule from '../../../utils/ClipboardUtils.native.tsx'; /* Metro dependency 6797 */
import * as ConstantsModule from './Constants.tsx'; /* Metro dependency 6816 */
import * as UseUserProfileColorsModule from '../hooks/native/useUserProfileColors.tsx'; /* Metro dependency 8497 */
import * as UserProfileAnalyticsContextModule from '../UserProfileAnalyticsContext.tsx'; /* Metro dependency 8514 */
function _fun68635(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68635, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8964:6, offset: 0x01c56adb, size: 262 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = importAll(31) /* metro dependency 31 */;
const env0_4 = (require(27) /* metro dependency 27 */).View;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const constantsModule = require(6816) /* metro dependency 6816: Constants */;
const env0_6 = constantsModule.PROFILE_CONTENT_BOTTOM_PADDING;
const env0_7 = constantsModule.PROFILE_CONTENT_WITHOUT_STATUS_TOP_PADDING;
const env0_8 = (require(6276) /* metro dependency 6276: ActionSheetConstants */).ACTION_SHEET_MAX_WIDTH;
const value3 = require(33) /* metro dependency 33 */;
const env0_9 = value3.jsx;
const env0_10 = value3.jsxs;
const env0_11 = value3.Fragment;
let value = ReactModule;
value = value.memo(BotUserProfileContent);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/BotUserProfileContent.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/BotUserProfileContent.tsx');
exports.default = value;
}
function BotUserProfileContent({user, channel, displayProfile, showUserProfileActionSheet, disableMessage, scrollPosition}) { // fn#68636, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8964:310, offset: 0x01c56be1, size: 2097 bytes, params: 2, frame: 53
var r33;
var r19;
var r18;
var moduleValue5;
var AddOrOpenAppButton;
var jsxRuntimeEnv0_11Binding2;
var UserProfileRolesCard;
var items8;
var UserProfileModeratorActions;
const value3 = (importDefault(8496) /* metro dependency 8496: UserProfileSharedStyles */)();
const value4 = (importDefault(8752) /* metro dependency 8752: useUserProfileBannerHeight */)(ACTION_SHEET_MAX_WIDTH);
const {bannerAnimatedStyle, bannerImageAnimatedStyle, contentAnimatedStyle, blurAnimatedProps,
showBlur} = (importDefault(8760) /* metro dependency 8760: useUserProfileOverscrollStyles */)({scrollPosition: scrollPosition,
bannerHeight: value4});
const bottom = (importDefault(1585) /* metro dependency 1585: useSafeAreaInsetsNative */)().bottom;
const userProfileAnalyticsContextModule = require(8514) /* metro dependency 8514: UserProfileAnalyticsContext */;
const useUserProfileAnalyticsContext = userProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const env0_2 = Reflect.apply(useUserProfileAnalyticsContext, userProfileAnalyticsContextModule,
[]).trackUserProfileAction;
const currentUser = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], function() {
return UserStore.getCurrentUser();
});
const defaultImport3 = importDefault(4617) /* metro dependency 4617: NicknameUtils */;
const useName = defaultImport3.useName;
const guildId = displayProfile?.guildId;
let id = channel?.id;
const value6 = Reflect.apply(useName, defaultImport3, [guildId, id, user]);
const env0_3 = (importDefault(3995) /* metro dependency 3995: UserUtils */).useUserTag(user);
const application = displayProfile?.application;
const guild_id = channel?.guild_id;
(require(6902) /* metro dependency 6902: subscribeGuildMembers */).useSubscribeGuildMembers(env0_3.useMemo(function() {
return guild_id == null ? {} : user != null ? {[guild_id]: [user.id]} : {};
}, [guild_id, user]), 'BotUserProfileContent');
const value8 = (importDefault(8501) /* metro dependency 8501: useBadges */)(displayProfile);
const value9 = (importDefault(8693) /* metro dependency 8693: useCustomStatusActivityForUser */)(user.id);
const {theme, primaryColor,
secondaryColor} = (importDefault(8494) /* metro dependency 8494: useProfileTheme */)({user: user,
displayProfile: displayProfile});
const {containerBackground, avatarBackground,
statusBackground} = (require(8497) /* metro dependency 8497: useUserProfileColors */).useUserProfileColors({theme: theme,
primaryColor: primaryColor, secondaryColor: secondaryColor});
if (user == null) {
return null;
}
if (currentUser == null) {
return null;
}
const closure = onPressDisplayName;
const jsxRuntimeEnv0_11Binding = jsxRuntimeEnv0_11;
const value12 = ((Component) => <Component user={user} displayProfile={displayProfile} bannerHeight={value4} bannerAnimatedStyle={bannerAnimatedStyle} bannerImageAnimatedStyle={bannerImageAnimatedStyle} blurAnimatedProps={blurAnimatedProps} showBlur={showBlur} buttons={<View style={value3.bannerButtons}>{((Component) => <Component user={user} application={application} channel={channel} />)(importDefault(8780) /* metro dependency 8780: BotUserProfileOverflowMenu */)}</View>} />)(importDefault(8761) /* metro dependency 8761: UserProfileOverscrollBanner */);
const View2 = (importDefault(4017) /* metro dependency 4017: ReanimatedRexport */).View;
const value13 = ((Component) => <Component user={user} guildId={displayProfile?.guildId ?? undefined} backgroundColor={avatarBackground} statusStyle={{backgroundColor: statusBackground}} />)(importDefault(8510) /* metro dependency 8510: UserProfileAvatar */);
const items3 = [value3.profileContentWrapper];
items3[1] = value3.profileContent;
const PROFILE_CONTENT_WITHOUT_STATUS_TOP_PADDING2 = value9 != null ? 0 : PROFILE_CONTENT_WITHOUT_STATUS_TOP_PADDING;
items3[2] = {paddingTop: PROFILE_CONTENT_WITHOUT_STATUS_TOP_PADDING2,
paddingBottom: bottom + PROFILE_CONTENT_BOTTOM_PADDING};
const items4 = [((Component) => <Component customStatusActivity={value9} hasCustomProfileTheme={primaryColor != null} onPressTruncatedStatus={onPressTruncatedStatus} style={value3.customStatusBubble} emojiOnlyStyle={value3.emojiOnlyCustomStatusBubble} />)(importDefault(8513) /* metro dependency 8513: UserProfileCustomStatusBubble */)];
const primaryInfo = value3.primaryInfo;
const UserProfilePrimaryInfo = importDefault(8695) /* metro dependency 8695: UserProfilePrimaryInfo */;
const pronouns = displayProfile?.pronouns;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const items5 = [<UserProfilePrimaryInfo user={user} guildId={guild_id} displayName={value6} pronouns={pronouns} badges={value8} badgeContainerBackground={containerBackground} displayNameAccessibilityHint={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.y5MwJy)} onPressDisplayName={closure} onPressUserTag={closure} onPressPronouns={onPressPronouns} showBadgeToastOnPress />];
items5[1] = ((Component) => <Component user={user} />)(importDefault(8817) /* metro dependency 8817: UserProfileMutualGuilds */);
const UserProfileTextButtonGroup = importDefault(8867) /* metro dependency 8867: UserProfileTextButtonGroup */;
const primaryButtons = value3.primaryButtons;
if (application != null) {
moduleValue5 = require(8063) /* metro dependency 8063: ApplicationInstallUtils */;
if (moduleValue5.canInstallApplication(application)) {
AddOrOpenAppButton = importDefault(8868) /* metro dependency 8868: AddOrOpenAppButton */;
var defaultImport14Props = {application: application, botUserId: user.id};
r33 = channel ?? undefined;
defaultImport14Props.channel = r33;
r33 = guild_id ?? undefined;
defaultImport14Props.guildId = r33;
r19 = <AddOrOpenAppButton {...defaultImport14Props} />;
function BotUserProfileContent({user, channel, displayProfile, showUserProfileActionSheet, disableMessage, scrollPosition}) { // fn#68636, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8964:310, offset: 0x01c56be1, size: 2097 bytes, params: 2, frame: 53
var r33;
var r19;
var r18;
var moduleValue5;
var AddOrOpenAppButton;
var jsxRuntimeEnv0_11Binding2;
var UserProfileRolesCard;
var items8;
var UserProfileModeratorActions;
const value3 = (UserProfileSharedStyles)();
const value4 = (UseUserProfileBannerHeight)(ACTION_SHEET_MAX_WIDTH);
const {bannerAnimatedStyle, bannerImageAnimatedStyle, contentAnimatedStyle, blurAnimatedProps,
showBlur} = (UseUserProfileOverscrollStyles)({scrollPosition: scrollPosition,
bannerHeight: value4});
const bottom = (UseSafeAreaInsetsNative)().bottom;
const useUserProfileAnalyticsContext = UserProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const env0_2 = Reflect.apply(useUserProfileAnalyticsContext, UserProfileAnalyticsContextModule,
[]).trackUserProfileAction;
const currentUser = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], function() {
return UserStore.getCurrentUser();
});
const defaultImport3 = NicknameUtils;
const useName = defaultImport3.useName;
const guildId = displayProfile?.guildId;
let id = channel?.id;
const value6 = Reflect.apply(useName, defaultImport3, [guildId, id, user]);
const env0_3 = (importDefault(3995) /* metro dependency 3995: UserUtils */).useUserTag(user);
const application = displayProfile?.application;
const guild_id = channel?.guild_id;
(require(6902) /* metro dependency 6902: subscribeGuildMembers */).useSubscribeGuildMembers(env0_3.useMemo(function() {
return guild_id == null ? {} : user != null ? {[guild_id]: [user.id]} : {};
}, [guild_id, user]), 'BotUserProfileContent');
const value8 = (UseBadges)(displayProfile);
const value9 = (UseCustomStatusActivityForUser)(user.id);
const {theme, primaryColor,
secondaryColor} = (UseProfileTheme)({user: user,
displayProfile: displayProfile});
const {containerBackground, avatarBackground,
statusBackground} = (UseUserProfileColorsModule).useUserProfileColors({theme: theme,
primaryColor: primaryColor, secondaryColor: secondaryColor});
if (user == null) {
return null;
}
if (currentUser == null) {
return null;
}
const onPressDisplayName_686392 = onPressDisplayName_68639;
const jsxRuntimeEnv0_11Binding = jsxRuntimeEnv0_11;
const value12 = ((Component) => <Component user={user} displayProfile={displayProfile} bannerHeight={value4} bannerAnimatedStyle={bannerAnimatedStyle} bannerImageAnimatedStyle={bannerImageAnimatedStyle} blurAnimatedProps={blurAnimatedProps} showBlur={showBlur} buttons={<View style={value3.bannerButtons}>{((Component) => <Component user={user} application={application} channel={channel} />)(BotUserProfileOverflowMenu)}</View>} />)(UserProfileOverscrollBanner);
const View2 = (ReanimatedRexport).View;
const value13 = ((Component) => <Component user={user} guildId={displayProfile?.guildId ?? undefined} backgroundColor={avatarBackground} statusStyle={{backgroundColor: statusBackground}} />)(importDefault(8510) /* metro dependency 8510: UserProfileAvatar */);
const items3 = [value3.profileContentWrapper];
items3[1] = value3.profileContent;
const PROFILE_CONTENT_WITHOUT_STATUS_TOP_PADDING2 = value9 != null ? 0 : PROFILE_CONTENT_WITHOUT_STATUS_TOP_PADDING;
items3[2] = {paddingTop: PROFILE_CONTENT_WITHOUT_STATUS_TOP_PADDING2,
paddingBottom: bottom + PROFILE_CONTENT_BOTTOM_PADDING};
const items4 = [
((Component) => <Component customStatusActivity={value9} hasCustomProfileTheme={primaryColor != null} onPressTruncatedStatus={onPressTruncatedStatus} style={value3.customStatusBubble} emojiOnlyStyle={value3.emojiOnlyCustomStatusBubble} />)(UserProfileCustomStatusBubble),
];
const primaryInfo = value3.primaryInfo;
const pronouns = displayProfile?.pronouns;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const items5 = [
<UserProfilePrimaryInfo
user={user}
guildId={guild_id}
displayName={value6}
pronouns={pronouns}
badges={value8}
badgeContainerBackground={containerBackground}
displayNameAccessibilityHint={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.y5MwJy)}
onPressDisplayName={onPressDisplayName_686392}
onPressUserTag={onPressDisplayName_686392}
onPressPronouns={onPressPronouns_68640}
showBadgeToastOnPress
/>,
];
items5[1] = ((Component) => <Component user={user} />)(importDefault(8817) /* metro dependency 8817: UserProfileMutualGuilds */);
const primaryButtons = value3.primaryButtons;
if (application != null) {
moduleValue5 = require(8063) /* metro dependency 8063: ApplicationInstallUtils */;
if (moduleValue5.canInstallApplication(application)) {
AddOrOpenAppButton = importDefault(8868) /* metro dependency 8868: AddOrOpenAppButton */;
var defaultImport14Props = {application: application, botUserId: user.id};
r33 = channel ?? undefined;
defaultImport14Props.channel = r33;
r33 = guild_id ?? undefined;
defaultImport14Props.guildId = r33;
r19 = <AddOrOpenAppButton {...defaultImport14Props} />;
} else {
r19 = undefined;
}
} else {
r19 = undefined;
}
} else {
r19 = undefined;
const Button = (ButtonNativeModule).Button;
const object3 = {};
const ChatIcon = (ChatIconModule).ChatIcon;
const CONTROL_SECONDARY_TEXT_DEFAULT = (Native).colors.CONTROL_SECONDARY_TEXT_DEFAULT;
object3.icon = <ChatIcon size="sm" color={CONTROL_SECONDARY_TEXT_DEFAULT} />;
object3.text = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.zROXEV);
object3.variant = 'secondary';
object3.disabled = disableMessage;
object3.grow = true;
const formatToPlainString = intl.formatToPlainString;
const zFfSFQ = (require(1244) /* metro dependency 1244: indexNative */).t.zFfSFQ;
const object4 = {};
object4.name = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
object3.accessibilityHint = Reflect.apply(formatToPlainString, intl, [zFfSFQ, object4]);
object3.onPress = function() {
trackUserProfileAction({action: 'SEND_MESSAGE'});
importDefault(dependencyMap[26]).hideActionSheet();
importDefault(dependencyMap[38]).popAll();
importDefault(dependencyMap[39]).openPrivateChannel({recipientIds: user.id});
};
items5[2] = (
<UserProfileTextButtonGroup
style={primaryButtons}
maxWidth={ACTION_SHEET_MAX_WIDTH}
primaryButton={r19}
secondaryButton={<Button {...object3} />}
/>
);
items4[1] = (
<View style={primaryInfo}>
{items5}
</View>
);
const items6 = [value3.card];
items6[1] = {backgroundColor: containerBackground};
const cards = value3.cards;
const items7 = [
((Component) => <Component user={user} currentUser={currentUser} guildId={guild_id} style={items6} />)(UserProfileActivity),
];
items7[1] = ((Component) => <Component userId={user.id} displayProfile={displayProfile} channel={channel} style={items6} />)(importDefault(8762) /* metro dependency 8762: UserProfileAboutMeCard */);
const value19 = guild_id != null;
if (value19) {
jsxRuntimeEnv0_11Binding2 = jsxRuntimeEnv0_11;
UserProfileRolesCard = importDefault(6792) /* metro dependency 6792: UserProfileRolesCard */;
id = user.id;
items8 = [
<UserProfileRolesCard
userId={id}
guildId={guild_id}
style={items6}
/>,
];
UserProfileModeratorActions = importDefault(10288) /* metro dependency 10288: UserProfileModeratorActions */;
id = channel?.id;
items8[1] = (
<UserProfileModeratorActions
user={user}
currentUser={currentUser}
guildId={guild_id}
channelId={id}
showUserProfile={showUserProfileActionSheet}
style={items6}
/>
);
r18 = (
<>
{items8}
</>
);
} else {
r18 = value19;
}
items7[2] = r18;
items7[3] = ((Component) => <Component userId={user.id} style={items6} onBack={showUserProfileActionSheet} />)(importDefault(10327) /* metro dependency 10327: UserProfileNote */);
items4[2] = (
<View style={cards}>
{items7}
</View>
);
return (
<>
{value12}
<View2 style={contentAnimatedStyle}>
{value13}
<View style={items3}>
{items4}
</View>
</View2>
</>
);
function BotUserProfileContentOnPressDisplayName() { // fn#68639, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8964:1363, owner: BotUserProfileContent.onPressDisplayName, offset: 0x01c5744c, size: 88 bytes, params: 1, frame: 14
trackUserProfileAction({action: 'COPY_USERNAME'});
(ClipboardUtilsNativeModule).copy(env0_3);
(ToastUtilsModule).presentUsernameCopied();
}
function BotUserProfileContentOnPressPronouns() { // fn#68640, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8964:1467, owner: BotUserProfileContent.onPressPronouns, offset: 0x01c574a4, size: 61 bytes, params: 1, frame: 12
trackUserProfileAction({action: 'PRESS_PRONOUNS'});
const value = environment.__proto__;
(ToastUtilsModule).presentUserPronouns();
}
function onPressTruncatedStatus() { // fn#68641, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8964:2132, owner: BotUserProfileContent.onPressTruncatedStatus, offset: 0x01c574e1, size: 139 bytes, params: 1, frame: 19
let value = environment.__proto__;
const value2 = undefined;
const defaultImport = importDefault(dependencyMap[26]);
const openLazy = defaultImport.openLazy;
value = require(dependencyMap[28]);
value = value(dependencyMap[27], dependencyMap.paths);
Reflect.apply(openLazy, defaultImport, [value, 'UserProfileCustomStatusActionSheet', {user: user, guildId: guild_id,
channelId: channel == null ? value2 : channel.id}, 'stack']);
return value2;
}
}
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
const object = {};
const ChatIcon = (require(6682) /* metro dependency 6682: ChatIcon */).ChatIcon;
const CONTROL_SECONDARY_TEXT_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.CONTROL_SECONDARY_TEXT_DEFAULT;
object.icon = <ChatIcon size="sm" color={CONTROL_SECONDARY_TEXT_DEFAULT} />;
object.text = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.zROXEV);
object.variant = 'secondary';
object.disabled = disableMessage;
object.grow = true;
const formatToPlainString = intl.formatToPlainString;
const zFfSFQ = (require(1244) /* metro dependency 1244: indexNative */).t.zFfSFQ;
const object2 = {};
object2.name = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
object.accessibilityHint = Reflect.apply(formatToPlainString, intl, [zFfSFQ, object2]);
object.onPress = function() {
trackUserProfileAction({action: 'SEND_MESSAGE'});
importDefault(dependencyMap[26]).hideActionSheet();
importDefault(dependencyMap[38]).popAll();
importDefault(dependencyMap[39]).openPrivateChannel({recipientIds: user.id});
};
items5[2] = <UserProfileTextButtonGroup style={primaryButtons} maxWidth={ACTION_SHEET_MAX_WIDTH} primaryButton={r19} secondaryButton={<Button {...object} />} />;
items4[1] = <View style={primaryInfo}>{items5}</View>;
const items6 = [value3.card];
items6[1] = {backgroundColor: containerBackground};
const cards = value3.cards;
const items7 = [((Component) => <Component user={user} currentUser={currentUser} guildId={guild_id} style={items6} />)(importDefault(10210) /* metro dependency 10210: UserProfileActivity */)];
items7[1] = ((Component) => <Component userId={user.id} displayProfile={displayProfile} channel={channel} style={items6} />)(importDefault(8762) /* metro dependency 8762: UserProfileAboutMeCard */);
const value19 = guild_id != null;
if (value19) {
jsxRuntimeEnv0_11Binding2 = jsxRuntimeEnv0_11;
UserProfileRolesCard = importDefault(6792) /* metro dependency 6792: UserProfileRolesCard */;
id = user.id;
items8 = [<UserProfileRolesCard userId={id} guildId={guild_id} style={items6} />];
UserProfileModeratorActions = importDefault(10288) /* metro dependency 10288: UserProfileModeratorActions */;
id = channel?.id;
items8[1] = <UserProfileModeratorActions user={user} currentUser={currentUser} guildId={guild_id} channelId={id} showUserProfile={showUserProfileActionSheet} style={items6} />;
r18 = <>{items8}</>;
} else {
r18 = value19;
}
items7[2] = r18;
items7[3] = ((Component) => <Component userId={user.id} style={items6} onBack={showUserProfileActionSheet} />)(importDefault(10327) /* metro dependency 10327: UserProfileNote */);
items4[2] = <View style={cards}>{items7}</View>;
return (
<>
{value12}
<View2 style={contentAnimatedStyle}>
{value13}
<View style={items3}>
{items4}
</View>
</View2>
</>
);
}
function BotUserProfileContentOnPressDisplayName() { // fn#68639, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8964:1363, owner: BotUserProfileContent.onPressDisplayName, offset: 0x01c5744c, size: 88 bytes, params: 1, frame: 14
trackUserProfileAction({action: 'COPY_USERNAME'});
(require(6797) /* metro dependency 6797: ClipboardUtilsNative */).copy(env0_3);
(require(3856) /* metro dependency 3856: ToastUtils */).presentUsernameCopied();
}
function BotUserProfileContentOnPressPronouns() { // fn#68640, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8964:1467, owner: BotUserProfileContent.onPressPronouns, offset: 0x01c574a4, size: 61 bytes, params: 1, frame: 12
trackUserProfileAction({action: 'PRESS_PRONOUNS'});
const value = environment.__proto__;
(require(3856) /* metro dependency 3856: ToastUtils */).presentUserPronouns();
}
function onPressTruncatedStatus() { // fn#68641, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8964:2132, owner: BotUserProfileContent.onPressTruncatedStatus, offset: 0x01c574e1, size: 139 bytes, params: 1, frame: 19
let value = environment.__proto__;
const value2 = undefined;
const defaultImport = importDefault(dependencyMap[26]);
const openLazy = defaultImport.openLazy;
value = require(dependencyMap[28]);
value = value(dependencyMap[27], dependencyMap.paths);
Reflect.apply(openLazy, defaultImport, [value, 'UserProfileCustomStatusActionSheet', {user: user, guildId: guild_id,
channelId: channel == null ? value2 : channel.id}, 'stack']);
return value2;
}
global.__d(_fun68635, 8779, [31, 27, 1878, 6816, 6276, 33, 8496, 8752, 8760, 1585, 8514, 566, 4617, 3995, 6902,
8501, 8693, 8494, 8497, 6797, 3856, 8761, 8780, 4017, 8510, 8513, 4080, 8692, 1962, 8695, 1244, 8817, 8867,
8063, 8868, 4578, 6682, 697, 5080, 4603, 10210, 8762, 6792, 10288, 10327,
2]) /* metro module 8779, dependencies: [31, 27, 1878, 6816, 6276, 33, 8496, 8752, 8760, 1585, 8514, 566, 4617, 3995, 6902, 8501, 8693, 8494, 8497, 6797, 3856, 8761, 8780, 4017, 8510, 8513, 4080, 8692, 1962, 8695, 1244, 8817, 8867, 8063, 8868, 4578, 6682, 697, 5080, 4603, 10210, 8762, 6792, 10288, 10327, 2] */;
@@ -1,14 +1,34 @@
/* Metro module 8780; source: modules/user_profile/native/BotUserProfileOverflowMenu.tsx; dependencies: [31, 1379, 3793, 1934, 1878, 661, 8781, 33, 566, 8782, 8514, 6771, 6789, 8743, 1244, 8783, 4080, 8793, 1962, 480, 6264, 8794, 8795, 8795, 477, 8796, 683, 6797, 3995, 3856, 7504, 8046, 8809, 3829, 8810, 8811, 8341, 8638, 697, 2] */
import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */
import ChannelStore from '../../../stores/ChannelStore.tsx'; /* Metro dependency 1379 */
import UserStore from '../../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import SelectedChannelStore from '../../../stores/SelectedChannelStore.tsx'; /* Metro dependency 1934 */
import RelationshipStore from '../../../stores/RelationshipStore.tsx'; /* Metro dependency 3793 */
import UserUtils from '../../../utils/UserUtils.tsx'; /* Metro dependency 3995 */
import SafetyToastsActionCreatorsNative from '../../safety_common/SafetyToastsActionCreators.native.tsx'; /* Metro dependency 6264 */
import UseAnalyticsLocations from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import AnalyticsLocation from '../../app_analytics/AnalyticsLocation.tsx'; /* Metro dependency 6789 */
import ShowUserProfileActionSheet from './showUserProfileActionSheet.tsx'; /* Metro dependency 8743 */
import RelationshipActionCreators from '../../../actions/RelationshipActionCreators.tsx'; /* Metro dependency 8783 */
import OpenUserContextMenuCommands from './openUserContextMenuCommands.tsx'; /* Metro dependency 8810 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as UserSettingsModule from '../../user_settings/UserSettings.tsx'; /* Metro dependency 3829 */
import * as ToastUtilsModule from '../../toast/native/ToastUtils.tsx'; /* Metro dependency 3856 */
import * as ClipboardUtilsNativeModule from '../../../utils/ClipboardUtils.native.tsx'; /* Metro dependency 6797 */
import * as IconButtonNativeModule from '../../../design/components/Button/native/IconButton.native.tsx'; /* Metro dependency 8341 */
import * as UserProfileAnalyticsContextModule from '../UserProfileAnalyticsContext.tsx'; /* Metro dependency 8514 */
import * as MoreHorizontalIconModule from '../../../design/components/Icon/native/redesign/generated/MoreHorizontalIcon.tsx'; /* Metro dependency 8638 */
import * as SafetyExperienceIarUserReportingExperimentModule from '../../in_app_reports/SafetyExperienceIarUserReportingExperiment.tsx'; /* Metro dependency 8782 */
import * as GetApplicationInstallURLModule from '../../applications/getApplicationInstallURL.tsx'; /* Metro dependency 8809 */
function _fun68643(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68643, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:6, offset: 0x01c575e4, size: 290 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importAll(31) /* metro dependency 31 */;
const channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */;
const relationshipStore = importDefault(3793) /* metro dependency 3793: RelationshipStore */;
const selectedChannelStore = importDefault(1934) /* metro dependency 1934: SelectedChannelStore */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
let value = require(661) /* metro dependency 661: Constants */;
let value = ConstantsModule;
const env0_8 = value.AnalyticEvents;
const env0_9 = value.ApplicationFlags;
const env0_10 = value.ChannelTypesSets;
@@ -16,330 +36,337 @@ function _fun68643(global, require, importDefault, importAll, module, exports, d
value = require(8781) /* metro dependency 8781: RestrictionConfirmationConstants */;
const env0_12 = value.BLOCK_CONFIRMATION_ACTION_SHEET_KEY;
const env0_13 = value.IGNORE_CONFIRMATION_ACTION_SHEET_KEY;
const env0_14 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/BotUserProfileOverflowMenu.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/BotUserProfileOverflowMenu.tsx');
exports.default = BotUserProfileOverflowMenu;
}
function BotUserProfileOverflowMenu({application, user, channel}) { // fn#68644, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:447, offset: 0x01c57706, size: 1598 bytes, params: 2, frame: 29
var push;
var object11;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var object12;
var object13;
var object14;
var moduleValue5;
var object15;
var object16;
var moduleValue6;
var object17;
var object18;
var object19;
var env0_12;
var env0_13;
const {relationshipType,
isIgnored} = (require(566) /* metro dependency 566: flux */).useStateFromStoresObject([RelationshipStore],
function() {
var object = {};
var userBinding = user;
object.relationshipType = RelationshipStore.getRelationshipType(userBinding.id);
object.isIgnored = RelationshipStore.isIgnored(userBinding.id);
return object;
});
const channel2 = (require(566) /* metro dependency 566: flux */).useStateFromStores([SelectedChannelStore,
ChannelStore], function() {
return ChannelStore.getChannel(SelectedChannelStore.getChannelId());
});
const env0_3 = channel2;
const isIarUserReportingEnabled2 = (require(8782) /* metro dependency 8782: SafetyExperienceIarUserReportingExperiment */).isIarUserReportingEnabled('User Profile Options - Mobile');
const value4 = (require(8514) /* metro dependency 8514: UserProfileAnalyticsContext */).useUserProfileAnalyticsContext();
const context = value4.context;
const env0_5 = value4.trackUserProfileAction;
let defaultImport = importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */;
const USER_PROFILE_OVERFLOW_MENU = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).USER_PROFILE_OVERFLOW_MENU;
const value5 = defaultImport(USER_PROFILE_OVERFLOW_MENU);
const analyticsLocations = value5.analyticsLocations;
const env0_7 = value5.newestAnalyticsLocation;
const env0_8 = UserStore.getCurrentUser();
const env0_9 = env0_3.useCallback(_fun68647, [user.id, channel?.id, context, analyticsLocations]);
items3 = [];
const items2 = [];
const env0_10 = user.id;
const env0_11 = channel?.getGuildId();
const BLOCKED = RelationshipTypes.BLOCKED;
const value8 = relationshipType === BLOCKED;
if (isIgnored) {
function BotUserProfileOverflowMenu({application, user, channel}) { // fn#68644, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:447, offset: 0x01c57706, size: 1598 bytes, params: 2, frame: 29
var push;
var object;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var object2;
var object3;
var object4;
var moduleValue5;
var object5;
var object6;
var moduleValue6;
var object7;
var object8;
var object9;
var env0_12;
var env0_13;
const {relationshipType,
isIgnored} = (require(566) /* metro dependency 566: flux */).useStateFromStoresObject([RelationshipStore],
function() {
var object = {};
var relationshipStoreBinding = RelationshipStore;
var userBinding = user;
object.relationshipType = relationshipStoreBinding.getRelationshipType(userBinding.id);
object.isIgnored = relationshipStoreBinding.isIgnored(userBinding.id);
return object;
});
const channel2 = (require(566) /* metro dependency 566: flux */).useStateFromStores([SelectedChannelStore,
ChannelStore], function() {
return ChannelStore.getChannel(SelectedChannelStore.getChannelId());
});
const channel22 = channel2;
const isIarUserReportingEnabled2 = (SafetyExperienceIarUserReportingExperimentModule).isIarUserReportingEnabled('User Profile Options - Mobile');
const value4 = (UserProfileAnalyticsContextModule).useUserProfileAnalyticsContext();
const context = value4.context;
const env0_5 = value4.trackUserProfileAction;
let defaultImport = UseAnalyticsLocations;
const USER_PROFILE_OVERFLOW_MENU = (AnalyticsLocation).USER_PROFILE_OVERFLOW_MENU;
const value5 = defaultImport(USER_PROFILE_OVERFLOW_MENU);
const analyticsLocations = value5.analyticsLocations;
const env0_7 = value5.newestAnalyticsLocation;
const env0_8 = UserStore.getCurrentUser();
const env0_9 = channel22.useCallback(_fun68647, [user.id, channel?.id, context, analyticsLocations]);
items3 = [];
const items2 = [];
const env0_10 = user.id;
const env0_11 = channel?.getGuildId();
const BLOCKED = RelationshipTypes.BLOCKED;
const value8 = relationshipType === BLOCKED;
if (isIgnored) {
if (value8) {
if (!value8) {
push = items2.push;
object2 = {};
object2.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.ytCpKs);
object2.action = action_68649;
Reflect.apply(push, items2, [object2]);
}
} else {
push = items2.push;
object = {};
object.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['8wXU9B']);
object.action = action;
Reflect.apply(push, items2, [object]);
}
} else if (!value8) {
push = items2.push;
object2 = {};
object2.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.ytCpKs);
object2.action = action_68649;
Reflect.apply(push, items2, [object2]);
}
if (value8) {
if (!value8) {
push = items2.push;
object12 = {};
object12.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.ytCpKs);
object12.action = action_68649;
Reflect.apply(push, items2, [object12]);
}
} else {
push = items2.push;
object11 = {};
object11.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['8wXU9B']);
object11.action = action_68648;
Reflect.apply(push, items2, [object11]);
object3 = {};
object3.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.XyHpKH);
object3.action = action_68651;
Reflect.apply(push, items2, [object3]);
}
} else if (!value8) {
push = items2.push;
object12 = {};
object12.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.ytCpKs);
object12.action = action_68649;
Reflect.apply(push, items2, [object12]);
}
if (value8) {
push = items2.push;
object13 = {};
object13.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.XyHpKH);
object13.action = action_68651;
Reflect.apply(push, items2, [object13]);
}
if (!value8) {
push = items2.push;
object14 = {};
object14.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.l4Emac);
object14.variant = 'destructive';
object14.action = action_68652;
Reflect.apply(push, items2, [object14]);
if (isIarUserReportingEnabled2) {
if (!value8) {
push = items2.push;
object16 = {};
object16.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.jhJzez);
object16.variant = 'destructive';
object16.action = action_68654;
Reflect.apply(push, items2, [object16]);
} else {
moduleValue5 = require(477) /* metro dependency 477: PlatformUtils */;
if (moduleValue5.isAndroid()) {
object4 = {};
object4.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.l4Emac);
object4.variant = 'destructive';
object4.action = action_68652;
Reflect.apply(push, items2, [object4]);
if (isIarUserReportingEnabled2) {
push = items2.push;
object15 = {};
object15.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.TbHyMG);
object15.variant = 'destructive';
object15.action = function() {
trackUserProfileAction({action: 'REPORT', analyticsLocations: analyticsLocations});
require(dependencyMap[25]).alertUserReported();
var defaultImport = importDefault(dependencyMap[26]);
var TNS_USER_REPORT_SUBMITTED = AnalyticEvents.TNS_USER_REPORT_SUBMITTED;
defaultImport.track(TNS_USER_REPORT_SUBMITTED, {reported_user_id: id});
};
Reflect.apply(push, items2, [object15]);
object6 = {};
object6.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.jhJzez);
object6.variant = 'destructive';
object6.action = action_68654;
Reflect.apply(push, items2, [object6]);
} else {
moduleValue5 = require(477) /* metro dependency 477: PlatformUtils */;
if (moduleValue5.isAndroid()) {
push = items2.push;
object5 = {};
object5.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.TbHyMG);
object5.variant = 'destructive';
object5.action = function() {
trackUserProfileAction({action: 'REPORT', analyticsLocations: analyticsLocations});
require(dependencyMap[25]).alertUserReported();
var defaultImport = importDefault(dependencyMap[26]);
var TNS_USER_REPORT_SUBMITTED = AnalyticEvents.TNS_USER_REPORT_SUBMITTED;
defaultImport.track(TNS_USER_REPORT_SUBMITTED, {reported_user_id: id});
};
Reflect.apply(push, items2, [object5]);
}
}
}
}
push = items3.push;
const object20 = {};
object20.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.y5MwJy);
object20.action = action_68656;
Reflect.apply(push, items3, [object20]);
if (application != null) {
moduleValue6 = require(7504) /* metro dependency 7504: ApplicationFlagUtils */;
env0_12 = moduleValue6.hasApplicationFlag(application, ApplicationFlags.EMBEDDED);
env0_13 = (require(8046) /* metro dependency 8046: AppLauncherUtils */).getInstallAppPropsFromProfileApplication(application);
push = items3.push;
object17 = {};
object17.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.WqhZss);
object17.action = action_68657;
Reflect.apply(push, items3, [object17]);
}
const DeveloperMode = (require(3829) /* metro dependency 3829: UserSettings */).DeveloperMode;
const getSetting = DeveloperMode.getSetting;
if (Reflect.apply(getSetting, DeveloperMode, [])) {
push = items3.push;
object18 = {};
object18.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['/AXYnE']);
object18.action = action_68658;
Reflect.apply(push, items3, [object18]);
}
if (channel != null && channel2 != null && ChannelTypesSets.TEXTUAL.has(channel2.type)) {
push = items3.push;
object19 = {};
object19.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.PHjkRE);
object19.action = action_68659;
Reflect.apply(push, items3, [object19]);
}
if (items3.length !== 0) {
const AnalyticsLocationProvider = (require(6771) /* metro dependency 6771: useAnalyticsLocations */).AnalyticsLocationProvider;
return (
<AnalyticsLocationProvider value={analyticsLocations}>
{((ContextMenu) => <ContextMenu items={[items3,
items2]}>{children_68660}</ContextMenu>)((require(8811) /* metro dependency 8811: ContextMenuNative */).ContextMenu)}
</AnalyticsLocationProvider>
);
} else if (items2.length === 0) {
return null;
} else {
const AnalyticsLocationProvider2 = (require(6771) /* metro dependency 6771: useAnalyticsLocations */).AnalyticsLocationProvider;
return (
<AnalyticsLocationProvider2 value={analyticsLocations}>
{((ContextMenu) => <ContextMenu items={[items3,
items2]}>{children_68660}</ContextMenu>)((require(8811) /* metro dependency 8811: ContextMenuNative */).ContextMenu)}
</AnalyticsLocationProvider2>
);
const object10 = {};
object10.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.y5MwJy);
object10.action = action_68656;
Reflect.apply(push, items3, [object10]);
if (application != null) {
moduleValue6 = require(7504) /* metro dependency 7504: ApplicationFlagUtils */;
env0_12 = moduleValue6.hasApplicationFlag(application, ApplicationFlags.EMBEDDED);
env0_13 = (require(8046) /* metro dependency 8046: AppLauncherUtils */).getInstallAppPropsFromProfileApplication(application);
push = items3.push;
object7 = {};
object7.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.WqhZss);
object7.action = action_68657;
Reflect.apply(push, items3, [object7]);
}
const DeveloperMode = (UserSettingsModule).DeveloperMode;
const getSetting = DeveloperMode.getSetting;
if (Reflect.apply(getSetting, DeveloperMode, [])) {
push = items3.push;
object8 = {};
object8.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['/AXYnE']);
object8.action = action_68658;
Reflect.apply(push, items3, [object8]);
}
if (channel != null && channel2 != null && ChannelTypesSets.TEXTUAL.has(channel2.type)) {
push = items3.push;
object9 = {};
object9.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.PHjkRE);
object9.action = action_68659;
Reflect.apply(push, items3, [object9]);
}
if (items3.length !== 0) {
const AnalyticsLocationProvider = (require(6771) /* metro dependency 6771: useAnalyticsLocations */).AnalyticsLocationProvider;
return (
<AnalyticsLocationProvider value={analyticsLocations}>
{((ContextMenu) => <ContextMenu items={[items3,
items2]}>{children_68660}</ContextMenu>)((require(8811) /* metro dependency 8811: ContextMenuNative */).ContextMenu)}
</AnalyticsLocationProvider>
);
} else if (items2.length === 0) {
return null;
} else {
const AnalyticsLocationProvider2 = (require(6771) /* metro dependency 6771: useAnalyticsLocations */).AnalyticsLocationProvider;
return (
<AnalyticsLocationProvider2 value={analyticsLocations}>
{((ContextMenu) => <ContextMenu items={[items3,
items2]}>{children_68660}</ContextMenu>)((require(8811) /* metro dependency 8811: ContextMenuNative */).ContextMenu)}
</AnalyticsLocationProvider2>
);
}
function _fun68647(a0) { // fn#68647, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:1041, offset: 0x01c57da1, size: 135 bytes, params: 2, frame: 15
let value = environment.__proto__;
value = undefined;
const defaultImport = ShowUserProfileActionSheet;
const object = {};
copyDataProperties(object, context, undefined);
object['showGuildProfile'] = a0;
object['userId'] = user.id;
object['channelId'] = channel == null ? value : channel.id;
object['sourceAnalyticsLocations'] = analyticsLocations;
object['ignoreBlockedSpeedBump'] = true;
defaultImport(object);
return value;
}
function BotUserProfileOverflowMenuAction() { // fn#68648, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:1348, owner: BotUserProfileOverflowMenu.action, offset: 0x01c57e28, size: 113 bytes, params: 1, frame: 18
const trackUserProfileActionBinding = trackUserProfileAction;
const value2 = undefined;
trackUserProfileActionBinding({action: 'UNIGNORE', analyticsLocations: analyticsLocations});
const defaultImport = RelationshipActionCreators;
defaultImport.unignoreUser(id, newestAnalyticsLocation, channel == null ? value2 : channel.id);
env0_9();
return value2;
}
function BotUserProfileOverflowMenuAction_68649() { // fn#68649, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:1515, owner: BotUserProfileOverflowMenu.action, offset: 0x01c57e99, size: 172 bytes, params: 1, frame: 21
trackUserProfileAction({action: 'IGNORE', analyticsLocations: analyticsLocations});
const defaultImport = importDefault(dependencyMap[16]);
const openLazy = defaultImport.openLazy;
const value3 = require(dependencyMap[18])(dependencyMap[17], dependencyMap.paths);
object = {};
object.userId = id;
object.onSuccess = onSuccess_68650;
const ImpressionNames = require(dependencyMap[19]).ImpressionNames;
const IGNORE_USER_CONFIRMATION = ImpressionNames.IGNORE_USER_CONFIRMATION;
object.impressionName = IGNORE_USER_CONFIRMATION;
Reflect.apply(openLazy, defaultImport, [value3, IGNORE_CONFIRMATION_ACTION_SHEET_KEY, object, 'stack']);
function actionOnSuccess() { // fn#68650, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:1626, owner: BotUserProfileOverflowMenu.action.onSuccess, offset: 0x01c57f45, size: 15 bytes, params: 1, frame: 9
env1_9();
}
}
function BotUserProfileOverflowMenuAction_68651() { // fn#68651, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:1778, owner: BotUserProfileOverflowMenu.action, offset: 0x01c57f54, size: 144 bytes, params: 1, frame: 18
const trackUserProfileActionBinding = trackUserProfileAction;
const value2 = undefined;
trackUserProfileActionBinding({action: 'UNBLOCK', analyticsLocations: analyticsLocations});
const defaultImport = RelationshipActionCreators;
defaultImport.unblockUser(id, {location: newestAnalyticsLocation});
const defaultImport2 = SafetyToastsActionCreatorsNative;
defaultImport2.showUnblockSuccessToast(id, channel == null ? value2 : channel.id);
env0_9();
return value2;
}
function BotUserProfileOverflowMenuAction_68652() { // fn#68652, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:2013, owner: BotUserProfileOverflowMenu.action, offset: 0x01c57fe4, size: 211 bytes, params: 1, frame: 21
const trackUserProfileActionBinding = trackUserProfileAction;
const value2 = undefined;
trackUserProfileActionBinding({action: 'BLOCK', analyticsLocations: analyticsLocations});
const defaultImport = importDefault(dependencyMap[16]);
const openLazy = defaultImport.openLazy;
const value4 = require(dependencyMap[18])(dependencyMap[21], dependencyMap.paths);
object = {};
object.userId = id;
object.channelId = channel == null ? value2 : channel.id;
object.onSuccess = onSuccess_68653;
const ImpressionNames = require(dependencyMap[19]).ImpressionNames;
const BLOCK_USER_CONFIRMATION = ImpressionNames.BLOCK_USER_CONFIRMATION;
object.impressionName = BLOCK_USER_CONFIRMATION;
Reflect.apply(openLazy, defaultImport, [value4, BLOCK_CONFIRMATION_ACTION_SHEET_KEY, object, 'stack']);
return value2;
function actionOnSuccess_68653() { // fn#68653, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:2153, owner: BotUserProfileOverflowMenu.action.onSuccess, offset: 0x01c57f45, size: 15 bytes, params: 1, frame: 9
env1_9();
}
}
function BotUserProfileOverflowMenuAction_68654() { // fn#68654, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:2325, owner: BotUserProfileOverflowMenu.action, offset: 0x01c580b7, size: 223 bytes, params: 1, frame: 21
const trackUserProfileActionBinding = trackUserProfileAction;
const value2 = undefined;
trackUserProfileActionBinding({action: 'REPORT', analyticsLocations: analyticsLocations});
const r1 = env0_11 === '@me' || env0_11 === null ? value2 : env0_11;
const defaultImport = importDefault(dependencyMap[16]);
const openLazy = defaultImport.openLazy;
const value4 = require(dependencyMap[18])(dependencyMap[22], dependencyMap.paths);
const BOT_REPORT_CHOOSER_KEY = require(dependencyMap[23]).BOT_REPORT_CHOOSER_KEY;
Reflect.apply(openLazy, defaultImport, [value4, BOT_REPORT_CHOOSER_KEY, {user: user,
entrypoint: 'UserProfileOverflowMenu', contextualGuildId: r1,
contextualChannelId: channel == null ? value2 : channel.id}, 'replaceAll']);
return value2;
}
function BotUserProfileOverflowMenuAction_68656() { // fn#68656, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:2915, owner: BotUserProfileOverflowMenu.action, offset: 0x01c5820a, size: 147 bytes, params: 1, frame: 19
trackUserProfileAction({action: 'COPY_USERNAME', analyticsLocations: analyticsLocations});
const copy = ClipboardUtilsNativeModule.copy;
const defaultImport = UserUtils;
const getUserTag = defaultImport.getUserTag;
Reflect.apply(copy, ClipboardUtilsNativeModule, [Reflect.apply(getUserTag, defaultImport, [user,
{'decoration': 'never', 'identifiable': 'always'}])]);
(ToastUtilsModule).presentUsernameCopied();
env0_9();
}
function BotUserProfileOverflowMenuAction_68657() { // fn#68657, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:3263, owner: BotUserProfileOverflowMenu.action, offset: 0x01c5829d, size: 214 bytes, params: 1, frame: 18
var id;
var r5;
var getApplicationInstallURL;
var getActivityLaunchURL;
const trackUserProfileActionBinding = trackUserProfileAction;
let object = {action: 'COPY_APP_LINK'};
object.analyticsLocations = analyticsLocations;
const value2 = undefined;
trackUserProfileActionBinding(object);
const binding = env0_12;
if (binding) {
getActivityLaunchURL = GetApplicationInstallURLModule.getActivityLaunchURL;
object = {};
id = application.id;
object.applicationId = id;
id = env0_8 == null ? value2 : env0_8.id;
object.referrerId = id;
r5 = Reflect.apply(getActivityLaunchURL, GetApplicationInstallURLModule, [object]);
} else {
getApplicationInstallURL = GetApplicationInstallURLModule.getApplicationInstallURL;
object = {};
object.id = application.id;
copyDataProperties(object, env0_13, undefined);
r5 = Reflect.apply(getApplicationInstallURL, GetApplicationInstallURLModule, [object]);
}
(ClipboardUtilsNativeModule).copy(r5);
(ToastUtilsModule).presentLinkCopied();
return value2;
}
function BotUserProfileOverflowMenuAction_68658() { // fn#68658, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:3615, owner: BotUserProfileOverflowMenu.action, offset: 0x01c58373, size: 105 bytes, params: 1, frame: 15
trackUserProfileAction({action: 'COPY_USER_ID', analyticsLocations: analyticsLocations});
ClipboardUtilsNativeModule.copy(id);
(ToastUtilsModule).presentIdCopied();
env0_9();
}
function BotUserProfileOverflowMenuAction_68659() { // fn#68659, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:3821, owner: BotUserProfileOverflowMenu.action, offset: 0x01c583dc, size: 72 bytes, params: 1, frame: 13
const value = environment.__proto__;
return (OpenUserContextMenuCommands)({userId: id,
selectedChannel: channel, showUserProfile: env0_9, analyticsLocations: analyticsLocations});
}
function BotUserProfileOverflowMenuChildren(a0) { // fn#68660, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:4037, owner: BotUserProfileOverflowMenu.children, offset: 0x01c58424, size: 241 bytes, params: 2, frame: 21
const ref = a0.ref;
const value = Object.create(null);
value.ref = 0;
const value2 = copyDataProperties({}, a0, value, undefined);
const IconButton = (IconButtonNativeModule).IconButton;
const iconButtonProps = {ref: ref, ...value2};
iconButtonProps['size'] = 'sm';
iconButtonProps['variant'] = 'secondary-overlay';
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
iconButtonProps['accessibilityLabel'] = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['+zofAD']);
const MoreHorizontalIcon = (MoreHorizontalIconModule).MoreHorizontalIcon;
const WHITE = (Native).colors.WHITE;
iconButtonProps['icon'] = <MoreHorizontalIcon size="sm" color={WHITE} />;
return <IconButton {...iconButtonProps} />;
}
}
}
function _fun68647(a0) { // fn#68647, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:1041, offset: 0x01c57da1, size: 135 bytes, params: 2, frame: 15
let value = environment.__proto__;
value = undefined;
const defaultImport = importDefault(8743) /* metro dependency 8743: showUserProfileActionSheet */;
const object2 = {};
copyDataProperties(object2, context, undefined);
object2['showGuildProfile'] = a0;
object2['userId'] = user.id;
object2['channelId'] = channel == null ? value : channel.id;
object2['sourceAnalyticsLocations'] = analyticsLocations;
object2['ignoreBlockedSpeedBump'] = true;
defaultImport(object2);
return value;
}
function BotUserProfileOverflowMenuAction() { // fn#68648, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:1348, owner: BotUserProfileOverflowMenu.action, offset: 0x01c57e28, size: 113 bytes, params: 1, frame: 18
const trackUserProfileActionBinding = trackUserProfileAction;
const value2 = undefined;
trackUserProfileActionBinding({action: 'UNIGNORE', analyticsLocations: analyticsLocations});
const defaultImport = importDefault(8783) /* metro dependency 8783: RelationshipActionCreators */;
defaultImport.unignoreUser(id, newestAnalyticsLocation, channel == null ? value2 : channel.id);
env0_9();
return value2;
}
function BotUserProfileOverflowMenuAction_68649() { // fn#68649, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:1515, owner: BotUserProfileOverflowMenu.action, offset: 0x01c57e99, size: 172 bytes, params: 1, frame: 21
var object2;
trackUserProfileAction({action: 'IGNORE', analyticsLocations: analyticsLocations});
const defaultImport = importDefault(dependencyMap[16]);
const openLazy = defaultImport.openLazy;
const value3 = require(dependencyMap[18])(dependencyMap[17], dependencyMap.paths);
object2 = {};
object2.userId = id;
object2.onSuccess = onSuccess_68650;
const ImpressionNames = require(dependencyMap[19]).ImpressionNames;
const IGNORE_USER_CONFIRMATION = ImpressionNames.IGNORE_USER_CONFIRMATION;
object2.impressionName = IGNORE_USER_CONFIRMATION;
Reflect.apply(openLazy, defaultImport, [value3, IGNORE_CONFIRMATION_ACTION_SHEET_KEY, object2, 'stack']);
}
function BotUserProfileOverflowMenuAction_68651() { // fn#68651, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:1778, owner: BotUserProfileOverflowMenu.action, offset: 0x01c57f54, size: 144 bytes, params: 1, frame: 18
const trackUserProfileActionBinding = trackUserProfileAction;
const value2 = undefined;
trackUserProfileActionBinding({action: 'UNBLOCK', analyticsLocations: analyticsLocations});
const defaultImport = importDefault(8783) /* metro dependency 8783: RelationshipActionCreators */;
defaultImport.unblockUser(id, {location: newestAnalyticsLocation});
const defaultImport2 = importDefault(6264) /* metro dependency 6264: SafetyToastsActionCreatorsNative */;
defaultImport2.showUnblockSuccessToast(id, channel == null ? value2 : channel.id);
env0_9();
return value2;
}
function BotUserProfileOverflowMenuAction_68652() { // fn#68652, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:2013, owner: BotUserProfileOverflowMenu.action, offset: 0x01c57fe4, size: 211 bytes, params: 1, frame: 21
var object2;
const trackUserProfileActionBinding = trackUserProfileAction;
const value2 = undefined;
trackUserProfileActionBinding({action: 'BLOCK', analyticsLocations: analyticsLocations});
const defaultImport = importDefault(dependencyMap[16]);
const openLazy = defaultImport.openLazy;
const value4 = require(dependencyMap[18])(dependencyMap[21], dependencyMap.paths);
object2 = {};
object2.userId = id;
object2.channelId = channel == null ? value2 : channel.id;
object2.onSuccess = onSuccess_68653;
const ImpressionNames = require(dependencyMap[19]).ImpressionNames;
const BLOCK_USER_CONFIRMATION = ImpressionNames.BLOCK_USER_CONFIRMATION;
object2.impressionName = BLOCK_USER_CONFIRMATION;
Reflect.apply(openLazy, defaultImport, [value4, BLOCK_CONFIRMATION_ACTION_SHEET_KEY, object2, 'stack']);
return value2;
}
function BotUserProfileOverflowMenuAction_68654() { // fn#68654, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:2325, owner: BotUserProfileOverflowMenu.action, offset: 0x01c580b7, size: 223 bytes, params: 1, frame: 21
const trackUserProfileActionBinding = trackUserProfileAction;
const value2 = undefined;
trackUserProfileActionBinding({action: 'REPORT', analyticsLocations: analyticsLocations});
const r1 = env0_11 === '@me' || env0_11 === null ? value2 : env0_11;
const defaultImport = importDefault(dependencyMap[16]);
const openLazy = defaultImport.openLazy;
const value4 = require(dependencyMap[18])(dependencyMap[22], dependencyMap.paths);
const BOT_REPORT_CHOOSER_KEY = require(dependencyMap[23]).BOT_REPORT_CHOOSER_KEY;
Reflect.apply(openLazy, defaultImport, [value4, BOT_REPORT_CHOOSER_KEY, {user: user,
entrypoint: 'UserProfileOverflowMenu', contextualGuildId: r1,
contextualChannelId: channel == null ? value2 : channel.id}, 'replaceAll']);
return value2;
}
function BotUserProfileOverflowMenuAction_68656() { // fn#68656, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:2915, owner: BotUserProfileOverflowMenu.action, offset: 0x01c5820a, size: 147 bytes, params: 1, frame: 19
trackUserProfileAction({action: 'COPY_USERNAME', analyticsLocations: analyticsLocations});
const clipboardUtilsNativeModule = require(6797) /* metro dependency 6797: ClipboardUtilsNative */;
const copy = clipboardUtilsNativeModule.copy;
const defaultImport = importDefault(3995) /* metro dependency 3995: UserUtils */;
const getUserTag = defaultImport.getUserTag;
Reflect.apply(copy, clipboardUtilsNativeModule, [Reflect.apply(getUserTag, defaultImport, [user,
{'decoration': 'never', 'identifiable': 'always'}])]);
(require(3856) /* metro dependency 3856: ToastUtils */).presentUsernameCopied();
env0_9();
}
function BotUserProfileOverflowMenuAction_68657() { // fn#68657, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:3263, owner: BotUserProfileOverflowMenu.action, offset: 0x01c5829d, size: 214 bytes, params: 1, frame: 18
var id;
var r5;
var getApplicationInstallURL;
var getActivityLaunchURL;
const trackUserProfileActionBinding = trackUserProfileAction;
let object2 = {action: 'COPY_APP_LINK'};
object2.analyticsLocations = analyticsLocations;
const value2 = undefined;
trackUserProfileActionBinding(object2);
const binding = env0_12;
const getApplicationInstallURLModule = require(8809) /* metro dependency 8809: getApplicationInstallURL */;
if (binding) {
getActivityLaunchURL = getApplicationInstallURLModule.getActivityLaunchURL;
object2 = {};
id = application.id;
object2.applicationId = id;
id = env0_8 == null ? value2 : env0_8.id;
object2.referrerId = id;
r5 = Reflect.apply(getActivityLaunchURL, getApplicationInstallURLModule, [object2]);
} else {
getApplicationInstallURL = getApplicationInstallURLModule.getApplicationInstallURL;
object2 = {};
object2.id = application.id;
copyDataProperties(object2, env0_13, undefined);
r5 = Reflect.apply(getApplicationInstallURL, getApplicationInstallURLModule, [object2]);
}
(require(6797) /* metro dependency 6797: ClipboardUtilsNative */).copy(r5);
(require(3856) /* metro dependency 3856: ToastUtils */).presentLinkCopied();
return value2;
}
function BotUserProfileOverflowMenuAction_68658() { // fn#68658, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:3615, owner: BotUserProfileOverflowMenu.action, offset: 0x01c58373, size: 105 bytes, params: 1, frame: 15
trackUserProfileAction({action: 'COPY_USER_ID', analyticsLocations: analyticsLocations});
const clipboardUtilsNativeModule = require(6797) /* metro dependency 6797: ClipboardUtilsNative */;
clipboardUtilsNativeModule.copy(id);
(require(3856) /* metro dependency 3856: ToastUtils */).presentIdCopied();
env0_9();
}
function BotUserProfileOverflowMenuAction_68659() { // fn#68659, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:3821, owner: BotUserProfileOverflowMenu.action, offset: 0x01c583dc, size: 72 bytes, params: 1, frame: 13
const value = environment.__proto__;
return (importDefault(8810) /* metro dependency 8810: openUserContextMenuCommands */)({userId: id,
selectedChannel: channel, showUserProfile: env0_9, analyticsLocations: analyticsLocations});
}
function BotUserProfileOverflowMenuChildren(a0) { // fn#68660, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8965:4037, owner: BotUserProfileOverflowMenu.children, offset: 0x01c58424, size: 241 bytes, params: 2, frame: 21
const ref = a0.ref;
const value = Object.create(null);
value.ref = 0;
const value2 = copyDataProperties({}, a0, value, undefined);
const IconButton = (require(8341) /* metro dependency 8341: IconButtonNative */).IconButton;
const iconButtonProps = {ref: ref, ...value2};
iconButtonProps['size'] = 'sm';
iconButtonProps['variant'] = 'secondary-overlay';
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
iconButtonProps['accessibilityLabel'] = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['+zofAD']);
const MoreHorizontalIcon = (require(8638) /* metro dependency 8638: MoreHorizontalIcon */).MoreHorizontalIcon;
const WHITE = (importDefault(697) /* metro dependency 697: native */).colors.WHITE;
iconButtonProps['icon'] = <MoreHorizontalIcon size="sm" color={WHITE} />;
return <IconButton {...iconButtonProps} />;
}
global.__d(_fun68643, 8780, [31, 1379, 3793, 1934, 1878, 661, 8781, 33, 566, 8782, 8514, 6771, 6789, 8743, 1244,
8783, 4080, 8793, 1962, 480, 6264, 8794, 8795, 8795, 477, 8796, 683, 6797, 3995, 3856, 7504, 8046, 8809, 3829,
8810, 8811, 8341, 8638, 697,
2]) /* metro module 8780, dependencies: [31, 1379, 3793, 1934, 1878, 661, 8781, 33, 566, 8782, 8514, 6771, 6789, 8743, 1244, 8783, 4080, 8793, 1962, 480, 6264, 8794, 8795, 8795, 477, 8796, 683, 6797, 3995, 3856, 7504, 8046, 8809, 3829, 8810, 8811, 8341, 8638, 697, 2] */;
@@ -1,102 +1,146 @@
/* Metro module 13202; source: modules/user_profile/native/ChangeAvatarActionSheet.tsx; dependencies: [31, 27, 1878, 661, 33, 4501, 697, 566, 3802, 6805, 6758, 1244, 7954, 6231, 6238, 7972, 13186, 2] */
import UserStore from '../../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import PremiumUtils from '../../../utils/PremiumUtils.tsx'; /* Metro dependency 3802 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as TableRowGroupNativeModule from '../../../design/components/TableRow/native/TableRowGroup.native.tsx'; /* Metro dependency 6231 */
import * as TableRowNativeModule from '../../../design/components/TableRow/native/TableRow.native.tsx'; /* Metro dependency 6238 */
import * as BottomSheetTitleHeaderNativeModule from '../../../design/components/Sheet/native/BottomSheetTitleHeader.native.tsx'; /* Metro dependency 6758 */
import * as ActionSheetNativeModule from '../../../design/components/Sheet/native/ActionSheet.native.tsx'; /* Metro dependency 6805 */
function _fun100749(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100749, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13392:6, offset: 0x021f664a, size: 485 bytes, params: 8, frame: 23
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 userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const env0_5 = (require(661) /* metro dependency 661: Constants */).AnalyticsObjects;
let value = require(33) /* metro dependency 33 */;
ReactModule;
let value = JsxRuntimeModule;
const env0_6 = value.jsx;
const env0_7 = value.jsxs;
const env0_8 = value.Fragment;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
object = {};
let PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
object2.nitroWheel = {marginLeft: PX_8};
object.nitroWheel = {marginLeft: PX_8};
const TEXT_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_DEFAULT;
object2.sublabel = {color: TEXT_DEFAULT};
object.sublabel = {color: TEXT_DEFAULT};
const INTERACTIVE_TEXT_ACTIVE = (importDefault(697) /* metro dependency 697: native */).colors.INTERACTIVE_TEXT_ACTIVE;
object2.label = {'marginBottom': 4, 'color': null, 'alignItems': 'center', 'flexDirection': 'row',
object.label = {'marginBottom': 4, 'color': null, 'alignItems': 'center', 'flexDirection': 'row',
color: INTERACTIVE_TEXT_ACTIVE};
const TEXT_FEEDBACK_CRITICAL = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_FEEDBACK_CRITICAL;
object2.remove = {color: TEXT_FEEDBACK_CRITICAL};
const object3 = {};
object.remove = {color: TEXT_FEEDBACK_CRITICAL};
const object4 = {};
const PX_12 = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object3.marginTop = PX_12;
object4.marginTop = PX_12;
PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
object3.marginBottom = PX_8;
object2.upsellButton = object3;
object2.upsellTitleContainer = {'flexDirection': 'row', 'alignItems': 'flex-end'};
object2.titleWrapper = {flex: 0};
object2.titleContainer = {justifyContent: 'flex-start'};
const env0_9 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/ChangeAvatarActionSheet.tsx');
object4.marginBottom = PX_8;
object.upsellButton = object4;
object.upsellTitleContainer = {'flexDirection': 'row', 'alignItems': 'flex-end'};
object.titleWrapper = {flex: 0};
object.titleContainer = {justifyContent: 'flex-start'};
const env0_9 = Reflect.apply(createStyles, value, [object]);
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/ChangeAvatarActionSheet.tsx');
exports.default = ChangeAvatarActionSheet;
function ChangeAvatarActionSheet({handleUploadAvatarSelect, handleRemoveAvatarSelect, handleUploadGIFAvatarSelect, handleEditAvatarDecorationSelect, showAnimatedAvatarUpsell, showRemoveAvatar}) { // fn#100750, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13392:686, offset: 0x021f682f, size: 1395 bytes, params: 2, frame: 42
var r14;
var r9;
var object;
const FormLabel = (require(7972) /* metro dependency 7972: native */).FormLabel;
var jsxRuntimeEnv0_8Binding;
var FormSubLabel;
var items4;
var UserProfileUpsellButton;
var object2;
showAnimatedAvatarUpsell = !(showAnimatedAvatarUpsell === undefined) && showAnimatedAvatarUpsell;
showRemoveAvatar = !(showRemoveAvatar === undefined) && showRemoveAvatar;
const styles = useStyles();
const currentUser = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], function() {
return UserStore.getCurrentUser();
});
const isPremium2 = (PremiumUtils).isPremium(currentUser);
const ActionSheet = (ActionSheetNativeModule).ActionSheet;
const BottomSheetTitleHeader = (BottomSheetTitleHeaderNativeModule).BottomSheetTitleHeader;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const bottomSheetTitleHeader = (
<BottomSheetTitleHeader
title={Reflect.apply(string, intl, [t.lqaIxI])}
trailing={isPremium2 && ((NitroWheelIcon) => <NitroWheelIcon />)((require(7954) /* metro dependency 7954: NitroWheelIcon */).NitroWheelIcon)}
titleWrapperStyle={styles.titleWrapper}
titleContainerStyle={styles.titleContainer}
/>
);
const TableRowGroup = (TableRowGroupNativeModule).TableRowGroup;
const TableRow = (TableRowNativeModule).TableRow;
const tableRow = (
<TableRow
label={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['MsUY/S'])}
subLabel={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.r5hKOy)}
onPress={handleUploadAvatarSelect}
/>
);
const r15 = handleUploadGIFAvatarSelect != null && !showAnimatedAvatarUpsell && <TableRow label={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['xsC+/y'])} onPress={handleUploadGIFAvatarSelect} />;
if (showAnimatedAvatarUpsell) {
var tableRowProps = {label: <View style={styles.upsellTitleContainer}><FormLabel text={intl.string(t.xZ0Wot)} />{((NitroWheelIcon) => <NitroWheelIcon style={styles.nitroWheel} size="sm" />)((require(7954) /* metro dependency 7954: NitroWheelIcon */).NitroWheelIcon)}</View>};
jsxRuntimeEnv0_8Binding = jsxRuntimeEnv0_8;
FormSubLabel = (require(7972) /* metro dependency 7972: native */).FormSubLabel;
items4 = [
<FormSubLabel
style={styles.sublabel}
numberOfLines={3}
text={intl.string(t.L3UPqR)}
/>,
];
var viewBindingProps2 = {style: styles.upsellButton};
UserProfileUpsellButton = importDefault(13186) /* metro dependency 13186: UserProfileUpsellButton */;
items4[1] = (
<View {...viewBindingProps2}>
<UserProfileUpsellButton analyticsObject={AnalyticsObjects.ANIMATED_AVATAR} label={intl.string(t.mr4K7D)} />
</View>
);
tableRowProps.subLabel = (
<>
{items4}
</>
);
r14 = <TableRow {...tableRowProps} />;
} else {
r14 = showAnimatedAvatarUpsell;
}
const r12 = handleEditAvatarDecorationSelect != null && <TableRow label={<View style={styles.upsellTitleContainer}><FormLabel text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.BVcYCx)} /></View>} onPress={handleEditAvatarDecorationSelect} />;
if (showRemoveAvatar) {
r9 = (
<TableRow
label={<FormLabel
style={[styles.label, styles.remove]}
text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.twB3fz)}
/>}
onPress={handleRemoveAvatarSelect}
/>
);
} else {
r9 = showRemoveAvatar;
}
return (
<ActionSheet>
{bottomSheetTitleHeader}
<TableRowGroup hasIcons={false}>
{tableRow}
{r15}
{r14}
{r12}
{r9}
</TableRowGroup>
</ActionSheet>
);
}
}
function ChangeAvatarActionSheet({handleUploadAvatarSelect, handleRemoveAvatarSelect, handleUploadGIFAvatarSelect, handleEditAvatarDecorationSelect, showAnimatedAvatarUpsell, showRemoveAvatar}) { // fn#100750, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13392:686, offset: 0x021f682f, size: 1395 bytes, params: 2, frame: 42
var r14;
var r9;
var object6;
const FormLabel = (require(7972) /* metro dependency 7972: native */).FormLabel;
var jsxRuntimeEnv0_8Binding;
var FormSubLabel;
var items4;
var UserProfileUpsellButton;
var object18;
showAnimatedAvatarUpsell = !(showAnimatedAvatarUpsell === undefined) && showAnimatedAvatarUpsell;
showRemoveAvatar = !(showRemoveAvatar === undefined) && showRemoveAvatar;
const styles = useStyles();
const currentUser = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], function() {
return UserStore.getCurrentUser();
});
const isPremium2 = (importDefault(3802) /* metro dependency 3802: PremiumUtils */).isPremium(currentUser);
const ActionSheet = (require(6805) /* metro dependency 6805: ActionSheetNative */).ActionSheet;
const BottomSheetTitleHeader = (require(6758) /* metro dependency 6758: BottomSheetTitleHeaderNative */).BottomSheetTitleHeader;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const bottomSheetTitleHeader = <BottomSheetTitleHeader title={Reflect.apply(string, intl,
[t.lqaIxI])} trailing={isPremium2 && ((NitroWheelIcon) => <NitroWheelIcon />)((require(7954) /* metro dependency 7954: NitroWheelIcon */).NitroWheelIcon)} titleWrapperStyle={styles.titleWrapper} titleContainerStyle={styles.titleContainer} />;
const TableRowGroup = (require(6231) /* metro dependency 6231: TableRowGroupNative */).TableRowGroup;
const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow;
const tableRow = <TableRow label={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['MsUY/S'])} subLabel={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.r5hKOy)} onPress={handleUploadAvatarSelect} />;
const r15 = handleUploadGIFAvatarSelect != null && !showAnimatedAvatarUpsell && <TableRow label={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['xsC+/y'])} onPress={handleUploadGIFAvatarSelect} />;
if (showAnimatedAvatarUpsell) {
var tableRowProps = {label: <View style={styles.upsellTitleContainer}><FormLabel text={intl.string(t.xZ0Wot)} />{((NitroWheelIcon) => <NitroWheelIcon style={styles.nitroWheel} size="sm" />)((require(7954) /* metro dependency 7954: NitroWheelIcon */).NitroWheelIcon)}</View>};
jsxRuntimeEnv0_8Binding = jsxRuntimeEnv0_8;
FormSubLabel = (require(7972) /* metro dependency 7972: native */).FormSubLabel;
items4 = [<FormSubLabel style={styles.sublabel} numberOfLines={3} text={intl.string(t.L3UPqR)} />];
var viewBindingProps2 = {style: styles.upsellButton};
UserProfileUpsellButton = importDefault(13186) /* metro dependency 13186: UserProfileUpsellButton */;
items4[1] = <View {...viewBindingProps2}><UserProfileUpsellButton analyticsObject={AnalyticsObjects.ANIMATED_AVATAR} label={intl.string(t.mr4K7D)} /></View>;
tableRowProps.subLabel = <>{items4}</>;
r14 = <TableRow {...tableRowProps} />;
} else {
r14 = showAnimatedAvatarUpsell;
}
const r12 = handleEditAvatarDecorationSelect != null && <TableRow label={<View style={styles.upsellTitleContainer}><FormLabel text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.BVcYCx)} /></View>} onPress={handleEditAvatarDecorationSelect} />;
if (showRemoveAvatar) {
r9 = <TableRow label={<FormLabel style={[styles.label,
styles.remove]} text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.twB3fz)} />} onPress={handleRemoveAvatarSelect} />;
} else {
r9 = showRemoveAvatar;
}
return (
<ActionSheet>
{bottomSheetTitleHeader}
<TableRowGroup hasIcons={false}>
{tableRow}
{r15}
{r14}
{r12}
{r9}
</TableRowGroup>
</ActionSheet>
);
}
global.__d(_fun100749, 13202, [31, 27, 1878, 661, 33, 4501, 697, 566, 3802, 6805, 6758, 1244, 7954, 6231, 6238,
7972, 13186,
2]) /* metro module 13202, dependencies: [31, 27, 1878, 661, 33, 4501, 697, 566, 3802, 6805, 6758, 1244, 7954, 6231, 6238, 7972, 13186, 2] */;
@@ -1,14 +1,31 @@
/* Metro module 13185; source: modules/user_profile/native/ChangeBannerActionSheet.tsx; dependencies: [5, 31, 27, 7624, 661, 33, 4501, 697, 6771, 3802, 4080, 4660, 6805, 6758, 1244, 7954, 6231, 6238, 7972, 13186, 566, 8403, 8490, 8421, 673, 8400, 13187, 4573, 1305, 13188, 13189, 2] */
import Module00005 from '../../../by-id/module-00005.js'; /* Metro dependency 5 */
import ActionSheetActionCreators from '../../action_sheet/native/ActionSheetActionCreators.tsx'; /* Metro dependency 4080 */
import UserProfileSettingsStore from '../UserProfileSettingsStore.tsx'; /* Metro dependency 7624 */
import UseDisplayProfile from '../hooks/useDisplayProfile.tsx'; /* Metro dependency 8490 */
import ColorBlock from '../../../components_native/common/color_picker/ColorBlock.tsx'; /* Metro dependency 13187 */
import ShowCustomColorPickerActionSheet from '../../color_picker/native/showCustomColorPickerActionSheet.tsx'; /* Metro dependency 13189 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as ColorUtilsModule from '../../../external/discord_common/js/shared/utils/ColorUtils.tsx'; /* Metro dependency 673 */
import * as NativeModule from '../../../design/void/native.tsx'; /* Metro dependency 1305 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
import * as TableRowGroupNativeModule from '../../../design/components/TableRow/native/TableRowGroup.native.tsx'; /* Metro dependency 6231 */
import * as TableRowNativeModule from '../../../design/components/TableRow/native/TableRow.native.tsx'; /* Metro dependency 6238 */
import * as BottomSheetTitleHeaderNativeModule from '../../../design/components/Sheet/native/BottomSheetTitleHeader.native.tsx'; /* Metro dependency 6758 */
import * as UseAnalyticsLocationsModule from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import * as ActionSheetNativeModule from '../../../design/components/Sheet/native/ActionSheet.native.tsx'; /* Metro dependency 6805 */
import * as NativeModule2 from '../../../design/void/Form/native/index.tsx'; /* Metro dependency 7972 */
import * as RecentAvatarUtilsModule from '../../recent_avatars/RecentAvatarUtils.tsx'; /* Metro dependency 8403 */
import * as VideoBackgroundModule from '../../calls/native/VideoBackground.tsx'; /* Metro dependency 8421 */
function _fun100641(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100641, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:6, offset: 0x021f1753, size: 608 bytes, params: 8, frame: 23
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(5) /* metro dependency 5 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
const env0_5 = (require(27) /* metro dependency 27 */).View;
const userProfileSettingsStore = importDefault(7624) /* metro dependency 7624: UserProfileSettingsStore */;
let value = require(661) /* metro dependency 661: Constants */;
let value = ConstantsModule;
const env0_7 = value.AnalyticsObjects;
const env0_8 = value.UPLOAD_BANNER_SIZE;
value = require(33) /* metro dependency 33 */;
@@ -17,167 +34,244 @@ function _fun100641(global, require, importDefault, importAll, module, exports,
const env0_11 = value.Fragment;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
object = {};
const INTERACTIVE_TEXT_ACTIVE = (importDefault(697) /* metro dependency 697: native */).colors.INTERACTIVE_TEXT_ACTIVE;
object2.label = {'color': null, 'alignItems': 'center', 'flexDirection': 'row', color: INTERACTIVE_TEXT_ACTIVE};
object.label = {'color': null, 'alignItems': 'center', 'flexDirection': 'row', color: INTERACTIVE_TEXT_ACTIVE};
const TEXT_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_DEFAULT;
object2.sublabel = {color: TEXT_DEFAULT};
object.sublabel = {color: TEXT_DEFAULT};
let PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
object2.nitroWheel = {marginLeft: PX_8};
const object3 = {'borderColor': null, 'borderWidth': 1, 'borderRadius': null, 'height': 24, 'minWidth': 24};
object.nitroWheel = {marginLeft: PX_8};
const object4 = {'borderColor': null, 'borderWidth': 1, 'borderRadius': null, 'height': 24, 'minWidth': 24};
const INTERACTIVE_TEXT_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.INTERACTIVE_TEXT_DEFAULT;
object3.borderColor = INTERACTIVE_TEXT_DEFAULT;
object3.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xs;
object2.bannerColor = object3;
object2.selectedColor = {'flexDirection': 'row', 'alignItems': 'center'};
object2.selectedColorHex = {textTransform: 'uppercase'};
object2.rowArrow = {'height': 13, 'width': 8, 'marginLeft': 10, 'marginTop': 2};
object4.borderColor = INTERACTIVE_TEXT_DEFAULT;
object4.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xs;
object.bannerColor = object4;
object.selectedColor = {'flexDirection': 'row', 'alignItems': 'center'};
object.selectedColorHex = {textTransform: 'uppercase'};
object.rowArrow = {'height': 13, 'width': 8, 'marginLeft': 10, 'marginTop': 2};
PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
object2.upsellButton = {marginTop: PX_8};
object.upsellButton = {marginTop: PX_8};
const TEXT_FEEDBACK_CRITICAL = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_FEEDBACK_CRITICAL;
object2.remove = {color: TEXT_FEEDBACK_CRITICAL};
object2.titleWrapper = {flex: 0};
object2.titleContainer = {justifyContent: 'flex-start'};
const env0_12 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/ChangeBannerActionSheet.tsx');
object.remove = {color: TEXT_FEEDBACK_CRITICAL};
object.titleWrapper = {flex: 0};
object.titleContainer = {justifyContent: 'flex-start'};
const env0_12 = Reflect.apply(createStyles, value, [object]);
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/ChangeBannerActionSheet.tsx');
exports.default = ChangeBannerActionSheet;
}
function ChangeBannerColorRow({user}) { // fn#100642, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:894, offset: 0x021f19b3, size: 747 bytes, params: 2, frame: 29
var object2;
const styles = useStyles();
const {pendingAvatar,
pendingAccentColor} = (require(566) /* metro dependency 566: flux */).useStateFromStoresObject([UserProfileSettingsStore],
function() {
return UserProfileSettingsStore.getPendingChanges();
});
const pendingAvatarSrc = (require(8403) /* metro dependency 8403: RecentAvatarUtils */).getPendingAvatarSrc({userId: user.id,
image: pendingAvatar});
const value5 = (importDefault(8490) /* metro dependency 8490: useDisplayProfile */)(user.id);
const r11 = pendingAvatarSrc ?? user.getAvatarURL(undefined, 80);
const value7 = (require(8421) /* metro dependency 8421: VideoBackground */).memoizedImageSource(r11);
const colorUtilsModule = require(673) /* metro dependency 673: ColorUtils */;
const rgb2int = colorUtilsModule.rgb2int;
const videoBackgroundModule = require(8421) /* metro dependency 8421: VideoBackground */;
const useDominantColorFromImage = videoBackgroundModule.useDominantColorFromImage;
const value8 = Reflect.apply(rgb2int, colorUtilsModule, [Reflect.apply(useDominantColorFromImage,
videoBackgroundModule, [r11, value7])]);
const r19 = (pendingAccentColor !== undefined ? pendingAccentColor : value5?.primaryColor) ?? value8 ?? 0;
const env0_2 = env0_4.useCallback(_fun100644, [value8]);
const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow;
object2 = {};
const FormLabel = (require(7972) /* metro dependency 7972: native */).FormLabel;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.label = <FormLabel style={styles.label} text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.xzNfPz)} />;
const items2 = [((Component) => <Component style={styles.bannerColor} color={r19} />)(importDefault(13187) /* metro dependency 13187: ColorBlock */)];
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
items2[1] = <Text style={styles.selectedColorHex} variant="text-md/medium" color="interactive-text-default">{colorUtilsModule.int2hex(r19)}</Text>;
const Icon = (require(1305) /* metro dependency 1305: native */).Icon;
const Icon2 = (require(1305) /* metro dependency 1305: native */).Icon;
const Sizes = Icon2.Sizes;
const CUSTOM = Sizes.CUSTOM;
items2[2] = <Icon style={styles.rowArrow} size={CUSTOM} source={importDefault(13188) /* metro dependency 13188 */} />;
object2.trailing = <View style={styles.selectedColor}>{items2}</View>;
object2.onPress = onPress_100645;
return <TableRow {...object2} />;
}
function ChangeBannerActionSheet({user, analyticsLocations, onBannerChange, removeText, showRemoveBanner, isTryItOut}) { // fn#100646, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:1896, offset: 0x021f1d24, size: 1166 bytes, params: 2, frame: 47
var r12;
var object15;
showRemoveBanner = !(showRemoveBanner === undefined) && showRemoveBanner;
isTryItOut = !(isTryItOut === undefined) && isTryItOut;
const styles = useStyles();
analyticsLocations = (importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */)(analyticsLocations).analyticsLocations;
const r26 = isTryItOut || (importDefault(3802) /* metro dependency 3802: PremiumUtils */).canUsePremiumProfileCustomization(user);
const value5 = _fun100647();
const AnalyticsLocationProvider = (require(6771) /* metro dependency 6771: useAnalyticsLocations */).AnalyticsLocationProvider;
const ActionSheet = (require(6805) /* metro dependency 6805: ActionSheetNative */).ActionSheet;
const BottomSheetTitleHeader = (require(6758) /* metro dependency 6758: BottomSheetTitleHeaderNative */).BottomSheetTitleHeader;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const Vgdusv = t.Vgdusv;
const bottomSheetTitleHeader = <BottomSheetTitleHeader title={Reflect.apply(string, intl,
[Vgdusv])} trailing={r26 && ((NitroWheelIcon) => <NitroWheelIcon />)((require(7954) /* metro dependency 7954: NitroWheelIcon */).NitroWheelIcon)} titleWrapperStyle={styles.titleWrapper} titleContainerStyle={styles.titleContainer} />;
const TableRowGroup = (require(6231) /* metro dependency 6231: TableRowGroupNative */).TableRowGroup;
const items2 = [r26 ? null : <ChangeBannerColorRow user={user} />];
const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow;
const object = {};
const FormLabel = (require(7972) /* metro dependency 7972: native */).FormLabel;
string = intl.string;
const formLabel = <FormLabel text={showRemoveBanner ? Reflect.apply(string, intl,
[t.N0bC3P]) : Reflect.apply(string, intl, [t['70CYsY']])} />;
const value13 = !r26;
object.label = <View style={styles.label}>{formLabel}{r26 ? value13 : ((NitroWheelIcon) => <NitroWheelIcon style={styles.nitroWheel} size="sm" />)((require(7954) /* metro dependency 7954: NitroWheelIcon */).NitroWheelIcon)}</View>;
const jsxRuntimeEnv0_11Binding = jsxRuntimeEnv0_11;
const FormSubLabel = (require(7972) /* metro dependency 7972: native */).FormSubLabel;
string = intl.string;
object.subLabel = <><FormSubLabel style={styles.sublabel} numberOfLines={2} text={r26 ? Reflect.apply(string, intl,
[t.IhzZlo]) : Reflect.apply(string, intl,
[t.NSTmdO])} />{r26 ? value13 : <View style={styles.upsellButton}>{((Component) => <Component analyticsObject={AnalyticsObjects.EDIT_PROFILE_BANNER} />)(importDefault(13186) /* metro dependency 13186: UserProfileUpsellButton */)}</View>}</>;
object.onPress = r26 ? value5 : undefined;
items2[1] = <TableRow {...object} />;
if (showRemoveBanner) {
r12 = <TableRow label={<FormLabel style={[styles.label,
styles.remove]} text={removeText ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.tT9n7D)} />} onPress={onPress_100651} />;
} else {
r12 = showRemoveBanner;
}
items2[2] = r12;
return (
<AnalyticsLocationProvider value={analyticsLocations}>
<ActionSheet>
{bottomSheetTitleHeader}
<TableRowGroup hasIcons={false}>
{items2}
</TableRowGroup>
</ActionSheet>
</AnalyticsLocationProvider>
);
}
function _fun100644(a0) { // fn#100644, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:1349, offset: 0x021f1cb1, size: 61 bytes, params: 2, frame: 13
let value = a0;
const r4 = value !== env0_0 ? value : null;
value = environment.__proto__;
value = require(8400) /* metro dependency 8400: UserProfileSettingsActionCreators */;
value.setPendingChanges({accentColor: r4});
}
function ChangeBannerColorRowOnPress() { // fn#100645, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:1851, owner: ChangeBannerColorRow.onPress, offset: 0x021f1cee, size: 54 bytes, params: 1, frame: 13
const value = environment.__proto__;
(importDefault(13189) /* metro dependency 13189: showCustomColorPickerActionSheet */)({color: env0_1,
onSelect: env0_2});
}
function _fun100647() { // fn#100647, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:2122, offset: 0x021f21b2, size: 36 bytes, params: 1, frame: 12
const env0_0 = env1_3(_fun100649);
return _fun100650;
}
function ChangeBannerActionSheetOnPress() { // fn#100651, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:3363, owner: ChangeBannerActionSheet.onPress, offset: 0x021f2258, size: 51 bytes, params: 1, frame: 12
onBannerChange(null);
const value = environment.__proto__;
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet();
}
function* _fun100649() { // fn#100649, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:2142, offset: 0x021f21e1, size: 119 bytes, params: 1, frame: 16
if (true) {
value = environment.__proto__.__proto__.__proto__;
var binding = env3_1;
var binding2 = env3_2;
binding(binding2[10]).hideActionSheet();
var value4 = binding(binding2[11]);
yield value4.openImagePicker(env3_8);
value = undefined;
if (false) {
return value;
function ChangeBannerColorRow({user}) { // fn#100642, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:894, offset: 0x021f19b3, size: 747 bytes, params: 2, frame: 29
const styles = useStyles();
const {pendingAvatar,
pendingAccentColor} = (require(566) /* metro dependency 566: flux */).useStateFromStoresObject([UserProfileSettingsStore],
function() {
return UserProfileSettingsStore.getPendingChanges();
});
const pendingAvatarSrc = (RecentAvatarUtilsModule).getPendingAvatarSrc({userId: user.id,
image: pendingAvatar});
const value5 = (UseDisplayProfile)(user.id);
const r11 = pendingAvatarSrc ?? user.getAvatarURL(undefined, 80);
const value7 = (VideoBackgroundModule).memoizedImageSource(r11);
const rgb2int = ColorUtilsModule.rgb2int;
const useDominantColorFromImage = VideoBackgroundModule.useDominantColorFromImage;
const value8 = Reflect.apply(rgb2int, ColorUtilsModule, [Reflect.apply(useDominantColorFromImage,
VideoBackgroundModule, [r11, value7])]);
const r19 = (pendingAccentColor !== undefined ? pendingAccentColor : value5?.primaryColor) ?? value8 ?? 0;
const env0_2 = ReactModule.useCallback(_fun100644, [value8]);
const TableRow = (TableRowNativeModule).TableRow;
object = {};
const FormLabel = (NativeModule2).FormLabel;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object.label = (
<FormLabel
style={styles.label}
text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.xzNfPz)}
/>
);
const items2 = [
((Component) => <Component style={styles.bannerColor} color={r19} />)(ColorBlock),
];
const Text = (TextModule).Text;
items2[1] = (
<Text
style={styles.selectedColorHex}
variant="text-md/medium"
color="interactive-text-default"
>
{ColorUtilsModule.int2hex(r19)}
</Text>
);
const Icon = (NativeModule).Icon;
const Icon2 = (NativeModule).Icon;
const Sizes = Icon2.Sizes;
const CUSTOM = Sizes.CUSTOM;
items2[2] = (
<Icon
style={styles.rowArrow}
size={CUSTOM}
source={importDefault(13188) /* metro dependency 13188 */}
/>
);
object.trailing = (
<View style={styles.selectedColor}>
{items2}
</View>
);
object.onPress = onPress_100645;
return <TableRow {...object} />;
function _fun100644(a0) { // fn#100644, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:1349, offset: 0x021f1cb1, size: 61 bytes, params: 2, frame: 13
let value = a0;
const r4 = value !== env0_0 ? value : null;
value = environment.__proto__;
value = require(8400) /* metro dependency 8400: UserProfileSettingsActionCreators */;
value.setPendingChanges({accentColor: r4});
}
var base64 = value.base64;
if (base64 != null) {
require(base64, environment.__proto__.__proto__.originalMd5);
function ChangeBannerColorRowOnPress() { // fn#100645, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:1851, owner: ChangeBannerColorRow.onPress, offset: 0x021f1cee, size: 54 bytes, params: 1, frame: 13
const value = environment.__proto__;
(ShowCustomColorPickerActionSheet)({color: env0_1,
onSelect: env0_2});
}
}
function ChangeBannerActionSheet({user, analyticsLocations, onBannerChange, removeText, showRemoveBanner, isTryItOut}) { // fn#100646, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:1896, offset: 0x021f1d24, size: 1166 bytes, params: 2, frame: 47
var r12;
var object;
showRemoveBanner = !(showRemoveBanner === undefined) && showRemoveBanner;
isTryItOut = !(isTryItOut === undefined) && isTryItOut;
const styles = useStyles();
analyticsLocations = (importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */)(analyticsLocations).analyticsLocations;
const r26 = isTryItOut || (importDefault(3802) /* metro dependency 3802: PremiumUtils */).canUsePremiumProfileCustomization(user);
const value5 = _fun100647();
const AnalyticsLocationProvider = (UseAnalyticsLocationsModule).AnalyticsLocationProvider;
const ActionSheet = (ActionSheetNativeModule).ActionSheet;
const BottomSheetTitleHeader = (BottomSheetTitleHeaderNativeModule).BottomSheetTitleHeader;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const Vgdusv = t.Vgdusv;
const bottomSheetTitleHeader = (
<BottomSheetTitleHeader
title={Reflect.apply(string, intl, [Vgdusv])}
trailing={r26 && ((NitroWheelIcon) => <NitroWheelIcon />)((require(7954) /* metro dependency 7954: NitroWheelIcon */).NitroWheelIcon)}
titleWrapperStyle={styles.titleWrapper}
titleContainerStyle={styles.titleContainer}
/>
);
const TableRowGroup = (TableRowGroupNativeModule).TableRowGroup;
const items2 = [
r26
? null
: (
<ChangeBannerColorRow user={user} />
),
];
const TableRow = (TableRowNativeModule).TableRow;
const object3 = {};
const FormLabel = (NativeModule2).FormLabel;
string = intl.string;
const formLabel = (
<FormLabel
text={showRemoveBanner ? Reflect.apply(string, intl, [t.N0bC3P]) : Reflect.apply(string, intl,
[t['70CYsY']])}
/>
);
const value13 = !r26;
object3.label = (
<View style={styles.label}>
{formLabel}
{
r26
? value13
: ((NitroWheelIcon) => <NitroWheelIcon style={styles.nitroWheel} size="sm" />)((require(7954) /* metro dependency 7954: NitroWheelIcon */).NitroWheelIcon)
}
</View>
);
const jsxRuntimeEnv0_11Binding = jsxRuntimeEnv0_11;
const FormSubLabel = (NativeModule2).FormSubLabel;
string = intl.string;
object3.subLabel = (
<>
<FormSubLabel
style={styles.sublabel}
numberOfLines={2}
text={r26 ? Reflect.apply(string, intl, [t.IhzZlo]) : Reflect.apply(string, intl, [t.NSTmdO])}
/>
{
r26
? value13
: (
<View style={styles.upsellButton}>
{((Component) => <Component analyticsObject={AnalyticsObjects.EDIT_PROFILE_BANNER} />)(importDefault(13186) /* metro dependency 13186: UserProfileUpsellButton */)}
</View>
)
}
</>
);
object3.onPress = r26 ? value5 : undefined;
items2[1] = <TableRow {...object3} />;
if (showRemoveBanner) {
r12 = (
<TableRow
label={<FormLabel
style={[styles.label, styles.remove]}
text={removeText ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.tT9n7D)}
/>}
onPress={onPress_100651}
/>
);
} else {
r12 = showRemoveBanner;
}
items2[2] = r12;
return (
<AnalyticsLocationProvider value={analyticsLocations}>
<ActionSheet>
{bottomSheetTitleHeader}
<TableRowGroup hasIcons={false}>
{items2}
</TableRowGroup>
</ActionSheet>
</AnalyticsLocationProvider>
);
function _fun100647() { // fn#100647, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:2122, offset: 0x021f21b2, size: 36 bytes, params: 1, frame: 12
const env0_0 = env1_3(_fun100649);
return _fun100650;
function* _fun100649() { // fn#100649, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:2142, offset: 0x021f21e1, size: 119 bytes, params: 1, frame: 16
if (true) {
value = environment.__proto__.__proto__.__proto__;
var binding = env3_1;
var binding2 = env3_2;
binding(binding2[10]).hideActionSheet();
var value4 = binding(binding2[11]);
yield value4.openImagePicker(env3_8);
value = undefined;
if (false) {
return value;
}
var base64 = value.base64;
if (base64 != null) {
require(base64, environment.__proto__.__proto__.originalMd5);
}
}
}
function _fun100650() { // fn#100650, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:2274, offset: 0x00c3945f, size: 30 bytes, params: 1, frame: 13
return env0_0.apply(this, arguments);
}
}
function ChangeBannerActionSheetOnPress() { // fn#100651, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13375:3363, owner: ChangeBannerActionSheet.onPress, offset: 0x021f2258, size: 51 bytes, params: 1, frame: 12
onBannerChange(null);
const value = environment.__proto__;
(ActionSheetActionCreators).hideActionSheet();
}
}
}
global.__d(_fun100641, 13185, [5, 31, 27, 7624, 661, 33, 4501, 697, 6771, 3802, 4080, 4660, 6805, 6758, 1244, 7954,
6231, 6238, 7972, 13186, 566, 8403, 8490, 8421, 673, 8400, 13187, 4573, 1305, 13188, 13189,
2]) /* metro module 13185, dependencies: [5, 31, 27, 7624, 661, 33, 4501, 697, 6771, 3802, 4080, 4660, 6805, 6758, 1244, 7954, 6231, 6238, 7972, 13186, 566, 8403, 8490, 8421, 673, 8400, 13187, 4573, 1305, 13188, 13189, 2] */;
@@ -1,16 +1,20 @@
/* Metro module 6816; source: modules/user_profile/native/Constants.tsx; dependencies: [1305, 6817, 2] */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as NativeModule from '../../../design/void/native.tsx'; /* Metro dependency 1305 */
import * as IconSizeModule from '../../../design/components/Icon/IconSize.tsx'; /* Metro dependency 6817 */
function _fun53590(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#53590, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6994:6, offset: 0x01350880, size: 363 bytes, params: 8, frame: 23
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const AvatarSizes = (require(1305) /* metro dependency 1305: native */).AvatarSizes;
const AvatarSizes = (NativeModule).AvatarSizes;
const XXLARGE = AvatarSizes.XXLARGE;
const AVATAR_SIZE_MAP = (require(1305) /* metro dependency 1305: native */).AVATAR_SIZE_MAP;
const AVATAR_SIZE_MAP = (NativeModule).AVATAR_SIZE_MAP;
const property = AVATAR_SIZE_MAP[XXLARGE];
const value = property + 12;
const value2 = property / 2;
const ICON_SIZE = (require(6817) /* metro dependency 6817: IconSize */).ICON_SIZE;
const ICON_SIZE = (IconSizeModule).ICON_SIZE;
const md = ICON_SIZE.md;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/Constants.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/Constants.tsx');
exports.ARBITRARY_LARGE_OFFSET = 250;
exports.PROFILE_SIDE_PADDING = 16;
exports.AVATAR_SIZE_VARIANT = XXLARGE;
@@ -33,3 +37,4 @@ function _fun53590(global, require, importDefault, importAll, module, exports, d
exports.DIVIDER_DOT = ' ∙ ';
}
global.__d(_fun53590, 6816, [1305, 6817, 2]) /* metro module 6816, dependencies: [1305, 6817, 2] */;
@@ -1,45 +1,70 @@
/* Metro module 9210; source: modules/user_profile/native/DiscordTag.tsx; dependencies: [31, 27, 33, 4501, 697, 4573, 8706, 2] */
import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
function _fun72069(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#72069, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9395:6, offset: 0x01d38a22, size: 249 bytes, params: 8, frame: 21
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;
let value = require(33) /* metro dependency 33 */;
ReactModule;
let value = JsxRuntimeModule;
const env0_4 = value.jsx;
const env0_5 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
const PX_4 = (importDefault(697) /* metro dependency 697: native */).space.PX_4;
const PX_4 = (Native).space.PX_4;
const env0_6 = Reflect.apply(createStyles, value, [{container: {'flexGrow': 1, 'alignItems': 'center',
'flexDirection': 'row'}, botTag: {marginLeft: PX_4}}]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/DiscordTag.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/DiscordTag.tsx');
exports.default = DiscordTag;
}
function DiscordTag({user, nick, usernameStyle, nicknameStyle, discriminatorStyle, hideBotTag}) { // fn#72070, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9395:280, offset: 0x01d38b1b, size: 437 bytes, params: 2, frame: 31
var r5;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
var items2;
hideBotTag = !(hideBotTag === undefined) && hideBotTag;
const styles = useStyles();
if (nick != null) {
r5 = <Text variant="text-md/semibold" maxFontSizeMultiplier={2} style={nicknameStyle} lineClamp={1}>{nick}</Text>;
} else if (user != null) {
var textProps = {'variant': 'text-md/semibold', 'style': null, 'lineClamp': 1, 'maxFontSizeMultiplier': 2,
style: usernameStyle};
items2 = [user.toString()];
items2[1] = !user.hasUniqueUsername() && <Text variant="text-md/semibold" color="text-muted" style={discriminatorStyle}>{'#'}{user.discriminator}</Text>;
r5 = <Text {...textProps}>{items2}</Text>;
} else {
r5 = null;
function DiscordTag({user, nick, usernameStyle, nicknameStyle, discriminatorStyle, hideBotTag}) { // fn#72070, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9395:280, offset: 0x01d38b1b, size: 437 bytes, params: 2, frame: 31
var r5;
const Text = (TextModule).Text;
var items2;
hideBotTag = !(hideBotTag === undefined) && hideBotTag;
const styles = useStyles();
if (nick != null) {
r5 = (
<Text
variant="text-md/semibold"
maxFontSizeMultiplier={2}
style={nicknameStyle}
lineClamp={1}
>
{nick}
</Text>
);
} else if (user != null) {
var textProps = {'variant': 'text-md/semibold', 'style': null, 'lineClamp': 1, 'maxFontSizeMultiplier': 2,
style: usernameStyle};
items2 = [user.toString()];
items2[1] = !user.hasUniqueUsername() && <Text variant="text-md/semibold" color="text-muted" style={discriminatorStyle}>{'#'}{user.discriminator}</Text>;
r5 = (
<Text {...textProps}>
{items2}
</Text>
);
} else {
r5 = null;
}
const items3 = [r5];
items3[1] = (
user?.bot !== true || hideBotTag
? null
: ((Component) => <Component style={styles.botTag} verified={user.isVerifiedBot()} />)(importDefault(8706) /* metro dependency 8706: BotTag */)
);
return (
<View style={styles.container}>
{items3}
</View>
);
}
const items3 = [r5];
items3[1] = user?.bot !== true || hideBotTag ? null : ((Component) => <Component style={styles.botTag} verified={user.isVerifiedBot()} />)(importDefault(8706) /* metro dependency 8706: BotTag */);
return (
<View style={styles.container}>
{items3}
</View>
);
}
global.__d(_fun72069, 9210, [31, 27, 33, 4501, 697, 4573, 8706,
2]) /* metro module 9210, dependencies: [31, 27, 33, 4501, 697, 4573, 8706, 2] */;
@@ -1,181 +1,241 @@
/* Metro module 8397; source: modules/user_profile/native/EditAvatarDecorationActionSheet.tsx; dependencies: [57, 31, 27, 5145, 5126, 1945, 661, 33, 4501, 697, 8398, 8403, 7326, 6771, 6789, 683, 3868, 6275, 4573, 1244, 8404, 7675, 566, 8407, 8402, 8408, 8414, 8415, 8409, 8405, 8417, 1305, 8424, 2] */
import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */
import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */
import GuildMemberStore from '../../../stores/GuildMemberStore.tsx'; /* Metro dependency 1945 */
import CollectiblesPurchaseStore from '../../collectibles/CollectiblesPurchaseStore.tsx'; /* Metro dependency 5145 */
import UseAnalyticsLocations from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import UsePendingAvatarSettings from '../hooks/usePendingAvatarSettings.tsx'; /* Metro dependency 8398 */
import EditCollectiblesCTAButton from './EditCollectiblesCTAButton.tsx'; /* Metro dependency 8404 */
import UseCollectiblesData from '../../collectibles/hooks/useCollectiblesData.tsx'; /* Metro dependency 8405 */
import UseAvatarDecorationSections from '../../collectibles/avatar_decorations/useAvatarDecorationSections.tsx'; /* Metro dependency 8407 */
import EditCollectiblesPreviewDetails from './EditCollectiblesPreviewDetails.tsx'; /* Metro dependency 8414 */
import HeaderAvatar from '../../profile_customization/native/HeaderAvatar.tsx'; /* Metro dependency 8417 */
import AvatarGrid from '../../collectibles/avatar_decorations/native/AvatarGrid.tsx'; /* Metro dependency 8424 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as IndexNativeModule from '../../../intl/index.native.tsx'; /* Metro dependency 1244 */
import * as NativeModule from '../../../design/void/native.tsx'; /* Metro dependency 1305 */
import * as NativeModule2 from '../../../external/discord_common/js/packages/design/native.tsx'; /* Metro dependency 3868 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
import * as AvatarDecorationRecordModule from '../../collectibles/records/AvatarDecorationRecord.tsx'; /* Metro dependency 5126 */
import * as BottomSheetNativeModule from '../../../design/components/Sheet/native/BottomSheet.native.tsx'; /* Metro dependency 6275 */
import * as UseAnalyticsLocationsModule from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import * as UseBottomSheetRefModule from '../../../design/components/Sheet/native/useBottomSheetRef.tsx'; /* Metro dependency 7326 */
import * as UseFetchCollectiblesCategoriesAndPurchasesModule from '../../collectibles/hooks/useFetchCollectiblesCategoriesAndPurchases.tsx'; /* Metro dependency 7675 */
import * as RecentAvatarUtilsModule from '../../recent_avatars/RecentAvatarUtils.tsx'; /* Metro dependency 8403 */
import * as EditAvatarDecorationSectionModule from '../../collectibles/avatar_decorations/native/EditAvatarDecorationSection.tsx'; /* Metro dependency 8408 */
import * as UseCollectibleListLayoutModule from '../../collectibles/native/useCollectibleListLayout.tsx'; /* Metro dependency 8409 */
import * as EditCollectiblesPickerListModule from '../../collectibles/native/EditCollectiblesPickerList.tsx'; /* Metro dependency 8415 */
function _fun66727(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#66727, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8582:6, offset: 0x01c07010, size: 443 bytes, params: 8, frame: 22
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
const env0_5 = (require(27) /* metro dependency 27 */).View;
const collectiblesPurchaseStore = importDefault(5145) /* metro dependency 5145: CollectiblesPurchaseStore */;
const env0_7 = (require(5126) /* metro dependency 5126: AvatarDecorationRecord */).isAvatarDecorationRecord;
const guildMemberStore = importDefault(1945) /* metro dependency 1945: GuildMemberStore */;
const env0_9 = (require(661) /* metro dependency 661: Constants */).AnalyticEvents;
let value = require(33) /* metro dependency 33 */;
let value = JsxRuntimeModule;
const env0_10 = value.jsx;
const env0_11 = value.jsxs;
const env0_12 = value.Fragment;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
const MOBILE_ACTIONSHEET_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_ACTIONSHEET_BACKGROUND;
object2.container = {flex: 1, backgroundColor: MOBILE_ACTIONSHEET_BACKGROUND};
object2.bounceOffset = {'position': 'absolute', 'top': -250, 'height': 250, 'right': 0, 'left': 0};
const MOBILE_TEXT_HEADING_PRIMARY = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_TEXT_HEADING_PRIMARY;
object2.title = {'alignSelf': 'center', 'color': null, 'margin': 25, color: MOBILE_TEXT_HEADING_PRIMARY};
object2.avatarDisplayContainer = {'flexDirection': 'row', 'width': '100%', 'justifyContent': 'center',
object = {};
const MOBILE_ACTIONSHEET_BACKGROUND = (Native).colors.MOBILE_ACTIONSHEET_BACKGROUND;
object.container = {flex: 1, backgroundColor: MOBILE_ACTIONSHEET_BACKGROUND};
object.bounceOffset = {'position': 'absolute', 'top': -250, 'height': 250, 'right': 0, 'left': 0};
const MOBILE_TEXT_HEADING_PRIMARY = (Native).colors.MOBILE_TEXT_HEADING_PRIMARY;
object.title = {'alignSelf': 'center', 'color': null, 'margin': 25, color: MOBILE_TEXT_HEADING_PRIMARY};
object.avatarDisplayContainer = {'flexDirection': 'row', 'width': '100%', 'justifyContent': 'center',
'alignItems': 'center', 'paddingVertical': 16};
const env0_13 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/EditAvatarDecorationActionSheet.tsx');
const env0_13 = Reflect.apply(createStyles, value, [object]);
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/EditAvatarDecorationActionSheet.tsx');
exports.default = EditAvatarDecorationActionSheet;
}
function EditAvatarDecorationInner({pendingAvatarSrc, user, selectedAvatarDecoration, setSelectedAvatarDecoration, guildId, isTryItOut}) { // fn#66728, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8582:664, offset: 0x01c071cb, size: 660 bytes, params: 2, frame: 29
isTryItOut = !(isTryItOut === undefined) && isTryItOut;
(require(7675) /* metro dependency 7675: useFetchCollectiblesCategoriesAndPurchases */).useGetOrFetchCollectiblesCategoriesAndPurchases();
const isFetching = (require(566) /* metro dependency 566: flux */).useStateFromStores([CollectiblesPurchaseStore],
function() {
return CollectiblesPurchaseStore.isFetching;
});
const value4 = (importDefault(8407) /* metro dependency 8407: useAvatarDecorationSections */)();
const profilePreviewValue = (require(8402) /* metro dependency 8402: ProfileCustomizationUtils */).getProfilePreviewValue({pendingValue: selectedAvatarDecoration,
userValue: user?.avatarDecoration,
guildValue: (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildMemberStore],
_fun66730)?.avatarDecoration, guildId: guildId});
const value7 = env0_4.useCallback(_fun66731, [setSelectedAvatarDecoration, guildId, isTryItOut]);
const jsxRuntimeEnv0_12Binding = jsxRuntimeEnv0_12;
let skuId = profilePreviewValue?.skuId;
const items2 = [<AvatarDecorationSectionPreview previewSkuId={skuId} user={user} guildId={guildId} pendingAvatarSrc={pendingAvatarSrc} />];
const EditCollectiblesPreviewDetails = importDefault(8414) /* metro dependency 8414: EditCollectiblesPreviewDetails */;
const defaultImportProps = {user: user, previewSkuId: profilePreviewValue?.skuId};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const FyBDiY = (require(1244) /* metro dependency 1244: indexNative */).t.FyBDiY;
defaultImportProps.nitroJoinCTA = Reflect.apply(string, intl, [FyBDiY]);
defaultImportProps.nitroUpgradeCTA = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.e1UiOa);
items2[1] = <EditCollectiblesPreviewDetails {...defaultImportProps} />;
const EditCollectiblesPickerList = (require(8415) /* metro dependency 8415: EditCollectiblesPickerList */).EditCollectiblesPickerList;
skuId = selectedAvatarDecoration?.skuId;
const COLLECTIBLE_ROW_HEIGHT = (require(8409) /* metro dependency 8409: useCollectibleListLayout */).COLLECTIBLE_ROW_HEIGHT;
items2[2] = <EditCollectiblesPickerList sections={value4} selectedSkuId={skuId} renderRow={value7} estimatedItemSize={COLLECTIBLE_ROW_HEIGHT} isFetching={isFetching} />;
return (
<>
{items2}
</>
);
}
function AvatarDecorationSectionPreview({previewSkuId, user, guildId, pendingAvatarSrc}) { // fn#66732, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8582:1814, offset: 0x01c0750c, size: 434 bytes, params: 2, frame: 24
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const styles = useStyles();
let value2 = (importDefault(8405) /* metro dependency 8405: useCollectiblesData */)(previewSkuId);
let value3 = env0_4.useMemo(function() {
var r1;
var productBinding = product;
var value2 = null;
var value3 = undefined;
r1 = value2 == productBinding ? value3 : product.items[0];
r1 = value2 == r1 ? value2 == purchase ? value3 : purchase.items[0] : r1;
return isAvatarDecorationRecord(r1) ? r1 : value2;
}, [value2.purchase, value2.product]);
const r4 = value3 != null ? intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.Do2lxE,
{a11y_text: value3.label}) : intl.string((require(1244) /* metro dependency 1244: indexNative */).t['7hRBmC']);
const HeaderAvatar = importDefault(8417) /* metro dependency 8417: HeaderAvatar */;
const AvatarSizes = (require(1305) /* metro dependency 1305: native */).AvatarSizes;
const EDIT_AVATAR_DECORATION = AvatarSizes.EDIT_AVATAR_DECORATION;
return (
<View
style={styles.avatarDisplayContainer}
accessibilityLabel={r4}
accessibilityRole="image"
accessible
>
<HeaderAvatar
function EditAvatarDecorationInner({pendingAvatarSrc, user, selectedAvatarDecoration, setSelectedAvatarDecoration, guildId, isTryItOut}) { // fn#66728, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8582:664, offset: 0x01c071cb, size: 660 bytes, params: 2, frame: 29
isTryItOut = !(isTryItOut === undefined) && isTryItOut;
(UseFetchCollectiblesCategoriesAndPurchasesModule).useGetOrFetchCollectiblesCategoriesAndPurchases();
const isFetching = (require(566) /* metro dependency 566: flux */).useStateFromStores([CollectiblesPurchaseStore],
function() {
return CollectiblesPurchaseStore.isFetching;
});
const value4 = (UseAvatarDecorationSections)();
const profilePreviewValue = (require(8402) /* metro dependency 8402: ProfileCustomizationUtils */).getProfilePreviewValue({pendingValue: selectedAvatarDecoration,
userValue: user?.avatarDecoration,
guildValue: (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildMemberStore],
_fun66730)?.avatarDecoration, guildId: guildId});
const value7 = ReactModule.useCallback(_fun66731, [setSelectedAvatarDecoration, guildId, isTryItOut]);
const jsxRuntimeEnv0_12Binding = jsxRuntimeEnv0_12;
let skuId = profilePreviewValue?.skuId;
const items2 = [
<AvatarDecorationSectionPreview
previewSkuId={skuId}
user={user}
guildId={guildId}
pendingAvatarSrc={pendingAvatarSrc}
pendingAvatarDecoration={value3}
size={EDIT_AVATAR_DECORATION}
/>,
];
const defaultImportProps = {user: user, previewSkuId: profilePreviewValue?.skuId};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const FyBDiY = (require(1244) /* metro dependency 1244: indexNative */).t.FyBDiY;
defaultImportProps.nitroJoinCTA = Reflect.apply(string, intl, [FyBDiY]);
defaultImportProps.nitroUpgradeCTA = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.e1UiOa);
items2[1] = <EditCollectiblesPreviewDetails {...defaultImportProps} />;
const EditCollectiblesPickerList = (EditCollectiblesPickerListModule).EditCollectiblesPickerList;
skuId = selectedAvatarDecoration?.skuId;
const COLLECTIBLE_ROW_HEIGHT = (UseCollectibleListLayoutModule).COLLECTIBLE_ROW_HEIGHT;
items2[2] = (
<EditCollectiblesPickerList
sections={value4}
selectedSkuId={skuId}
renderRow={value7}
estimatedItemSize={COLLECTIBLE_ROW_HEIGHT}
isFetching={isFetching}
/>
{((Component) => <Component user={user} guildId={guildId} pendingAvatarSrc={pendingAvatarSrc} pendingAvatarDecoration={value3} />)(importDefault(8424) /* metro dependency 8424: AvatarGrid */)}
</View>
);
}
);
return (
<>
{items2}
</>
);
function _fun66730() { // fn#66730, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8582:944, offset: 0x01c0746e, size: 50 bytes, params: 1, frame: 14
const guildIdBinding = guildId;
const value2 = null;
return value2 != guildIdBinding ? GuildMemberStore.getMember(guildId, user.id) : value2;
}
function EditAvatarDecorationActionSheet({user, guildId, currentAvatarDecoration, isTryItOut, analyticsLocations}) { // fn#66734, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8582:2481, offset: 0x01c0771c, size: 777 bytes, params: 2, frame: 41
const styles = useStyles();
const {pendingAvatar,
setPendingAvatarDecoration} = (importDefault(8398) /* metro dependency 8398: usePendingAvatarSettings */)({analyticsLocations: analyticsLocations,
isTryItOut: isTryItOut, guildId: guildId});
const pendingAvatarSrc = (require(8403) /* metro dependency 8403: RecentAvatarUtils */).getPendingAvatarSrc({userId: user.id,
image: pendingAvatar});
let binding = env0_4;
const [property, property2] = env0_3(binding.useState(currentAvatarDecoration), 2);
const useBottomSheetRefModule = require(7326) /* metro dependency 7326: useBottomSheetRef */;
const useBottomSheetRef = useBottomSheetRefModule.useBottomSheetRef;
const bottomSheetRef = Reflect.apply(useBottomSheetRef, useBottomSheetRefModule, []).bottomSheetRef;
const defaultImport2 = importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */;
const r5 = analyticsLocations ?? [];
let EDIT_AVATAR_DECORATION_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_AVATAR_DECORATION_SHEET;
analyticsLocations = defaultImport2(r5, EDIT_AVATAR_DECORATION_SHEET).analyticsLocations;
binding = env0_4;
const value7 = binding.useCallback(function() {
var defaultImport = importDefault(dependencyMap[15]);
var OPEN_POPOUT = AnalyticEvents.OPEN_POPOUT;
defaultImport.track(OPEN_POPOUT, {type: importDefault(dependencyMap[14]).EDIT_AVATAR_DECORATION_SHEET,
is_fullscreen: true});
}, []);
const value8 = binding.useCallback(_fun66736, [property, setPendingAvatarDecoration]);
const ThemeContextProvider = (require(3868) /* metro dependency 3868: native */).ThemeContextProvider;
const AnalyticsLocationProvider = (require(6771) /* metro dependency 6771: useAnalyticsLocations */).AnalyticsLocationProvider;
const BottomSheet = (require(6275) /* metro dependency 6275: BottomSheetNative */).BottomSheet;
const view = <View style={styles.bounceOffset} />;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const HykynS = (require(1244) /* metro dependency 1244: indexNative */).t.HykynS;
const view2 = <View style={styles.container}>{view}<Text variant="redesign/heading-18/bold" style={styles.title} accessibilityRole="header">{Reflect.apply(string,
intl,
[HykynS])}</Text><EditAvatarDecorationInner user={user} guildId={guildId} pendingAvatarSrc={pendingAvatarSrc} selectedAvatarDecoration={property} setSelectedAvatarDecoration={property2} isTryItOut={isTryItOut} /></View>;
const EditCollectiblesCTAButton = importDefault(8404) /* metro dependency 8404: EditCollectiblesCTAButton */;
const defaultImport3Props = {user: user, currentSkuId: currentAvatarDecoration?.skuId,
selectedSkuId: property?.skuId, isTryItOut: isTryItOut, onApply: value8, analyticsLocations: analyticsLocations};
EDIT_AVATAR_DECORATION_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_AVATAR_DECORATION_SHEET;
defaultImport3Props.analyticsSource = EDIT_AVATAR_DECORATION_SHEET;
return (
<ThemeContextProvider>
<AnalyticsLocationProvider value={analyticsLocations}>
<BottomSheet
scrollable
ref={bottomSheetRef}
onExpand={value7}
startExpanded
function _fun66731({items, size, selectedSkuId}) { // fn#66731, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8582:1151, offset: 0x01c074a0, size: 108 bytes, params: 2, frame: 16
const EditAvatarDecorationRow = (EditAvatarDecorationSectionModule).EditAvatarDecorationRow;
return (
<EditAvatarDecorationRow
items={items}
size={size}
selectedSkuId={selectedSkuId}
setSelectedAvatarDecoration={setSelectedAvatarDecoration}
guildId={guildId}
isTryItOut={isTryItOut}
/>
);
}
}
function AvatarDecorationSectionPreview({previewSkuId, user, guildId, pendingAvatarSrc}) { // fn#66732, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8582:1814, offset: 0x01c0750c, size: 434 bytes, params: 2, frame: 24
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const styles = useStyles();
let value2 = (UseCollectiblesData)(previewSkuId);
let value3 = ReactModule.useMemo(function() {
var r1;
var productBinding = product;
var value2 = null;
var value3 = undefined;
r1 = value2 == productBinding ? value3 : product.items[0];
r1 = value2 == r1 ? value2 == purchase ? value3 : purchase.items[0] : r1;
return isAvatarDecorationRecord(r1) ? r1 : value2;
}, [value2.purchase, value2.product]);
const r4 = value3 != null ? intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.Do2lxE,
{a11y_text: value3.label}) : intl.string((require(1244) /* metro dependency 1244: indexNative */).t['7hRBmC']);
const AvatarSizes = (NativeModule).AvatarSizes;
const EDIT_AVATAR_DECORATION = AvatarSizes.EDIT_AVATAR_DECORATION;
return (
<View
style={styles.avatarDisplayContainer}
accessibilityLabel={r4}
accessibilityRole="image"
accessible
>
<HeaderAvatar
user={user}
guildId={guildId}
pendingAvatarSrc={pendingAvatarSrc}
pendingAvatarDecoration={value3}
size={EDIT_AVATAR_DECORATION}
/>
{((Component) => <Component user={user} guildId={guildId} pendingAvatarSrc={pendingAvatarSrc} pendingAvatarDecoration={value3} />)(AvatarGrid)}
</View>
);
}
function EditAvatarDecorationActionSheet({user, guildId, currentAvatarDecoration, isTryItOut, analyticsLocations}) { // fn#66734, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8582:2481, offset: 0x01c0771c, size: 777 bytes, params: 2, frame: 41
const styles = useStyles();
const {pendingAvatar,
setPendingAvatarDecoration} = (UsePendingAvatarSettings)({analyticsLocations: analyticsLocations,
isTryItOut: isTryItOut, guildId: guildId});
const pendingAvatarSrc = (RecentAvatarUtilsModule).getPendingAvatarSrc({userId: user.id,
image: pendingAvatar});
let binding = ReactModule;
const [property, property2] = Module00057(binding.useState(currentAvatarDecoration), 2);
const useBottomSheetRef = UseBottomSheetRefModule.useBottomSheetRef;
const bottomSheetRef = Reflect.apply(useBottomSheetRef, UseBottomSheetRefModule, []).bottomSheetRef;
const defaultImport2 = UseAnalyticsLocations;
const r5 = analyticsLocations ?? [];
let EDIT_AVATAR_DECORATION_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_AVATAR_DECORATION_SHEET;
analyticsLocations = defaultImport2(r5, EDIT_AVATAR_DECORATION_SHEET).analyticsLocations;
binding = ReactModule;
const value7 = binding.useCallback(function() {
var defaultImport = importDefault(dependencyMap[15]);
var OPEN_POPOUT = AnalyticEvents.OPEN_POPOUT;
defaultImport.track(OPEN_POPOUT, {type: importDefault(dependencyMap[14]).EDIT_AVATAR_DECORATION_SHEET,
is_fullscreen: true});
}, []);
const value8 = binding.useCallback(_fun66736, [property, setPendingAvatarDecoration]);
const ThemeContextProvider = (NativeModule2).ThemeContextProvider;
const AnalyticsLocationProvider = (UseAnalyticsLocationsModule).AnalyticsLocationProvider;
const BottomSheet = (BottomSheetNativeModule).BottomSheet;
const view = <View style={styles.bounceOffset} />;
const Text = (TextModule).Text;
const intl = (IndexNativeModule).intl;
const string = intl.string;
const HykynS = (IndexNativeModule).t.HykynS;
const view2 = (
<View style={styles.container}>
{view}
<Text
variant="redesign/heading-18/bold"
style={styles.title}
accessibilityRole="header"
>
{view2}
<EditCollectiblesCTAButton {...defaultImport3Props} />
</BottomSheet>
</AnalyticsLocationProvider>
</ThemeContextProvider>
);
}
{Reflect.apply(string, intl, [HykynS])}
</Text>
<EditAvatarDecorationInner
user={user}
guildId={guildId}
pendingAvatarSrc={pendingAvatarSrc}
selectedAvatarDecoration={property}
setSelectedAvatarDecoration={property2}
isTryItOut={isTryItOut}
/>
</View>
);
const defaultImport3Props = {user: user, currentSkuId: currentAvatarDecoration?.skuId,
selectedSkuId: property?.skuId, isTryItOut: isTryItOut, onApply: value8, analyticsLocations: analyticsLocations};
EDIT_AVATAR_DECORATION_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_AVATAR_DECORATION_SHEET;
defaultImport3Props.analyticsSource = EDIT_AVATAR_DECORATION_SHEET;
return (
<ThemeContextProvider>
<AnalyticsLocationProvider value={analyticsLocations}>
<BottomSheet
scrollable
ref={bottomSheetRef}
onExpand={value7}
startExpanded
>
{view2}
<EditCollectiblesCTAButton {...defaultImport3Props} />
</BottomSheet>
</AnalyticsLocationProvider>
</ThemeContextProvider>
);
function _fun66736() { // fn#66736, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8582:3077, offset: 0x01c07a74, size: 33 bytes, params: 1, frame: 12
const setPendingAvatarDecorationBinding = setPendingAvatarDecoration;
const value2 = null;
setPendingAvatarDecorationBinding(value2 != env0_1 ? env0_1 : value2);
}
function _fun66731({items, size, selectedSkuId}) { // fn#66731, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8582:1151, offset: 0x01c074a0, size: 108 bytes, params: 2, frame: 16
const EditAvatarDecorationRow = (require(8408) /* metro dependency 8408: EditAvatarDecorationSection */).EditAvatarDecorationRow;
return (
<EditAvatarDecorationRow
items={items}
size={size}
selectedSkuId={selectedSkuId}
setSelectedAvatarDecoration={setSelectedAvatarDecoration}
guildId={guildId}
isTryItOut={isTryItOut}
/>
);
}
}
function _fun66736() { // fn#66736, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8582:3077, offset: 0x01c07a74, size: 33 bytes, params: 1, frame: 12
const setPendingAvatarDecorationBinding = setPendingAvatarDecoration;
const value2 = null;
setPendingAvatarDecorationBinding(value2 != env0_1 ? env0_1 : value2);
}
global.__d(_fun66727, 8397, [57, 31, 27, 5145, 5126, 1945, 661, 33, 4501, 697, 8398, 8403, 7326, 6771, 6789, 683,
3868, 6275, 4573, 1244, 8404, 7675, 566, 8407, 8402, 8408, 8414, 8415, 8409, 8405, 8417, 1305, 8424,
2]) /* metro module 8397, dependencies: [57, 31, 27, 5145, 5126, 1945, 661, 33, 4501, 697, 8398, 8403, 7326, 6771, 6789, 683, 3868, 6275, 4573, 1244, 8404, 7675, 566, 8407, 8402, 8408, 8414, 8415, 8409, 8405, 8417, 1305, 8424, 2] */;
@@ -1,12 +1,15 @@
/* Metro module 8406; source: modules/user_profile/native/EditCollectiblesActionCreators.tsx; dependencies: [661, 7007, 2] */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
function _fun66807(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#66807, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8591:6, offset: 0x01c0a7eb, size: 117 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = (require(661) /* metro dependency 661: Constants */).UserSettingsSections;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/EditCollectiblesActionCreators.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/EditCollectiblesActionCreators.tsx');
exports.navigateToNitroManagement = function() {
require(dependencyMap[1]).openUserSettings({screen: UserSettingsSections.PREMIUM});
};
}
global.__d(_fun66807, 8406, [661, 7007, 2]) /* metro module 8406, dependencies: [661, 7007, 2] */;
@@ -1,14 +1,26 @@
/* Metro module 8404; source: modules/user_profile/native/EditCollectiblesCTAButton.tsx; dependencies: [31, 4502, 663, 1580, 33, 4501, 1585, 566, 8405, 4017, 4577, 3802, 5134, 1244, 4081, 8406, 5120, 4080, 4578, 2] */
import UseSafeAreaInsetsNative from '../../safe_area/useSafeAreaInsets.native.tsx'; /* Metro dependency 1585 */
import PremiumUtils from '../../../utils/PremiumUtils.tsx'; /* Metro dependency 3802 */
import ReanimatedRexport from '../../reanimated/ReanimatedRexport.tsx'; /* Metro dependency 4017 */
import ActionSheetActionCreators from '../../action_sheet/native/ActionSheetActionCreators.tsx'; /* Metro dependency 4080 */
import AccessibilityStore from '../../a11y/AccessibilityStore.tsx'; /* Metro dependency 4502 */
import UseCollectiblesData from '../../collectibles/hooks/useCollectiblesData.tsx'; /* Metro dependency 8405 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as CollectiblesShopConstantsModule from '../../collectibles/CollectiblesShopConstants.tsx'; /* Metro dependency 663 */
import * as IndexNativeModule from '../../../intl/index.native.tsx'; /* Metro dependency 1244 */
import * as MediaKeyboardConstantsModule from '../../media_keyboard/native/MediaKeyboardConstants.tsx'; /* Metro dependency 1580 */
import * as ReanimatedRexportModule from '../../reanimated/ReanimatedRexport.tsx'; /* Metro dependency 4017 */
import * as CreateStylesModule from '../../../design/components/Styles/native/createStyles.tsx'; /* Metro dependency 4501 */
import * as ButtonNativeModule from '../../../design/components/Button/native/Button.native.tsx'; /* Metro dependency 4578 */
function _fun66794(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#66794, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8589:6, offset: 0x01c09e08, size: 326 bytes, params: 8, frame: 20
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = importAll(31) /* metro dependency 31 */;
const accessibilityStore = importDefault(4502) /* metro dependency 4502: AccessibilityStore */;
const env0_5 = (require(663) /* metro dependency 663: CollectiblesShopConstants */).CollectiblesMobileShopScreen;
const env0_6 = (require(1580) /* metro dependency 1580: MediaKeyboardConstants */).MEDIA_PICKER_SEND_BUTTON_SPRING;
const env0_7 = (require(33) /* metro dependency 33 */).jsx;
const env0_8 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({buttonRowContainer: {'flexGrow': 0,
let value = ReactModule;
const env0_8 = (CreateStylesModule).createStyles({buttonRowContainer: {'flexGrow': 0,
'flexDirection': 'row', 'justifyContent': 'flex-end', 'paddingHorizontal': 12, 'height': 48},
buttonContainer: {'position': 'absolute', 'bottom': 0, 'left': 0, 'right': 0, 'marginLeft': 24,
'marginRight': 24, 'flexDirection': 'column', 'justifyContent': 'flex-end'}});
@@ -16,168 +28,166 @@ function _fun66794(global, require, importDefault, importAll, module, exports, d
object = {code: "function EditCollectiblesCTAButtonTsx2(){const{shouldShowButton}=this.__closure;return{pointerEvents:shouldShowButton.get()?'box-none':'none'};}"};
object = {code: 'function EditCollectiblesCTAButtonTsx3(){const{shouldShowButton,reducedMotion,withSpring,MEDIA_PICKER_SEND_BUTTON_SPRING}=this.__closure;const targetOpacity=shouldShowButton.get()?1:0;return{opacity:reducedMotion?targetOpacity:withSpring(targetOpacity,{...MEDIA_PICKER_SEND_BUTTON_SPRING,overshootClamping:true})};}'};
value = value.memo(_fun66795);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/EditCollectiblesCTAButton.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/EditCollectiblesCTAButton.tsx');
exports.default = value;
}
function _fun66795({user, currentSkuId, selectedSkuId, isTryItOut, onApply, analyticsLocations, analyticsSource}) { // fn#66795, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8589:1553, offset: 0x01c09f4e, size: 995 bytes, params: 2, frame: 36
const onApply2 = onApply;
const styles = useStyles();
const bottom = (UseSafeAreaInsetsNative)().bottom;
const useReducedMotion = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore],
function() {
return AccessibilityStore.useReducedMotion;
});
const {product, purchase} = (UseCollectiblesData)(selectedSkuId);
const value3 = (ReanimatedRexportModule).useSharedValue(false);
let binding = onApply2;
binding.useEffect(_fun66797, [selectedSkuId, currentSkuId, value3]);
let useAnimatedStyle = ReanimatedRexportModule.useAnimatedStyle;
let closure = O_66798;
object = {'shouldShowButton': null, 'APPLY_BUTTON_BOUNCE_DISTANCE': 60, 'APPLY_BUTTON_SCALE_TRANSITION': 0.9};
object.shouldShowButton = value3;
object.reducedMotion = useReducedMotion;
object.withSpring = (require(4577) /* metro dependency 4577: spring */).withSpring;
object.MEDIA_PICKER_SEND_BUTTON_SPRING = MEDIA_PICKER_SEND_BUTTON_SPRING;
closure.__closure = object;
closure.__workletHash = 15594859424201;
closure.__initData = undefined;
const value4 = Reflect.apply(useAnimatedStyle, ReanimatedRexportModule, [closure]);
const useAnimatedProps = ReanimatedRexportModule.useAnimatedProps;
closure = M_66799;
closure.__closure = {shouldShowButton: value3};
closure.__workletHash = 16151141699021;
closure.__initData = env0_10;
const value5 = Reflect.apply(useAnimatedProps, ReanimatedRexportModule, [closure]);
useAnimatedStyle = ReanimatedRexportModule.useAnimatedStyle;
closure = R_66800;
object = {shouldShowButton: value3, reducedMotion: useReducedMotion};
object.withSpring = (require(4577) /* metro dependency 4577: spring */).withSpring;
object.MEDIA_PICKER_SEND_BUTTON_SPRING = MEDIA_PICKER_SEND_BUTTON_SPRING;
closure.__closure = object;
closure.__workletHash = 13351061137085;
closure.__initData = env0_11;
const value6 = Reflect.apply(useAnimatedStyle, ReanimatedRexportModule, [closure]);
const canUseCollectibles2 = (PremiumUtils).canUseCollectibles(user);
let r11 = (require(5134) /* metro dependency 5134: CollectiblesUtils */).isPremiumCollectiblesProduct(product) || (require(5134) /* metro dependency 5134: CollectiblesUtils */).isPremiumCollectiblesPurchase(purchase);
const value7 = !canUseCollectibles2;
let r18 = selectedSkuId == null || purchase != null && !(canUseCollectibles2 ? value7 : (require(5134) /* metro dependency 5134: CollectiblesUtils */).isPremiumCollectiblesPurchase(purchase));
r18 = !r18 ? r11 && isTryItOut : r18;
r11 = r11 && value7 && !isTryItOut;
binding = onApply2;
const value12 = binding.useMemo(_fun66801, [r18, r11, user]);
const value13 = binding.useCallback(_fun66802, [r18, onApply, r11, analyticsLocations, analyticsSource,
selectedSkuId]);
const View = (ReanimatedRexport).View;
const items3 = [styles.buttonContainer, value6];
const View2 = (ReanimatedRexport).View;
const items2 = [styles.buttonRowContainer, value4];
items2[2] = {marginBottom: bottom};
const Button = (ButtonNativeModule).Button;
return (
<View style={items3} animatedProps={value5}>
<View2 style={items2} pointerEvents="box-none">
<Button
variant={r11 ? 'active' : 'primary'}
onPress={value13}
size="md"
text={value12}
grow
/>
</View2>
</View>
);
function _fun66797() { // fn#66797, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8589:1833, offset: 0x01c0a331, size: 33 bytes, params: 1, frame: 12
JsxRuntimeModule.jsx.set(selectedSkuId !== currentSkuId);
}
function _fun66795({user, currentSkuId, selectedSkuId, isTryItOut, onApply, analyticsLocations, analyticsSource}) { // fn#66795, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8589:1553, offset: 0x01c09f4e, size: 995 bytes, params: 2, frame: 36
var object2;
const env0_3 = onApply;
const styles = useStyles();
const bottom = (importDefault(1585) /* metro dependency 1585: useSafeAreaInsetsNative */)().bottom;
const useReducedMotion = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore],
function() {
return AccessibilityStore.useReducedMotion;
});
const {product, purchase} = (importDefault(8405) /* metro dependency 8405: useCollectiblesData */)(selectedSkuId);
const value3 = (require(4017) /* metro dependency 4017: ReanimatedRexport */).useSharedValue(false);
let binding = env0_3;
binding.useEffect(_fun66797, [selectedSkuId, currentSkuId, value3]);
const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */;
let useAnimatedStyle = reanimatedRexportModule.useAnimatedStyle;
let closure = O_66798;
object2 = {'shouldShowButton': null, 'APPLY_BUTTON_BOUNCE_DISTANCE': 60, 'APPLY_BUTTON_SCALE_TRANSITION': 0.9};
object2.shouldShowButton = value3;
object2.reducedMotion = useReducedMotion;
object2.withSpring = (require(4577) /* metro dependency 4577: spring */).withSpring;
object2.MEDIA_PICKER_SEND_BUTTON_SPRING = MEDIA_PICKER_SEND_BUTTON_SPRING;
closure.__closure = object2;
closure.__workletHash = 15594859424201;
closure.__initData = undefined;
const value4 = Reflect.apply(useAnimatedStyle, reanimatedRexportModule, [closure]);
const moduleValue4 = reanimatedRexportModule;
const useAnimatedProps = moduleValue4.useAnimatedProps;
closure = M_66799;
closure.__closure = {shouldShowButton: value3};
closure.__workletHash = 16151141699021;
closure.__initData = env0_10;
const value5 = Reflect.apply(useAnimatedProps, moduleValue4, [closure]);
const moduleValue5 = reanimatedRexportModule;
useAnimatedStyle = moduleValue5.useAnimatedStyle;
closure = R_66800;
object2 = {shouldShowButton: value3, reducedMotion: useReducedMotion};
object2.withSpring = (require(4577) /* metro dependency 4577: spring */).withSpring;
object2.MEDIA_PICKER_SEND_BUTTON_SPRING = MEDIA_PICKER_SEND_BUTTON_SPRING;
closure.__closure = object2;
closure.__workletHash = 13351061137085;
closure.__initData = env0_11;
const value6 = Reflect.apply(useAnimatedStyle, moduleValue5, [closure]);
const canUseCollectibles2 = (importDefault(3802) /* metro dependency 3802: PremiumUtils */).canUseCollectibles(user);
let r11 = (require(5134) /* metro dependency 5134: CollectiblesUtils */).isPremiumCollectiblesProduct(product) || (require(5134) /* metro dependency 5134: CollectiblesUtils */).isPremiumCollectiblesPurchase(purchase);
const value7 = !canUseCollectibles2;
let r18 = selectedSkuId == null || purchase != null && !(canUseCollectibles2 ? value7 : (require(5134) /* metro dependency 5134: CollectiblesUtils */).isPremiumCollectiblesPurchase(purchase));
r18 = !r18 ? r11 && isTryItOut : r18;
r11 = r11 && value7 && !isTryItOut;
binding = env0_3;
const value12 = binding.useMemo(_fun66801, [r18, r11, user]);
const value13 = binding.useCallback(_fun66802, [r18, onApply, r11, analyticsLocations, analyticsSource,
selectedSkuId]);
const View = (importDefault(4017) /* metro dependency 4017: ReanimatedRexport */).View;
const items3 = [styles.buttonContainer, value6];
const View2 = (importDefault(4017) /* metro dependency 4017: ReanimatedRexport */).View;
const items2 = [styles.buttonRowContainer, value4];
items2[2] = {marginBottom: bottom};
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
return (
<View style={items3} animatedProps={value5}>
<View2 style={items2} pointerEvents="box-none">
<Button
variant={r11 ? 'active' : 'primary'}
onPress={value13}
size="md"
text={value12}
grow
/>
</View2>
</View>
);
}
function O_66798() { // fn#66798, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8589:1903, offset: 0x01c0a352, size: 187 bytes, params: 1, frame: 19
var r3;
var value;
const r8 = JsxRuntimeModule.jsx.get() ? 0 : 60;
const r7 = JsxRuntimeModule.jsx.get() ? 1 : 0.9;
const items2 = [{translateY: useReducedMotion ? r8 : (require(4577) /* metro dependency 4577: spring */).withSpring(r8,
MEDIA_PICKER_SEND_BUTTON_SPRING)}];
if (useReducedMotion) {
r3 = r7;
} else {
value = environment.__proto__;
value = (require(4577) /* metro dependency 4577: spring */).withSpring(r7, MEDIA_PICKER_SEND_BUTTON_SPRING);
r3 = value;
}
items2[1] = {scale: r3};
return {transform: items2};
}
function _fun66797() { // fn#66797, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8589:1833, offset: 0x01c0a331, size: 33 bytes, params: 1, frame: 12
const binding = env0_7;
binding.set(selectedSkuId !== currentSkuId);
}
function M_66799() { // fn#66799, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8589:2306, offset: 0x01c0a40d, size: 38 bytes, params: 1, frame: 10
const object = {};
object.pointerEvents = JsxRuntimeModule.jsx.get() ? 'box-none' : 'none';
return object;
}
function R_66800() { // fn#66800, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8589:2478, offset: 0x01c0a433, size: 102 bytes, params: 1, frame: 17
var r1;
var moduleValue;
var withSpring;
var object2;
var value;
const r5 = JsxRuntimeModule.jsx.get() ? 1 : 0;
if (useReducedMotion) {
r1 = r5;
} else {
value = environment.__proto__;
moduleValue = require(4577) /* metro dependency 4577: spring */;
withSpring = moduleValue.withSpring;
object2 = {};
copyDataProperties(object2, MEDIA_PICKER_SEND_BUTTON_SPRING, undefined);
object2['overshootClamping'] = true;
value = Reflect.apply(withSpring, moduleValue, [r5, object2]);
r1 = value;
}
return {opacity: r1};
}
function _fun66801() { // fn#66801, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8589:2962, offset: 0x01c0a499, size: 258 bytes, params: 1, frame: 17
var r0;
const intl = (IndexNativeModule).intl;
var string;
const t = (IndexNativeModule).t;
var defaultImport;
var value;
if (env0_8) {
r0 = intl.string(t.Jh8fJz);
} else if (env0_9) {
defaultImport = importDefault(3802) /* metro dependency 3802: PremiumUtils */;
value = defaultImport.isPremium(user);
string = intl.string;
r0 = value ? Reflect.apply(string, intl, [t.KXLX7l]) : Reflect.apply(string, intl, [t.mr4K7D]);
} else {
r0 = intl.string(t.fYfGgK);
}
return r0;
}
function _fun66802() { // fn#66802, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8589:3179, offset: 0x01c0a59b, size: 221 bytes, params: 1, frame: 16
var moduleValue2;
if (env0_8) {
moduleValue2 = require(4081) /* metro dependency 4081: HapticUtilsNative */;
moduleValue2.triggerHapticFeedback((require(4081) /* metro dependency 4081: HapticUtilsNative */).HapticFeedbackTypes.IMPACT_MEDIUM);
onApply();
} else if (env0_9) {
(require(8406) /* metro dependency 8406: EditCollectiblesActionCreators */).navigateToNitroManagement();
} else {
(require(5120) /* metro dependency 5120: CollectiblesActionCreators */).openCollectiblesShopMobile({analyticsLocations: analyticsLocations,
analyticsSource: analyticsSource, initialProductSkuId: selectedSkuId,
screen: CollectiblesMobileShopScreen.SHOP_ALL});
}
(ActionSheetActionCreators).hideActionSheet();
}
function O_66798() { // fn#66798, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8589:1903, offset: 0x01c0a352, size: 187 bytes, params: 1, frame: 19
var r3;
var value;
const r8 = env0_7.get() ? 0 : 60;
const r7 = env0_7.get() ? 1 : 0.9;
const items2 = [{translateY: useReducedMotion ? r8 : (require(4577) /* metro dependency 4577: spring */).withSpring(r8,
MEDIA_PICKER_SEND_BUTTON_SPRING)}];
if (useReducedMotion) {
r3 = r7;
} else {
value = environment.__proto__;
value = (require(4577) /* metro dependency 4577: spring */).withSpring(r7, MEDIA_PICKER_SEND_BUTTON_SPRING);
r3 = value;
}
items2[1] = {scale: r3};
return {transform: items2};
}
function M_66799() { // fn#66799, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8589:2306, offset: 0x01c0a40d, size: 38 bytes, params: 1, frame: 10
const object2 = {};
object2.pointerEvents = env0_7.get() ? 'box-none' : 'none';
return object2;
}
function R_66800() { // fn#66800, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8589:2478, offset: 0x01c0a433, size: 102 bytes, params: 1, frame: 17
var r1;
var moduleValue;
var withSpring;
var object;
var value;
const r5 = env0_7.get() ? 1 : 0;
if (useReducedMotion) {
r1 = r5;
} else {
value = environment.__proto__;
moduleValue = require(4577) /* metro dependency 4577: spring */;
withSpring = moduleValue.withSpring;
object = {};
copyDataProperties(object, MEDIA_PICKER_SEND_BUTTON_SPRING, undefined);
object['overshootClamping'] = true;
value = Reflect.apply(withSpring, moduleValue, [r5, object]);
r1 = value;
}
return {opacity: r1};
}
function _fun66801() { // fn#66801, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8589:2962, offset: 0x01c0a499, size: 258 bytes, params: 1, frame: 17
var r0;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
var defaultImport;
var value;
if (env0_8) {
r0 = intl.string(t.Jh8fJz);
} else if (env0_9) {
defaultImport = importDefault(3802) /* metro dependency 3802: PremiumUtils */;
value = defaultImport.isPremium(user);
string = intl.string;
r0 = value ? Reflect.apply(string, intl, [t.KXLX7l]) : Reflect.apply(string, intl, [t.mr4K7D]);
} else {
r0 = intl.string(t.fYfGgK);
}
return r0;
}
function _fun66802() { // fn#66802, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8589:3179, offset: 0x01c0a59b, size: 221 bytes, params: 1, frame: 16
var moduleValue2;
if (env0_8) {
moduleValue2 = require(4081) /* metro dependency 4081: HapticUtilsNative */;
moduleValue2.triggerHapticFeedback((require(4081) /* metro dependency 4081: HapticUtilsNative */).HapticFeedbackTypes.IMPACT_MEDIUM);
onApply();
} else if (env0_9) {
(require(8406) /* metro dependency 8406: EditCollectiblesActionCreators */).navigateToNitroManagement();
} else {
(require(5120) /* metro dependency 5120: CollectiblesActionCreators */).openCollectiblesShopMobile({analyticsLocations: analyticsLocations,
analyticsSource: analyticsSource, initialProductSkuId: selectedSkuId,
screen: CollectiblesMobileShopScreen.SHOP_ALL});
}
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet();
}
global.__d(_fun66794, 8404, [31, 4502, 663, 1580, 33, 4501, 1585, 566, 8405, 4017, 4577, 3802, 5134, 1244, 4081,
8406, 5120, 4080, 4578,
2]) /* metro module 8404, dependencies: [31, 4502, 663, 1580, 33, 4501, 1585, 566, 8405, 4017, 4577, 3802, 5134, 1244, 4081, 8406, 5120, 4080, 4578, 2] */;
@@ -1,103 +1,207 @@
/* Metro module 8414; source: modules/user_profile/native/EditCollectiblesPreviewDetails.tsx; dependencies: [31, 27, 1949, 33, 4501, 566, 3802, 5134, 3826, 4573, 1244, 8405, 2] */
import LocaleStore from '../../user_settings/LocaleStore.tsx'; /* Metro dependency 1949 */
import UseCollectiblesData from '../../collectibles/hooks/useCollectiblesData.tsx'; /* Metro dependency 8405 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as CreateStylesModule from '../../../design/components/Styles/native/createStyles.tsx'; /* Metro dependency 4501 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
function _fun66840(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#66840, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8599:6, offset: 0x01c0c22d, size: 252 bytes, params: 8, frame: 19
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 localeStore = importDefault(1949) /* metro dependency 1949: LocaleStore */;
const value = require(33) /* metro dependency 33 */;
const env0_5 = value.jsx;
const env0_6 = value.Fragment;
const env0_7 = value.jsxs;
const env0_8 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({productDetailsContainer: {'width': '100%',
ReactModule;
const env0_8 = (CreateStylesModule).createStyles({productDetailsContainer: {'width': '100%',
'marginTop': 16, 'alignItems': 'center', 'gap': 2}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/EditCollectiblesPreviewDetails.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/EditCollectiblesPreviewDetails.tsx');
exports.default = _default_66843;
}
function EditCollectiblesPreviewDescription({user, product, purchase, nitroJoinCTA, nitroUpgradeCTA}) { // fn#66841, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8599:308, offset: 0x01c0c329, size: 1112 bytes, params: 2, frame: 37
var r21;
var r12;
var moduleValue5;
var diffAsUnits;
var Date;
var value5;
var date;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var format;
var Io7ozn;
var object;
var eZSTa5;
var object2;
const locale = (require(566) /* metro dependency 566: flux */).useStateFromStores([LocaleStore], function() {
return LocaleStore.locale;
});
const canUseCollectibles2 = (importDefault(3802) /* metro dependency 3802: PremiumUtils */).canUseCollectibles(user);
let r0 = (require(5134) /* metro dependency 5134: CollectiblesUtils */).isPremiumCollectiblesProduct(product) || (require(5134) /* metro dependency 5134: CollectiblesUtils */).isPremiumCollectiblesPurchase(purchase);
const r4 = !canUseCollectibles2 && (require(5134) /* metro dependency 5134: CollectiblesUtils */).isPremiumCollectiblesPurchase(purchase);
if (purchase == null) {
r0 = r0 ? canUseCollectibles2 ? <Text variant="text-sm/medium" color="text-default">{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.hmyYK8)}</Text> : (importDefault(3802) /* metro dependency 3802: PremiumUtils */).isPremium(user) ? <Text variant="text-sm/medium" color="text-default">{nitroUpgradeCTA}</Text> : <Text variant="text-sm/medium" color="text-default">{nitroJoinCTA}</Text> : <Text variant="text-sm/medium" color="text-default">{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.fEGjVQ)}</Text>;
return r0;
}
if (r4) {
r0 = r0 ? canUseCollectibles2 ? <Text variant="text-sm/medium" color="text-default">{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.hmyYK8)}</Text> : (importDefault(3802) /* metro dependency 3802: PremiumUtils */).isPremium(user) ? <Text variant="text-sm/medium" color="text-default">{nitroUpgradeCTA}</Text> : <Text variant="text-sm/medium" color="text-default">{nitroJoinCTA}</Text> : <Text variant="text-sm/medium" color="text-default">{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.fEGjVQ)}</Text>;
return r0;
}
if (purchase?.expiresAt != null) {
moduleValue5 = require(3826) /* metro dependency 3826: DateUtils */;
diffAsUnits = moduleValue5.diffAsUnits;
Date = global.Date;
value5 = Object.create(Date.prototype, {constructor: {value: Date}});
date = new Date();
r21 = Reflect.apply(diffAsUnits, moduleValue5, [date instanceof Object ? date : value5, purchase.expiresAt]);
} else {
r21 = null;
}
const jsxRuntimeEnv0_6Binding = jsxRuntimeEnv0_6;
const value8 = r21 != null;
if (value8) {
function EditCollectiblesPreviewDescription({user, product, purchase, nitroJoinCTA, nitroUpgradeCTA}) { // fn#66841, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8599:308, offset: 0x01c0c329, size: 1112 bytes, params: 2, frame: 37
var r21;
var r12;
var moduleValue5;
var diffAsUnits;
var Date;
var value5;
var date;
const Text = (TextModule).Text;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var format;
var Io7ozn;
var object3;
var eZSTa5;
var object5;
const locale = (require(566) /* metro dependency 566: flux */).useStateFromStores([LocaleStore], function() {
return LocaleStore.locale;
});
const canUseCollectibles2 = (importDefault(3802) /* metro dependency 3802: PremiumUtils */).canUseCollectibles(user);
let r0 = (require(5134) /* metro dependency 5134: CollectiblesUtils */).isPremiumCollectiblesProduct(product) || (require(5134) /* metro dependency 5134: CollectiblesUtils */).isPremiumCollectiblesPurchase(purchase);
const r4 = !canUseCollectibles2 && (require(5134) /* metro dependency 5134: CollectiblesUtils */).isPremiumCollectiblesPurchase(purchase);
if (purchase == null) {
r0 = (
r0
? (
canUseCollectibles2
? (
<Text variant="text-sm/medium" color="text-default">
{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.hmyYK8)}
</Text>
)
: (
(importDefault(3802) /* metro dependency 3802: PremiumUtils */).isPremium(user)
? (
<Text variant="text-sm/medium" color="text-default">
{nitroUpgradeCTA}
</Text>
)
: (
<Text variant="text-sm/medium" color="text-default">
{nitroJoinCTA}
</Text>
)
)
)
: (
<Text variant="text-sm/medium" color="text-default">
{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.fEGjVQ)}
</Text>
)
);
return r0;
}
if (r4) {
r0 = (
r0
? (
canUseCollectibles2
? (
<Text variant="text-sm/medium" color="text-default">
{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.hmyYK8)}
</Text>
)
: (
(importDefault(3802) /* metro dependency 3802: PremiumUtils */).isPremium(user)
? (
<Text variant="text-sm/medium" color="text-default">
{nitroUpgradeCTA}
</Text>
)
: (
<Text variant="text-sm/medium" color="text-default">
{nitroJoinCTA}
</Text>
)
)
)
: (
<Text variant="text-sm/medium" color="text-default">
{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.fEGjVQ)}
</Text>
)
);
return r0;
}
if (purchase?.expiresAt != null) {
moduleValue5 = require(3826) /* metro dependency 3826: DateUtils */;
diffAsUnits = moduleValue5.diffAsUnits;
Date = global.Date;
value5 = Object.create(Date.prototype, {constructor: {value: Date}});
date = new Date();
r21 = Reflect.apply(diffAsUnits, moduleValue5, [date instanceof Object ? date : value5, purchase.expiresAt]);
} else {
r21 = null;
}
const jsxRuntimeEnv0_6Binding = jsxRuntimeEnv0_6;
const value8 = r21 != null;
if (value8) {
format = intl.format;
Io7ozn = (require(1244) /* metro dependency 1244: indexNative */).t.Io7ozn;
object3 = {};
object3.days = r21.days.toString();
r12 = (
<Text variant="text-sm/medium" color="text-default">
{Reflect.apply(format, intl, [Io7ozn, object3])}
</Text>
);
} else {
r12 = value8;
}
const items2 = [r12];
format = intl.format;
Io7ozn = (require(1244) /* metro dependency 1244: indexNative */).t.Io7ozn;
object = {};
object.days = r21.days.toString();
r12 = <Text variant="text-sm/medium" color="text-default">{Reflect.apply(format, intl, [Io7ozn,
object])}</Text>;
} else {
r12 = value8;
const gW9R4B = (require(1244) /* metro dependency 1244: indexNative */).t.gW9R4B;
const object6 = {};
object6.date = purchase == null ? undefined : purchase.purchasedAt.toLocaleDateString(locale, {'month': 'long',
'year': 'numeric'});
items2[1] = (
<Text variant="text-sm/medium" color="text-default">
{Reflect.apply(format, intl, [gW9R4B, object6])}
</Text>
);
const value11 = purchase?.expiresAt != null;
if (value11) {
format = intl.format;
eZSTa5 = (require(1244) /* metro dependency 1244: indexNative */).t.eZSTa5;
object5 = {};
object5.date = purchase.expiresAt.toLocaleDateString(locale, {'minute': 'numeric', 'hour': 'numeric',
'day': 'numeric', 'month': 'long', 'year': 'numeric'});
r12 = (
<Text variant="text-sm/medium" color="text-default">
{Reflect.apply(format, intl, [eZSTa5, object5])}
</Text>
);
} else {
r12 = value11;
}
items2[2] = r12;
return (
<>
{items2}
</>
);
}
const items2 = [r12];
format = intl.format;
const gW9R4B = (require(1244) /* metro dependency 1244: indexNative */).t.gW9R4B;
const object4 = {};
object4.date = purchase == null ? undefined : purchase.purchasedAt.toLocaleDateString(locale, {'month': 'long',
'year': 'numeric'});
items2[1] = <Text variant="text-sm/medium" color="text-default">{Reflect.apply(format, intl, [gW9R4B,
object4])}</Text>;
const value11 = purchase?.expiresAt != null;
if (value11) {
format = intl.format;
eZSTa5 = (require(1244) /* metro dependency 1244: indexNative */).t.eZSTa5;
object2 = {};
object2.date = purchase.expiresAt.toLocaleDateString(locale, {'minute': 'numeric', 'hour': 'numeric',
'day': 'numeric', 'month': 'long', 'year': 'numeric'});
r12 = <Text variant="text-sm/medium" color="text-default">{Reflect.apply(format, intl, [eZSTa5,
object2])}</Text>;
} else {
r12 = value11;
function _default_66843({user, previewSkuId, nitroJoinCTA, nitroUpgradeCTA}) { // fn#66843, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8599:1752, offset: 0x01c0c781, size: 278 bytes, params: 2, frame: 26
const styles = useStyles();
const {product, purchase} = (UseCollectiblesData)(previewSkuId);
return (
previewSkuId == null
? null
: (
product != null
? (
<View style={styles.productDetailsContainer}>
{((Text) => <Text variant="text-md/bold" color="text-default">{product?.name ?? purchase?.name}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}
<EditCollectiblesPreviewDescription
user={user}
product={product}
purchase={purchase}
nitroJoinCTA={nitroJoinCTA}
nitroUpgradeCTA={nitroUpgradeCTA}
/>
</View>
)
: (
purchase == null
? null
: (
<View style={styles.productDetailsContainer}>
{((Text) => <Text variant="text-md/bold" color="text-default">{product?.name ?? purchase?.name}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}
<EditCollectiblesPreviewDescription
user={user}
product={product}
purchase={purchase}
nitroJoinCTA={nitroJoinCTA}
nitroUpgradeCTA={nitroUpgradeCTA}
/>
</View>
)
)
)
);
}
items2[2] = r12;
return (
<>
{items2}
</>
);
}
function _default_66843({user, previewSkuId, nitroJoinCTA, nitroUpgradeCTA}) { // fn#66843, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8599:1752, offset: 0x01c0c781, size: 278 bytes, params: 2, frame: 26
const styles = useStyles();
const {product, purchase} = (importDefault(8405) /* metro dependency 8405: useCollectiblesData */)(previewSkuId);
return previewSkuId == null ? null : product != null ? <View style={styles.productDetailsContainer}>{((Text) => <Text variant="text-md/bold" color="text-default">{product?.name ?? purchase?.name}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}<EditCollectiblesPreviewDescription user={user} product={product} purchase={purchase} nitroJoinCTA={nitroJoinCTA} nitroUpgradeCTA={nitroUpgradeCTA} /></View> : purchase == null ? null : <View style={styles.productDetailsContainer}>{((Text) => <Text variant="text-md/bold" color="text-default">{product?.name ?? purchase?.name}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}<EditCollectiblesPreviewDescription user={user} product={product} purchase={purchase} nitroJoinCTA={nitroJoinCTA} nitroUpgradeCTA={nitroUpgradeCTA} /></View>;
}
global.__d(_fun66840, 8414, [31, 27, 1949, 33, 4501, 566, 3802, 5134, 3826, 4573, 1244, 8405,
2]) /* metro module 8414, dependencies: [31, 27, 1949, 33, 4501, 566, 3802, 5134, 3826, 4573, 1244, 8405, 2] */;
@@ -1,182 +1,255 @@
/* Metro module 13223; source: modules/user_profile/native/EditNameplateActionSheet.tsx; dependencies: [57, 31, 27, 5145, 1902, 1945, 661, 33, 4501, 697, 7326, 6771, 6789, 683, 8400, 6275, 4573, 1244, 8404, 7675, 566, 13224, 8402, 13225, 8414, 8415, 8409, 8405, 8482, 4589, 10507, 2] */
import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */
import GuildMemberStore from '../../../stores/GuildMemberStore.tsx'; /* Metro dependency 1945 */
import CollectiblesPurchaseStore from '../../collectibles/CollectiblesPurchaseStore.tsx'; /* Metro dependency 5145 */
import UseAnalyticsLocations from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import EditCollectiblesCTAButton from './EditCollectiblesCTAButton.tsx'; /* Metro dependency 8404 */
import UseCollectiblesData from '../../collectibles/hooks/useCollectiblesData.tsx'; /* Metro dependency 8405 */
import EditCollectiblesPreviewDetails from './EditCollectiblesPreviewDetails.tsx'; /* Metro dependency 8414 */
import UseNameplateSections from '../../collectibles/nameplates/useNameplateSections.tsx'; /* Metro dependency 13224 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as IndexNativeModule from '../../../intl/index.native.tsx'; /* Metro dependency 1244 */
import * as NameplateRecordModule from '../../collectibles/records/NameplateRecord.tsx'; /* Metro dependency 1902 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
import * as BottomSheetNativeModule from '../../../design/components/Sheet/native/BottomSheet.native.tsx'; /* Metro dependency 6275 */
import * as UseAnalyticsLocationsModule from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import * as UseBottomSheetRefModule from '../../../design/components/Sheet/native/useBottomSheetRef.tsx'; /* Metro dependency 7326 */
import * as UseFetchCollectiblesCategoriesAndPurchasesModule from '../../collectibles/hooks/useFetchCollectiblesCategoriesAndPurchases.tsx'; /* Metro dependency 7675 */
import * as UseCollectibleListLayoutModule from '../../collectibles/native/useCollectibleListLayout.tsx'; /* Metro dependency 8409 */
import * as EditCollectiblesPickerListModule from '../../collectibles/native/EditCollectiblesPickerList.tsx'; /* Metro dependency 8415 */
import * as NameplateDummyUserPreviewModule from '../../collectibles/nameplates/native/NameplateDummyUserPreview.tsx'; /* Metro dependency 8482 */
import * as NameplatePreviewModule from '../../collectibles/nameplates/native/NameplatePreview.tsx'; /* Metro dependency 10507 */
import * as EditNameplateSectionModule from '../../collectibles/nameplates/native/EditNameplateSection.tsx'; /* Metro dependency 13225 */
function _fun100864(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100864, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13413:6, offset: 0x021fd72c, size: 503 bytes, params: 8, frame: 22
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
const env0_5 = (require(27) /* metro dependency 27 */).View;
const collectiblesPurchaseStore = importDefault(5145) /* metro dependency 5145: CollectiblesPurchaseStore */;
const env0_7 = (require(1902) /* metro dependency 1902: NameplateRecord */).isNameplateRecord;
const guildMemberStore = importDefault(1945) /* metro dependency 1945: GuildMemberStore */;
const env0_9 = (require(661) /* metro dependency 661: Constants */).AnalyticEvents;
let value = require(33) /* metro dependency 33 */;
let value = JsxRuntimeModule;
const env0_10 = value.jsx;
const env0_11 = value.jsxs;
const env0_12 = value.Fragment;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
object = {};
let MOBILE_ACTIONSHEET_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_ACTIONSHEET_BACKGROUND;
object2.container = {flex: 1, backgroundColor: MOBILE_ACTIONSHEET_BACKGROUND};
object2.bounceOffset = {'position': 'absolute', 'top': -250, 'height': 250, 'right': 0, 'left': 0};
object.container = {flex: 1, backgroundColor: MOBILE_ACTIONSHEET_BACKGROUND};
object.bounceOffset = {'position': 'absolute', 'top': -250, 'height': 250, 'right': 0, 'left': 0};
const MOBILE_TEXT_HEADING_PRIMARY = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_TEXT_HEADING_PRIMARY;
object2.title = {'alignSelf': 'center', 'color': null, 'margin': 25, color: MOBILE_TEXT_HEADING_PRIMARY};
object2.nameplatePreviewContainer = {'width': '80%', 'alignSelf': 'center', 'justifyContent': 'center',
object.title = {'alignSelf': 'center', 'color': null, 'margin': 25, color: MOBILE_TEXT_HEADING_PRIMARY};
object.nameplatePreviewContainer = {'width': '80%', 'alignSelf': 'center', 'justifyContent': 'center',
'alignItems': 'center'};
object2.nameplateGradientContainer = {width: '100%'};
object.nameplateGradientContainer = {width: '100%'};
MOBILE_ACTIONSHEET_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_ACTIONSHEET_BACKGROUND;
object2.nameplatePreviewGradient = {'position': 'absolute', 'width': '100%', 'height': '100%',
object.nameplatePreviewGradient = {'position': 'absolute', 'width': '100%', 'height': '100%',
color: MOBILE_ACTIONSHEET_BACKGROUND};
const env0_13 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/EditNameplateActionSheet.tsx');
const env0_13 = Reflect.apply(createStyles, value, [object]);
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/EditNameplateActionSheet.tsx');
exports.default = EditNameplateActionSheet;
}
function EditNameplateInner({user, selectedNameplate, setSelectedNameplate, guildId}) { // fn#100865, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13413:799, offset: 0x021fd923, size: 659 bytes, params: 2, frame: 29
(UseFetchCollectiblesCategoriesAndPurchasesModule).useGetOrFetchCollectiblesCategoriesAndPurchases();
const isFetching = (require(566) /* metro dependency 566: flux */).useStateFromStores([CollectiblesPurchaseStore],
function() {
return CollectiblesPurchaseStore.isFetching;
});
const value3 = (UseNameplateSections)();
const value4 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildMemberStore], _fun100867);
const profilePreviewValue = (require(8402) /* metro dependency 8402: ProfileCustomizationUtils */).getProfilePreviewValue({pendingValue: selectedNameplate,
userValue: user == null || user.collectibles == null ? undefined : user.collectibles.nameplate,
guildValue: value4 == null || value4.collectibles == null ? undefined : value4.collectibles.nameplate,
guildId: guildId});
const value6 = ReactModule.useCallback(_fun100868, [setSelectedNameplate, guildId]);
const jsxRuntimeEnv0_12Binding = jsxRuntimeEnv0_12;
let skuId = profilePreviewValue?.skuId;
const items2 = [
<NameplateActionSheetPreview
previewSkuId={skuId}
user={user}
guildId={guildId}
/>,
];
const defaultImportProps = {user: user, previewSkuId: profilePreviewValue?.skuId};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
defaultImportProps.nitroJoinCTA = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['V+IE93']);
defaultImportProps.nitroUpgradeCTA = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.a6SrkR);
items2[1] = <EditCollectiblesPreviewDetails {...defaultImportProps} />;
const EditCollectiblesPickerList = (EditCollectiblesPickerListModule).EditCollectiblesPickerList;
skuId = selectedNameplate?.skuId;
const COLLECTIBLE_ROW_HEIGHT = (UseCollectibleListLayoutModule).COLLECTIBLE_ROW_HEIGHT;
items2[2] = (
<EditCollectiblesPickerList
sections={value3}
selectedSkuId={skuId}
renderRow={value6}
estimatedItemSize={COLLECTIBLE_ROW_HEIGHT}
isFetching={isFetching}
/>
);
return (
<>
{items2}
</>
);
function _fun100867() { // fn#100867, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13413:1038, offset: 0x01c0746e, size: 50 bytes, params: 1, frame: 14
const guildIdBinding = guildId;
const value2 = null;
return value2 != guildIdBinding ? GuildMemberStore.getMember(guildId, user.id) : value2;
}
function EditNameplateInner({user, selectedNameplate, setSelectedNameplate, guildId}) { // fn#100865, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13413:799, offset: 0x021fd923, size: 659 bytes, params: 2, frame: 29
(require(7675) /* metro dependency 7675: useFetchCollectiblesCategoriesAndPurchases */).useGetOrFetchCollectiblesCategoriesAndPurchases();
const isFetching = (require(566) /* metro dependency 566: flux */).useStateFromStores([CollectiblesPurchaseStore],
function() {
return CollectiblesPurchaseStore.isFetching;
});
const value3 = (importDefault(13224) /* metro dependency 13224: useNameplateSections */)();
const value4 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildMemberStore], _fun100867);
const profilePreviewValue = (require(8402) /* metro dependency 8402: ProfileCustomizationUtils */).getProfilePreviewValue({pendingValue: selectedNameplate,
userValue: user == null || user.collectibles == null ? undefined : user.collectibles.nameplate,
guildValue: value4 == null || value4.collectibles == null ? undefined : value4.collectibles.nameplate,
guildId: guildId});
const value6 = env0_4.useCallback(_fun100868, [setSelectedNameplate, guildId]);
const jsxRuntimeEnv0_12Binding = jsxRuntimeEnv0_12;
let skuId = profilePreviewValue?.skuId;
const items2 = [<NameplateActionSheetPreview previewSkuId={skuId} user={user} guildId={guildId} />];
const EditCollectiblesPreviewDetails = importDefault(8414) /* metro dependency 8414: EditCollectiblesPreviewDetails */;
const defaultImportProps = {user: user, previewSkuId: profilePreviewValue?.skuId};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
defaultImportProps.nitroJoinCTA = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['V+IE93']);
defaultImportProps.nitroUpgradeCTA = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.a6SrkR);
items2[1] = <EditCollectiblesPreviewDetails {...defaultImportProps} />;
const EditCollectiblesPickerList = (require(8415) /* metro dependency 8415: EditCollectiblesPickerList */).EditCollectiblesPickerList;
skuId = selectedNameplate?.skuId;
const COLLECTIBLE_ROW_HEIGHT = (require(8409) /* metro dependency 8409: useCollectibleListLayout */).COLLECTIBLE_ROW_HEIGHT;
items2[2] = <EditCollectiblesPickerList sections={value3} selectedSkuId={skuId} renderRow={value6} estimatedItemSize={COLLECTIBLE_ROW_HEIGHT} isFetching={isFetching} />;
return (
<>
{items2}
</>
);
}
function _fun100868({items, size, selectedSkuId}) { // fn#100868, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13413:1283, offset: 0x021fdbb6, size: 99 bytes, params: 2, frame: 16
const EditNameplateRow = (EditNameplateSectionModule).EditNameplateRow;
return (
<EditNameplateRow
items={items}
size={size}
selectedSkuId={selectedSkuId}
setSelectedNameplate={setSelectedNameplate}
guildId={guildId}
/>
);
}
function NameplateActionSheetPreview({previewSkuId, user, guildId}) { // fn#100869, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13413:1895, offset: 0x021fdc19, size: 827 bytes, params: 2, frame: 38
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const styles = useStyles();
let value2 = (importDefault(8405) /* metro dependency 8405: useCollectiblesData */)(previewSkuId);
let value3 = env0_4.useMemo(function() {
var r1;
var productBinding = product;
var value2 = null;
var value3 = undefined;
r1 = value2 == productBinding ? value3 : product.items[0];
r1 = value2 == r1 ? value2 == purchase ? value3 : purchase.items[0] : r1;
return isNameplateRecord(r1) ? r1 : value2;
}, [value2.purchase, value2.product]);
const r4 = value3 != null ? intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.YJig7C,
{a11y_text: value3.label}) : intl.string((require(1244) /* metro dependency 1244: indexNative */).t.aqlsGS);
let nameplateGradientContainer = styles.nameplateGradientContainer;
const NameplateDummyUserPreview = (require(8482) /* metro dependency 8482: NameplateDummyUserPreview */).NameplateDummyUserPreview;
const items2 = [<NameplateDummyUserPreview width={100} />];
items2[1] = <NameplateDummyUserPreview width={140} />;
items2[2] = ((Component) => <Component style={styles.nameplatePreviewGradient} start={{'x': 0,
'y': 0.1}} end={{'x': 0, 'y': 0.8}} colors={[styles.nameplatePreviewGradient.color,
'' + styles.nameplatePreviewGradient.color + '00']} />)(importDefault(4589) /* metro dependency 4589 */);
const items3 = [<View style={nameplateGradientContainer}>{items2}</View>];
const NameplatePreview = (require(10507) /* metro dependency 10507: NameplatePreview */).NameplatePreview;
items3[1] = <NameplatePreview nameplate={value3} user={user} guildId={guildId} animate {...{['aria-hidden']: true}} />;
nameplateGradientContainer = styles.nameplateGradientContainer;
const items4 = [<NameplateDummyUserPreview width={140} />];
items4[1] = <NameplateDummyUserPreview width={100} />;
items4[2] = ((Component) => <Component style={styles.nameplatePreviewGradient} start={{'x': 0,
'y': 0.2}} end={{'x': 0, 'y': 0.9}} colors={['' + styles.nameplatePreviewGradient.color + '00',
styles.nameplatePreviewGradient.color]} />)(importDefault(4589) /* metro dependency 4589 */);
items3[2] = <View style={nameplateGradientContainer}>{items4}</View>;
return (
<View
style={styles.nameplatePreviewContainer}
accessibilityLabel={r4}
accessibilityRole="image"
accessible
>
{items3}
</View>
);
}
}
function EditNameplateActionSheet({user, currentNameplate, guildId}) { // fn#100871, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13413:3058, offset: 0x021fdf54, size: 633 bytes, params: 2, frame: 36
const styles = useStyles();
const useBottomSheetRefModule = require(7326) /* metro dependency 7326: useBottomSheetRef */;
const useBottomSheetRef = useBottomSheetRefModule.useBottomSheetRef;
const bottomSheetRef = Reflect.apply(useBottomSheetRef, useBottomSheetRefModule, []).bottomSheetRef;
let binding = env0_4;
const [property, property2] = env0_3(binding.useState(undefined), 2);
const r15 = property === undefined ? currentNameplate : property;
let defaultImport = importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */;
let EDIT_NAMEPLATE_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_NAMEPLATE_SHEET;
const analyticsLocations = defaultImport(EDIT_NAMEPLATE_SHEET).analyticsLocations;
binding = env0_4;
const value5 = binding.useCallback(function() {
var defaultImport = importDefault(dependencyMap[13]);
var OPEN_POPOUT = AnalyticEvents.OPEN_POPOUT;
defaultImport.track(OPEN_POPOUT, {type: importDefault(dependencyMap[12]).EDIT_NAMEPLATE_SHEET,
is_fullscreen: true});
}, []);
const value6 = binding.useCallback(_fun100873, [property, guildId]);
const AnalyticsLocationProvider = (require(6771) /* metro dependency 6771: useAnalyticsLocations */).AnalyticsLocationProvider;
const BottomSheet = (require(6275) /* metro dependency 6275: BottomSheetNative */).BottomSheet;
const view = <View style={styles.bounceOffset} />;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const BwdeM1 = (require(1244) /* metro dependency 1244: indexNative */).t.BwdeM1;
const view2 = <View style={styles.container}>{view}<Text variant="redesign/heading-18/bold" style={styles.title} accessibilityRole="header">{Reflect.apply(string,
intl,
[BwdeM1])}</Text><EditNameplateInner user={user} selectedNameplate={r15} setSelectedNameplate={property2} guildId={guildId} /></View>;
const EditCollectiblesCTAButton = importDefault(8404) /* metro dependency 8404: EditCollectiblesCTAButton */;
const defaultImport2Props = {user: user, currentSkuId: currentNameplate?.skuId, selectedSkuId: r15?.skuId,
onApply: value6, analyticsLocations: analyticsLocations};
EDIT_NAMEPLATE_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_NAMEPLATE_SHEET;
defaultImport2Props.analyticsSource = EDIT_NAMEPLATE_SHEET;
return (
<AnalyticsLocationProvider value={analyticsLocations}>
<BottomSheet
scrollable
ref={bottomSheetRef}
onExpand={value5}
startExpanded
function NameplateActionSheetPreview({previewSkuId, user, guildId}) { // fn#100869, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13413:1895, offset: 0x021fdc19, size: 827 bytes, params: 2, frame: 38
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const styles = useStyles();
let value2 = (UseCollectiblesData)(previewSkuId);
let value3 = ReactModule.useMemo(function() {
var r1;
var productBinding = product;
var value2 = null;
var value3 = undefined;
r1 = value2 == productBinding ? value3 : product.items[0];
r1 = value2 == r1 ? value2 == purchase ? value3 : purchase.items[0] : r1;
return isNameplateRecord(r1) ? r1 : value2;
}, [value2.purchase, value2.product]);
const r4 = value3 != null ? intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.YJig7C,
{a11y_text: value3.label}) : intl.string((require(1244) /* metro dependency 1244: indexNative */).t.aqlsGS);
let nameplateGradientContainer = styles.nameplateGradientContainer;
const NameplateDummyUserPreview = (NameplateDummyUserPreviewModule).NameplateDummyUserPreview;
const items2 = [
<NameplateDummyUserPreview width={100} />,
];
items2[1] = <NameplateDummyUserPreview width={140} />;
items2[2] = ((Component) => <Component style={styles.nameplatePreviewGradient} start={{'x': 0,
'y': 0.1}} end={{'x': 0, 'y': 0.8}} colors={[styles.nameplatePreviewGradient.color,
'' + styles.nameplatePreviewGradient.color + '00']} />)(importDefault(4589) /* metro dependency 4589 */);
const items3 = [
<View style={nameplateGradientContainer}>
{items2}
</View>,
];
const NameplatePreview = (NameplatePreviewModule).NameplatePreview;
items3[1] = (
<NameplatePreview
nameplate={value3}
user={user}
guildId={guildId}
animate
{...{['aria-hidden']: true}}
/>
);
nameplateGradientContainer = styles.nameplateGradientContainer;
const items4 = [
<NameplateDummyUserPreview width={140} />,
];
items4[1] = <NameplateDummyUserPreview width={100} />;
items4[2] = ((Component) => <Component style={styles.nameplatePreviewGradient} start={{'x': 0,
'y': 0.2}} end={{'x': 0, 'y': 0.9}} colors={['' + styles.nameplatePreviewGradient.color + '00',
styles.nameplatePreviewGradient.color]} />)(importDefault(4589) /* metro dependency 4589 */);
items3[2] = (
<View style={nameplateGradientContainer}>
{items4}
</View>
);
return (
<View
style={styles.nameplatePreviewContainer}
accessibilityLabel={r4}
accessibilityRole="image"
accessible
>
{view2}
<EditCollectiblesCTAButton {...defaultImport2Props} />
</BottomSheet>
</AnalyticsLocationProvider>
);
}
{items3}
</View>
);
}
function _fun100868({items, size, selectedSkuId}) { // fn#100868, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13413:1283, offset: 0x021fdbb6, size: 99 bytes, params: 2, frame: 16
const EditNameplateRow = (require(13225) /* metro dependency 13225: EditNameplateSection */).EditNameplateRow;
return (
<EditNameplateRow
items={items}
size={size}
selectedSkuId={selectedSkuId}
setSelectedNameplate={setSelectedNameplate}
guildId={guildId}
/>
);
}
function EditNameplateActionSheet({user, currentNameplate, guildId}) { // fn#100871, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13413:3058, offset: 0x021fdf54, size: 633 bytes, params: 2, frame: 36
const styles = useStyles();
const useBottomSheetRef = UseBottomSheetRefModule.useBottomSheetRef;
const bottomSheetRef = Reflect.apply(useBottomSheetRef, UseBottomSheetRefModule, []).bottomSheetRef;
let binding = ReactModule;
const [property, property2] = Module00057(binding.useState(undefined), 2);
const r15 = property === undefined ? currentNameplate : property;
let defaultImport = UseAnalyticsLocations;
let EDIT_NAMEPLATE_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_NAMEPLATE_SHEET;
const analyticsLocations = defaultImport(EDIT_NAMEPLATE_SHEET).analyticsLocations;
binding = ReactModule;
const value5 = binding.useCallback(function() {
var defaultImport = importDefault(dependencyMap[13]);
var OPEN_POPOUT = AnalyticEvents.OPEN_POPOUT;
defaultImport.track(OPEN_POPOUT, {type: importDefault(dependencyMap[12]).EDIT_NAMEPLATE_SHEET,
is_fullscreen: true});
}, []);
const value6 = binding.useCallback(_fun100873, [property, guildId]);
const AnalyticsLocationProvider = (UseAnalyticsLocationsModule).AnalyticsLocationProvider;
const BottomSheet = (BottomSheetNativeModule).BottomSheet;
const view = <View style={styles.bounceOffset} />;
const Text = (TextModule).Text;
const intl = (IndexNativeModule).intl;
const string = intl.string;
const BwdeM1 = (IndexNativeModule).t.BwdeM1;
const view2 = (
<View style={styles.container}>
{view}
<Text
variant="redesign/heading-18/bold"
style={styles.title}
accessibilityRole="header"
>
{Reflect.apply(string, intl, [BwdeM1])}
</Text>
<EditNameplateInner
user={user}
selectedNameplate={r15}
setSelectedNameplate={property2}
guildId={guildId}
/>
</View>
);
const defaultImport2Props = {user: user, currentSkuId: currentNameplate?.skuId, selectedSkuId: r15?.skuId,
onApply: value6, analyticsLocations: analyticsLocations};
EDIT_NAMEPLATE_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_NAMEPLATE_SHEET;
defaultImport2Props.analyticsSource = EDIT_NAMEPLATE_SHEET;
return (
<AnalyticsLocationProvider value={analyticsLocations}>
<BottomSheet
scrollable
ref={bottomSheetRef}
onExpand={value5}
startExpanded
>
{view2}
<EditCollectiblesCTAButton {...defaultImport2Props} />
</BottomSheet>
</AnalyticsLocationProvider>
);
function _fun100873() { // fn#100873, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13413:3438, offset: 0x021fe21c, size: 73 bytes, params: 1, frame: 15
let value = environment.__proto__;
value = require(8400) /* metro dependency 8400: UserProfileSettingsActionCreators */;
const value3 = null;
value.setPendingChanges({guildId: guildId, nameplate: value3 != env0_1 ? env0_1 : value3});
}
}
function _fun100873() { // fn#100873, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13413:3438, offset: 0x021fe21c, size: 73 bytes, params: 1, frame: 15
let value = environment.__proto__;
value = require(8400) /* metro dependency 8400: UserProfileSettingsActionCreators */;
const value3 = null;
value.setPendingChanges({guildId: guildId, nameplate: value3 != env0_1 ? env0_1 : value3});
}
global.__d(_fun100864, 13223, [57, 31, 27, 5145, 1902, 1945, 661, 33, 4501, 697, 7326, 6771, 6789, 683, 8400, 6275,
4573, 1244, 8404, 7675, 566, 13224, 8402, 13225, 8414, 8415, 8409, 8405, 8482, 4589, 10507,
2]) /* metro module 13223, dependencies: [57, 31, 27, 5145, 1902, 1945, 661, 33, 4501, 697, 7326, 6771, 6789, 683, 8400, 6275, 4573, 1244, 8404, 7675, 566, 13224, 8402, 13225, 8414, 8415, 8409, 8405, 8482, 4589, 10507, 2] */;
@@ -1,203 +1,254 @@
/* Metro module 13214; source: modules/user_profile/native/EditProfileEffectActionSheet.tsx; dependencies: [57, 31, 27, 5145, 5127, 661, 33, 4501, 697, 8490, 7326, 6771, 6789, 683, 7613, 8400, 6275, 4573, 1244, 8404, 7675, 566, 13215, 8402, 8491, 13216, 8414, 8415, 8409, 8405, 8488, 4589, 2] */
import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */
import AnalyticsUtils from '../../../utils/AnalyticsUtils.tsx'; /* Metro dependency 683 */
import CollectiblesPurchaseStore from '../../collectibles/CollectiblesPurchaseStore.tsx'; /* Metro dependency 5145 */
import UseAnalyticsLocations from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import AnalyticsLocation from '../../app_analytics/AnalyticsLocation.tsx'; /* Metro dependency 6789 */
import EditCollectiblesCTAButton from './EditCollectiblesCTAButton.tsx'; /* Metro dependency 8404 */
import UseCollectiblesData from '../../collectibles/hooks/useCollectiblesData.tsx'; /* Metro dependency 8405 */
import EditCollectiblesPreviewDetails from './EditCollectiblesPreviewDetails.tsx'; /* Metro dependency 8414 */
import ProfileEffectUserPreview from '../../collectibles/profile_effects/native/previews/ProfileEffectUserPreview.tsx'; /* Metro dependency 8488 */
import UseDisplayProfile from '../hooks/useDisplayProfile.tsx'; /* Metro dependency 8490 */
import UseProfileEffectSections from '../../collectibles/profile_effects/useProfileEffectSections.tsx'; /* Metro dependency 13215 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as IndexNativeModule from '../../../intl/index.native.tsx'; /* Metro dependency 1244 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
import * as ProfileEffectRecordModule from '../../collectibles/records/ProfileEffectRecord.tsx'; /* Metro dependency 5127 */
import * as BottomSheetNativeModule from '../../../design/components/Sheet/native/BottomSheet.native.tsx'; /* Metro dependency 6275 */
import * as UseAnalyticsLocationsModule from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import * as UseBottomSheetRefModule from '../../../design/components/Sheet/native/useBottomSheetRef.tsx'; /* Metro dependency 7326 */
import * as UseFetchCollectiblesCategoriesAndPurchasesModule from '../../collectibles/hooks/useFetchCollectiblesCategoriesAndPurchases.tsx'; /* Metro dependency 7675 */
import * as UseCollectibleListLayoutModule from '../../collectibles/native/useCollectibleListLayout.tsx'; /* Metro dependency 8409 */
import * as EditCollectiblesPickerListModule from '../../collectibles/native/EditCollectiblesPickerList.tsx'; /* Metro dependency 8415 */
import * as EditProfileEffectSectionModule from '../../collectibles/profile_effects/native/EditProfileEffectSection.tsx'; /* Metro dependency 13216 */
function _fun100806(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100806, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:6, offset: 0x021fa056, size: 497 bytes, params: 8, frame: 23
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
let value = require(27) /* metro dependency 27 */;
let value = ReactNativeModule;
const env0_5 = value.View;
const StyleSheet = value.StyleSheet;
const collectiblesPurchaseStore = importDefault(5145) /* metro dependency 5145: CollectiblesPurchaseStore */;
const env0_7 = (require(5127) /* metro dependency 5127: ProfileEffectRecord */).isProfileEffectRecord;
const env0_8 = (require(661) /* metro dependency 661: Constants */).AnalyticEvents;
value = require(33) /* metro dependency 33 */;
const env0_9 = value.jsx;
const env0_10 = value.jsxs;
const env0_11 = value.Fragment;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
object = {};
let MOBILE_ACTIONSHEET_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_ACTIONSHEET_BACKGROUND;
object2.container = {flex: 1, backgroundColor: MOBILE_ACTIONSHEET_BACKGROUND};
object2.bounceOffset = {'position': 'absolute', 'top': -250, 'height': 250, 'right': 0, 'left': 0};
object.container = {flex: 1, backgroundColor: MOBILE_ACTIONSHEET_BACKGROUND};
object.bounceOffset = {'position': 'absolute', 'top': -250, 'height': 250, 'right': 0, 'left': 0};
const MOBILE_TEXT_HEADING_PRIMARY = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_TEXT_HEADING_PRIMARY;
object2.title = {'alignSelf': 'center', 'color': null, 'margin': 25, color: MOBILE_TEXT_HEADING_PRIMARY};
object2.previewContainer = {'overflow': 'hidden', 'height': 300, 'alignItems': 'center'};
const object3 = {};
copyDataProperties(object3, StyleSheet.absoluteFillObject, undefined);
object3['bottom'] = -1;
object.title = {'alignSelf': 'center', 'color': null, 'margin': 25, color: MOBILE_TEXT_HEADING_PRIMARY};
object.previewContainer = {'overflow': 'hidden', 'height': 300, 'alignItems': 'center'};
const object4 = {};
copyDataProperties(object4, StyleSheet.absoluteFillObject, undefined);
object4['bottom'] = -1;
MOBILE_ACTIONSHEET_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_ACTIONSHEET_BACKGROUND;
object3['color'] = MOBILE_ACTIONSHEET_BACKGROUND;
object2.previewGradient = object3;
const env0_12 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/EditProfileEffectActionSheet.tsx');
object4['color'] = MOBILE_ACTIONSHEET_BACKGROUND;
object.previewGradient = object4;
const env0_12 = Reflect.apply(createStyles, value, [object]);
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/EditProfileEffectActionSheet.tsx');
exports.default = EditProfileEffectActionSheet;
}
function EditProfileEffectInner({user, selectedProfileEffect, setSelectedProfileEffect, guildId, isTryItOut}) { // fn#100807, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:717, offset: 0x021fa247, size: 689 bytes, params: 2, frame: 29
isTryItOut = !(isTryItOut === undefined) && isTryItOut;
(UseFetchCollectiblesCategoriesAndPurchasesModule).useGetOrFetchCollectiblesCategoriesAndPurchases();
const isFetching = (require(566) /* metro dependency 566: flux */).useStateFromStores([CollectiblesPurchaseStore],
function() {
return CollectiblesPurchaseStore.isFetching;
});
const value4 = (UseProfileEffectSections)();
const value5 = (UseDisplayProfile)(user.id, guildId);
const profilePreviewValue = (require(8402) /* metro dependency 8402: ProfileCustomizationUtils */).getProfilePreviewValue({pendingValue: selectedProfileEffect,
userValue: value5 == null || value5._userProfile == null ? undefined : value5._userProfile.profileEffect,
guildValue: value5 == null || value5._guildMemberProfile == null ? undefined : value5._guildMemberProfile.profileEffect,
guildId: guildId});
ReactModule.useEffect(_fun100809, [user]);
const value7 = ReactModule.useCallback(_fun100810, [setSelectedProfileEffect, guildId, isTryItOut]);
const jsxRuntimeEnv0_11Binding = jsxRuntimeEnv0_11;
let skuId = profilePreviewValue?.skuId;
const items2 = [
<ProfileEffectSectionPreview
previewSkuId={skuId}
user={user}
guildId={guildId}
/>,
];
const defaultImport2Props = {user: user, previewSkuId: profilePreviewValue?.skuId};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
defaultImport2Props.nitroJoinCTA = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.pertpd);
defaultImport2Props.nitroUpgradeCTA = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['5eotIZ']);
items2[1] = <EditCollectiblesPreviewDetails {...defaultImport2Props} />;
const EditCollectiblesPickerList = (EditCollectiblesPickerListModule).EditCollectiblesPickerList;
skuId = selectedProfileEffect?.skuId;
const COLLECTIBLE_ROW_HEIGHT = (UseCollectibleListLayoutModule).COLLECTIBLE_ROW_HEIGHT;
items2[2] = (
<EditCollectiblesPickerList
sections={value4}
selectedSkuId={skuId}
renderRow={value7}
estimatedItemSize={COLLECTIBLE_ROW_HEIGHT}
isFetching={isFetching}
/>
);
return (
<>
{items2}
</>
);
function _fun100809() { // fn#100809, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:1180, offset: 0x021fa4f8, size: 107 bytes, params: 1, frame: 17
var value3;
var defaultImport;
if (!(user == null || user.isNonUserBot())) {
value3 = environment.__proto__;
defaultImport = importDefault(8491) /* metro dependency 8491: maybeFetchUserProfile */;
userBinding = user;
defaultImport(userBinding.id, userBinding.getAvatarURL(null, 80), {'withMutualGuilds': true,
'dispatchWait': true});
}
}
function EditProfileEffectInner({user, selectedProfileEffect, setSelectedProfileEffect, guildId, isTryItOut}) { // fn#100807, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:717, offset: 0x021fa247, size: 689 bytes, params: 2, frame: 29
isTryItOut = !(isTryItOut === undefined) && isTryItOut;
(require(7675) /* metro dependency 7675: useFetchCollectiblesCategoriesAndPurchases */).useGetOrFetchCollectiblesCategoriesAndPurchases();
const isFetching = (require(566) /* metro dependency 566: flux */).useStateFromStores([CollectiblesPurchaseStore],
function() {
return CollectiblesPurchaseStore.isFetching;
});
const value4 = (importDefault(13215) /* metro dependency 13215: useProfileEffectSections */)();
const value5 = (importDefault(8490) /* metro dependency 8490: useDisplayProfile */)(user.id, guildId);
const profilePreviewValue = (require(8402) /* metro dependency 8402: ProfileCustomizationUtils */).getProfilePreviewValue({pendingValue: selectedProfileEffect,
userValue: value5 == null || value5._userProfile == null ? undefined : value5._userProfile.profileEffect,
guildValue: value5 == null || value5._guildMemberProfile == null ? undefined : value5._guildMemberProfile.profileEffect,
guildId: guildId});
const binding = env0_4;
binding.useEffect(_fun100809, [user]);
const value7 = binding.useCallback(_fun100810, [setSelectedProfileEffect, guildId, isTryItOut]);
const jsxRuntimeEnv0_11Binding = jsxRuntimeEnv0_11;
let skuId = profilePreviewValue?.skuId;
const items2 = [<ProfileEffectSectionPreview previewSkuId={skuId} user={user} guildId={guildId} />];
const EditCollectiblesPreviewDetails = importDefault(8414) /* metro dependency 8414: EditCollectiblesPreviewDetails */;
const defaultImport2Props = {user: user, previewSkuId: profilePreviewValue?.skuId};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
defaultImport2Props.nitroJoinCTA = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.pertpd);
defaultImport2Props.nitroUpgradeCTA = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['5eotIZ']);
items2[1] = <EditCollectiblesPreviewDetails {...defaultImport2Props} />;
const EditCollectiblesPickerList = (require(8415) /* metro dependency 8415: EditCollectiblesPickerList */).EditCollectiblesPickerList;
skuId = selectedProfileEffect?.skuId;
const COLLECTIBLE_ROW_HEIGHT = (require(8409) /* metro dependency 8409: useCollectibleListLayout */).COLLECTIBLE_ROW_HEIGHT;
items2[2] = <EditCollectiblesPickerList sections={value4} selectedSkuId={skuId} renderRow={value7} estimatedItemSize={COLLECTIBLE_ROW_HEIGHT} isFetching={isFetching} />;
return (
<>
{items2}
</>
);
}
function _fun100810({items, size, selectedSkuId}) { // fn#100810, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:1317, offset: 0x021fa563, size: 108 bytes, params: 2, frame: 16
const EditProfileEffectRow = (EditProfileEffectSectionModule).EditProfileEffectRow;
return (
<EditProfileEffectRow
items={items}
size={size}
selectedSkuId={selectedSkuId}
setSelectedProfileEffect={setSelectedProfileEffect}
guildId={guildId}
isTryItOut={isTryItOut}
/>
);
}
function ProfileEffectSectionPreview({previewSkuId, user, guildId}) { // fn#100811, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:1952, offset: 0x021fa5cf, size: 329 bytes, params: 2, frame: 22
const styles = useStyles();
let value2 = (importDefault(8405) /* metro dependency 8405: useCollectiblesData */)(previewSkuId);
let value3 = env0_4.useMemo(function() {
var r1;
var productBinding = product;
var value2 = null;
var value3 = undefined;
r1 = value2 == productBinding ? value3 : product.items[0];
r1 = value2 == r1 ? value2 == purchase ? value3 : purchase.items[0] : r1;
return isProfileEffectRecord(r1) ? r1 : value2;
}, [value2.purchase, value2.product]);
let value = importDefault(8488) /* metro dependency 8488: ProfileEffectUserPreview */;
value = ((Component) => <Component user={user} guildId={guildId} profileEffect={value3} maxWidth={250} />)(value);
const items2 = [value];
items2[1] = ((Component) => <Component style={styles.previewGradient} start={{'x': 0, 'y': 0.6}} end={{'x': 0,
'y': 1}} colors={['' + styles.previewGradient.color + '00',
styles.previewGradient.color]} />)(importDefault(4589) /* metro dependency 4589 */);
return (
<View style={styles.previewContainer}>
{items2}
</View>
);
}
function EditProfileEffectActionSheet({user, currentProfileEffect, guildId, isTryItOut}) { // fn#100813, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:2403, offset: 0x021fa718, size: 733 bytes, params: 2, frame: 38
const env0_3 = undefined;
const env0_4 = undefined;
const styles = useStyles();
const value4 = (importDefault(8490) /* metro dependency 8490: useDisplayProfile */)(user.id ?? '');
const binding = env0_4;
const [property, property2] = env0_3(binding.useState(currentProfileEffect), 2);
const useBottomSheetRefModule = require(7326) /* metro dependency 7326: useBottomSheetRef */;
const useBottomSheetRef = useBottomSheetRefModule.useBottomSheetRef;
const bottomSheetRef = Reflect.apply(useBottomSheetRef, useBottomSheetRefModule, []).bottomSheetRef;
const defaultImport2 = importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */;
let EDIT_PROFILE_EFFECT_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_PROFILE_EFFECT_SHEET;
const analyticsLocations = defaultImport2(EDIT_PROFILE_EFFECT_SHEET).analyticsLocations;
const value8 = binding.useCallback(_fun100815, [binding.useMemo(_fun100814, [guildId, value4])]);
const value9 = binding.useCallback(_fun100816, [property, guildId, isTryItOut]);
const AnalyticsLocationProvider = (require(6771) /* metro dependency 6771: useAnalyticsLocations */).AnalyticsLocationProvider;
const BottomSheet = (require(6275) /* metro dependency 6275: BottomSheetNative */).BottomSheet;
const view = <View style={styles.bounceOffset} />;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const view2 = <View style={styles.container}>{view}<Text variant="redesign/heading-18/bold" style={styles.title} accessibilityRole="header">{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['/6nv6N'])}</Text><EditProfileEffectInner user={user} selectedProfileEffect={property} setSelectedProfileEffect={property2} guildId={guildId} isTryItOut={isTryItOut} /></View>;
const EditCollectiblesCTAButton = importDefault(8404) /* metro dependency 8404: EditCollectiblesCTAButton */;
const defaultImport3Props = {user: user, currentSkuId: currentProfileEffect?.skuId, selectedSkuId: property?.skuId,
isTryItOut: isTryItOut, onApply: value9, analyticsLocations: analyticsLocations};
EDIT_PROFILE_EFFECT_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_PROFILE_EFFECT_SHEET;
defaultImport3Props.analyticsSource = EDIT_PROFILE_EFFECT_SHEET;
return (
<AnalyticsLocationProvider value={analyticsLocations}>
<BottomSheet
scrollable
ref={bottomSheetRef}
onExpand={value8}
startExpanded
>
{view2}
<EditCollectiblesCTAButton {...defaultImport3Props} />
</BottomSheet>
</AnalyticsLocationProvider>
);
}
function _fun100809() { // fn#100809, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:1180, offset: 0x021fa4f8, size: 107 bytes, params: 1, frame: 17
var value3;
var defaultImport;
if (!(user == null || user.isNonUserBot())) {
value3 = environment.__proto__;
defaultImport = importDefault(8491) /* metro dependency 8491: maybeFetchUserProfile */;
userBinding = user;
defaultImport(userBinding.id, userBinding.getAvatarURL(null, 80), {'withMutualGuilds': true,
'dispatchWait': true});
}
}
function _fun100810({items, size, selectedSkuId}) { // fn#100810, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:1317, offset: 0x021fa563, size: 108 bytes, params: 2, frame: 16
const EditProfileEffectRow = (require(13216) /* metro dependency 13216: EditProfileEffectSection */).EditProfileEffectRow;
return (
<EditProfileEffectRow
items={items}
size={size}
selectedSkuId={selectedSkuId}
setSelectedProfileEffect={setSelectedProfileEffect}
guildId={guildId}
isTryItOut={isTryItOut}
/>
);
}
function _fun100814() { // fn#100814, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:2704, offset: 0x021fa9f5, size: 98 bytes, params: 1, frame: 14
const object2 = {};
let value = environment.__proto__;
value = undefined;
const EDIT_PROFILE_EFFECT_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_PROFILE_EFFECT_SHEET;
object2.type = EDIT_PROFILE_EFFECT_SHEET;
object2.guild_id = guildId;
object2.profile_has_nitro_customization = env0_2 != null && (env0_2 == null ? value : env0_2.hasPremiumCustomization());
return object2;
}
function _fun100815() { // fn#100815, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:2874, offset: 0x021faa57, size: 75 bytes, params: 1, frame: 16
const defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
const track = defaultImport.track;
const OPEN_POPOUT = AnalyticEvents.OPEN_POPOUT;
const object2 = {};
copyDataProperties(object2, env0_4, undefined);
object2['is_fullscreen'] = true;
Reflect.apply(track, defaultImport, [OPEN_POPOUT, object2]);
}
function _fun100816() { // fn#100816, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:2957, offset: 0x021faaa2, size: 126 bytes, params: 1, frame: 16
var moduleValue;
var value3;
var moduleValue2;
var value4;
if (isTryItOut) {
moduleValue2 = require(7613) /* metro dependency 7613: UserProfileActionCreators */;
value4 = null;
moduleValue2.setTryItOutProfileEffect(value4 != env0_3 ? env0_3 : value4);
} else {
moduleValue = require(8400) /* metro dependency 8400: UserProfileSettingsActionCreators */;
value3 = null;
moduleValue.setPendingChanges({guildId: guildId, profileEffect: value3 != env0_3 ? env0_3 : value3});
function ProfileEffectSectionPreview({previewSkuId, user, guildId}) { // fn#100811, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:1952, offset: 0x021fa5cf, size: 329 bytes, params: 2, frame: 22
const styles = useStyles();
let value2 = (UseCollectiblesData)(previewSkuId);
let value3 = ReactModule.useMemo(function() {
var r1;
var productBinding = product;
var value2 = null;
var value3 = undefined;
r1 = value2 == productBinding ? value3 : product.items[0];
r1 = value2 == r1 ? value2 == purchase ? value3 : purchase.items[0] : r1;
return isProfileEffectRecord(r1) ? r1 : value2;
}, [value2.purchase, value2.product]);
let value = ProfileEffectUserPreview;
value = ((Component) => <Component user={user} guildId={guildId} profileEffect={value3} maxWidth={250} />)(value);
const items2 = [value];
items2[1] = ((Component) => <Component style={styles.previewGradient} start={{'x': 0, 'y': 0.6}} end={{'x': 0,
'y': 1}} colors={['' + styles.previewGradient.color + '00',
styles.previewGradient.color]} />)(importDefault(4589) /* metro dependency 4589 */);
return (
<View style={styles.previewContainer}>
{items2}
</View>
);
}
function EditProfileEffectActionSheet({user, currentProfileEffect, guildId, isTryItOut}) { // fn#100813, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:2403, offset: 0x021fa718, size: 733 bytes, params: 2, frame: 38
const env0_3 = undefined;
const env0_4 = undefined;
const styles = useStyles();
const value4 = (importDefault(8490) /* metro dependency 8490: useDisplayProfile */)(user.id ?? '');
const binding = env0_4;
const [property, property2] = env0_3(binding.useState(currentProfileEffect), 2);
const useBottomSheetRef = UseBottomSheetRefModule.useBottomSheetRef;
const bottomSheetRef = Reflect.apply(useBottomSheetRef, UseBottomSheetRefModule, []).bottomSheetRef;
const defaultImport2 = UseAnalyticsLocations;
let EDIT_PROFILE_EFFECT_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_PROFILE_EFFECT_SHEET;
const analyticsLocations = defaultImport2(EDIT_PROFILE_EFFECT_SHEET).analyticsLocations;
const value8 = binding.useCallback(_fun100815, [binding.useMemo(_fun100814, [guildId, value4])]);
const value9 = binding.useCallback(_fun100816, [property, guildId, isTryItOut]);
const AnalyticsLocationProvider = (UseAnalyticsLocationsModule).AnalyticsLocationProvider;
const BottomSheet = (BottomSheetNativeModule).BottomSheet;
const view = <View style={styles.bounceOffset} />;
const Text = (TextModule).Text;
const intl = (IndexNativeModule).intl;
const view2 = (
<View style={styles.container}>
{view}
<Text
variant="redesign/heading-18/bold"
style={styles.title}
accessibilityRole="header"
>
{intl.string((IndexNativeModule).t['/6nv6N'])}
</Text>
<EditProfileEffectInner
user={user}
selectedProfileEffect={property}
setSelectedProfileEffect={property2}
guildId={guildId}
isTryItOut={isTryItOut}
/>
</View>
);
const defaultImport3Props = {user: user, currentSkuId: currentProfileEffect?.skuId, selectedSkuId: property?.skuId,
isTryItOut: isTryItOut, onApply: value9, analyticsLocations: analyticsLocations};
EDIT_PROFILE_EFFECT_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_PROFILE_EFFECT_SHEET;
defaultImport3Props.analyticsSource = EDIT_PROFILE_EFFECT_SHEET;
return (
<AnalyticsLocationProvider value={analyticsLocations}>
<BottomSheet
scrollable
ref={bottomSheetRef}
onExpand={value8}
startExpanded
>
{view2}
<EditCollectiblesCTAButton {...defaultImport3Props} />
</BottomSheet>
</AnalyticsLocationProvider>
);
function _fun100814() { // fn#100814, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:2704, offset: 0x021fa9f5, size: 98 bytes, params: 1, frame: 14
const object = {};
let value = environment.__proto__;
value = undefined;
const EDIT_PROFILE_EFFECT_SHEET = (AnalyticsLocation).EDIT_PROFILE_EFFECT_SHEET;
object.type = EDIT_PROFILE_EFFECT_SHEET;
object.guild_id = guildId;
object.profile_has_nitro_customization = env0_2 != null && (env0_2 == null ? value : env0_2.hasPremiumCustomization());
return object;
}
function _fun100815() { // fn#100815, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:2874, offset: 0x021faa57, size: 75 bytes, params: 1, frame: 16
const defaultImport = AnalyticsUtils;
const track = defaultImport.track;
const OPEN_POPOUT = AnalyticEvents.OPEN_POPOUT;
const object = {};
copyDataProperties(object, env0_4, undefined);
object['is_fullscreen'] = true;
Reflect.apply(track, defaultImport, [OPEN_POPOUT, object]);
}
function _fun100816() { // fn#100816, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13404:2957, offset: 0x021faaa2, size: 126 bytes, params: 1, frame: 16
var moduleValue;
var value3;
var moduleValue2;
var value4;
if (isTryItOut) {
moduleValue2 = require(7613) /* metro dependency 7613: UserProfileActionCreators */;
value4 = null;
moduleValue2.setTryItOutProfileEffect(value4 != env0_3 ? env0_3 : value4);
} else {
moduleValue = require(8400) /* metro dependency 8400: UserProfileSettingsActionCreators */;
value3 = null;
moduleValue.setPendingChanges({guildId: guildId, profileEffect: value3 != env0_3 ? env0_3 : value3});
}
}
}
}
global.__d(_fun100806, 13214, [57, 31, 27, 5145, 5127, 661, 33, 4501, 697, 8490, 7326, 6771, 6789, 683, 7613, 8400,
6275, 4573, 1244, 8404, 7675, 566, 13215, 8402, 8491, 13216, 8414, 8415, 8409, 8405, 8488, 4589,
2]) /* metro module 13214, dependencies: [57, 31, 27, 5145, 5127, 661, 33, 4501, 697, 8490, 7326, 6771, 6789, 683, 7613, 8400, 6275, 4573, 1244, 8404, 7675, 566, 13215, 8402, 8491, 13216, 8414, 8415, 8409, 8405, 8488, 4589, 2] */;
@@ -1,191 +1,236 @@
/* Metro module 13218; source: modules/user_profile/native/EditProfileFrameActionSheet.tsx; dependencies: [57, 31, 27, 5145, 5128, 661, 33, 4501, 697, 8490, 7326, 6771, 6789, 683, 8400, 6275, 4573, 1244, 8404, 7675, 566, 13219, 8402, 8491, 13220, 8414, 8415, 8409, 8405, 10094, 4589, 2] */
import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */
import AnalyticsUtils from '../../../utils/AnalyticsUtils.tsx'; /* Metro dependency 683 */
import CollectiblesPurchaseStore from '../../collectibles/CollectiblesPurchaseStore.tsx'; /* Metro dependency 5145 */
import UseAnalyticsLocations from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import AnalyticsLocation from '../../app_analytics/AnalyticsLocation.tsx'; /* Metro dependency 6789 */
import EditCollectiblesCTAButton from './EditCollectiblesCTAButton.tsx'; /* Metro dependency 8404 */
import UseCollectiblesData from '../../collectibles/hooks/useCollectiblesData.tsx'; /* Metro dependency 8405 */
import EditCollectiblesPreviewDetails from './EditCollectiblesPreviewDetails.tsx'; /* Metro dependency 8414 */
import UseDisplayProfile from '../hooks/useDisplayProfile.tsx'; /* Metro dependency 8490 */
import ProfileFrameUserPreview from '../../collectibles/profile_frames/native/previews/ProfileFrameUserPreview.tsx'; /* Metro dependency 10094 */
import UseProfileFrameSections from '../../collectibles/profile_frames/useProfileFrameSections.tsx'; /* Metro dependency 13219 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as IndexNativeModule from '../../../intl/index.native.tsx'; /* Metro dependency 1244 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
import * as ProfileFrameRecordModule from '../../collectibles/records/ProfileFrameRecord.tsx'; /* Metro dependency 5128 */
import * as BottomSheetNativeModule from '../../../design/components/Sheet/native/BottomSheet.native.tsx'; /* Metro dependency 6275 */
import * as UseAnalyticsLocationsModule from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import * as UseBottomSheetRefModule from '../../../design/components/Sheet/native/useBottomSheetRef.tsx'; /* Metro dependency 7326 */
import * as UseFetchCollectiblesCategoriesAndPurchasesModule from '../../collectibles/hooks/useFetchCollectiblesCategoriesAndPurchases.tsx'; /* Metro dependency 7675 */
import * as UseCollectibleListLayoutModule from '../../collectibles/native/useCollectibleListLayout.tsx'; /* Metro dependency 8409 */
import * as EditCollectiblesPickerListModule from '../../collectibles/native/EditCollectiblesPickerList.tsx'; /* Metro dependency 8415 */
import * as EditProfileFrameSectionModule from '../../collectibles/profile_frames/native/EditProfileFrameSection.tsx'; /* Metro dependency 13220 */
function _fun100834(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100834, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:6, offset: 0x021fbc52, size: 497 bytes, params: 8, frame: 23
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
let value = require(27) /* metro dependency 27 */;
let value = ReactNativeModule;
const env0_5 = value.View;
const StyleSheet = value.StyleSheet;
const collectiblesPurchaseStore = importDefault(5145) /* metro dependency 5145: CollectiblesPurchaseStore */;
const env0_7 = (require(5128) /* metro dependency 5128: ProfileFrameRecord */).isProfileFrameRecord;
const env0_8 = (require(661) /* metro dependency 661: Constants */).AnalyticEvents;
value = require(33) /* metro dependency 33 */;
const env0_9 = value.jsx;
const env0_10 = value.jsxs;
const env0_11 = value.Fragment;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
object = {};
let MOBILE_ACTIONSHEET_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_ACTIONSHEET_BACKGROUND;
object2.container = {flex: 1, backgroundColor: MOBILE_ACTIONSHEET_BACKGROUND};
object2.bounceOffset = {'position': 'absolute', 'top': -250, 'height': 250, 'right': 0, 'left': 0};
object.container = {flex: 1, backgroundColor: MOBILE_ACTIONSHEET_BACKGROUND};
object.bounceOffset = {'position': 'absolute', 'top': -250, 'height': 250, 'right': 0, 'left': 0};
const MOBILE_TEXT_HEADING_PRIMARY = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_TEXT_HEADING_PRIMARY;
object2.title = {'alignSelf': 'center', 'color': null, 'margin': 25, color: MOBILE_TEXT_HEADING_PRIMARY};
object2.previewContainer = {'overflow': 'hidden', 'height': 300, 'alignItems': 'center'};
const object3 = {};
copyDataProperties(object3, StyleSheet.absoluteFillObject, undefined);
object3['bottom'] = -1;
object.title = {'alignSelf': 'center', 'color': null, 'margin': 25, color: MOBILE_TEXT_HEADING_PRIMARY};
object.previewContainer = {'overflow': 'hidden', 'height': 300, 'alignItems': 'center'};
const object4 = {};
copyDataProperties(object4, StyleSheet.absoluteFillObject, undefined);
object4['bottom'] = -1;
MOBILE_ACTIONSHEET_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_ACTIONSHEET_BACKGROUND;
object3['color'] = MOBILE_ACTIONSHEET_BACKGROUND;
object2.previewGradient = object3;
const env0_12 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/EditProfileFrameActionSheet.tsx');
object4['color'] = MOBILE_ACTIONSHEET_BACKGROUND;
object.previewGradient = object4;
const env0_12 = Reflect.apply(createStyles, value, [object]);
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/EditProfileFrameActionSheet.tsx');
exports.default = EditProfileFrameActionSheet;
}
function EditProfileFrameInner({user, selectedProfileFrame, setSelectedProfileFrame, guildId}) { // fn#100835, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:715, offset: 0x021fbe43, size: 669 bytes, params: 2, frame: 29
(UseFetchCollectiblesCategoriesAndPurchasesModule).useGetOrFetchCollectiblesCategoriesAndPurchases();
const isFetching = (require(566) /* metro dependency 566: flux */).useStateFromStores([CollectiblesPurchaseStore],
function() {
return CollectiblesPurchaseStore.isFetching;
});
const value3 = (UseProfileFrameSections)();
const value4 = (UseDisplayProfile)(user.id, guildId);
const profilePreviewValue = (require(8402) /* metro dependency 8402: ProfileCustomizationUtils */).getProfilePreviewValue({pendingValue: selectedProfileFrame,
userValue: value4 == null || value4._userProfile == null ? undefined : value4._userProfile.profileFrame,
guildValue: value4 == null || value4._guildMemberProfile == null ? undefined : value4._guildMemberProfile.profileFrame,
guildId: guildId});
ReactModule.useEffect(_fun100837, [user]);
const value6 = ReactModule.useCallback(_fun100838, [setSelectedProfileFrame, guildId]);
const jsxRuntimeEnv0_11Binding = jsxRuntimeEnv0_11;
let skuId = profilePreviewValue?.skuId;
const items2 = [
<ProfileFrameSectionPreview
previewSkuId={skuId}
user={user}
guildId={guildId}
/>,
];
const defaultImport2Props = {user: user, previewSkuId: profilePreviewValue?.skuId};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
defaultImport2Props.nitroJoinCTA = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['JvNv+a']);
defaultImport2Props.nitroUpgradeCTA = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.hR2psy);
items2[1] = <EditCollectiblesPreviewDetails {...defaultImport2Props} />;
const EditCollectiblesPickerList = (EditCollectiblesPickerListModule).EditCollectiblesPickerList;
skuId = selectedProfileFrame?.skuId;
const COLLECTIBLE_ROW_HEIGHT = (UseCollectibleListLayoutModule).COLLECTIBLE_ROW_HEIGHT;
items2[2] = (
<EditCollectiblesPickerList
sections={value3}
selectedSkuId={skuId}
renderRow={value6}
estimatedItemSize={COLLECTIBLE_ROW_HEIGHT}
isFetching={isFetching}
/>
);
return (
<>
{items2}
</>
);
function _fun100837() { // fn#100837, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:1158, offset: 0x021fc0e0, size: 107 bytes, params: 1, frame: 17
var value3;
var defaultImport;
if (!(user == null || user.isNonUserBot())) {
value3 = environment.__proto__;
defaultImport = importDefault(8491) /* metro dependency 8491: maybeFetchUserProfile */;
userBinding = user;
defaultImport(userBinding.id, userBinding.getAvatarURL(null, 80), {'withMutualGuilds': true,
'dispatchWait': true});
}
}
function EditProfileFrameInner({user, selectedProfileFrame, setSelectedProfileFrame, guildId}) { // fn#100835, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:715, offset: 0x021fbe43, size: 669 bytes, params: 2, frame: 29
(require(7675) /* metro dependency 7675: useFetchCollectiblesCategoriesAndPurchases */).useGetOrFetchCollectiblesCategoriesAndPurchases();
const isFetching = (require(566) /* metro dependency 566: flux */).useStateFromStores([CollectiblesPurchaseStore],
function() {
return CollectiblesPurchaseStore.isFetching;
});
const value3 = (importDefault(13219) /* metro dependency 13219: useProfileFrameSections */)();
const value4 = (importDefault(8490) /* metro dependency 8490: useDisplayProfile */)(user.id, guildId);
const profilePreviewValue = (require(8402) /* metro dependency 8402: ProfileCustomizationUtils */).getProfilePreviewValue({pendingValue: selectedProfileFrame,
userValue: value4 == null || value4._userProfile == null ? undefined : value4._userProfile.profileFrame,
guildValue: value4 == null || value4._guildMemberProfile == null ? undefined : value4._guildMemberProfile.profileFrame,
guildId: guildId});
const binding = env0_4;
binding.useEffect(_fun100837, [user]);
const value6 = binding.useCallback(_fun100838, [setSelectedProfileFrame, guildId]);
const jsxRuntimeEnv0_11Binding = jsxRuntimeEnv0_11;
let skuId = profilePreviewValue?.skuId;
const items2 = [<ProfileFrameSectionPreview previewSkuId={skuId} user={user} guildId={guildId} />];
const EditCollectiblesPreviewDetails = importDefault(8414) /* metro dependency 8414: EditCollectiblesPreviewDetails */;
const defaultImport2Props = {user: user, previewSkuId: profilePreviewValue?.skuId};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
defaultImport2Props.nitroJoinCTA = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['JvNv+a']);
defaultImport2Props.nitroUpgradeCTA = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.hR2psy);
items2[1] = <EditCollectiblesPreviewDetails {...defaultImport2Props} />;
const EditCollectiblesPickerList = (require(8415) /* metro dependency 8415: EditCollectiblesPickerList */).EditCollectiblesPickerList;
skuId = selectedProfileFrame?.skuId;
const COLLECTIBLE_ROW_HEIGHT = (require(8409) /* metro dependency 8409: useCollectibleListLayout */).COLLECTIBLE_ROW_HEIGHT;
items2[2] = <EditCollectiblesPickerList sections={value3} selectedSkuId={skuId} renderRow={value6} estimatedItemSize={COLLECTIBLE_ROW_HEIGHT} isFetching={isFetching} />;
return (
<>
{items2}
</>
);
}
function _fun100838({items, size, selectedSkuId}) { // fn#100838, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:1295, offset: 0x021fc14b, size: 99 bytes, params: 2, frame: 16
const EditProfileFrameRow = (EditProfileFrameSectionModule).EditProfileFrameRow;
return (
<EditProfileFrameRow
items={items}
size={size}
selectedSkuId={selectedSkuId}
setSelectedProfileFrame={setSelectedProfileFrame}
guildId={guildId}
/>
);
}
function ProfileFrameSectionPreview({previewSkuId, user, guildId}) { // fn#100839, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:1911, offset: 0x021fc1ae, size: 332 bytes, params: 2, frame: 22
const styles = useStyles();
let value2 = (importDefault(8405) /* metro dependency 8405: useCollectiblesData */)(previewSkuId);
let value3 = env0_4.useMemo(function() {
var r1;
var productBinding = product;
var value2 = null;
var value3 = undefined;
r1 = value2 == productBinding ? value3 : product.items[0];
r1 = value2 == r1 ? value2 == purchase ? value3 : purchase.items[0] : r1;
return isProfileFrameRecord(r1) ? r1 : value2;
}, [value2.purchase, value2.product]);
let value = importDefault(10094) /* metro dependency 10094: ProfileFrameUserPreview */;
value = ((Component) => <Component user={user} guildId={guildId} profileFrame={value3} maxWidth={280} />)(value);
const items2 = [value];
items2[1] = ((Component) => <Component style={styles.previewGradient} start={{'x': 0, 'y': 0.6}} end={{'x': 0,
'y': 1}} colors={['' + styles.previewGradient.color + '00',
styles.previewGradient.color]} />)(importDefault(4589) /* metro dependency 4589 */);
return (
<View style={styles.previewContainer}>
{items2}
</View>
);
}
function EditProfileFrameActionSheet({user, currentProfileFrame, guildId}) { // fn#100841, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:2361, offset: 0x021fc2fa, size: 706 bytes, params: 2, frame: 37
const env0_3 = undefined;
const styles = useStyles();
const value4 = (importDefault(8490) /* metro dependency 8490: useDisplayProfile */)(user.id ?? '');
const binding = env0_4;
const [property, property2] = env0_3(binding.useState(currentProfileFrame), 2);
const useBottomSheetRefModule = require(7326) /* metro dependency 7326: useBottomSheetRef */;
const useBottomSheetRef = useBottomSheetRefModule.useBottomSheetRef;
const bottomSheetRef = Reflect.apply(useBottomSheetRef, useBottomSheetRefModule, []).bottomSheetRef;
const defaultImport2 = importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */;
let EDIT_PROFILE_FRAME_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_PROFILE_FRAME_SHEET;
const analyticsLocations = defaultImport2(EDIT_PROFILE_FRAME_SHEET).analyticsLocations;
const value8 = binding.useCallback(_fun100843, [binding.useMemo(_fun100842, [guildId, value4])]);
const value9 = binding.useCallback(_fun100844, [property, guildId]);
const AnalyticsLocationProvider = (require(6771) /* metro dependency 6771: useAnalyticsLocations */).AnalyticsLocationProvider;
const BottomSheet = (require(6275) /* metro dependency 6275: BottomSheetNative */).BottomSheet;
const view = <View style={styles.bounceOffset} />;
const Heading = (require(4573) /* metro dependency 4573: Text */).Heading;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const view2 = <View style={styles.container}>{view}<Heading variant="redesign/heading-18/bold" style={styles.title}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['oTSa/q'])}</Heading><EditProfileFrameInner user={user} selectedProfileFrame={property} setSelectedProfileFrame={property2} guildId={guildId} /></View>;
const EditCollectiblesCTAButton = importDefault(8404) /* metro dependency 8404: EditCollectiblesCTAButton */;
const defaultImport3Props = {user: user, currentSkuId: currentProfileFrame?.skuId, selectedSkuId: property?.skuId,
onApply: value9, analyticsLocations: analyticsLocations};
EDIT_PROFILE_FRAME_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_PROFILE_FRAME_SHEET;
defaultImport3Props.analyticsSource = EDIT_PROFILE_FRAME_SHEET;
return (
<AnalyticsLocationProvider value={analyticsLocations}>
<BottomSheet
scrollable
ref={bottomSheetRef}
onExpand={value8}
startExpanded
>
{view2}
<EditCollectiblesCTAButton {...defaultImport3Props} />
</BottomSheet>
</AnalyticsLocationProvider>
);
}
function _fun100837() { // fn#100837, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:1158, offset: 0x021fc0e0, size: 107 bytes, params: 1, frame: 17
var value3;
var defaultImport;
if (!(user == null || user.isNonUserBot())) {
value3 = environment.__proto__;
defaultImport = importDefault(8491) /* metro dependency 8491: maybeFetchUserProfile */;
userBinding = user;
defaultImport(userBinding.id, userBinding.getAvatarURL(null, 80), {'withMutualGuilds': true,
'dispatchWait': true});
}
function ProfileFrameSectionPreview({previewSkuId, user, guildId}) { // fn#100839, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:1911, offset: 0x021fc1ae, size: 332 bytes, params: 2, frame: 22
const styles = useStyles();
let value2 = (UseCollectiblesData)(previewSkuId);
let value3 = ReactModule.useMemo(function() {
var r1;
var productBinding = product;
var value2 = null;
var value3 = undefined;
r1 = value2 == productBinding ? value3 : product.items[0];
r1 = value2 == r1 ? value2 == purchase ? value3 : purchase.items[0] : r1;
return isProfileFrameRecord(r1) ? r1 : value2;
}, [value2.purchase, value2.product]);
let value = ProfileFrameUserPreview;
value = ((Component) => <Component user={user} guildId={guildId} profileFrame={value3} maxWidth={280} />)(value);
const items2 = [value];
items2[1] = ((Component) => <Component style={styles.previewGradient} start={{'x': 0, 'y': 0.6}} end={{'x': 0,
'y': 1}} colors={['' + styles.previewGradient.color + '00',
styles.previewGradient.color]} />)(importDefault(4589) /* metro dependency 4589 */);
return (
<View style={styles.previewContainer}>
{items2}
</View>
);
}
function EditProfileFrameActionSheet({user, currentProfileFrame, guildId}) { // fn#100841, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:2361, offset: 0x021fc2fa, size: 706 bytes, params: 2, frame: 37
const env0_3 = undefined;
const styles = useStyles();
const value4 = (importDefault(8490) /* metro dependency 8490: useDisplayProfile */)(user.id ?? '');
const [property, property2] = env0_3(ReactModule.useState(currentProfileFrame), 2);
const useBottomSheetRef = UseBottomSheetRefModule.useBottomSheetRef;
const bottomSheetRef = Reflect.apply(useBottomSheetRef, UseBottomSheetRefModule, []).bottomSheetRef;
const defaultImport2 = UseAnalyticsLocations;
let EDIT_PROFILE_FRAME_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_PROFILE_FRAME_SHEET;
const analyticsLocations = defaultImport2(EDIT_PROFILE_FRAME_SHEET).analyticsLocations;
const value8 = ReactModule.useCallback(_fun100843, [ReactModule.useMemo(_fun100842, [guildId, value4])]);
const value9 = ReactModule.useCallback(_fun100844, [property, guildId]);
const AnalyticsLocationProvider = (UseAnalyticsLocationsModule).AnalyticsLocationProvider;
const BottomSheet = (BottomSheetNativeModule).BottomSheet;
const view = <View style={styles.bounceOffset} />;
const Heading = (TextModule).Heading;
const intl = (IndexNativeModule).intl;
const view2 = (
<View style={styles.container}>
{view}
<Heading variant="redesign/heading-18/bold" style={styles.title}>
{intl.string((IndexNativeModule).t['oTSa/q'])}
</Heading>
<EditProfileFrameInner
user={user}
selectedProfileFrame={property}
setSelectedProfileFrame={property2}
guildId={guildId}
/>
</View>
);
const defaultImport3Props = {user: user, currentSkuId: currentProfileFrame?.skuId, selectedSkuId: property?.skuId,
onApply: value9, analyticsLocations: analyticsLocations};
EDIT_PROFILE_FRAME_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_PROFILE_FRAME_SHEET;
defaultImport3Props.analyticsSource = EDIT_PROFILE_FRAME_SHEET;
return (
<AnalyticsLocationProvider value={analyticsLocations}>
<BottomSheet
scrollable
ref={bottomSheetRef}
onExpand={value8}
startExpanded
>
{view2}
<EditCollectiblesCTAButton {...defaultImport3Props} />
</BottomSheet>
</AnalyticsLocationProvider>
);
function _fun100842() { // fn#100842, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:2646, offset: 0x021fc5bc, size: 98 bytes, params: 1, frame: 14
const object = {};
let value = environment.__proto__;
value = undefined;
const EDIT_PROFILE_FRAME_SHEET = (AnalyticsLocation).EDIT_PROFILE_FRAME_SHEET;
object.type = EDIT_PROFILE_FRAME_SHEET;
object.guild_id = guildId;
object.profile_has_nitro_customization = env0_1 != null && (env0_1 == null ? value : env0_1.hasPremiumCustomization());
return object;
}
function _fun100843() { // fn#100843, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:2815, offset: 0x021fc61e, size: 75 bytes, params: 1, frame: 16
const defaultImport = AnalyticsUtils;
const track = defaultImport.track;
const OPEN_POPOUT = AnalyticEvents.OPEN_POPOUT;
const object = {};
copyDataProperties(object, env0_3, undefined);
object['is_fullscreen'] = true;
Reflect.apply(track, defaultImport, [OPEN_POPOUT, object]);
}
function _fun100844() { // fn#100844, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:2898, offset: 0x021fc669, size: 73 bytes, params: 1, frame: 15
let value = environment.__proto__;
value = require(8400) /* metro dependency 8400: UserProfileSettingsActionCreators */;
const value3 = null;
value.setPendingChanges({guildId: guildId, profileFrame: value3 != env0_2 ? env0_2 : value3});
}
}
}
function _fun100838({items, size, selectedSkuId}) { // fn#100838, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:1295, offset: 0x021fc14b, size: 99 bytes, params: 2, frame: 16
const EditProfileFrameRow = (require(13220) /* metro dependency 13220: EditProfileFrameSection */).EditProfileFrameRow;
return (
<EditProfileFrameRow
items={items}
size={size}
selectedSkuId={selectedSkuId}
setSelectedProfileFrame={setSelectedProfileFrame}
guildId={guildId}
/>
);
}
function _fun100842() { // fn#100842, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:2646, offset: 0x021fc5bc, size: 98 bytes, params: 1, frame: 14
const object2 = {};
let value = environment.__proto__;
value = undefined;
const EDIT_PROFILE_FRAME_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_PROFILE_FRAME_SHEET;
object2.type = EDIT_PROFILE_FRAME_SHEET;
object2.guild_id = guildId;
object2.profile_has_nitro_customization = env0_1 != null && (env0_1 == null ? value : env0_1.hasPremiumCustomization());
return object2;
}
function _fun100843() { // fn#100843, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:2815, offset: 0x021fc61e, size: 75 bytes, params: 1, frame: 16
const defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
const track = defaultImport.track;
const OPEN_POPOUT = AnalyticEvents.OPEN_POPOUT;
const object2 = {};
copyDataProperties(object2, env0_3, undefined);
object2['is_fullscreen'] = true;
Reflect.apply(track, defaultImport, [OPEN_POPOUT, object2]);
}
function _fun100844() { // fn#100844, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13408:2898, offset: 0x021fc669, size: 73 bytes, params: 1, frame: 15
let value = environment.__proto__;
value = require(8400) /* metro dependency 8400: UserProfileSettingsActionCreators */;
const value3 = null;
value.setPendingChanges({guildId: guildId, profileFrame: value3 != env0_2 ? env0_2 : value3});
}
global.__d(_fun100834, 13218, [57, 31, 27, 5145, 5128, 661, 33, 4501, 697, 8490, 7326, 6771, 6789, 683, 8400, 6275,
4573, 1244, 8404, 7675, 566, 13219, 8402, 8491, 13220, 8414, 8415, 8409, 8405, 10094, 4589,
2]) /* metro module 13218, dependencies: [57, 31, 27, 5145, 5128, 661, 33, 4501, 697, 8490, 7326, 6771, 6789, 683, 8400, 6275, 4573, 1244, 8404, 7675, 566, 13219, 8402, 8491, 13220, 8414, 8415, 8409, 8405, 10094, 4589, 2] */;
@@ -1,159 +1,182 @@
/* Metro module 13200; source: modules/user_profile/native/EditUserProfileAvatar.tsx; dependencies: [31, 4502, 33, 4501, 6771, 6789, 3802, 8398, 8403, 13201, 4080, 13202, 1962, 13203, 13203, 8396, 8402, 566, 4017, 4504, 8417, 5278, 1244, 13204, 1305, 2] */
import ActionSheetActionCreators from '../../action_sheet/native/ActionSheetActionCreators.tsx'; /* Metro dependency 4080 */
import AccessibilityStore from '../../a11y/AccessibilityStore.tsx'; /* Metro dependency 4502 */
import UseAnalyticsLocations from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import AnalyticsLocation from '../../app_analytics/AnalyticsLocation.tsx'; /* Metro dependency 6789 */
import UsePendingAvatarSettings from '../hooks/usePendingAvatarSettings.tsx'; /* Metro dependency 8398 */
import HeaderAvatar from '../../profile_customization/native/HeaderAvatar.tsx'; /* Metro dependency 8417 */
import UseUploadAvatar from '../hooks/native/useUploadAvatar.tsx'; /* Metro dependency 13201 */
import EditIcon from '../../profile_customization/native/EditIcon.tsx'; /* Metro dependency 13204 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as IndexNativeModule from '../../../intl/index.native.tsx'; /* Metro dependency 1244 */
import * as NativeModule from '../../../design/void/native.tsx'; /* Metro dependency 1305 */
import * as ReanimatedRexportModule from '../../reanimated/ReanimatedRexport.tsx'; /* Metro dependency 4017 */
import * as CreateStylesModule from '../../../design/components/Styles/native/createStyles.tsx'; /* Metro dependency 4501 */
import * as TimingModule from '../../../design/animation/reanimated/timing/timing.tsx'; /* Metro dependency 4504 */
import * as PressablesModule from '../../../design/void/Pressables/native/Pressables.tsx'; /* Metro dependency 5278 */
import * as AvatarDecorationUtilsModule from '../../collectibles/avatar_decorations/native/AvatarDecorationUtils.tsx'; /* Metro dependency 8396 */
import * as RecentAvatarUtilsModule from '../../recent_avatars/RecentAvatarUtils.tsx'; /* Metro dependency 8403 */
function _fun100732(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100732, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:6, offset: 0x021f5a7b, size: 230 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importAll(31) /* metro dependency 31 */;
const accessibilityStore = importDefault(4502) /* metro dependency 4502: AccessibilityStore */;
const value = require(33) /* metro dependency 33 */;
const env0_5 = value.jsx;
const env0_6 = value.jsxs;
const env0_7 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({editIcon: {'position': 'absolute',
const env0_7 = (CreateStylesModule).createStyles({editIcon: {'position': 'absolute',
'right': -3}});
object = {code: 'function EditUserProfileAvatarTsx1(){const{rotation}=this.__closure;return{transform:[{rotateZ:rotation.get()+"deg"}]};}'};
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/EditUserProfileAvatar.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/EditUserProfileAvatar.tsx');
exports.default = EditUserProfileAvatar;
}
function EditUserProfileAvatar({user, disabled, statusStyle, style, avatarStyle, editIconStyle, disableStatus, isTryItOut, autoStartEditFlow, size}) { // fn#100733, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:439, offset: 0x021f5b61, size: 1012 bytes, params: 2, frame: 37
disableStatus = disableStatus === undefined || disableStatus;
isTryItOut = !(isTryItOut === undefined) && isTryItOut;
autoStartEditFlow = !(autoStartEditFlow === undefined) && autoStartEditFlow;
const styles = useStyles();
const defaultImport = UseAnalyticsLocations;
const EDIT_AVATAR = (AnalyticsLocation).EDIT_AVATAR;
const analyticsLocations = defaultImport(EDIT_AVATAR).analyticsLocations;
const analyticsLocations2 = analyticsLocations;
const r14 = !(importDefault(3802) /* metro dependency 3802: PremiumUtils */).canUseAnimatedAvatar(user) && !isTryItOut;
const {pendingAvatar, pendingAvatarDecoration,
setPendingAvatar} = (UsePendingAvatarSettings)({isTryItOut: isTryItOut,
analyticsLocations: analyticsLocations});
const pendingAvatarSrc = (RecentAvatarUtilsModule).getPendingAvatarSrc({userId: user.id,
image: pendingAvatar});
const r4 = pendingAvatarDecoration !== undefined ? pendingAvatarDecoration : user.avatarDecoration;
const value6 = (UseUploadAvatar)({isTryItOut: isTryItOut,
analyticsLocations: analyticsLocations});
const env0_8 = value6;
const binding = analyticsLocations2;
const value7 = binding.useCallback(_fun100734, [user, analyticsLocations, pendingAvatar, setPendingAvatar, value6,
r14, r4, isTryItOut]);
const env0_10 = binding.useRef(false);
binding.useEffect(_fun100738, [user, autoStartEditFlow, value7]);
const useReducedMotion = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore],
function() {
return AccessibilityStore.useReducedMotion;
});
const value8 = (ReanimatedRexportModule).useSharedValue(0);
const useAnimatedStyle = ReanimatedRexportModule.useAnimatedStyle;
const EditUserProfileAvatarZ2 = EditUserProfileAvatarZ;
EditUserProfileAvatarZ2.__closure = {rotation: value8};
EditUserProfileAvatarZ2.__workletHash = 13368223692459;
EditUserProfileAvatarZ2.__initData = env0_8;
const value9 = Reflect.apply(useAnimatedStyle, ReanimatedRexportModule, [EditUserProfileAvatarZ2]);
binding.useEffect(_fun100741, [value8]);
const value10 = ((Component) => <Component style={avatarStyle} user={user} pendingAvatarSrc={pendingAvatarSrc} pendingAvatarDecoration={pendingAvatarDecoration} statusStyle={statusStyle} disableStatus={disableStatus} size={size} />)(HeaderAvatar);
const PressableOpacity = (PressablesModule).PressableOpacity;
const intl = (IndexNativeModule).intl;
const string = intl.string;
const MUgHIN = (IndexNativeModule).t.MUgHIN;
const r5 = (
isTryItOut
? (
pendingAvatarDecoration != null || useReducedMotion
? value10
: ((View) => <View style={value9}>{value10}</View>)((importDefault(4017) /* metro dependency 4017: ReanimatedRexport */).View)
)
: value10
);
const items2 = [styles.editIcon, editIconStyle];
const AvatarSizes = (NativeModule).AvatarSizes;
const EDIT_AVATAR_DECORATION = AvatarSizes.EDIT_AVATAR_DECORATION;
return (
<PressableOpacity
style={style}
disabled={disabled}
onPress={value7}
accessibilityRole="button"
accessibilityLabel={Reflect.apply(string, intl, [MUgHIN])}
>
{r5}
<EditIcon style={items2} size={size !== EDIT_AVATAR_DECORATION ? 'xs' : 'sm'} />
</PressableOpacity>
);
function _fun100734() { // fn#100734, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:972, offset: 0x021f5f55, size: 184 bytes, params: 1, frame: 20
var environment;
let value = environment.__proto__;
const defaultImport = importDefault(dependencyMap[10]);
const openLazy = defaultImport.openLazy;
value = require(dependencyMap[12]);
value = value(dependencyMap[11], dependencyMap.paths);
const object = {};
object.showAnimatedAvatarUpsell = env0_4;
object.handleRemoveAvatarSelect = handleRemoveAvatarSelect;
object.handleUploadAvatarSelect = env0_8;
object.handleUploadGIFAvatarSelect = handleUploadGIFAvatarSelect;
object.handleEditAvatarDecorationSelect = handleEditAvatarDecorationSelect;
const moduleValue = require(dependencyMap[16]);
object.showRemoveAvatar = moduleValue.showRemoveAvatar(pendingAvatar, user.avatar);
Reflect.apply(openLazy, defaultImport, [value, 'Change Avatar', object]);
function handleRemoveAvatarSelect() { // fn#100735, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:1088, offset: 0x021f600d, size: 51 bytes, params: 1, frame: 11
let value = environment.__proto__.__proto__;
(ActionSheetActionCreators).hideActionSheet();
value = environment.__proto__;
setPendingAvatar(null);
}
function EditUserProfileAvatar({user, disabled, statusStyle, style, avatarStyle, editIconStyle, disableStatus, isTryItOut, autoStartEditFlow, size}) { // fn#100733, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:439, offset: 0x021f5b61, size: 1012 bytes, params: 2, frame: 37
disableStatus = disableStatus === undefined || disableStatus;
isTryItOut = !(isTryItOut === undefined) && isTryItOut;
autoStartEditFlow = !(autoStartEditFlow === undefined) && autoStartEditFlow;
const styles = useStyles();
const defaultImport = importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */;
const EDIT_AVATAR = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_AVATAR;
const analyticsLocations = defaultImport(EDIT_AVATAR).analyticsLocations;
const env0_3 = analyticsLocations;
const r14 = !(importDefault(3802) /* metro dependency 3802: PremiumUtils */).canUseAnimatedAvatar(user) && !isTryItOut;
const {pendingAvatar, pendingAvatarDecoration,
setPendingAvatar} = (importDefault(8398) /* metro dependency 8398: usePendingAvatarSettings */)({isTryItOut: isTryItOut,
analyticsLocations: analyticsLocations});
const pendingAvatarSrc = (require(8403) /* metro dependency 8403: RecentAvatarUtils */).getPendingAvatarSrc({userId: user.id,
image: pendingAvatar});
const r4 = pendingAvatarDecoration !== undefined ? pendingAvatarDecoration : user.avatarDecoration;
const value6 = (importDefault(13201) /* metro dependency 13201: useUploadAvatar */)({isTryItOut: isTryItOut,
analyticsLocations: analyticsLocations});
const env0_8 = value6;
const binding = env0_3;
const value7 = binding.useCallback(_fun100734, [user, analyticsLocations, pendingAvatar, setPendingAvatar, value6,
r14, r4, isTryItOut]);
const env0_10 = binding.useRef(false);
binding.useEffect(_fun100738, [user, autoStartEditFlow, value7]);
const useReducedMotion = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore],
function() {
return AccessibilityStore.useReducedMotion;
});
const value8 = (require(4017) /* metro dependency 4017: ReanimatedRexport */).useSharedValue(0);
const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */;
const useAnimatedStyle = reanimatedRexportModule.useAnimatedStyle;
const closure = EditUserProfileAvatarZ;
closure.__closure = {rotation: value8};
closure.__workletHash = 13368223692459;
closure.__initData = env0_8;
const value9 = Reflect.apply(useAnimatedStyle, reanimatedRexportModule, [closure]);
binding.useEffect(_fun100741, [value8]);
const value10 = ((Component) => <Component style={avatarStyle} user={user} pendingAvatarSrc={pendingAvatarSrc} pendingAvatarDecoration={pendingAvatarDecoration} statusStyle={statusStyle} disableStatus={disableStatus} size={size} />)(importDefault(8417) /* metro dependency 8417: HeaderAvatar */);
const PressableOpacity = (require(5278) /* metro dependency 5278: Pressables */).PressableOpacity;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const MUgHIN = (require(1244) /* metro dependency 1244: indexNative */).t.MUgHIN;
const r5 = isTryItOut ? pendingAvatarDecoration != null || useReducedMotion ? value10 : ((View) => <View style={value9}>{value10}</View>)((importDefault(4017) /* metro dependency 4017: ReanimatedRexport */).View) : value10;
const EditIcon = importDefault(13204) /* metro dependency 13204: EditIcon */;
const items2 = [styles.editIcon, editIconStyle];
const AvatarSizes = (require(1305) /* metro dependency 1305: native */).AvatarSizes;
const EDIT_AVATAR_DECORATION = AvatarSizes.EDIT_AVATAR_DECORATION;
return (
<PressableOpacity
style={style}
disabled={disabled}
onPress={value7}
accessibilityRole="button"
accessibilityLabel={Reflect.apply(string, intl, [MUgHIN])}
>
{r5}
<EditIcon style={items2} size={size !== EDIT_AVATAR_DECORATION ? 'xs' : 'sm'} />
</PressableOpacity>
);
}
function handleUploadGIFAvatarSelect() { // fn#100736, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:1184, offset: 0x021f6040, size: 182 bytes, params: 1, frame: 19
importDefault(dependencyMap[10]).hideActionSheet();
const defaultImport2 = importDefault(dependencyMap[10]);
const openLazy = defaultImport2.openLazy;
const value2 = require(dependencyMap[12])(dependencyMap[13], dependencyMap.paths);
const object = {};
const ProfileAssetType = require(dependencyMap[14]).ProfileAssetType;
const AVATAR = ProfileAssetType.AVATAR;
object.profileAssetType = AVATAR;
const isTryItOutBinding = isTryItOut;
const GIFSelectionContext = require(dependencyMap[14]).GIFSelectionContext;
object.selectionContext = isTryItOutBinding ? GIFSelectionContext.PROFILE_TRY_IT_OUT : GIFSelectionContext.PROFILE_EDIT;
Reflect.apply(openLazy, defaultImport2, [value2, 'Select GIF Avatar', object]);
}
function _fun100734() { // fn#100734, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:972, offset: 0x021f5f55, size: 184 bytes, params: 1, frame: 20
var environment;
let value = environment.__proto__;
const defaultImport = importDefault(dependencyMap[10]);
const openLazy = defaultImport.openLazy;
value = require(dependencyMap[12]);
value = value(dependencyMap[11], dependencyMap.paths);
const object2 = {};
object2.showAnimatedAvatarUpsell = env0_4;
object2.handleRemoveAvatarSelect = handleRemoveAvatarSelect;
object2.handleUploadAvatarSelect = env0_8;
object2.handleUploadGIFAvatarSelect = handleUploadGIFAvatarSelect;
object2.handleEditAvatarDecorationSelect = handleEditAvatarDecorationSelect;
const moduleValue = require(dependencyMap[16]);
object2.showRemoveAvatar = moduleValue.showRemoveAvatar(pendingAvatar, user.avatar);
Reflect.apply(openLazy, defaultImport, [value, 'Change Avatar', object2]);
}
function handleEditAvatarDecorationSelect() { // fn#100737, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:1474, offset: 0x021f60f6, size: 69 bytes, params: 1, frame: 14
const value = environment.__proto__.__proto__;
(AvatarDecorationUtilsModule).openAvatarDecorationActionSheet({user: user,
currentAvatarDecoration: env1_7, analyticsLocations: analyticsLocations});
}
}
function _fun100738() { // fn#100738, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:1684, offset: 0x021f613b, size: 51 bytes, params: 1, frame: 10
if (autoStartEditFlow && !env0_10.current) {
env0_10.current = true;
env0_9();
}
}
function EditUserProfileAvatarZ() { // fn#100740, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:1861, owner: EditUserProfileAvatar.z, offset: 0x021f616e, size: 68 bytes, params: 1, frame: 15
const object2 = {};
object2.rotateZ = '' + env0_11.get() + 'deg';
return {transform: [object2]};
}
function _fun100741() { // fn#100741, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:2005, offset: 0x021f61b2, size: 164 bytes, params: 1, frame: 22
var environment;
const binding = env0_11;
const set = binding.set;
let value = environment.__proto__;
value = require(4017) /* metro dependency 4017: ReanimatedRexport */;
const withRepeat = value.withRepeat;
const withTiming = TimingModule.withTiming;
const Easing = (require(4017) /* metro dependency 4017: ReanimatedRexport */).Easing;
const inOut = Easing.inOut;
const Easing2 = (require(4017) /* metro dependency 4017: ReanimatedRexport */).Easing;
Reflect.apply(set, binding, [Reflect.apply(withRepeat, value, [Reflect.apply(withTiming, TimingModule, [360,
{duration: 3000, easing: Reflect.apply(inOut, Easing, [Easing2.quad])}]), -1])]);
return _fun100742;
function _fun100742() { // fn#100742, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:2132, offset: 0x021f6256, size: 45 bytes, params: 1, frame: 11
const value = environment.__proto__.__proto__;
return (ReanimatedRexportModule).cancelAnimation(env1_11);
}
}
function _fun100738() { // fn#100738, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:1684, offset: 0x021f613b, size: 51 bytes, params: 1, frame: 10
if (autoStartEditFlow && !env0_10.current) {
env0_10.current = true;
env0_9();
}
}
function EditUserProfileAvatarZ() { // fn#100740, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:1861, owner: EditUserProfileAvatar.z, offset: 0x021f616e, size: 68 bytes, params: 1, frame: 15
const object = {};
object.rotateZ = '' + env0_11.get() + 'deg';
return {transform: [object]};
}
function _fun100741() { // fn#100741, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:2005, offset: 0x021f61b2, size: 164 bytes, params: 1, frame: 22
var environment;
const binding = env0_11;
const set = binding.set;
let value = environment.__proto__;
value = require(4017) /* metro dependency 4017: ReanimatedRexport */;
const withRepeat = value.withRepeat;
const timingModule = require(4504) /* metro dependency 4504: timing */;
const withTiming = timingModule.withTiming;
const Easing = (require(4017) /* metro dependency 4017: ReanimatedRexport */).Easing;
const inOut = Easing.inOut;
const Easing2 = (require(4017) /* metro dependency 4017: ReanimatedRexport */).Easing;
Reflect.apply(set, binding, [Reflect.apply(withRepeat, value, [Reflect.apply(withTiming, timingModule, [360,
{duration: 3000, easing: Reflect.apply(inOut, Easing, [Easing2.quad])}]), -1])]);
return _fun100742;
}
function handleRemoveAvatarSelect() { // fn#100735, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:1088, offset: 0x021f600d, size: 51 bytes, params: 1, frame: 11
let value = environment.__proto__.__proto__;
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet();
value = environment.__proto__;
setPendingAvatar(null);
}
function handleUploadGIFAvatarSelect() { // fn#100736, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:1184, offset: 0x021f6040, size: 182 bytes, params: 1, frame: 19
importDefault(dependencyMap[10]).hideActionSheet();
const defaultImport2 = importDefault(dependencyMap[10]);
const openLazy = defaultImport2.openLazy;
const value2 = require(dependencyMap[12])(dependencyMap[13], dependencyMap.paths);
const object2 = {};
const ProfileAssetType = require(dependencyMap[14]).ProfileAssetType;
const AVATAR = ProfileAssetType.AVATAR;
object2.profileAssetType = AVATAR;
const isTryItOutBinding = isTryItOut;
const GIFSelectionContext = require(dependencyMap[14]).GIFSelectionContext;
object2.selectionContext = isTryItOutBinding ? GIFSelectionContext.PROFILE_TRY_IT_OUT : GIFSelectionContext.PROFILE_EDIT;
Reflect.apply(openLazy, defaultImport2, [value2, 'Select GIF Avatar', object2]);
}
function handleEditAvatarDecorationSelect() { // fn#100737, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:1474, offset: 0x021f60f6, size: 69 bytes, params: 1, frame: 14
const value = environment.__proto__.__proto__;
(require(8396) /* metro dependency 8396: AvatarDecorationUtils */).openAvatarDecorationActionSheet({user: user,
currentAvatarDecoration: env1_7, analyticsLocations: analyticsLocations});
}
function _fun100742() { // fn#100742, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13390:2132, offset: 0x021f6256, size: 45 bytes, params: 1, frame: 11
const value = environment.__proto__.__proto__;
return (require(4017) /* metro dependency 4017: ReanimatedRexport */).cancelAnimation(env1_11);
}
global.__d(_fun100732, 13200, [31, 4502, 33, 4501, 6771, 6789, 3802, 8398, 8403, 13201, 4080, 13202, 1962, 13203,
13203, 8396, 8402, 566, 4017, 4504, 8417, 5278, 1244, 13204, 1305,
2]) /* metro module 13200, dependencies: [31, 4502, 33, 4501, 6771, 6789, 3802, 8398, 8403, 13201, 4080, 13202, 1962, 13203, 13203, 8396, 8402, 566, 4017, 4504, 8417, 5278, 1244, 13204, 1305, 2] */;
@@ -1,228 +1,268 @@
/* Metro module 10473; source: modules/user_profile/native/EditWishlistActionSheet.tsx; dependencies: [57, 31, 27, 4502, 10035, 10036, 1878, 5189, 8516, 6276, 33, 4501, 697, 4017, 4504, 566, 1585, 6771, 6789, 10377, 10378, 8354, 10344, 10039, 8515, 8694, 1244, 6277, 6231, 6808, 8141, 10450, 8341, 4071, 2] */
import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */
import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */
import UseSafeAreaInsetsNative from '../../safe_area/useSafeAreaInsets.native.tsx'; /* Metro dependency 1585 */
import UserStore from '../../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import AccessibilityStore from '../../a11y/AccessibilityStore.tsx'; /* Metro dependency 4502 */
import UserProfileStore from '../UserProfileStore.tsx'; /* Metro dependency 5189 */
import UseAnalyticsLocations from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import AnalyticsLocation from '../../app_analytics/AnalyticsLocation.tsx'; /* Metro dependency 6789 */
import ReanimatedNativeView from '../../core/native/ReanimatedNativeView.tsx'; /* Metro dependency 8141 */
import UserProfileStackedActionSheet from './UserProfileStackedActionSheet.tsx'; /* Metro dependency 8694 */
import WishlistStore from '../../wishlists/WishlistStore.tsx'; /* Metro dependency 10035 */
import WishlistActionCreators from '../../wishlists/WishlistActionCreators.tsx'; /* Metro dependency 10039 */
import UseCardGridLayout from '../hooks/native/useCardGridLayout.tsx'; /* Metro dependency 10377 */
import WishlistItemCard from '../../wishlists/native/WishlistItemCard.tsx'; /* Metro dependency 10450 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
import * as ReanimatedRexportModule from '../../reanimated/ReanimatedRexport.tsx'; /* Metro dependency 4017 */
import * as TrashIconModule from '../../../design/components/Icon/native/redesign/generated/TrashIcon.tsx'; /* Metro dependency 4071 */
import * as TableRowGroupNativeModule from '../../../design/components/TableRow/native/TableRowGroup.native.tsx'; /* Metro dependency 6231 */
import * as ActionSheetConstantsModule from '../../action_sheet/native/ActionSheetConstants.tsx'; /* Metro dependency 6276 */
import * as Module06277Module from '../../../by-id/module-06277.js'; /* Metro dependency 6277 */
import * as TableSwitchRowNativeModule from '../../../design/components/TableRow/native/TableSwitchRow.native.tsx'; /* Metro dependency 6808 */
import * as IconButtonNativeModule from '../../../design/components/Button/native/IconButton.native.tsx'; /* Metro dependency 8341 */
import * as SocialLayerStorefrontMobilePurchasingExperimentModule from '../../slayer_storefront/experiments/SocialLayerStorefrontMobilePurchasingExperiment.tsx'; /* Metro dependency 8354 */
import * as UserProfileAnalyticsUtilsModule from '../UserProfileAnalyticsUtils.tsx'; /* Metro dependency 8515 */
import * as ConstantsModule from '../Constants.tsx'; /* Metro dependency 8516 */
import * as WishlistRecordModule from '../../wishlists/records/WishlistRecord.tsx'; /* Metro dependency 10036 */
import * as WishlistUtilsModule from '../../wishlists/WishlistUtils.tsx'; /* Metro dependency 10344 */
import * as WishlistVisibilityModule from '../../../external/discord_common/js/shared/shared-constants/WishlistVisibility.tsx'; /* Metro dependency 10378 */
function _fun81030(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#81030, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:6, offset: 0x01e96567, size: 681 bytes, params: 8, frame: 23
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
let value = require(27) /* metro dependency 27 */;
let value = ReactNativeModule;
const env0_5 = value.ActivityIndicator;
const env0_6 = value.View;
const accessibilityStore = importDefault(4502) /* metro dependency 4502: AccessibilityStore */;
const wishlistStore = importDefault(10035) /* metro dependency 10035: WishlistStore */;
const env0_9 = (require(10036) /* metro dependency 10036: WishlistRecord */).getWishlistProductLines;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const userProfileStore = importDefault(5189) /* metro dependency 5189: UserProfileStore */;
const env0_12 = (require(8516) /* metro dependency 8516: Constants */).TrackUserProfileWishlistActions;
const env0_13 = (require(6276) /* metro dependency 6276: ActionSheetConstants */).ACTION_SHEET_MAX_WIDTH;
value = require(33) /* metro dependency 33 */;
const env0_14 = value.jsx;
const env0_15 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
object = {};
let PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object2.container = {flex: 1, paddingHorizontal: PX_16};
object.container = {flex: 1, paddingHorizontal: PX_16};
const PX_48 = (importDefault(697) /* metro dependency 697: native */).space.PX_48;
object2.loadingContainer = {'flex': 1, 'justifyContent': 'center', 'alignItems': 'center', paddingTop: PX_48};
object.loadingContainer = {'flex': 1, 'justifyContent': 'center', 'alignItems': 'center', paddingTop: PX_48};
PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object2.toggleRow = {marginBottom: PX_16};
object2.itemsContainer = {'alignSelf': 'center', 'flexDirection': 'row', 'flexWrap': 'wrap', 'gap': 16};
object2.itemWrapper = {position: 'relative'};
const object3 = {position: 'absolute'};
object.toggleRow = {marginBottom: PX_16};
object.itemsContainer = {'alignSelf': 'center', 'flexDirection': 'row', 'flexWrap': 'wrap', 'gap': 16};
object.itemWrapper = {position: 'relative'};
const object4 = {position: 'absolute'};
let PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
object3.top = PX_8;
object4.top = PX_8;
PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
object3.right = PX_8;
object3.zIndex = 1;
object2.deleteButton = object3;
const env0_16 = Reflect.apply(createStyles, value, [object2]);
const LinearTransition = (require(4017) /* metro dependency 4017: ReanimatedRexport */).LinearTransition;
object4.right = PX_8;
object4.zIndex = 1;
object.deleteButton = object4;
const env0_16 = Reflect.apply(createStyles, value, [object]);
const LinearTransition = (ReanimatedRexportModule).LinearTransition;
value = LinearTransition.springify();
value = value.mass(0.8);
value = value.damping(100);
const env0_17 = value.stiffness(300);
object2 = {code: 'function exitingAnimation_EditWishlistActionSheetTsx1(_values){const{withTiming}=this.__closure;return{animations:{opacity:withTiming(0,{duration:150}),transform:[{scale:withTiming(0.8,{duration:150})}]},initialValues:{opacity:1,transform:[{scale:1}]}};}'};
object = {code: 'function exitingAnimation_EditWishlistActionSheetTsx1(_values){const{withTiming}=this.__closure;return{animations:{opacity:withTiming(0,{duration:150}),transform:[{scale:withTiming(0.8,{duration:150})}]},initialValues:{opacity:1,transform:[{scale:1}]}};}'};
const env0_19 = _fun81031();
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/EditWishlistActionSheet.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/EditWishlistActionSheet.tsx');
exports.default = EditWishlistActionSheet;
}
function _fun81031() { // fn#81031, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:1119, offset: 0x01e96810, size: 79 bytes, params: 1, frame: 14
const exitingAnimation2 = exitingAnimation;
const object = {};
object.withTiming = (require(4504) /* metro dependency 4504: timing */).withTiming;
exitingAnimation2.__closure = object;
exitingAnimation2.__workletHash = 17293915965800;
exitingAnimation2.__initData = env0_18;
return exitingAnimation2;
function exitingAnimation() { // fn#81032, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:1151, offset: 0x01e9685f, size: 150 bytes, params: 1, frame: 20
const object2 = {};
const value = environment.__proto__;
object2.opacity = (require(4504) /* metro dependency 4504: timing */).withTiming(0, {duration: 150});
const object4 = {};
object4.scale = (require(4504) /* metro dependency 4504: timing */).withTiming(0.8, {duration: 150});
object2.transform = [object4];
return {animations: object2, initialValues: {opacity: 1, transform: [{scale: 1}]}};
}
function _fun81031() { // fn#81031, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:1119, offset: 0x01e96810, size: 79 bytes, params: 1, frame: 14
const closure = exitingAnimation;
const object2 = {};
object2.withTiming = (require(4504) /* metro dependency 4504: timing */).withTiming;
closure.__closure = object2;
closure.__workletHash = 17293915965800;
closure.__initData = env0_18;
return closure;
}
function EditWishlistActionSheet({wishlistId, analyticsContext, analyticsLocations}) { // fn#81033, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:1599, offset: 0x01e968f5, size: 1168 bytes, params: 2, frame: 40
var object4;
const styles = useStyles();
const env0_3 = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore], function() {
return AccessibilityStore.useReducedMotion;
});
const bottom = (importDefault(1585) /* metro dependency 1585: useSafeAreaInsetsNative */)().bottom;
const defaultImport = importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */;
const r9 = analyticsLocations ?? [];
const USER_PROFILE_EDIT_WISHLIST_ACTION_SHEET = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).USER_PROFILE_EDIT_WISHLIST_ACTION_SHEET;
analyticsLocations = defaultImport(r9, USER_PROFILE_EDIT_WISHLIST_ACTION_SHEET).analyticsLocations;
const env0_4 = analyticsLocations;
const value4 = (importDefault(10377) /* metro dependency 10377: useCardGridLayout */)({maxWidth: ACTION_SHEET_MAX_WIDTH});
const env0_5 = value4.cardWidth;
const rowWidth = value4.rowWidth;
const r19 = rowWidth != null ? {width: rowWidth} : undefined;
const wishlist = (require(566) /* metro dependency 566: flux */).useStateFromStores([WishlistStore], function() {
return WishlistStore.getWishlist(wishlistId);
});
const value5 = (require(566) /* metro dependency 566: flux */).useStateFromStores([WishlistStore], function() {
return WishlistStore.isFetching(wishlistId);
});
const value6 = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore, UserProfileStore],
_fun81037);
let binding = env0_4;
const [property, env0_9] = env0_3(binding.useState(true), 2);
binding.useEffect(_fun81038, [value6?.visibility]);
const value9 = (require(8354) /* metro dependency 8354: SocialLayerStorefrontMobilePurchasingExperiment */).useIsEligibleForSocialLayerStorefrontMobilePurchasing({location: 'edit_wishlist_action_sheet'});
binding = env0_4;
const value10 = binding.useMemo(_fun81039, [wishlist, value9]);
const value11 = binding.useCallback(_fun81041, [wishlistId, property, wishlist, analyticsContext,
analyticsLocations]);
const env0_11 = binding.useCallback(_fun81042, [wishlistId, analyticsLocations]);
const UserProfileStackedActionSheet = importDefault(8694) /* metro dependency 8694: UserProfileStackedActionSheet */;
object4 = {'scrollable': true, 'startExpanded': true};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object4.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['OEgx/4']);
const BottomSheetScrollView = (require(6277) /* metro dependency 6277 */).BottomSheetScrollView;
const object2 = {paddingBottom: bottom};
const TableRowGroup = (require(6231) /* metro dependency 6231: TableRowGroupNative */).TableRowGroup;
const TableSwitchRow = (require(6808) /* metro dependency 6808: TableSwitchRowNative */).TableSwitchRow;
return (
<UserProfileStackedActionSheet {...object4}>
<BottomSheetScrollView contentContainerStyle={object2}>
<View style={styles.container}>
<View style={styles.toggleRow}>
<TableRowGroup hasIcons={false}>
<TableSwitchRow
label={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.b2nFyA)}
subLabel={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.dw58pE)}
value={property}
onValueChange={value11}
/>
</TableRowGroup>
</View>
{value5 && wishlist == null ? <View style={styles.loadingContainer}><ActivityIndicator /></View> : value10.length === 0 ? null : <View style={[styles.itemsContainer,
r19]}>{value10.map(_fun81043)}</View>}
</View>
</BottomSheetScrollView>
</UserProfileStackedActionSheet>
);
}
function exitingAnimation() { // fn#81032, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:1151, offset: 0x01e9685f, size: 150 bytes, params: 1, frame: 20
const object = {};
const value = environment.__proto__;
object.opacity = (require(4504) /* metro dependency 4504: timing */).withTiming(0, {duration: 150});
const object3 = {};
object3.scale = (require(4504) /* metro dependency 4504: timing */).withTiming(0.8, {duration: 150});
object.transform = [object3];
return {animations: object, initialValues: {opacity: 1, transform: [{scale: 1}]}};
}
function _fun81037() { // fn#81037, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:2102, offset: 0x01e96d85, size: 55 bytes, params: 1, frame: 14
const value = environment.__proto__;
const currentUser = UserStore.getCurrentUser();
const value3 = null;
return value3 != currentUser ? UserProfileStore.getWishlistSettings(currentUser.id, wishlistId) : value3;
}
function _fun81038() { // fn#81038, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:2238, offset: 0x01e96dbc, size: 94 bytes, params: 1, frame: 14
var binding;
const value2 = undefined;
let visibility = env0_7 == null ? value2 : env0_7.visibility;
if (visibility != null) {
binding = env0_9;
visibility = env0_7.visibility;
value = environment.__proto__;
binding(visibility === (require(10378) /* metro dependency 10378: WishlistVisibility */).WishlistVisibility.PUBLIC);
}
return value2;
}
function _fun81039() { // fn#81039, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:2489, offset: 0x01e96e1a, size: 57 bytes, params: 1, frame: 13
let r0 = wishlist == null ? undefined : wishlist.items.filter(_fun81040);
r0 = r0 ?? [];
return r0;
}
function EditWishlistActionSheet({wishlistId, analyticsContext, analyticsLocations}) { // fn#81033, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:1599, offset: 0x01e968f5, size: 1168 bytes, params: 2, frame: 40
var object3;
const styles = useStyles();
let useStateFromStores = FluxModule.useStateFromStores;
const env0_3 = Reflect.apply(useStateFromStores, FluxModule, [[AccessibilityStore], function() {
return AccessibilityStore.useReducedMotion;
}]);
const bottom = (UseSafeAreaInsetsNative)().bottom;
const defaultImport = UseAnalyticsLocations;
const r9 = analyticsLocations ?? [];
const USER_PROFILE_EDIT_WISHLIST_ACTION_SHEET = (AnalyticsLocation).USER_PROFILE_EDIT_WISHLIST_ACTION_SHEET;
analyticsLocations = defaultImport(r9, USER_PROFILE_EDIT_WISHLIST_ACTION_SHEET).analyticsLocations;
const analyticsLocations2 = analyticsLocations;
const value4 = (UseCardGridLayout)({maxWidth: ACTION_SHEET_MAX_WIDTH});
const env0_5 = value4.cardWidth;
const rowWidth = value4.rowWidth;
const r19 = rowWidth != null ? {width: rowWidth} : undefined;
useStateFromStores = FluxModule.useStateFromStores;
const wishlistStoreBinding = WishlistStore;
const wishlist = Reflect.apply(useStateFromStores, FluxModule, [[wishlistStoreBinding], function() {
return WishlistStore.getWishlist(wishlistId);
}]);
const value5 = FluxModule.useStateFromStores([wishlistStoreBinding], function() {
return WishlistStore.isFetching(wishlistId);
});
const value6 = FluxModule.useStateFromStores([UserStore, UserProfileStore], _fun81037);
let binding = analyticsLocations2;
const [property, env0_9] = env0_3(binding.useState(true), 2);
binding.useEffect(_fun81038, [value6?.visibility]);
const value9 = (SocialLayerStorefrontMobilePurchasingExperimentModule).useIsEligibleForSocialLayerStorefrontMobilePurchasing({location: 'edit_wishlist_action_sheet'});
binding = analyticsLocations2;
const value10 = binding.useMemo(_fun81039, [wishlist, value9]);
const value11 = binding.useCallback(_fun81041, [wishlistId, property, wishlist, analyticsContext,
analyticsLocations]);
const env0_11 = binding.useCallback(_fun81042, [wishlistId, analyticsLocations]);
object3 = {'scrollable': true, 'startExpanded': true};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object3.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['OEgx/4']);
const BottomSheetScrollView = (Module06277Module).BottomSheetScrollView;
const object = {paddingBottom: bottom};
const TableRowGroup = (TableRowGroupNativeModule).TableRowGroup;
const TableSwitchRow = (TableSwitchRowNativeModule).TableSwitchRow;
return (
<UserProfileStackedActionSheet {...object3}>
<BottomSheetScrollView contentContainerStyle={object}>
<View style={styles.container}>
<View style={styles.toggleRow}>
<TableRowGroup hasIcons={false}>
<TableSwitchRow
label={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.b2nFyA)}
subLabel={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.dw58pE)}
value={property}
onValueChange={value11}
/>
</TableRowGroup>
</View>
{
value5 && wishlist == null
? (
<View style={styles.loadingContainer}>
<ActivityIndicator />
</View>
)
: (
value10.length === 0
? null
: (
<View style={[styles.itemsContainer, r19]}>
{value10.map(_fun81043)}
</View>
)
)
}
</View>
</BottomSheetScrollView>
</UserProfileStackedActionSheet>
);
function _fun81037() { // fn#81037, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:2102, offset: 0x01e96d85, size: 55 bytes, params: 1, frame: 14
const value = environment.__proto__;
const currentUser = UserStore.getCurrentUser();
const value3 = null;
return value3 != currentUser ? UserProfileStore.getWishlistSettings(currentUser.id, wishlistId) : value3;
}
function _fun81041() { // fn#81041, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:2697, offset: 0x01e96e92, size: 242 bytes, params: 1, frame: 18
const binding = env0_8;
const value3 = undefined;
const WishlistVisibility = (require(10378) /* metro dependency 10378: WishlistVisibility */).WishlistVisibility;
const r5 = binding ? WishlistVisibility.PRIVATE : WishlistVisibility.PUBLIC;
env0_9(!env0_8);
const defaultImport = importDefault(10039) /* metro dependency 10039: WishlistActionCreators */;
const updateWishlistVisibility = defaultImport.updateWishlistVisibility;
const wishlistIdBinding = wishlistId;
Reflect.apply(updateWishlistVisibility, defaultImport, [wishlistIdBinding, r5]);
const userProfileAnalyticsUtilsModule = require(8515) /* metro dependency 8515: UserProfileAnalyticsUtils */;
const trackUserProfileWishlistAction = userProfileAnalyticsUtilsModule.trackUserProfileWishlistAction;
const object2 = {};
copyDataProperties(object2, analyticsContext, undefined);
object2['analyticsLocations'] = analyticsLocations;
object2['wishlistId'] = wishlistIdBinding;
object2['action'] = env0_8 ? TrackUserProfileWishlistActions.WISHLIST_TOGGLE_PRIVATE : TrackUserProfileWishlistActions.WISHLIST_TOGGLE_PUBLIC;
object2['productLines'] = wishlist != null ? getWishlistProductLines(wishlist) : value3;
Reflect.apply(trackUserProfileWishlistAction, userProfileAnalyticsUtilsModule, [object2]);
return value3;
}
function _fun81038() { // fn#81038, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:2238, offset: 0x01e96dbc, size: 94 bytes, params: 1, frame: 14
var binding;
const value2 = undefined;
let visibility = env0_7 == null ? value2 : env0_7.visibility;
if (visibility != null) {
binding = env0_9;
visibility = env0_7.visibility;
value = environment.__proto__;
binding(visibility === (require(10378) /* metro dependency 10378: WishlistVisibility */).WishlistVisibility.PUBLIC);
}
return value2;
}
function _fun81042(a0) { // fn#81042, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:3033, offset: 0x01e96f84, size: 54 bytes, params: 2, frame: 16
let value = environment.__proto__;
value = importDefault(10039) /* metro dependency 10039: WishlistActionCreators */;
value.removeSkuFromWishlist(wishlistId, a0, analyticsLocations);
}
function _fun81039() { // fn#81039, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:2489, offset: 0x01e96e1a, size: 57 bytes, params: 1, frame: 13
let r0 = wishlist == null ? undefined : wishlist.items.filter(_fun81040);
r0 = r0 ?? [];
return r0;
function _fun81040(a0) { // fn#81040, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:2547, offset: 0x01e96e53, size: 63 bytes, params: 2, frame: 13
const value = environment.__proto__.__proto__;
return (WishlistUtilsModule).isEligibleWishlistItemOnMobile(a0,
{isWishlistOwner: true, isSocialLayerStorefrontMobilePurchasingEnabled: env1_10});
}
function _fun81043(a0) { // fn#81043, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:3665, offset: 0x01e96fba, size: 485 bytes, params: 2, frame: 30
var environment;
const env0_0 = a0;
let value = environment.__proto__;
const value2 = undefined;
const ReanimatedNativeView = importDefault(8141) /* metro dependency 8141: ReanimatedNativeView */;
const defaultImportProps = {style: styles.itemWrapper, exiting: useReducedMotion ? value2 : env1_19,
layout: useReducedMotion ? value2 : env1_17};
const value4 = ((Component) => <Component item={a0} size={cardWidth} accessibilityHidden />)(importDefault(10450) /* metro dependency 10450: WishlistItemCard */);
const IconButton = (require(8341) /* metro dependency 8341: IconButtonNative */).IconButton;
const object = {'variant': 'primary-overlay', 'size': 'sm'};
const TrashIcon = (require(4071) /* metro dependency 4071: TrashIcon */).TrashIcon;
const ICON_FEEDBACK_CRITICAL = (importDefault(697) /* metro dependency 697: native */).colors.ICON_FEEDBACK_CRITICAL;
object.icon = <TrashIcon size="sm" color={ICON_FEEDBACK_CRITICAL} />;
object.onPress = onPress_81044;
const isOwned = a0.isOwned;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
value = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t['IBBF8/'],
{productName: a0.skuName});
object.accessibilityLabel = isOwned ? '' + value + ', ' + intl.string((require(1244) /* metro dependency 1244: indexNative */).t['6cfuDj']) : value;
return (
<ReanimatedNativeView {...defaultImportProps} key={a0.skuId}>
{value4}
<View style={styles.deleteButton}>
<IconButton {...object} />
</View>
</ReanimatedNativeView>
);
}
}
function _fun81040(a0) { // fn#81040, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:2547, offset: 0x01e96e53, size: 63 bytes, params: 2, frame: 13
const value = environment.__proto__.__proto__;
return (require(10344) /* metro dependency 10344: WishlistUtils */).isEligibleWishlistItemOnMobile(a0,
{isWishlistOwner: true, isSocialLayerStorefrontMobilePurchasingEnabled: env1_10});
}
function _fun81041() { // fn#81041, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:2697, offset: 0x01e96e92, size: 242 bytes, params: 1, frame: 18
const binding = env0_8;
const value3 = undefined;
const WishlistVisibility = (WishlistVisibilityModule).WishlistVisibility;
const r5 = binding ? WishlistVisibility.PRIVATE : WishlistVisibility.PUBLIC;
env0_9(!env0_8);
const defaultImport = WishlistActionCreators;
const updateWishlistVisibility = defaultImport.updateWishlistVisibility;
const wishlistIdBinding = wishlistId;
Reflect.apply(updateWishlistVisibility, defaultImport, [wishlistIdBinding, r5]);
const trackUserProfileWishlistAction = UserProfileAnalyticsUtilsModule.trackUserProfileWishlistAction;
const object = {};
copyDataProperties(object, analyticsContext, undefined);
object['analyticsLocations'] = analyticsLocations;
object['wishlistId'] = wishlistIdBinding;
object['action'] = env0_8 ? TrackUserProfileWishlistActions.WISHLIST_TOGGLE_PRIVATE : TrackUserProfileWishlistActions.WISHLIST_TOGGLE_PUBLIC;
object['productLines'] = wishlist != null ? getWishlistProductLines(wishlist) : value3;
Reflect.apply(trackUserProfileWishlistAction, UserProfileAnalyticsUtilsModule, [object]);
return value3;
}
function _fun81042(a0) { // fn#81042, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:3033, offset: 0x01e96f84, size: 54 bytes, params: 2, frame: 16
let value = environment.__proto__;
value = importDefault(10039) /* metro dependency 10039: WishlistActionCreators */;
value.removeSkuFromWishlist(wishlistId, a0, analyticsLocations);
}
function _fun81043(a0) { // fn#81043, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:3665, offset: 0x01e96fba, size: 485 bytes, params: 2, frame: 30
var environment;
const env0_0 = a0;
let value = environment.__proto__;
const value2 = undefined;
const defaultImportProps = {style: styles.itemWrapper, exiting: useReducedMotion ? value2 : env1_19,
layout: useReducedMotion ? value2 : env1_17};
const value4 = ((Component) => <Component item={a0} size={cardWidth} accessibilityHidden />)(WishlistItemCard);
const IconButton = (IconButtonNativeModule).IconButton;
const object2 = {'variant': 'primary-overlay', 'size': 'sm'};
const TrashIcon = (TrashIconModule).TrashIcon;
const ICON_FEEDBACK_CRITICAL = (Native).colors.ICON_FEEDBACK_CRITICAL;
object2.icon = <TrashIcon size="sm" color={ICON_FEEDBACK_CRITICAL} />;
object2.onPress = onPress_81044;
const isOwned = a0.isOwned;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
value = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t['IBBF8/'],
{productName: a0.skuName});
object2.accessibilityLabel = isOwned ? '' + value + ', ' + intl.string((require(1244) /* metro dependency 1244: indexNative */).t['6cfuDj']) : value;
return (
<ReanimatedNativeView {...defaultImportProps} key={a0.skuId}>
{value4}
<View style={styles.deleteButton}>
<IconButton {...object2} />
</View>
</ReanimatedNativeView>
);
function onPress_81044() { // fn#81044, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:3984, offset: 0x01e9719f, size: 28 bytes, params: 1, frame: 11
return env1_11(env0_0.skuId);
}
}
}
function onPress_81044() { // fn#81044, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10659:3984, offset: 0x01e9719f, size: 28 bytes, params: 1, frame: 11
return env1_11(env0_0.skuId);
}
global.__d(_fun81030, 10473, [57, 31, 27, 4502, 10035, 10036, 1878, 5189, 8516, 6276, 33, 4501, 697, 4017, 4504,
566, 1585, 6771, 6789, 10377, 10378, 8354, 10344, 10039, 8515, 8694, 1244, 6277, 6231, 6808, 8141, 10450, 8341,
4071,
2]) /* metro module 10473, dependencies: [57, 31, 27, 4502, 10035, 10036, 1878, 5189, 8516, 6276, 33, 4501, 697, 4017, 4504, 566, 1585, 6771, 6789, 10377, 10378, 8354, 10344, 10039, 8515, 8694, 1244, 6277, 6231, 6808, 8141, 10450, 8341, 4071, 2] */;
@@ -1,18 +1,47 @@
/* Metro module 13238; source: modules/user_profile/native/GuildProfileEditForm.tsx; dependencies: [29, 31, 27, 1945, 5189, 6816, 661, 1880, 33, 3802, 6771, 6789, 13184, 4080, 13185, 1962, 8402, 1244, 8400, 7882, 8496, 13195, 6996, 5463, 697, 10302, 13233, 566, 8490, 6882, 8501, 8403, 12687, 13239, 8494, 8497, 4573, 3868, 13240, 8511, 8513, 8695, 13205, 3995, 13206, 13210, 13212, 13213, 13217, 13221, 13231, 5080, 7028, 7940, 2] */
import ObjectWithoutProperties from '../../../by-id/module-00029-ObjectWithoutProperties.js'; /* Metro dependency 29 */
import GuildMemberStore from '../../../stores/GuildMemberStore.tsx'; /* Metro dependency 1945 */
import PremiumUtils from '../../../utils/PremiumUtils.tsx'; /* Metro dependency 3802 */
import UserProfileStore from '../UserProfileStore.tsx'; /* Metro dependency 5189 */
import UseSafeAreaInsetsKeyboardAwareNative from '../../safe_area/useSafeAreaInsetsKeyboardAware.native.tsx'; /* Metro dependency 5463 */
import UseAnalyticsLocations from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import AnalyticsLocation from '../../app_analytics/AnalyticsLocation.tsx'; /* Metro dependency 6789 */
import UseKeyboardIsOpen from '../../keyboard/native/useKeyboardIsOpen.tsx'; /* Metro dependency 6996 */
import UseProfileTheme from '../hooks/useProfileTheme.tsx'; /* Metro dependency 8494 */
import UserProfileSharedStyles from './UserProfileSharedStyles.tsx'; /* Metro dependency 8496 */
import UseBadges from '../hooks/useBadges.tsx'; /* Metro dependency 8501 */
import UserProfileGradientContainer from './UserProfileGradientContainer.tsx'; /* Metro dependency 8511 */
import UserProfileCustomStatusBubble from './UserProfileCustomStatusBubble.tsx'; /* Metro dependency 8513 */
import UserProfilePrimaryInfo from './UserProfilePrimaryInfo.tsx'; /* Metro dependency 8695 */
import UseSafeAreaAvoidingInputsNative from '../../safe_area/useSafeAreaAvoidingInputs.native.tsx'; /* Metro dependency 10302 */
import UserProfileEditBannerButton from './UserProfileEditBannerButton.tsx'; /* Metro dependency 13184 */
import UserProfileEditFormSharedStyles from './UserProfileEditFormSharedStyles.tsx'; /* Metro dependency 13195 */
import UserProfileEditFormTextField2 from './UserProfileEditFormTextField.tsx'; /* Metro dependency 13205 */
import UseGuildProfileEditForm from '../../user_settings/profiles/native/useGuildProfileEditForm.tsx'; /* Metro dependency 13233 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
import * as PremiumConstantsModule from '../../premium/PremiumConstants.tsx'; /* Metro dependency 1880 */
import * as NativeModule from '../../../external/discord_common/js/packages/design/native.tsx'; /* Metro dependency 3868 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
import * as UseAnalyticsLocationsModule from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import * as ConstantsModule from './Constants.tsx'; /* Metro dependency 6816 */
import * as UserSettingToActivityModule from '../../custom_status/utils/userSettingToActivity.tsx'; /* Metro dependency 6882 */
import * as UserProfileSettingsActionCreatorsModule from '../UserProfileSettingsActionCreators.tsx'; /* Metro dependency 8400 */
import * as RecentAvatarUtilsModule from '../../recent_avatars/RecentAvatarUtils.tsx'; /* Metro dependency 8403 */
import * as UseUserProfileColorsModule from '../hooks/native/useUserProfileColors.tsx'; /* Metro dependency 8497 */
import * as GuildActionSheetUtilsModule from '../../guild_action_sheet/native/GuildActionSheetUtils.tsx'; /* Metro dependency 12687 */
import * as GuildIdentitySettingsUtilsModule from '../../guild_identity/GuildIdentitySettingsUtils.tsx'; /* Metro dependency 13239 */
function _fun100965(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100965, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:6, offset: 0x022023c6, size: 405 bytes, params: 8, frame: 19
var object2;
const env0_0 = require;
const env0_3 = ['nick', 'bio', 'guild_tag'];
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_4 = importDefault(29) /* metro dependency 29 */;
const env0_5 = importAll(31) /* metro dependency 31 */;
let value = require(27) /* metro dependency 27 */;
let value = ReactNativeModule;
const env0_6 = value.ScrollView;
const env0_7 = value.View;
const guildMemberStore = importDefault(1945) /* metro dependency 1945: GuildMemberStore */;
const userProfileStore = importDefault(5189) /* metro dependency 5189: UserProfileStore */;
const env0_10 = (require(6816) /* metro dependency 6816: Constants */).FLOATING_UPSELL_HEIGHT;
value = require(661) /* metro dependency 661: Constants */;
const env0_11 = value.AnalyticsObjects;
const AnalyticsPages = value.AnalyticsPages;
@@ -21,315 +50,383 @@ function _fun100965(global, require, importDefault, importAll, module, exports,
const env0_14 = value.DISPLAY_NAME_MAX_LENGTH;
const env0_15 = value.PRONOUNS_MAX_LENGTH;
const env0_16 = value.UpsellTypes;
const env0_17 = (require(1880) /* metro dependency 1880: PremiumConstants */).PremiumUpsellTypes;
value = require(33) /* metro dependency 33 */;
const env0_18 = value.jsx;
const env0_19 = value.jsxs;
object2 = {};
object = {};
const USER_SETTINGS = AnalyticsPages.USER_SETTINGS;
object2.page = USER_SETTINGS;
object.page = USER_SETTINGS;
const SETTINGS_CUSTOMIZE_PROFILE = AnalyticsSections.SETTINGS_CUSTOMIZE_PROFILE;
object2.section = SETTINGS_CUSTOMIZE_PROFILE;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/GuildProfileEditForm.tsx');
object.section = SETTINGS_CUSTOMIZE_PROFILE;
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/GuildProfileEditForm.tsx');
exports.default = GuildProfileEditForm;
}
function EditGuildProfileBanner({user, displayProfile, guildId, guildMember, guildMemberProfile, pendingAvatarSrc, pendingBanner, pendingThemeColors, disabled}) { // fn#100966, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:513, offset: 0x0220255b, size: 346 bytes, params: 2, frame: 27
const canUsePremiumGuildMemberProfile2 = (PremiumUtils).canUsePremiumGuildMemberProfile(user);
const defaultImport2 = UseAnalyticsLocations;
const EDIT_BANNER = (AnalyticsLocation).EDIT_BANNER;
const analyticsLocations = defaultImport2(EDIT_BANNER).analyticsLocations;
const AnalyticsLocationProvider = (UseAnalyticsLocationsModule).AnalyticsLocationProvider;
const defaultImport3Props = {user: user, displayProfile: displayProfile, pendingBanner: pendingBanner,
pendingAvatarSrc: pendingAvatarSrc, pendingThemeColors: pendingThemeColors, showProfilePreviewButton: false,
showEditButton: canUsePremiumGuildMemberProfile2 && guildMember != null, onPressEdit: onPressEdit_100967};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
defaultImport3Props.editButtonAccessibilityLabel = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['95hPAe']);
defaultImport3Props.editDisabled = disabled;
return (
<AnalyticsLocationProvider value={analyticsLocations}>
<UserProfileEditBannerButton {...defaultImport3Props} />
</AnalyticsLocationProvider>
);
function EditGuildProfileBannerOnPressEdit() { // fn#100967, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:1005, owner: EditGuildProfileBanner.onPressEdit, offset: 0x022026b5, size: 359 bytes, params: 1, frame: 22
var object;
var value3;
var defaultImport2;
var openLazy;
var value4;
var moduleValue2;
var intl;
if (ObjectWithoutProperties) {
value3 = undefined;
defaultImport2 = importDefault(dependencyMap[13]);
openLazy = defaultImport2.openLazy;
value4 = require(dependencyMap[15])(dependencyMap[14], dependencyMap.paths);
object = {};
object.user = user;
object.analyticsLocations = analyticsLocations;
moduleValue2 = require(dependencyMap[16]);
object.showRemoveBanner = moduleValue2.showRemoveBanner(pendingBanner,
guildMemberProfile == null ? value3 : guildMemberProfile.banner);
intl = require(dependencyMap[17]).intl;
object.removeText = intl.string(require(dependencyMap[17]).t.jHlJNS);
object.onBannerChange = onBannerChange;
Reflect.apply(openLazy, defaultImport2, [value4, 'Change Banner', object]);
} else {
importDefault(dependencyMap[19]).handleShowUpsellAlert({initialUpsellKey: UpsellTypes.PREMIUM_GUILD_PROFILE,
analyticsLocation: {section: AnalyticsSections.PREMIUM_GUILD_MEMBER_PROFILE,
object: AnalyticsObjects.EDIT_GUILD_PROFILE_BANNER}, analyticsLocations: analyticsLocations,
analyticsProperties: {type: PremiumUpsellTypes.PREMIUM_GUILD_IDENTITY_MODAL}});
}
function onBannerChange(a0, a1) { // fn#100968, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:1235, owner: EditGuildProfileBanner.onPressEdit.onBannerChange, offset: 0x0220281c, size: 67 bytes, params: 3, frame: 12
const value = environment.__proto__.__proto__;
return (UserProfileSettingsActionCreatorsModule).setPendingChanges({guildId: guildId,
banner: a0, bannerOriginalMd5: a1});
}
function EditGuildProfileBanner({user, displayProfile, guildId, guildMember, guildMemberProfile, pendingAvatarSrc, pendingBanner, pendingThemeColors, disabled}) { // fn#100966, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:513, offset: 0x0220255b, size: 346 bytes, params: 2, frame: 27
const canUsePremiumGuildMemberProfile2 = (importDefault(3802) /* metro dependency 3802: PremiumUtils */).canUsePremiumGuildMemberProfile(user);
const defaultImport2 = importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */;
const EDIT_BANNER = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_BANNER;
const analyticsLocations = defaultImport2(EDIT_BANNER).analyticsLocations;
const AnalyticsLocationProvider = (require(6771) /* metro dependency 6771: useAnalyticsLocations */).AnalyticsLocationProvider;
const UserProfileEditBannerButton = importDefault(13184) /* metro dependency 13184: UserProfileEditBannerButton */;
const defaultImport3Props = {user: user, displayProfile: displayProfile, pendingBanner: pendingBanner,
pendingAvatarSrc: pendingAvatarSrc, pendingThemeColors: pendingThemeColors, showProfilePreviewButton: false,
showEditButton: canUsePremiumGuildMemberProfile2 && guildMember != null, onPressEdit: onPressEdit};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
defaultImport3Props.editButtonAccessibilityLabel = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['95hPAe']);
defaultImport3Props.editDisabled = disabled;
return (
<AnalyticsLocationProvider value={analyticsLocations}>
<UserProfileEditBannerButton {...defaultImport3Props} />
</AnalyticsLocationProvider>
);
}
}
function GuildProfileEditForm({currentUser}) { // fn#100969, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:1750, offset: 0x0220285f, size: 3393 bytes, params: 2, frame: 79
var object5;
var r30;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
var UserProfileEditFormTextField;
var object30;
var UserProfileUpsellCard;
var object36;
var items10;
var object2;
const value3 = (importDefault(8496) /* metro dependency 8496: UserProfileSharedStyles */)();
const value4 = (importDefault(13195) /* metro dependency 13195: UserProfileEditFormSharedStyles */)();
const value5 = (importDefault(6996) /* metro dependency 6996: useKeyboardIsOpen */)();
const binding = env0_5;
const value7 = binding.useRef(null);
const value8 = binding.useRef(null);
const value9 = binding.useRef(null);
const value10 = binding.useRef(null);
const insets = (importDefault(5463) /* metro dependency 5463: useSafeAreaInsetsKeyboardAwareNative */)({includeKeyboardHeight: true}).insets;
let PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
const defaultImport2 = importDefault(10302) /* metro dependency 10302: useSafeAreaAvoidingInputsNative */;
object5 = {insets: insets};
const items3 = [{ref: value8, offset: {type: 'toRef', ref: value9, extraOffset: PX_16}}];
items3[1] = {ref: value9, offset: {type: 'toRef', ref: value10, extraOffset: PX_16}};
const object3 = {ref: value10};
const PX_64 = (importDefault(697) /* metro dependency 697: native */).space.PX_64;
object3.offset = {type: 'toValue', value: PX_64};
items3[2] = object3;
object5.inputs = items3;
object5.scrollViewRef = value7;
const onFocus = defaultImport2(object5).onFocus;
const {guild, errors, isDisabled, pendingNickname, pendingAvatar, pendingBanner, pendingThemeColors,
pendingPronouns, pendingBio, pendingAvatarDecoration, pendingProfileEffect, pendingProfileFrame,
pendingNameplate,
pendingDisplayNameStyles} = (importDefault(13233) /* metro dependency 13233: useGuildProfileEditForm */)();
const value12 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildMemberStore], _fun100970);
const value13 = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserProfileStore], _fun100971);
const value14 = (importDefault(8490) /* metro dependency 8490: useDisplayProfile */)(currentUser.id, guild?.id);
const value15 = (require(6882) /* metro dependency 6882: userSettingToActivity */).useCustomStatusActivity();
const value16 = (importDefault(8501) /* metro dependency 8501: useBadges */)(value14);
const pendingAvatarSrc = (require(8403) /* metro dependency 8403: RecentAvatarUtils */).getPendingAvatarSrc({userId: currentUser.id,
image: pendingAvatar});
const guildActionSheetUtilsModule = require(12687) /* metro dependency 12687: GuildActionSheetUtils */;
const useGuildActionSheetPermissions = guildActionSheetUtilsModule.useGuildActionSheetPermissions;
const canEditNickname = Reflect.apply(useGuildActionSheetPermissions, guildActionSheetUtilsModule,
[guild]).canEditNickname;
const canUsePremiumGuildMemberProfile2 = (importDefault(3802) /* metro dependency 3802: PremiumUtils */).canUsePremiumGuildMemberProfile(currentUser);
const guildIdentitySettingsUtilsModule = require(13239) /* metro dependency 13239: GuildIdentitySettingsUtils */;
const canResetThemeColors2 = guildIdentitySettingsUtilsModule.canResetThemeColors(pendingThemeColors,
value13?.themeColors);
const value18 = !canUsePremiumGuildMemberProfile2;
let r9 = canUsePremiumGuildMemberProfile2 ? value18 : !value5;
let nick = value12?.nick;
const value20 = '';
let r57 = nick ?? value20;
let r53 = value13?.pronouns ?? value20;
const r52 = (value14 == null ? undefined : value14._userProfile.pronouns) ?? value20;
r53 = pendingPronouns ?? r53;
let bio = value13?.bio;
let r47 = bio ?? value20;
const r45 = (value14 == null ? undefined : value14._userProfile.bio) ?? value20;
const defaultImport5 = importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */;
const USER_SETTINGS = (importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).USER_SETTINGS;
const env0_2 = defaultImport5([USER_SETTINGS]).analyticsLocations;
const {theme, primaryColor,
secondaryColor} = (importDefault(8494) /* metro dependency 8494: useProfileTheme */)({user: currentUser,
displayProfile: value14, pendingThemeColors: pendingThemeColors});
const {gradientFallbackBackground, gradientSecondaryBackground, containerBackground,
avatarBackground} = (require(8497) /* metro dependency 8497: useUserProfileColors */).useUserProfileColors({theme: theme,
primaryColor: primaryColor, secondaryColor: secondaryColor});
const bottom = insets.bottom;
const FLOATING_UPSELL_HEIGHT2 = r9 ? FLOATING_UPSELL_HEIGHT : 0;
const value24 = bottom + FLOATING_UPSELL_HEIGHT2;
PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
const value25 = value24 + PX_16;
object5 = {backgroundColor: avatarBackground};
nick = errors.nick;
bio = errors.bio;
const guild_tag = errors.guild_tag;
const value26 = env0_4(errors, env0_3);
const r59 = nick?.[0];
const r55 = errors.pronouns?.[0];
const r50 = bio?.[0];
let r29 = guild_tag?.[0];
if (guild == null) {
return null;
}
const ThemeContextProvider = (require(3868) /* metro dependency 3868: native */).ThemeContextProvider;
const items2 = [value4.container];
items2[1] = {backgroundColor: gradientSecondaryBackground};
const view = <View style={value4.bounceOffset} />;
const object4 = {backgroundColor: gradientSecondaryBackground};
const editGuildProfileBanner = <EditGuildProfileBanner user={currentUser} displayProfile={value14} guildId={guild.id} guildMember={value12} guildMemberProfile={value13} pendingAvatarSrc={pendingAvatarSrc} pendingBanner={pendingBanner} pendingThemeColors={pendingThemeColors} disabled={isDisabled} />;
const view2 = <View style={[value3.avatarBackground, value3.avatarPosition, value4.avatarContainer,
object5]}>{((Component) => <Component userId={currentUser.id} disabled={isDisabled || value18} disableStatus={false} guildId={guild?.id} statusStyle={object5} />)(importDefault(13240) /* metro dependency 13240: EditGuildIdentityAvatar */)}</View>;
const UserProfileGradientContainer = importDefault(8511) /* metro dependency 8511: UserProfileGradientContainer */;
const items6 = [value3.profileContentWrapper];
items6[1] = value3.profileContent;
items6[2] = {paddingTop: 0, paddingBottom: value25};
const items7 = [((Component) => <Component customStatusActivity={value15} hasCustomProfileTheme={primaryColor != null} style={value3.customStatusBubble} emojiOnlyStyle={value3.emojiOnlyCustomStatusBubble} editEnabled />)(importDefault(8513) /* metro dependency 8513: UserProfileCustomStatusBubble */)];
const UserProfilePrimaryInfo = importDefault(8695) /* metro dependency 8695: UserProfilePrimaryInfo */;
let r63 = pendingNickname ?? r57;
items7[1] = <UserProfilePrimaryInfo user={currentUser} displayName={r63} pronouns={value20 === r53 ? r52 : r53} badges={value16} badgeContainerBackground={containerBackground} displayNameAccessibilityRole="header" guildId={guild.id} pendingDisplayNameStyles={pendingDisplayNameStyles} />;
const items8 = [value4.formContainer];
items8[1] = {backgroundColor: containerBackground, paddingBottom: 20};
if (r50 != null) {
r30 = null;
} else if (r59 != null) {
r30 = null;
} else {
r63 = r29 ?? (global.Object.keys(value26).length > 0 ? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.s35OuK) : null);
r29 = r63 == null || value20 === r63 ? null : <View style={value4.errorContainer}><Text variant="text-sm/bold" color="text-feedback-critical">{r63}</Text></View>;
r30 = r29;
}
const items9 = [r30];
const UserProfileEditFormTextField2 = importDefault(13205) /* metro dependency 13205: UserProfileEditFormTextField */;
const userProfileEditFormTextField2Props = {inputRef: value8,
label: intl.string((require(1244) /* metro dependency 1244: indexNative */).t.me1lRk), errorMessage: r59};
r57 = pendingNickname ?? r57;
userProfileEditFormTextField2Props.value = r57;
userProfileEditFormTextField2Props.onFocus = onFocus;
userProfileEditFormTextField2Props.onChange = onChange_100972;
userProfileEditFormTextField2Props.placeholder = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(currentUser);
userProfileEditFormTextField2Props.maxLength = DISPLAY_NAME_MAX_LENGTH;
userProfileEditFormTextField2Props.isDisabled = canEditNickname ? isDisabled : !canEditNickname;
items9[1] = <UserProfileEditFormTextField2 {...userProfileEditFormTextField2Props} />;
items9[2] = canUsePremiumGuildMemberProfile2 && ((Component) => <Component user={currentUser} guildId={guild.id} />)(importDefault(13206) /* metro dependency 13206: UserProfileDisplayNameStylesEditButton */);
const defaultImport14 = UserProfileEditFormTextField2;
const defaultImport14Props = {inputRef: value9,
label: intl.string((require(1244) /* metro dependency 1244: indexNative */).t['+T3RI/']), errorMessage: r55};
const string = intl.string;
const NZqtIp = (require(1244) /* metro dependency 1244: indexNative */).t.NZqtIp;
defaultImport14Props.description = Reflect.apply(string, intl, [NZqtIp]);
defaultImport14Props.value = r53;
defaultImport14Props.onFocus = onFocus;
defaultImport14Props.onChange = onChange_100973;
defaultImport14Props.placeholder = r52;
defaultImport14Props.maxLength = PRONOUNS_MAX_LENGTH;
defaultImport14Props.isDisabled = isDisabled;
items9[3] = ((Component) => <Component {...defaultImport14Props} />)(defaultImport14);
if (canUsePremiumGuildMemberProfile2) {
UserProfileEditFormTextField = UserProfileEditFormTextField2;
var userProfileEditFormTextFieldProps = {inputRef: value10, label: intl.string(t.ZzAR2Y), errorMessage: r50,
description: intl.string(t.S5O8U2)};
r47 = pendingBio ?? r47;
userProfileEditFormTextFieldProps.value = r47;
userProfileEditFormTextFieldProps.onFocus = onFocus;
userProfileEditFormTextFieldProps.onChange = onChange_100974;
userProfileEditFormTextFieldProps.placeholder = r45;
userProfileEditFormTextFieldProps.maxLength = BIO_MAX_LENGTH;
userProfileEditFormTextFieldProps.numberOfLines = 5;
userProfileEditFormTextFieldProps.isDisabled = isDisabled;
r30 = <UserProfileEditFormTextField {...userProfileEditFormTextFieldProps} />;
} else {
r30 = null;
}
items9[4] = r30;
items9[5] = ((Component) => <Component pendingAvatarSrc={pendingAvatarSrc} pendingThemeColors={pendingThemeColors} user={currentUser} guildId={guild.id} onProfileThemeColorsChanged={onProfileThemeColorsChanged} showResetMenu={canResetThemeColors2} />)(importDefault(13210) /* metro dependency 13210: UserProfileEditTheme */);
items9[6] = ((Component) => <Component user={currentUser} guildId={guild.id} pendingAvatarDecoration={pendingAvatarDecoration} />)(importDefault(13212) /* metro dependency 13212: UserProfileAvatarDecorationEditButton */);
items9[7] = ((Component) => <Component user={currentUser} guildId={guild.id} pendingProfileEffect={pendingProfileEffect} displayProfile={value14} />)(importDefault(13213) /* metro dependency 13213: UserProfileEffectEditButton */);
items9[8] = ((Component) => <Component user={currentUser} guildId={guild.id} pendingProfileFrame={pendingProfileFrame} displayProfile={value14} />)(importDefault(13217) /* metro dependency 13217: UserProfileFrameEditButton */);
items9[9] = ((Component) => <Component user={currentUser} pendingNameplate={pendingNameplate} guildId={guild.id} />)(importDefault(13221) /* metro dependency 13221: UserProfileNameplateEditButton */);
items7[2] = <View style={items8}>{items9}</View>;
const scrollView = <ScrollView ref={value7}>{view}<View style={object4}>{editGuildProfileBanner}<View>{view2}<UserProfileGradientContainer fallbackBackground={gradientFallbackBackground} primaryColor={primaryColor} secondaryColor={secondaryColor} containerStyle={items6}>{items7}</UserProfileGradientContainer></View></View></ScrollView>;
if (r9) {
UserProfileUpsellCard = importDefault(13231) /* metro dependency 13231: UserProfileUpsellCard */;
items10 = [value4.floatingUpsell];
object2 = {};
object2.bottom = (importDefault(697) /* metro dependency 697: native */).space.PX_16 + insets.bottom;
items10[1] = object2;
r9 = <UserProfileUpsellCard style={items10} ctaText={intl.string(t.pj0XBN)} onPress={onPress_100976}><Text variant="text-sm/normal">{intl.string(t.YIZS5B)}</Text></UserProfileUpsellCard>;
}
return (
<ThemeContextProvider
theme={theme}
primaryColor={primaryColor}
secondaryColor={secondaryColor}
>
<View style={items2}>
{scrollView}
{r9}
function GuildProfileEditForm({currentUser}) { // fn#100969, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:1750, offset: 0x0220285f, size: 3393 bytes, params: 2, frame: 79
var object10;
var r30;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const Text = (TextModule).Text;
var UserProfileEditFormTextField;
var object2;
var UserProfileUpsellCard;
var object3;
var items10;
var object;
const value3 = (UserProfileSharedStyles)();
const value4 = (UserProfileEditFormSharedStyles)();
const value5 = (UseKeyboardIsOpen)();
const value7 = ReactModule.useRef(null);
const value8 = ReactModule.useRef(null);
const value9 = ReactModule.useRef(null);
const value10 = ReactModule.useRef(null);
const insets = (UseSafeAreaInsetsKeyboardAwareNative)({includeKeyboardHeight: true}).insets;
let PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
const defaultImport2 = UseSafeAreaAvoidingInputsNative;
object10 = {insets: insets};
const items3 = [{ref: value8, offset: {type: 'toRef', ref: value9, extraOffset: PX_16}}];
items3[1] = {ref: value9, offset: {type: 'toRef', ref: value10, extraOffset: PX_16}};
const object6 = {ref: value10};
const PX_64 = (importDefault(697) /* metro dependency 697: native */).space.PX_64;
object6.offset = {type: 'toValue', value: PX_64};
items3[2] = object6;
object10.inputs = items3;
object10.scrollViewRef = value7;
const onFocus = defaultImport2(object10).onFocus;
const {guild, errors, isDisabled, pendingNickname, pendingAvatar, pendingBanner, pendingThemeColors,
pendingPronouns, pendingBio, pendingAvatarDecoration, pendingProfileEffect, pendingProfileFrame,
pendingNameplate,
pendingDisplayNameStyles} = (UseGuildProfileEditForm)();
const value12 = (FluxModule).useStateFromStores([GuildMemberStore], _fun100970);
const value13 = (FluxModule).useStateFromStores([UserProfileStore], _fun100971);
const value14 = (importDefault(8490) /* metro dependency 8490: useDisplayProfile */)(currentUser.id, guild?.id);
const value15 = (UserSettingToActivityModule).useCustomStatusActivity();
const value16 = (UseBadges)(value14);
const pendingAvatarSrc = (RecentAvatarUtilsModule).getPendingAvatarSrc({userId: currentUser.id,
image: pendingAvatar});
const useGuildActionSheetPermissions = GuildActionSheetUtilsModule.useGuildActionSheetPermissions;
const canEditNickname = Reflect.apply(useGuildActionSheetPermissions, GuildActionSheetUtilsModule,
[guild]).canEditNickname;
const canUsePremiumGuildMemberProfile2 = (PremiumUtils).canUsePremiumGuildMemberProfile(currentUser);
const canResetThemeColors2 = GuildIdentitySettingsUtilsModule.canResetThemeColors(pendingThemeColors,
value13?.themeColors);
const value18 = !canUsePremiumGuildMemberProfile2;
let r9 = canUsePremiumGuildMemberProfile2 ? value18 : !value5;
let nick = value12?.nick;
const value20 = '';
let r57 = nick ?? value20;
let r53 = value13?.pronouns ?? value20;
const r52 = (value14 == null ? undefined : value14._userProfile.pronouns) ?? value20;
r53 = pendingPronouns ?? r53;
let bio = value13?.bio;
let r47 = bio ?? value20;
const r45 = (value14 == null ? undefined : value14._userProfile.bio) ?? value20;
const defaultImport5 = UseAnalyticsLocations;
const USER_SETTINGS = (AnalyticsLocation).USER_SETTINGS;
const env0_2 = defaultImport5([USER_SETTINGS]).analyticsLocations;
const {theme, primaryColor,
secondaryColor} = (UseProfileTheme)({user: currentUser,
displayProfile: value14, pendingThemeColors: pendingThemeColors});
const {gradientFallbackBackground, gradientSecondaryBackground, containerBackground,
avatarBackground} = (UseUserProfileColorsModule).useUserProfileColors({theme: theme,
primaryColor: primaryColor, secondaryColor: secondaryColor});
const bottom = insets.bottom;
const FLOATING_UPSELL_HEIGHT2 = r9 ? FLOATING_UPSELL_HEIGHT : 0;
const value24 = bottom + FLOATING_UPSELL_HEIGHT2;
PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
const value25 = value24 + PX_16;
object10 = {backgroundColor: avatarBackground};
nick = errors.nick;
bio = errors.bio;
const guild_tag = errors.guild_tag;
const value26 = ObjectWithoutProperties(errors, env0_3);
const r59 = nick?.[0];
const r55 = errors.pronouns?.[0];
const r50 = bio?.[0];
let r29 = guild_tag?.[0];
if (guild == null) {
return null;
}
const ThemeContextProvider = (NativeModule).ThemeContextProvider;
const items2 = [value4.container];
items2[1] = {backgroundColor: gradientSecondaryBackground};
const view = <View style={value4.bounceOffset} />;
const object9 = {backgroundColor: gradientSecondaryBackground};
const editGuildProfileBanner = (
<EditGuildProfileBanner
user={currentUser}
displayProfile={value14}
guildId={guild.id}
guildMember={value12}
guildMemberProfile={value13}
pendingAvatarSrc={pendingAvatarSrc}
pendingBanner={pendingBanner}
pendingThemeColors={pendingThemeColors}
disabled={isDisabled}
/>
);
const view2 = (
<View style={[value3.avatarBackground, value3.avatarPosition, value4.avatarContainer, object10]}>
{((Component) => <Component userId={currentUser.id} disabled={isDisabled || value18} disableStatus={false} guildId={guild?.id} statusStyle={object10} />)(importDefault(13240) /* metro dependency 13240: EditGuildIdentityAvatar */)}
</View>
</ThemeContextProvider>
);
}
);
const items6 = [value3.profileContentWrapper];
items6[1] = value3.profileContent;
items6[2] = {paddingTop: 0, paddingBottom: value25};
const items7 = [
((Component) => <Component customStatusActivity={value15} hasCustomProfileTheme={primaryColor != null} style={value3.customStatusBubble} emojiOnlyStyle={value3.emojiOnlyCustomStatusBubble} editEnabled />)(UserProfileCustomStatusBubble),
];
let r63 = pendingNickname ?? r57;
items7[1] = (
<UserProfilePrimaryInfo
user={currentUser}
displayName={r63}
pronouns={value20 === r53 ? r52 : r53}
badges={value16}
badgeContainerBackground={containerBackground}
displayNameAccessibilityRole="header"
guildId={guild.id}
pendingDisplayNameStyles={pendingDisplayNameStyles}
/>
);
const items8 = [value4.formContainer];
items8[1] = {backgroundColor: containerBackground, paddingBottom: 20};
if (r50 != null) {
r30 = null;
} else if (r59 != null) {
r30 = null;
} else {
r63 = r29 ?? (global.Object.keys(value26).length > 0 ? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.s35OuK) : null);
r29 = (
r63 == null || value20 === r63
? null
: (
<View style={value4.errorContainer}>
<Text variant="text-sm/bold" color="text-feedback-critical">
{r63}
</Text>
</View>
)
);
r30 = r29;
}
const items9 = [r30];
const userProfileEditFormTextField2Props = {inputRef: value8,
label: intl.string((require(1244) /* metro dependency 1244: indexNative */).t.me1lRk), errorMessage: r59};
r57 = pendingNickname ?? r57;
userProfileEditFormTextField2Props.value = r57;
userProfileEditFormTextField2Props.onFocus = onFocus;
userProfileEditFormTextField2Props.onChange = onChange_100972;
userProfileEditFormTextField2Props.placeholder = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(currentUser);
userProfileEditFormTextField2Props.maxLength = DISPLAY_NAME_MAX_LENGTH;
userProfileEditFormTextField2Props.isDisabled = canEditNickname ? isDisabled : !canEditNickname;
items9[1] = <UserProfileEditFormTextField2 {...userProfileEditFormTextField2Props} />;
items9[2] = canUsePremiumGuildMemberProfile2 && ((Component) => <Component user={currentUser} guildId={guild.id} />)(importDefault(13206) /* metro dependency 13206: UserProfileDisplayNameStylesEditButton */);
const defaultImport14 = UserProfileEditFormTextField2;
const defaultImport14Props = {inputRef: value9,
label: intl.string((require(1244) /* metro dependency 1244: indexNative */).t['+T3RI/']), errorMessage: r55};
const string = intl.string;
const NZqtIp = (require(1244) /* metro dependency 1244: indexNative */).t.NZqtIp;
defaultImport14Props.description = Reflect.apply(string, intl, [NZqtIp]);
defaultImport14Props.value = r53;
defaultImport14Props.onFocus = onFocus;
defaultImport14Props.onChange = onChange_100973;
defaultImport14Props.placeholder = r52;
defaultImport14Props.maxLength = PRONOUNS_MAX_LENGTH;
defaultImport14Props.isDisabled = isDisabled;
items9[3] = ((Component) => <Component {...defaultImport14Props} />)(defaultImport14);
if (canUsePremiumGuildMemberProfile2) {
UserProfileEditFormTextField = UserProfileEditFormTextField2;
var userProfileEditFormTextFieldProps = {inputRef: value10, label: intl.string(t.ZzAR2Y), errorMessage: r50,
description: intl.string(t.S5O8U2)};
r47 = pendingBio ?? r47;
userProfileEditFormTextFieldProps.value = r47;
userProfileEditFormTextFieldProps.onFocus = onFocus;
userProfileEditFormTextFieldProps.onChange = onChange_100974;
userProfileEditFormTextFieldProps.placeholder = r45;
userProfileEditFormTextFieldProps.maxLength = BIO_MAX_LENGTH;
userProfileEditFormTextFieldProps.numberOfLines = 5;
userProfileEditFormTextFieldProps.isDisabled = isDisabled;
r30 = <UserProfileEditFormTextField {...userProfileEditFormTextFieldProps} />;
} else {
r30 = null;
}
items9[4] = r30;
items9[5] = ((Component) => <Component pendingAvatarSrc={pendingAvatarSrc} pendingThemeColors={pendingThemeColors} user={currentUser} guildId={guild.id} onProfileThemeColorsChanged={onProfileThemeColorsChanged} showResetMenu={canResetThemeColors2} />)(importDefault(13210) /* metro dependency 13210: UserProfileEditTheme */);
items9[6] = ((Component) => <Component user={currentUser} guildId={guild.id} pendingAvatarDecoration={pendingAvatarDecoration} />)(importDefault(13212) /* metro dependency 13212: UserProfileAvatarDecorationEditButton */);
items9[7] = ((Component) => <Component user={currentUser} guildId={guild.id} pendingProfileEffect={pendingProfileEffect} displayProfile={value14} />)(importDefault(13213) /* metro dependency 13213: UserProfileEffectEditButton */);
items9[8] = ((Component) => <Component user={currentUser} guildId={guild.id} pendingProfileFrame={pendingProfileFrame} displayProfile={value14} />)(importDefault(13217) /* metro dependency 13217: UserProfileFrameEditButton */);
items9[9] = ((Component) => <Component user={currentUser} pendingNameplate={pendingNameplate} guildId={guild.id} />)(importDefault(13221) /* metro dependency 13221: UserProfileNameplateEditButton */);
items7[2] = (
<View style={items8}>
{items9}
</View>
);
const scrollView = (
<ScrollView ref={value7}>
{view}
<View style={object9}>
{editGuildProfileBanner}
<View>
{view2}
<UserProfileGradientContainer
fallbackBackground={gradientFallbackBackground}
primaryColor={primaryColor}
secondaryColor={secondaryColor}
containerStyle={items6}
>
{items7}
</UserProfileGradientContainer>
</View>
</View>
</ScrollView>
);
if (r9) {
UserProfileUpsellCard = importDefault(13231) /* metro dependency 13231: UserProfileUpsellCard */;
items10 = [value4.floatingUpsell];
object = {};
object.bottom = (importDefault(697) /* metro dependency 697: native */).space.PX_16 + insets.bottom;
items10[1] = object;
r9 = (
<UserProfileUpsellCard
style={items10}
ctaText={intl.string(t.pj0XBN)}
onPress={onPress_100976}
>
<Text variant="text-sm/normal">
{intl.string(t.YIZS5B)}
</Text>
</UserProfileUpsellCard>
);
}
return (
<ThemeContextProvider
theme={theme}
primaryColor={primaryColor}
secondaryColor={secondaryColor}
>
<View style={items2}>
{scrollView}
{r9}
</View>
</ThemeContextProvider>
);
function _fun100970() { // fn#100970, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:2530, offset: 0x022035a0, size: 55 bytes, params: 1, frame: 14
const guildBinding = guild;
const value2 = null;
return value2 != guildBinding ? GuildMemberStore.getMember(guild.id, currentUser.id) : value2;
}
function _fun100971() { // fn#100971, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:2608, offset: 0x022035d7, size: 70 bytes, params: 1, frame: 16
const guildBinding = guild;
const value2 = null;
return value2 != guildBinding ? UserProfileStore.getGuildMemberProfile(currentUser.id,
value2 == guild ? undefined : guild.id) : value2;
}
function GuildProfileEditFormOnChange(a0) { // fn#100972, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:5510, owner: GuildProfileEditForm.onChange, offset: 0x0220361d, size: 64 bytes, params: 2, frame: 12
const value = environment.__proto__;
return (UserProfileSettingsActionCreatorsModule).setPendingChanges({guildId: guild.id,
nickname: a0});
}
function GuildProfileEditFormOnChange_100973(a0) { // fn#100973, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:5837, owner: GuildProfileEditForm.onChange, offset: 0x0220365d, size: 64 bytes, params: 2, frame: 12
const value = environment.__proto__;
return (UserProfileSettingsActionCreatorsModule).setPendingChanges({guildId: guild.id,
pronouns: a0});
}
function GuildProfileEditFormOnChange_100974(a0) { // fn#100974, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:6114, owner: GuildProfileEditForm.onChange, offset: 0x0220369d, size: 64 bytes, params: 2, frame: 12
const value = environment.__proto__;
return (UserProfileSettingsActionCreatorsModule).setPendingChanges({guildId: guild.id,
bio: a0});
}
function onProfileThemeColorsChanged(a0) { // fn#100975, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:6330, owner: GuildProfileEditForm.onProfileThemeColorsChanged, offset: 0x022036dd, size: 64 bytes, params: 2, frame: 12
const value = environment.__proto__;
return (UserProfileSettingsActionCreatorsModule).setPendingChanges({guildId: guild.id,
themeColors: a0});
}
function GuildProfileEditFormOnPress() { // fn#100976, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:6822, owner: GuildProfileEditForm.onPress, offset: 0x0220371d, size: 153 bytes, params: 1, frame: 19
const defaultImport = importDefault(dependencyMap[51]);
const pushLazy = defaultImport.pushLazy;
const value2 = require(dependencyMap[15])(dependencyMap[52], dependencyMap.paths);
const object = {};
const object2 = {};
copyDataProperties(object2, env1_20, undefined);
const BUTTON_CTA = AnalyticsObjects.BUTTON_CTA;
object2['object'] = BUTTON_CTA;
object.analyticsLocation = object2;
object.analyticsLocations = analyticsLocations;
const PremiumFeatureCardOrder = require(dependencyMap[53]).PremiumFeatureCardOrder;
const TIER_2_LEADING = PremiumFeatureCardOrder.TIER_2_LEADING;
object.premiumFeatureCardOrder = TIER_2_LEADING;
Reflect.apply(pushLazy, defaultImport, [value2, object]);
}
function EditGuildProfileBannerOnPressEdit() { // fn#100967, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:1005, owner: EditGuildProfileBanner.onPressEdit, offset: 0x022026b5, size: 359 bytes, params: 1, frame: 22
var object2;
var value3;
var defaultImport2;
var openLazy;
var value4;
var moduleValue2;
var intl;
if (env0_4) {
value3 = undefined;
defaultImport2 = importDefault(dependencyMap[13]);
openLazy = defaultImport2.openLazy;
value4 = require(dependencyMap[15])(dependencyMap[14], dependencyMap.paths);
object2 = {};
object2.user = user;
object2.analyticsLocations = analyticsLocations;
moduleValue2 = require(dependencyMap[16]);
object2.showRemoveBanner = moduleValue2.showRemoveBanner(pendingBanner,
guildMemberProfile == null ? value3 : guildMemberProfile.banner);
intl = require(dependencyMap[17]).intl;
object2.removeText = intl.string(require(dependencyMap[17]).t.jHlJNS);
object2.onBannerChange = onBannerChange;
Reflect.apply(openLazy, defaultImport2, [value4, 'Change Banner', object2]);
} else {
importDefault(dependencyMap[19]).handleShowUpsellAlert({initialUpsellKey: UpsellTypes.PREMIUM_GUILD_PROFILE,
analyticsLocation: {section: AnalyticsSections.PREMIUM_GUILD_MEMBER_PROFILE,
object: AnalyticsObjects.EDIT_GUILD_PROFILE_BANNER}, analyticsLocations: analyticsLocations,
analyticsProperties: {type: PremiumUpsellTypes.PREMIUM_GUILD_IDENTITY_MODAL}});
}
}
function _fun100970() { // fn#100970, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:2530, offset: 0x022035a0, size: 55 bytes, params: 1, frame: 14
const guildBinding = guild;
const value2 = null;
return value2 != guildBinding ? GuildMemberStore.getMember(guild.id, currentUser.id) : value2;
}
function _fun100971() { // fn#100971, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:2608, offset: 0x022035d7, size: 70 bytes, params: 1, frame: 16
const guildBinding = guild;
const value2 = null;
return value2 != guildBinding ? UserProfileStore.getGuildMemberProfile(currentUser.id,
value2 == guild ? undefined : guild.id) : value2;
}
function GuildProfileEditFormOnChange(a0) { // fn#100972, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:5510, owner: GuildProfileEditForm.onChange, offset: 0x0220361d, size: 64 bytes, params: 2, frame: 12
const value = environment.__proto__;
return (require(8400) /* metro dependency 8400: UserProfileSettingsActionCreators */).setPendingChanges({guildId: guild.id,
nickname: a0});
}
function GuildProfileEditFormOnChange_100973(a0) { // fn#100973, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:5837, owner: GuildProfileEditForm.onChange, offset: 0x0220365d, size: 64 bytes, params: 2, frame: 12
const value = environment.__proto__;
return (require(8400) /* metro dependency 8400: UserProfileSettingsActionCreators */).setPendingChanges({guildId: guild.id,
pronouns: a0});
}
function GuildProfileEditFormOnChange_100974(a0) { // fn#100974, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:6114, owner: GuildProfileEditForm.onChange, offset: 0x0220369d, size: 64 bytes, params: 2, frame: 12
const value = environment.__proto__;
return (require(8400) /* metro dependency 8400: UserProfileSettingsActionCreators */).setPendingChanges({guildId: guild.id,
bio: a0});
}
function onProfileThemeColorsChanged(a0) { // fn#100975, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:6330, owner: GuildProfileEditForm.onProfileThemeColorsChanged, offset: 0x022036dd, size: 64 bytes, params: 2, frame: 12
const value = environment.__proto__;
return (require(8400) /* metro dependency 8400: UserProfileSettingsActionCreators */).setPendingChanges({guildId: guild.id,
themeColors: a0});
}
function GuildProfileEditFormOnPress() { // fn#100976, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:6822, owner: GuildProfileEditForm.onPress, offset: 0x0220371d, size: 153 bytes, params: 1, frame: 19
const defaultImport = importDefault(dependencyMap[51]);
const pushLazy = defaultImport.pushLazy;
const value2 = require(dependencyMap[15])(dependencyMap[52], dependencyMap.paths);
const object3 = {};
const object4 = {};
copyDataProperties(object4, env1_20, undefined);
const BUTTON_CTA = AnalyticsObjects.BUTTON_CTA;
object4['object'] = BUTTON_CTA;
object3.analyticsLocation = object4;
object3.analyticsLocations = analyticsLocations;
const PremiumFeatureCardOrder = require(dependencyMap[53]).PremiumFeatureCardOrder;
const TIER_2_LEADING = PremiumFeatureCardOrder.TIER_2_LEADING;
object3.premiumFeatureCardOrder = TIER_2_LEADING;
Reflect.apply(pushLazy, defaultImport, [value2, object3]);
}
function onBannerChange(a0, a1) { // fn#100968, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13428:1235, owner: EditGuildProfileBanner.onPressEdit.onBannerChange, offset: 0x0220281c, size: 67 bytes, params: 3, frame: 12
const value = environment.__proto__.__proto__;
return (require(8400) /* metro dependency 8400: UserProfileSettingsActionCreators */).setPendingChanges({guildId: guildId,
banner: a0, bannerOriginalMd5: a1});
}
global.__d(_fun100965, 13238, [29, 31, 27, 1945, 5189, 6816, 661, 1880, 33, 3802, 6771, 6789, 13184, 4080, 13185,
1962, 8402, 1244, 8400, 7882, 8496, 13195, 6996, 5463, 697, 10302, 13233, 566, 8490, 6882, 8501, 8403, 12687,
13239, 8494, 8497, 4573, 3868, 13240, 8511, 8513, 8695, 13205, 3995, 13206, 13210, 13212, 13213, 13217, 13221,
13231, 5080, 7028, 7940,
2]) /* metro module 13238, dependencies: [29, 31, 27, 1945, 5189, 6816, 661, 1880, 33, 3802, 6771, 6789, 13184, 4080, 13185, 1962, 8402, 1244, 8400, 7882, 8496, 13195, 6996, 5463, 697, 10302, 13233, 566, 8490, 6882, 8501, 8403, 12687, 13239, 8494, 8497, 4573, 3868, 13240, 8511, 8513, 8695, 13205, 3995, 13206, 13210, 13212, 13213, 13217, 13221, 13231, 5080, 7028, 7940, 2] */;
File diff suppressed because it is too large. Load diff
@@ -1,103 +1,119 @@
/* Metro module 8759; source: modules/user_profile/native/NonUserBotProfileContent.tsx; dependencies: [31, 27, 6816, 6276, 33, 8496, 8514, 4617, 3995, 8501, 8752, 8760, 1585, 8494, 8497, 6797, 3856, 8761, 4017, 8510, 8695, 1244, 8762, 2] */
import UseSafeAreaInsetsNative from '../../safe_area/useSafeAreaInsets.native.tsx'; /* Metro dependency 1585 */
import UserUtils from '../../../utils/UserUtils.tsx'; /* Metro dependency 3995 */
import ReanimatedRexport from '../../reanimated/ReanimatedRexport.tsx'; /* Metro dependency 4017 */
import NicknameUtils from '../../../utils/NicknameUtils.tsx'; /* Metro dependency 4617 */
import UseProfileTheme from '../hooks/useProfileTheme.tsx'; /* Metro dependency 8494 */
import UserProfileSharedStyles from './UserProfileSharedStyles.tsx'; /* Metro dependency 8496 */
import UseBadges from '../hooks/useBadges.tsx'; /* Metro dependency 8501 */
import UserProfilePrimaryInfo from './UserProfilePrimaryInfo.tsx'; /* Metro dependency 8695 */
import UseUserProfileBannerHeight from '../hooks/native/useUserProfileBannerHeight.tsx'; /* Metro dependency 8752 */
import UseUserProfileOverscrollStyles from './useUserProfileOverscrollStyles.tsx'; /* Metro dependency 8760 */
import UserProfileOverscrollBanner from './UserProfileOverscrollBanner.tsx'; /* Metro dependency 8761 */
import UserProfileAboutMeCard from './UserProfileAboutMeCard.tsx'; /* Metro dependency 8762 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as IndexNativeModule from '../../../intl/index.native.tsx'; /* Metro dependency 1244 */
import * as ToastUtilsModule from '../../toast/native/ToastUtils.tsx'; /* Metro dependency 3856 */
import * as ActionSheetConstantsModule from '../../action_sheet/native/ActionSheetConstants.tsx'; /* Metro dependency 6276 */
import * as ClipboardUtilsNativeModule from '../../../utils/ClipboardUtils.native.tsx'; /* Metro dependency 6797 */
import * as ConstantsModule from './Constants.tsx'; /* Metro dependency 6816 */
import * as UseUserProfileColorsModule from '../hooks/native/useUserProfileColors.tsx'; /* Metro dependency 8497 */
import * as UserProfileAnalyticsContextModule from '../UserProfileAnalyticsContext.tsx'; /* Metro dependency 8514 */
function _fun68545(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68545, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8944:6, offset: 0x01c52f0c, size: 242 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = importAll(31) /* metro dependency 31 */;
const env0_3 = (require(27) /* metro dependency 27 */).View;
const constantsModule = require(6816) /* metro dependency 6816: Constants */;
const env0_4 = constantsModule.PROFILE_CONTENT_BOTTOM_PADDING;
const env0_5 = constantsModule.PROFILE_CONTENT_WITHOUT_STATUS_TOP_PADDING;
const env0_6 = (require(6276) /* metro dependency 6276: ActionSheetConstants */).ACTION_SHEET_MAX_WIDTH;
const value3 = require(33) /* metro dependency 33 */;
const env0_7 = value3.jsx;
const env0_8 = value3.jsxs;
const env0_9 = value3.Fragment;
let value = ReactModule;
value = value.memo(NonUserBotProfileContent);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/NonUserBotProfileContent.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/NonUserBotProfileContent.tsx');
exports.default = value;
}
function NonUserBotProfileContent({user, channel, displayProfile, scrollPosition}) { // fn#68546, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8944:300, offset: 0x01c52ffe, size: 1017 bytes, params: 2, frame: 40
const value3 = (UserProfileSharedStyles)();
const useUserProfileAnalyticsContext = UserProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const env0_0 = Reflect.apply(useUserProfileAnalyticsContext, UserProfileAnalyticsContextModule,
[]).trackUserProfileAction;
const defaultImport = NicknameUtils;
const useName = defaultImport.useName;
let guild_id = channel?.guild_id;
const value4 = Reflect.apply(useName, defaultImport, [guild_id, channel?.id, user]);
const env0_1 = (UserUtils).useUserTag(user);
const value5 = (UseBadges)(displayProfile);
const value6 = (UseUserProfileBannerHeight)(ACTION_SHEET_MAX_WIDTH);
const {bannerAnimatedStyle, bannerImageAnimatedStyle, contentAnimatedStyle, blurAnimatedProps,
showBlur} = (UseUserProfileOverscrollStyles)({scrollPosition: scrollPosition,
bannerHeight: value6});
const bottom = (UseSafeAreaInsetsNative)().bottom;
const {theme, primaryColor,
secondaryColor} = (UseProfileTheme)({user: user,
displayProfile: displayProfile});
const {avatarBackground,
containerBackground} = (UseUserProfileColorsModule).useUserProfileColors({theme: theme,
primaryColor: primaryColor, secondaryColor: secondaryColor});
if (user == null) {
return null;
}
const onPressDisplayName2 = onPressDisplayName;
const jsxRuntimeEnv0_9Binding = jsxRuntimeEnv0_9;
const value10 = ((Component) => <Component user={user} displayProfile={displayProfile} bannerHeight={value6} bannerAnimatedStyle={bannerAnimatedStyle} bannerImageAnimatedStyle={bannerImageAnimatedStyle} blurAnimatedProps={blurAnimatedProps} showBlur={showBlur} />)(UserProfileOverscrollBanner);
const View2 = (ReanimatedRexport).View;
const value11 = ((Component) => <Component user={user} guildId={displayProfile?.guildId ?? undefined} backgroundColor={avatarBackground} disableStatus />)(importDefault(8510) /* metro dependency 8510: UserProfileAvatar */);
const items3 = [value3.profileContentWrapper];
items3[1] = value3.profileContent;
items3[2] = {paddingTop: PROFILE_CONTENT_WITHOUT_STATUS_TOP_PADDING,
paddingBottom: bottom + PROFILE_CONTENT_BOTTOM_PADDING};
const primaryInfo = value3.primaryInfo;
guild_id = channel?.guild_id;
const pronouns = displayProfile?.pronouns;
const intl = (IndexNativeModule).intl;
return (
<>
{value10}
<View2 style={contentAnimatedStyle}>
{value11}
<View style={items3}>
<View style={primaryInfo}>
<UserProfilePrimaryInfo
user={user}
guildId={guild_id}
displayName={value4}
pronouns={pronouns}
badges={value5}
badgeContainerBackground={containerBackground}
displayNameAccessibilityHint={intl.string((IndexNativeModule).t.y5MwJy)}
onPressDisplayName={onPressDisplayName2}
onPressUserTag={onPressDisplayName2}
onPressPronouns={onPressPronouns}
showBadgeToastOnPress
/>
</View>
<View style={value3.cards}>
{((Component) => <Component userId={user.id} displayProfile={displayProfile} channel={channel} style={[value3.card,
{backgroundColor: containerBackground}]} />)(UserProfileAboutMeCard)}
</View>
</View>
</View2>
</>
);
function onPressDisplayName() { // fn#68547, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8944:1019, owner: NonUserBotProfileContent.onPressDisplayName, offset: 0x01c533f7, size: 88 bytes, params: 1, frame: 14
trackUserProfileAction({action: 'COPY_USERNAME'});
(ClipboardUtilsNativeModule).copy(env0_1);
(ToastUtilsModule).presentUsernameCopied();
}
function onPressPronouns() { // fn#68548, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8944:1827, owner: NonUserBotProfileContent.onPressPronouns, offset: 0x01c5344f, size: 61 bytes, params: 1, frame: 12
trackUserProfileAction({action: 'PRESS_PRONOUNS'});
const value = environment.__proto__;
(ToastUtilsModule).presentUserPronouns();
}
function NonUserBotProfileContent({user, channel, displayProfile, scrollPosition}) { // fn#68546, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8944:300, offset: 0x01c52ffe, size: 1017 bytes, params: 2, frame: 40
const value3 = (importDefault(8496) /* metro dependency 8496: UserProfileSharedStyles */)();
const userProfileAnalyticsContextModule = require(8514) /* metro dependency 8514: UserProfileAnalyticsContext */;
const useUserProfileAnalyticsContext = userProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const env0_0 = Reflect.apply(useUserProfileAnalyticsContext, userProfileAnalyticsContextModule,
[]).trackUserProfileAction;
const defaultImport = importDefault(4617) /* metro dependency 4617: NicknameUtils */;
const useName = defaultImport.useName;
let guild_id = channel?.guild_id;
const value4 = Reflect.apply(useName, defaultImport, [guild_id, channel?.id, user]);
const env0_1 = (importDefault(3995) /* metro dependency 3995: UserUtils */).useUserTag(user);
const value5 = (importDefault(8501) /* metro dependency 8501: useBadges */)(displayProfile);
const value6 = (importDefault(8752) /* metro dependency 8752: useUserProfileBannerHeight */)(ACTION_SHEET_MAX_WIDTH);
const {bannerAnimatedStyle, bannerImageAnimatedStyle, contentAnimatedStyle, blurAnimatedProps,
showBlur} = (importDefault(8760) /* metro dependency 8760: useUserProfileOverscrollStyles */)({scrollPosition: scrollPosition,
bannerHeight: value6});
const bottom = (importDefault(1585) /* metro dependency 1585: useSafeAreaInsetsNative */)().bottom;
const {theme, primaryColor,
secondaryColor} = (importDefault(8494) /* metro dependency 8494: useProfileTheme */)({user: user,
displayProfile: displayProfile});
const {avatarBackground,
containerBackground} = (require(8497) /* metro dependency 8497: useUserProfileColors */).useUserProfileColors({theme: theme,
primaryColor: primaryColor, secondaryColor: secondaryColor});
if (user == null) {
return null;
}
const closure = onPressDisplayName;
const jsxRuntimeEnv0_9Binding = jsxRuntimeEnv0_9;
const value10 = ((Component) => <Component user={user} displayProfile={displayProfile} bannerHeight={value6} bannerAnimatedStyle={bannerAnimatedStyle} bannerImageAnimatedStyle={bannerImageAnimatedStyle} blurAnimatedProps={blurAnimatedProps} showBlur={showBlur} />)(importDefault(8761) /* metro dependency 8761: UserProfileOverscrollBanner */);
const View2 = (importDefault(4017) /* metro dependency 4017: ReanimatedRexport */).View;
const value11 = ((Component) => <Component user={user} guildId={displayProfile?.guildId ?? undefined} backgroundColor={avatarBackground} disableStatus />)(importDefault(8510) /* metro dependency 8510: UserProfileAvatar */);
const items3 = [value3.profileContentWrapper];
items3[1] = value3.profileContent;
items3[2] = {paddingTop: PROFILE_CONTENT_WITHOUT_STATUS_TOP_PADDING,
paddingBottom: bottom + PROFILE_CONTENT_BOTTOM_PADDING};
const primaryInfo = value3.primaryInfo;
const UserProfilePrimaryInfo = importDefault(8695) /* metro dependency 8695: UserProfilePrimaryInfo */;
guild_id = channel?.guild_id;
const pronouns = displayProfile?.pronouns;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
return (
<>
{value10}
<View2 style={contentAnimatedStyle}>
{value11}
<View style={items3}>
<View style={primaryInfo}>
<UserProfilePrimaryInfo
user={user}
guildId={guild_id}
displayName={value4}
pronouns={pronouns}
badges={value5}
badgeContainerBackground={containerBackground}
displayNameAccessibilityHint={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.y5MwJy)}
onPressDisplayName={closure}
onPressUserTag={closure}
onPressPronouns={onPressPronouns}
showBadgeToastOnPress
/>
</View>
<View style={value3.cards}>
{((Component) => <Component userId={user.id} displayProfile={displayProfile} channel={channel} style={[value3.card,
{backgroundColor: containerBackground}]} />)(importDefault(8762) /* metro dependency 8762: UserProfileAboutMeCard */)}
</View>
</View>
</View2>
</>
);
}
function NonUserBotProfileContentOnPressDisplayName() { // fn#68547, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8944:1019, owner: NonUserBotProfileContent.onPressDisplayName, offset: 0x01c533f7, size: 88 bytes, params: 1, frame: 14
trackUserProfileAction({action: 'COPY_USERNAME'});
(require(6797) /* metro dependency 6797: ClipboardUtilsNative */).copy(env0_1);
(require(3856) /* metro dependency 3856: ToastUtils */).presentUsernameCopied();
}
function NonUserBotProfileContentOnPressPronouns() { // fn#68548, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8944:1827, owner: NonUserBotProfileContent.onPressPronouns, offset: 0x01c5344f, size: 61 bytes, params: 1, frame: 12
trackUserProfileAction({action: 'PRESS_PRONOUNS'});
const value = environment.__proto__;
(require(3856) /* metro dependency 3856: ToastUtils */).presentUserPronouns();
}
global.__d(_fun68545, 8759, [31, 27, 6816, 6276, 33, 8496, 8514, 4617, 3995, 8501, 8752, 8760, 1585, 8494, 8497,
6797, 3856, 8761, 4017, 8510, 8695, 1244, 8762,
2]) /* metro module 8759, dependencies: [31, 27, 6816, 6276, 33, 8496, 8514, 4617, 3995, 8501, 8752, 8760, 1585, 8494, 8497, 6797, 3856, 8761, 4017, 8510, 8695, 1244, 8762, 2] */;
@@ -1,151 +1,159 @@
/* Metro module 13203; source: modules/user_profile/native/ProfileGIFSelectActionSheet.tsx; dependencies: [57, 5, 31, 27, 33, 4501, 697, 4680, 8403, 7613, 8400, 8402, 4080, 6275, 6758, 1244, 7954, 11034, 2] */
import Module00005 from '../../../by-id/module-00005.js'; /* Metro dependency 5 */
import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as BottomSheetNativeModule from '../../../design/components/Sheet/native/BottomSheet.native.tsx'; /* Metro dependency 6275 */
import * as BottomSheetTitleHeaderNativeModule from '../../../design/components/Sheet/native/BottomSheetTitleHeader.native.tsx'; /* Metro dependency 6758 */
import * as NitroWheelIconModule from '../../../design/components/Icon/native/redesign/generated/NitroWheelIcon.tsx'; /* Metro dependency 7954 */
function _fun100752(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100752, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13393:6, offset: 0x021f6da2, size: 426 bytes, params: 8, frame: 24
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importDefault(5) /* metro dependency 5 */;
const env0_5 = importAll(31) /* metro dependency 31 */;
const env0_6 = (require(27) /* metro dependency 27 */).View;
let value = require(33) /* metro dependency 33 */;
let value = JsxRuntimeModule;
const env0_7 = value.jsx;
const env0_8 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
const object3 = {flex: 1};
const object4 = {flex: 1};
const PX_4 = (importDefault(697) /* metro dependency 697: native */).space.PX_4;
object3.marginTop = PX_4;
object4.marginTop = PX_4;
let PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
object3.marginLeft = PX_8;
object4.marginLeft = PX_8;
PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
object3.marginRight = PX_8;
object4.marginRight = PX_8;
const env0_9 = Reflect.apply(createStyles, value, [{titleWrapper: {flex: 0},
titleContainer: {justifyContent: 'flex-start'}, gifPicker: object3}]);
object2 = {AVATAR: 0};
object2[0] = 'AVATAR';
object2.BANNER = 1;
object2[1] = 'BANNER';
const object6 = {PROFILE_EDIT: 0};
object6[0] = 'PROFILE_EDIT';
object6.PROFILE_TRY_IT_OUT = 1;
object6[1] = 'PROFILE_TRY_IT_OUT';
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/ProfileGIFSelectActionSheet.tsx');
titleContainer: {justifyContent: 'flex-start'}, gifPicker: object4}]);
object = {AVATAR: 0};
object[0] = 'AVATAR';
object.BANNER = 1;
object[1] = 'BANNER';
const object5 = {PROFILE_EDIT: 0};
object5[0] = 'PROFILE_EDIT';
object5.PROFILE_TRY_IT_OUT = 1;
object5[1] = 'PROFILE_TRY_IT_OUT';
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/ProfileGIFSelectActionSheet.tsx');
exports.default = ProfileGIFSelectActionSheet;
exports.ProfileAssetType = object2;
exports.GIFSelectionContext = object6;
}
exports.ProfileAssetType = object;
exports.GIFSelectionContext = object5;
function ProfileGIFSelectActionSheet({profileAssetType, selectionContext, guildId}) { // fn#100753, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13393:562, offset: 0x021f6f4c, size: 349 bytes, params: 2, frame: 25
const styles = useStyles();
const value2 = ReactModule.useRef(null);
const BottomSheet = (BottomSheetNativeModule).BottomSheet;
const BottomSheetTitleHeader = (BottomSheetTitleHeaderNativeModule).BottomSheetTitleHeader;
const object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['xsC+/y']);
const NitroWheelIcon = (NitroWheelIconModule).NitroWheelIcon;
object2.trailing = <NitroWheelIcon />;
object2.titleWrapperStyle = styles.titleWrapper;
object2.titleContainerStyle = styles.titleContainer;
return (
<BottomSheet
ref={value2}
scrollable
startExpanded
>
<BottomSheetTitleHeader {...object2} />
<View style={styles.gifPicker}>
{((Component) => <Component bottomSheetRef={value2} onPressGIF={function(a0) {
return _onPressGIF.apply(this, arguments);
}} />)(importDefault(11034) /* metro dependency 11034: GIFPicker */)}
</View>
</BottomSheet>
);
function _onPressGIF() { // fn#100754, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13393:677, owner: ProfileGIFSelectActionSheet._onPressGIF, offset: 0x021f70a9, size: 53 bytes, params: 1, frame: 13
var environment;
const value = environment.__proto__;
return env1_4(_fun100756).apply(this, arguments);
function* _fun100756(a0) { // fn#100756, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13393:722, offset: 0x021f70e9, size: 620 bytes, params: 2, frame: 24
var environment;
var binding2;
var value10;
var createPendingImage;
var pendingImage;
var binding3;
if (true) {
yield global.fetch(a0.gifSrc ?? a0.src);
value = undefined;
if (false) {
return value;
}
yield value.blob();
if (false) {
return undefined;
}
var Promise = global.Promise;
var all = Promise.all;
var Promise2 = global.Promise;
var value5 = Object.create(Promise2.prototype, {constructor: {value: Promise2}});
var promise = new Promise2(_fun100757);
var object = [promise instanceof Object ? promise : value5];
var binding = env3_1;
value = binding(env3_2[7]).fromBlob(value);
object[1] = value.catch(function() {
return null;
});
yield Reflect.apply(all, Promise, [object]);
if (false) {
return undefined;
}
value = env3_3(value, 2);
var property = value[0];
var property2 = value[1];
value = environment.__proto__.__proto__;
var AVATAR = env3_10.AVATAR;
if (AVATAR === require) {
binding = env3_0;
binding2 = env3_2;
value10 = binding(binding2[8]);
createPendingImage = value10.createPendingImage;
object = {imageUri: property};
object.description = binding(binding2[8]).generateAvatarDescription();
object.originalMd5 = property2;
pendingImage = Reflect.apply(createPendingImage, value10, [object]);
if (importDefault === env3_11.PROFILE_TRY_IT_OUT) {
env3_0(env3_2[9]).setTryItOutAvatar(pendingImage);
} else {
binding = env3_0;
binding3 = env3_2;
binding(binding3[10]).setPendingChanges({guildId: dependencyMap, avatar: pendingImage});
binding(binding3[11]).announcePendingAvatarChange('set');
}
} else if (env3_10.BANNER === require) {
if (importDefault === env3_11.PROFILE_TRY_IT_OUT) {
env3_0(env3_2[9]).setTryItOutBanner(property);
} else {
value = env3_0(env3_2[10]);
value.setPendingChanges({banner: property, bannerOriginalMd5: property2});
}
}
env3_1(env3_2[12]).hideActionSheet();
}
function _fun100757(a0) { // fn#100757, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13393:845, offset: 0x021f7355, size: 72 bytes, params: 2, frame: 11
const env0_0 = a0;
const FileReader = global.FileReader;
const fileReader = new FileReader();
fileReader.onload = onload_100758;
fileReader.readAsDataURL(env0_0);
function onload_100758({target}) { // fn#100758, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13393:879, offset: 0x021f739d, size: 60 bytes, params: 2, frame: 14
const result = target?.result;
env0_0(typeof result !== 'string' ? '' : result);
}
function ProfileGIFSelectActionSheet({profileAssetType, selectionContext, guildId}) { // fn#100753, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13393:562, offset: 0x021f6f4c, size: 349 bytes, params: 2, frame: 25
const styles = useStyles();
const value2 = env0_5.useRef(null);
const BottomSheet = (require(6275) /* metro dependency 6275: BottomSheetNative */).BottomSheet;
const BottomSheetTitleHeader = (require(6758) /* metro dependency 6758: BottomSheetTitleHeaderNative */).BottomSheetTitleHeader;
const object = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['xsC+/y']);
const NitroWheelIcon = (require(7954) /* metro dependency 7954: NitroWheelIcon */).NitroWheelIcon;
object.trailing = <NitroWheelIcon />;
object.titleWrapperStyle = styles.titleWrapper;
object.titleContainerStyle = styles.titleContainer;
return (
<BottomSheet
ref={value2}
scrollable
startExpanded
>
<BottomSheetTitleHeader {...object} />
<View style={styles.gifPicker}>
{((Component) => <Component bottomSheetRef={value2} onPressGIF={function(a0) {
return _onPressGIF.apply(this, arguments);
}} />)(importDefault(11034) /* metro dependency 11034: GIFPicker */)}
</View>
</BottomSheet>
);
}
}
function _onPressGIF() { // fn#100754, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13393:677, owner: ProfileGIFSelectActionSheet._onPressGIF, offset: 0x021f70a9, size: 53 bytes, params: 1, frame: 13
var environment;
const value = environment.__proto__;
return env1_4(_fun100756).apply(this, arguments);
}
function* _fun100756(a0) { // fn#100756, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13393:722, offset: 0x021f70e9, size: 620 bytes, params: 2, frame: 24
var environment;
var binding2;
var value10;
var createPendingImage;
var pendingImage;
var binding3;
if (true) {
yield global.fetch(a0.gifSrc ?? a0.src);
value = undefined;
if (false) {
return value;
}
yield value.blob();
if (false) {
return undefined;
}
var Promise = global.Promise;
var all = Promise.all;
var Promise2 = global.Promise;
var value5 = Object.create(Promise2.prototype, {constructor: {value: Promise2}});
var promise = new Promise2(_fun100757);
var object = [promise instanceof Object ? promise : value5];
var binding = env3_1;
value = binding(env3_2[7]).fromBlob(value);
object[1] = value.catch(function() {
return null;
});
yield Reflect.apply(all, Promise, [object]);
if (false) {
return undefined;
}
value = env3_3(value, 2);
var property = value[0];
var property2 = value[1];
value = environment.__proto__.__proto__;
var AVATAR = env3_10.AVATAR;
if (AVATAR === require) {
binding = env3_0;
binding2 = env3_2;
value10 = binding(binding2[8]);
createPendingImage = value10.createPendingImage;
object = {imageUri: property};
object.description = binding(binding2[8]).generateAvatarDescription();
object.originalMd5 = property2;
pendingImage = Reflect.apply(createPendingImage, value10, [object]);
if (importDefault === env3_11.PROFILE_TRY_IT_OUT) {
env3_0(env3_2[9]).setTryItOutAvatar(pendingImage);
} else {
binding = env3_0;
binding3 = env3_2;
binding(binding3[10]).setPendingChanges({guildId: dependencyMap, avatar: pendingImage});
binding(binding3[11]).announcePendingAvatarChange('set');
}
} else if (env3_10.BANNER === require) {
if (importDefault === env3_11.PROFILE_TRY_IT_OUT) {
env3_0(env3_2[9]).setTryItOutBanner(property);
} else {
value = env3_0(env3_2[10]);
value.setPendingChanges({banner: property, bannerOriginalMd5: property2});
}
}
env3_1(env3_2[12]).hideActionSheet();
}
}
function _fun100757(a0) { // fn#100757, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13393:845, offset: 0x021f7355, size: 72 bytes, params: 2, frame: 11
const env0_0 = a0;
const FileReader = global.FileReader;
const fileReader = new FileReader();
fileReader.onload = onload_100758;
fileReader.readAsDataURL(env0_0);
}
function onload_100758({target}) { // fn#100758, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13393:879, offset: 0x021f739d, size: 60 bytes, params: 2, frame: 14
const result = target?.result;
env0_0(typeof result !== 'string' ? '' : result);
}
global.__d(_fun100752, 13203, [57, 5, 31, 27, 33, 4501, 697, 4680, 8403, 7613, 8400, 8402, 4080, 6275, 6758, 1244,
7954, 11034,
2]) /* metro module 13203, dependencies: [57, 5, 31, 27, 33, 4501, 697, 4680, 8403, 7613, 8400, 8402, 4080, 6275, 6758, 1244, 7954, 11034, 2] */;
@@ -1,360 +1,434 @@
/* Metro module 8762; source: modules/user_profile/native/UserProfileAboutMeCard.tsx; dependencies: [31, 27, 1949, 1945, 1867, 6816, 661, 1483, 33, 4501, 3860, 697, 4573, 1244, 8763, 566, 5043, 21, 8765, 6819, 6771, 8514, 8767, 8743, 4080, 4008, 1230, 5459, 4015, 1583, 8768, 4578, 6815, 2] */
import SnowflakeUtils from '../../../utils/SnowflakeUtils.tsx'; /* Metro dependency 21 */
import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */
import GuildStore from '../../../stores/GuildStore.tsx'; /* Metro dependency 1867 */
import GuildMemberStore from '../../../stores/GuildMemberStore.tsx'; /* Metro dependency 1945 */
import LocaleStore from '../../user_settings/LocaleStore.tsx'; /* Metro dependency 1949 */
import UseAnalyticsLocations from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import UserProfileCard from './UserProfileCard.tsx'; /* Metro dependency 6815 */
import UseBotProfileCommands from '../useBotProfileCommands.tsx'; /* Metro dependency 8767 */
import UserProfileAboutMeCardCommand from './UserProfileAboutMeCardCommand.tsx'; /* Metro dependency 8768 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as AppLauncherNativeConstantsModule from '../../app_launcher/native/AppLauncherNativeConstants.tsx'; /* Metro dependency 1483 */
import * as UseTokenModule from '../../../design/tokens/native/useToken.tsx'; /* Metro dependency 3860 */
import * as ChatInputUtilsModule from '../../../utils/native/ChatInputUtils.tsx'; /* Metro dependency 4015 */
import * as CreateStylesModule from '../../../design/components/Styles/native/createStyles.tsx'; /* Metro dependency 4501 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
import * as ConnectionsUtilsModule from '../../connections/ConnectionsUtils.tsx'; /* Metro dependency 5043 */
import * as ConstantsModule2 from './Constants.tsx'; /* Metro dependency 6816 */
import * as UserProfileAnalyticsContextModule from '../UserProfileAnalyticsContext.tsx'; /* Metro dependency 8514 */
import * as ClydeIconModule from '../../../design/components/Icon/native/redesign/generated/ClydeIcon.tsx'; /* Metro dependency 8765 */
function _fun68561(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68561, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:6, offset: 0x01c53d52, size: 517 bytes, params: 8, frame: 20
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importAll(31) /* metro dependency 31 */;
const env0_4 = (require(27) /* metro dependency 27 */).View;
const localeStore = importDefault(1949) /* metro dependency 1949: LocaleStore */;
const guildMemberStore = importDefault(1945) /* metro dependency 1945: GuildMemberStore */;
const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */;
let value = require(6816) /* metro dependency 6816: Constants */;
let value = ConstantsModule2;
const env0_8 = value.DIVIDER_DOT;
const UserProfileThemeTypes = value.UserProfileThemeTypes;
const env0_9 = (require(661) /* metro dependency 661: Constants */).Routes;
const env0_10 = (require(1483) /* metro dependency 1483: AppLauncherNativeConstants */).AppLauncherRouteName;
value = require(33) /* metro dependency 33 */;
const env0_11 = value.jsx;
const env0_12 = value.jsxs;
const env0_13 = value.Fragment;
const env0_14 = {'headingVariant': 'text-sm/semibold', 'textVariant': 'text-md/normal', 'headingSpacing': 8,
'rowGap': 24, 'columnGap': 6};
object2 = {};
object = {};
const PREVIEW = UserProfileThemeTypes.PREVIEW;
object2[PREVIEW] = {'headingVariant': 'text-xs/semibold', 'textVariant': 'text-sm/normal', 'headingSpacing': 4,
object[PREVIEW] = {'headingVariant': 'text-xs/semibold', 'textVariant': 'text-sm/normal', 'headingSpacing': 4,
'rowGap': 12, 'columnGap': 3};
const env0_17 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({card: {flexDirection: 'column'},
const env0_17 = (CreateStylesModule).createStyles({card: {flexDirection: 'column'},
textWithIcon: {'flexDirection': 'row', 'alignItems': 'center'}, memberJoinDates: {'flexDirection': 'row',
'flexWrap': 'wrap'}, slashCommands: {'flex': 1, 'flexDirection': 'row', 'flexWrap': 'wrap',
'marginBottom': 12}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileAboutMeCard.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileAboutMeCard.tsx');
exports.default = UserProfileAboutMeCard;
}
function Heading(a0) { // fn#68562, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:826, offset: 0x01c53f57, size: 177 bytes, params: 2, frame: 20
const children = a0.children;
const {headingVariant, headingSpacing} = getStyleConfig_68574(a0.themeType);
const useTokenModule = require(3860) /* metro dependency 3860: useToken */;
const useToken = useTokenModule.useToken;
const USER_PROFILE_ABOUT_ME_HEADING_TEXT_STYLE = (importDefault(697) /* metro dependency 697: native */).modules.mobile.USER_PROFILE_ABOUT_ME_HEADING_TEXT_STYLE;
const value3 = Reflect.apply(useToken, useTokenModule, [USER_PROFILE_ABOUT_ME_HEADING_TEXT_STYLE]);
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
return (
<Text
accessibilityRole="header"
variant={value3 ?? headingVariant}
color="user-profile-about-me-heading-text"
style={{marginBottom: headingSpacing}}
>
{children}
</Text>
);
}
function TextWithIcon({icon, children, themeType, accessibilityLabel}) { // fn#68563, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:1168, offset: 0x01c54008, size: 186 bytes, params: 2, frame: 21
const styles = useStyles();
const {textVariant, columnGap} = getStyleConfig_68574(themeType);
const items2 = [styles.textWithIcon];
items2[1] = {columnGap: columnGap};
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
return (
<View
style={items2}
accessible
accessibilityLabel={accessibilityLabel}
>
{icon}
<Text variant={textVariant} color="text-default">
function Heading(a0) { // fn#68562, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:826, offset: 0x01c53f57, size: 177 bytes, params: 2, frame: 20
const children = a0.children;
const {headingVariant, headingSpacing} = getStyleConfig_68574(a0.themeType);
const useToken = UseTokenModule.useToken;
const USER_PROFILE_ABOUT_ME_HEADING_TEXT_STYLE = (Native).modules.mobile.USER_PROFILE_ABOUT_ME_HEADING_TEXT_STYLE;
const value3 = Reflect.apply(useToken, UseTokenModule, [USER_PROFILE_ABOUT_ME_HEADING_TEXT_STYLE]);
const Text = (TextModule).Text;
return (
<Text
accessibilityRole="header"
variant={value3 ?? headingVariant}
color="user-profile-about-me-heading-text"
style={{marginBottom: headingSpacing}}
>
{children}
</Text>
</View>
);
}
function Bio({userId, displayProfile, pendingBio, themeType, lineClamp}) { // fn#68564, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:1464, offset: 0x01c540c2, size: 262 bytes, params: 2, frame: 27
var r0;
var object;
var intl;
var items2;
var value;
const textVariant = getStyleConfig_68574(themeType).textVariant;
const previewBio = displayProfile?.getPreviewBio(pendingBio);
if (previewBio == null) {
r0 = null;
} else if (previewBio === '') {
r0 = null;
} else {
object = {themeType: themeType};
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
items2 = [<Heading {...object}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.ZzAR2Y)}</Heading>];
value = importDefault(8763) /* metro dependency 8763: BioText */;
items2[1] = ((Component) => <Component bio={previewBio} userId={userId} textVariant={textVariant} lineClamp={lineClamp} />)(value);
value = <View>{items2}</View>;
r0 = value;
);
}
return r0;
}
function MemberJoinDates({userId, guildId, themeType}) { // fn#68565, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:1791, offset: 0x01c541c8, size: 848 bytes, params: 2, frame: 36
var jsxRuntimeEnv0_13Binding;
var items4;
var object;
var value;
const styles = useStyles();
const {textVariant, columnGap} = getStyleConfig_68574(themeType);
const locale = (require(566) /* metro dependency 566: flux */).useStateFromStores([LocaleStore], function() {
return LocaleStore.locale;
});
const value4 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildStore], _fun68567);
const value5 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildMemberStore], _fun68568);
const connectionsUtilsModule = require(5043) /* metro dependency 5043: ConnectionsUtils */;
const getCreatedAtDate = connectionsUtilsModule.getCreatedAtDate;
const defaultImport = importDefault(21) /* metro dependency 21: SnowflakeUtils */;
const value6 = Reflect.apply(getCreatedAtDate, connectionsUtilsModule, [defaultImport.extractTimestamp(userId),
locale]);
const createdAtDate = connectionsUtilsModule.getCreatedAtDate(value5?.joinedAt, locale);
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const heading = <Heading themeType={themeType}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.a6XYD9)}</Heading>;
const items2 = [styles.memberJoinDates];
items2[1] = {columnGap: columnGap};
const object2 = {themeType: themeType};
const ClydeIcon = (require(8765) /* metro dependency 8765: ClydeIcon */).ClydeIcon;
object2.icon = <ClydeIcon size="xs" />;
object2.accessibilityLabel = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t['9t7w53'],
{date: value6});
const textWithIcon = <TextWithIcon {...object2}>{value6}</TextWithIcon>;
let r9 = value4 != null && createdAtDate != null;
if (r9) {
jsxRuntimeEnv0_13Binding = jsxRuntimeEnv0_13;
items4 = [((Text) => <Text variant={textVariant} color="text-default" accessibilityElementsHidden importantForAccessibility="no-hide-descendants">{DIVIDER_DOT}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)];
object = {themeType: themeType};
value = importDefault(6819) /* metro dependency 6819: GuildIcon */;
object.icon = ((Component) => <Component guild={value4} size={(require(6819) /* metro dependency 6819: GuildIcon */).GuildIconSizes.XXSMALL} />)(value);
object.accessibilityLabel = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.FdLNDK,
{guildName: value4.name, date: createdAtDate});
items4[1] = <TextWithIcon {...object}>{createdAtDate}</TextWithIcon>;
value = <>{items4}</>;
r9 = value;
}
return (
<View>
{heading}
<View style={items2}>
{textWithIcon}
{r9}
function TextWithIcon({icon, children, themeType, accessibilityLabel}) { // fn#68563, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:1168, offset: 0x01c54008, size: 186 bytes, params: 2, frame: 21
const styles = useStyles();
const {textVariant, columnGap} = getStyleConfig_68574(themeType);
const items2 = [styles.textWithIcon];
items2[1] = {columnGap: columnGap};
const Text = (TextModule).Text;
return (
<View
style={items2}
accessible
accessibilityLabel={accessibilityLabel}
>
{icon}
<Text variant={textVariant} color="text-default">
{children}
</Text>
</View>
</View>
);
}
function BotSlashCommands({applicationId, channel, commandIds, themeType}) { // fn#68569, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:2918, offset: 0x01c5457c, size: 521 bytes, params: 2, frame: 30
var r6;
var r0;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var items2;
const styles = useStyles();
const analyticsLocations = (importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */)().analyticsLocations;
const userProfileAnalyticsContextModule = require(8514) /* metro dependency 8514: UserProfileAnalyticsContext */;
const useUserProfileAnalyticsContext = userProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const context = Reflect.apply(useUserProfileAnalyticsContext, userProfileAnalyticsContextModule, []).context;
const {commands, application} = (importDefault(8767) /* metro dependency 8767: useBotProfileCommands */)(channel,
applicationId, commandIds);
const binding = application;
const useCallback = binding.useCallback;
const items3 = [application];
items3[1] = channel.id;
items3[2] = channel.guild_id;
items3[3] = context;
items3[4] = analyticsLocations;
if (commands == null) {
r0 = null;
} else if (commands.length === 0) {
r0 = null;
} else {
items2 = [<Heading themeType={themeType}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['0hKkS+'])}</Heading>];
items2[1] = <View style={styles.slashCommands}>{commands.map(_fun68573)}</View>;
r6 = application != null && application.bot != null;
r6 = r6 && ((Button) => <Button size="sm" variant="tertiary" text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.VEfKyb)} onPress={Reflect.apply(useCallback,
binding, [_fun68570, items3])} />)((require(4578) /* metro dependency 4578: ButtonNative */).Button);
items2[2] = r6;
r0 = <View>{items2}</View>;
);
}
return r0;
}
function getStyleConfig_68574(a0) { // fn#68574, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:536, offset: 0x01c54a11, size: 38 bytes, params: 2, frame: 4
let r0 = a0 != null ? env0_15[a0] : undefined;
r0 = r0 ?? env0_14;
return r0;
}
function UserProfileAboutMeCard({userId, displayProfile, channel, pendingBio, bioLineClamp, themeType, style}) { // fn#68575, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:4305, offset: 0x01c54a37, size: 330 bytes, params: 2, frame: 26
const styles = useStyles();
const rowGap = getStyleConfig_68574(themeType).rowGap;
const application = displayProfile?.application;
const UserProfileCard = importDefault(6815) /* metro dependency 6815: UserProfileCard */;
const items3 = [styles.card];
items3[1] = {rowGap: rowGap};
items3[2] = style;
const items2 = [<Bio userId={userId} displayProfile={displayProfile} pendingBio={pendingBio} themeType={themeType} lineClamp={bioLineClamp} />];
items2[1] = <MemberJoinDates userId={userId} guildId={displayProfile?.guildId} themeType={themeType} />;
items2[2] = application?.popularApplicationCommandIds != null && channel != null && <BotSlashCommands applicationId={application.id} channel={channel} commandIds={application.popularApplicationCommandIds} themeType={themeType} />;
return (
<UserProfileCard style={items3}>
{items2}
</UserProfileCard>
);
}
function _fun68567() { // fn#68567, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:1995, offset: 0x01c54527, size: 40 bytes, params: 1, frame: 12
const guildIdBinding = guildId;
const value2 = null;
return value2 != guildIdBinding ? GuildStore.getGuild(guildId) : value2;
}
function _fun68568() { // fn#68568, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:2063, offset: 0x01c5454f, size: 45 bytes, params: 1, frame: 14
const guildIdBinding = guildId;
const value2 = null;
return value2 != guildIdBinding ? GuildMemberStore.getMember(guildId, userId) : value2;
}
function _fun68570() { // fn#68570, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:3158, offset: 0x01c54785, size: 340 bytes, params: 1, frame: 19
var environment;
var length;
var r5;
var bot;
var id;
var value2;
var value3;
var moduleValue;
var getUserProfileActionSheetKey;
var value4;
var defaultImport;
var hideActionSheet;
var moduleValue2;
var getRootNavigationRef;
var value5;
var isReady;
var getState;
var value6;
var routes;
var value7;
var goBack;
var value8;
var moduleValue3;
var transitionTo;
var CHANNEL;
var channelBinding;
var guild_id;
var runAfterInteractions;
let value = environment;
reducibleJoin12: while (true) {
if (application == null) {
break reducibleJoin12;
function Bio({userId, displayProfile, pendingBio, themeType, lineClamp}) { // fn#68564, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:1464, offset: 0x01c540c2, size: 262 bytes, params: 2, frame: 27
var r0;
var object2;
var intl;
var items2;
var value;
const textVariant = getStyleConfig_68574(themeType).textVariant;
const previewBio = displayProfile?.getPreviewBio(pendingBio);
if (previewBio == null) {
r0 = null;
} else if (previewBio === '') {
r0 = null;
} else {
object2 = {themeType: themeType};
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
items2 = [
<Heading {...object2}>
{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.ZzAR2Y)}
</Heading>,
];
value = importDefault(8763) /* metro dependency 8763: BioText */;
items2[1] = ((Component) => <Component bio={previewBio} userId={userId} textVariant={textVariant} lineClamp={lineClamp} />)(value);
value = (
<View>
{items2}
</View>
);
r0 = value;
}
bot = application.bot;
if (bot == null) {
break reducibleJoin12;
return r0;
}
function MemberJoinDates({userId, guildId, themeType}) { // fn#68565, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:1791, offset: 0x01c541c8, size: 848 bytes, params: 2, frame: 36
var jsxRuntimeEnv0_13Binding;
var items4;
var object3;
var value;
const styles = useStyles();
const {textVariant, columnGap} = getStyleConfig_68574(themeType);
const locale = (require(566) /* metro dependency 566: flux */).useStateFromStores([LocaleStore], function() {
return LocaleStore.locale;
});
const value4 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildStore], _fun68567);
const value5 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildMemberStore], _fun68568);
const getCreatedAtDate = ConnectionsUtilsModule.getCreatedAtDate;
const defaultImport = SnowflakeUtils;
const value6 = Reflect.apply(getCreatedAtDate, ConnectionsUtilsModule, [defaultImport.extractTimestamp(userId),
locale]);
const createdAtDate = ConnectionsUtilsModule.getCreatedAtDate(value5?.joinedAt, locale);
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const heading = (
<Heading themeType={themeType}>
{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.a6XYD9)}
</Heading>
);
const items2 = [styles.memberJoinDates];
items2[1] = {columnGap: columnGap};
const object4 = {themeType: themeType};
const ClydeIcon = (ClydeIconModule).ClydeIcon;
object4.icon = <ClydeIcon size="xs" />;
object4.accessibilityLabel = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t['9t7w53'],
{date: value6});
const textWithIcon = (
<TextWithIcon {...object4}>
{value6}
</TextWithIcon>
);
let r9 = value4 != null && createdAtDate != null;
if (r9) {
jsxRuntimeEnv0_13Binding = jsxRuntimeEnv0_13;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
items4 = [
<Text
variant={textVariant}
color="text-default"
accessibilityElementsHidden
importantForAccessibility="no-hide-descendants"
>
{DIVIDER_DOT}
</Text>,
];
object3 = {themeType: themeType};
value = importDefault(6819) /* metro dependency 6819: GuildIcon */;
object3.icon = ((Component) => <Component guild={value4} size={(require(6819) /* metro dependency 6819: GuildIcon */).GuildIconSizes.XXSMALL} />)(value);
object3.accessibilityLabel = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.FdLNDK,
{guildName: value4.name, date: createdAtDate});
items4[1] = (
<TextWithIcon {...object3}>
{createdAtDate}
</TextWithIcon>
);
value = (
<>
{items4}
</>
);
r9 = value;
}
bot = application.bot;
id = bot.id;
var env0_0 = id;
value2 = environment.__proto__;
value3 = undefined;
moduleValue = require(8743) /* metro dependency 8743: showUserProfileActionSheet */;
getUserProfileActionSheetKey = moduleValue.getUserProfileActionSheetKey;
value4 = Reflect.apply(getUserProfileActionSheetKey, moduleValue, [id]);
defaultImport = importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */;
hideActionSheet = defaultImport.hideActionSheet;
Reflect.apply(hideActionSheet, defaultImport, [value4]);
moduleValue2 = require(4008) /* metro dependency 4008: RootNavigationRefNative */;
getRootNavigationRef = moduleValue2.getRootNavigationRef;
value5 = Reflect.apply(getRootNavigationRef, moduleValue2, []);
reducibleJoin11: while (true) {
if (value5 == null) {
break reducibleJoin11;
}
isReady = value5.isReady;
if (Reflect.apply(isReady, value5, [])) {
getState = value5.getState;
value6 = Reflect.apply(getState, value5, []);
reducibleJoin7: while (true) {
if (value6 == null) {
length = value3;
break reducibleJoin7;
}
routes = value6.routes;
if (routes == null) {
length = value3;
break reducibleJoin7;
}
length = routes.length;
break reducibleJoin7;
return (
<View>
{heading}
<View style={items2}>
{textWithIcon}
{r9}
</View>
</View>
);
function _fun68567() { // fn#68567, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:1995, offset: 0x01c54527, size: 40 bytes, params: 1, frame: 12
const guildIdBinding = guildId;
const value2 = null;
return value2 != guildIdBinding ? GuildStore.getGuild(guildId) : value2;
}
function _fun68568() { // fn#68568, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:2063, offset: 0x01c5454f, size: 45 bytes, params: 1, frame: 14
const guildIdBinding = guildId;
const value2 = null;
return value2 != guildIdBinding ? GuildMemberStore.getMember(guildId, userId) : value2;
}
}
function BotSlashCommands({applicationId, channel, commandIds, themeType}) { // fn#68569, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:2918, offset: 0x01c5457c, size: 521 bytes, params: 2, frame: 30
var r6;
var r0;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var items2;
const styles = useStyles();
const analyticsLocations = (UseAnalyticsLocations)().analyticsLocations;
const useUserProfileAnalyticsContext = UserProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const context = Reflect.apply(useUserProfileAnalyticsContext, UserProfileAnalyticsContextModule, []).context;
const {commands, application} = (UseBotProfileCommands)(channel,
applicationId, commandIds);
const binding = application;
const useCallback = binding.useCallback;
const items3 = [application];
items3[1] = channel.id;
items3[2] = channel.guild_id;
items3[3] = context;
items3[4] = analyticsLocations;
if (commands == null) {
r0 = null;
} else if (commands.length === 0) {
r0 = null;
} else {
items2 = [
<Heading themeType={themeType}>
{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['0hKkS+'])}
</Heading>,
];
items2[1] = (
<View style={styles.slashCommands}>
{commands.map(_fun68573)}
</View>
);
r6 = application != null && application.bot != null;
r6 = r6 && ((Button) => <Button size="sm" variant="tertiary" text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.VEfKyb)} onPress={Reflect.apply(useCallback,
binding, [_fun68570, items3])} />)((require(4578) /* metro dependency 4578: ButtonNative */).Button);
items2[2] = r6;
r0 = (
<View>
{items2}
</View>
);
}
return r0;
function _fun68570() { // fn#68570, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:3158, offset: 0x01c54785, size: 340 bytes, params: 1, frame: 19
var environment;
var length;
var r5;
var bot;
var id;
var value2;
var value3;
var moduleValue;
var getUserProfileActionSheetKey;
var value4;
var defaultImport;
var hideActionSheet;
var moduleValue2;
var getRootNavigationRef;
var value5;
var isReady;
var getState;
var value6;
var routes;
var value7;
var goBack;
var value8;
var moduleValue3;
var transitionTo;
var CHANNEL;
var channelBinding;
var guild_id;
var runAfterInteractions;
let value = environment;
reducibleJoin12: while (true) {
if (application == null) {
break reducibleJoin12;
}
value7 = 0;
r5 = length ?? value7;
if (r5 > 1) {
reducibleLoop9: while (true) {
goBack = value5.goBack;
Reflect.apply(goBack, value5, []);
value8 = typeof r5 === 'bigint' ? r5 - 1n : +r5 - 1;
if (value8 > 1) {
r5 = value8;
continue reducibleLoop9;
bot = application.bot;
if (bot == null) {
break reducibleJoin12;
}
bot = application.bot;
id = bot.id;
var env0_0 = id;
value2 = environment.__proto__;
value3 = undefined;
moduleValue = require(8743) /* metro dependency 8743: showUserProfileActionSheet */;
getUserProfileActionSheetKey = moduleValue.getUserProfileActionSheetKey;
value4 = Reflect.apply(getUserProfileActionSheetKey, moduleValue, [id]);
defaultImport = importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */;
hideActionSheet = defaultImport.hideActionSheet;
Reflect.apply(hideActionSheet, defaultImport, [value4]);
moduleValue2 = require(4008) /* metro dependency 4008: RootNavigationRefNative */;
getRootNavigationRef = moduleValue2.getRootNavigationRef;
value5 = Reflect.apply(getRootNavigationRef, moduleValue2, []);
reducibleJoin11: while (true) {
if (value5 == null) {
break reducibleJoin11;
}
isReady = value5.isReady;
if (Reflect.apply(isReady, value5, [])) {
getState = value5.getState;
value6 = Reflect.apply(getState, value5, []);
reducibleJoin7: while (true) {
if (value6 == null) {
length = value3;
break reducibleJoin7;
}
routes = value6.routes;
if (routes == null) {
length = value3;
break reducibleJoin7;
}
length = routes.length;
break reducibleJoin7;
}
break reducibleLoop9;
value7 = 0;
r5 = length ?? value7;
if (r5 > 1) {
reducibleLoop9: while (true) {
goBack = value5.goBack;
Reflect.apply(goBack, value5, []);
value8 = typeof r5 === 'bigint' ? r5 - 1n : +r5 - 1;
if (value8 > 1) {
r5 = value8;
continue reducibleLoop9;
}
break reducibleLoop9;
}
}
moduleValue3 = require(1230) /* metro dependency 1230: router_utils */;
transitionTo = moduleValue3.transitionTo;
CHANNEL = Routes.CHANNEL;
channelBinding = channel;
guild_id = channelBinding.guild_id;
id = channelBinding.id;
Reflect.apply(transitionTo, moduleValue3, [Reflect.apply(CHANNEL, Routes, [guild_id, id])]);
break reducibleJoin11;
}
break reducibleJoin11;
}
moduleValue3 = require(1230) /* metro dependency 1230: router_utils */;
transitionTo = moduleValue3.transitionTo;
CHANNEL = Routes.CHANNEL;
channelBinding = channel;
guild_id = channelBinding.guild_id;
id = channelBinding.id;
Reflect.apply(transitionTo, moduleValue3, [Reflect.apply(CHANNEL, Routes, [guild_id, id])]);
break reducibleJoin11;
value = require(5459) /* metro dependency 5459: RunAfterInteractionsUtils */;
runAfterInteractions = value.runAfterInteractions;
Reflect.apply(runAfterInteractions, value, [_fun68571]);
break reducibleJoin12;
}
break reducibleJoin11;
function _fun68571() { // fn#68571, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:3530, offset: 0x01c548d9, size: 145 bytes, params: 1, frame: 16
var environment;
var openCustomKeyboard;
var object;
const bestActiveInput = (ChatInputUtilsModule).getBestActiveInput();
if (bestActiveInput != null) {
openCustomKeyboard = bestActiveInput.openCustomKeyboard;
object = {};
object.type = (require(1583) /* metro dependency 1583: KeyboardTypes */).KeyboardTypes.APP_LAUNCHER;
value = environment.__proto__;
object.context = {initialRouteName: AppLauncherRouteName.APPLICATION_VIEW, initiallyExpanded: true,
application: application, onPressBack: onPressBack};
Reflect.apply(openCustomKeyboard, bestActiveInput, [object]);
}
function onPressBack() { // fn#68572, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:3737, offset: 0x01c5496a, size: 95 bytes, params: 1, frame: 15
let value = environment.__proto__.__proto__.__proto__;
value = importDefault(8743) /* metro dependency 8743: showUserProfileActionSheet */;
const object = {};
copyDataProperties(object, context, undefined);
object['userId'] = id;
object['channelId'] = channel.id;
object['sourceAnalyticsLocations'] = analyticsLocations;
value(object);
}
}
}
value = require(5459) /* metro dependency 5459: RunAfterInteractionsUtils */;
runAfterInteractions = value.runAfterInteractions;
Reflect.apply(runAfterInteractions, value, [_fun68571]);
break reducibleJoin12;
function _fun68573(a0) { // fn#68573, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:4015, offset: 0x01c549c9, size: 72 bytes, params: 2, frame: 17
const value = environment.__proto__;
return ((Component) => <Component application={application} channel={channel} command={a0} key={a0.id} />)(UserProfileAboutMeCardCommand);
}
}
}
function _fun68573(a0) { // fn#68573, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:4015, offset: 0x01c549c9, size: 72 bytes, params: 2, frame: 17
const value = environment.__proto__;
return ((Component) => <Component application={application} channel={channel} command={a0} key={a0.id} />)(importDefault(8768) /* metro dependency 8768: UserProfileAboutMeCardCommand */);
}
function _fun68571() { // fn#68571, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:3530, offset: 0x01c548d9, size: 145 bytes, params: 1, frame: 16
var environment;
var openCustomKeyboard;
var object2;
const bestActiveInput = (require(4015) /* metro dependency 4015: ChatInputUtils */).getBestActiveInput();
if (bestActiveInput != null) {
openCustomKeyboard = bestActiveInput.openCustomKeyboard;
object2 = {};
object2.type = (require(1583) /* metro dependency 1583: KeyboardTypes */).KeyboardTypes.APP_LAUNCHER;
value = environment.__proto__;
object2.context = {initialRouteName: AppLauncherRouteName.APPLICATION_VIEW, initiallyExpanded: true,
application: application, onPressBack: onPressBack_68572};
Reflect.apply(openCustomKeyboard, bestActiveInput, [object2]);
function getStyleConfig_68574(a0) { // fn#68574, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:536, offset: 0x01c54a11, size: 38 bytes, params: 2, frame: 4
let r0 = a0 != null ? env0_15[a0] : undefined;
r0 = r0 ?? env0_14;
return r0;
}
function UserProfileAboutMeCard({userId, displayProfile, channel, pendingBio, bioLineClamp, themeType, style}) { // fn#68575, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:4305, offset: 0x01c54a37, size: 330 bytes, params: 2, frame: 26
const styles = useStyles();
const rowGap = getStyleConfig_68574(themeType).rowGap;
const application = displayProfile?.application;
const items3 = [styles.card];
items3[1] = {rowGap: rowGap};
items3[2] = style;
const items2 = [
<Bio
userId={userId}
displayProfile={displayProfile}
pendingBio={pendingBio}
themeType={themeType}
lineClamp={bioLineClamp}
/>,
];
items2[1] = (
<MemberJoinDates
userId={userId}
guildId={displayProfile?.guildId}
themeType={themeType}
/>
);
items2[2] = application?.popularApplicationCommandIds != null && channel != null && <BotSlashCommands applicationId={application.id} channel={channel} commandIds={application.popularApplicationCommandIds} themeType={themeType} />;
return (
<UserProfileCard style={items3}>
{items2}
</UserProfileCard>
);
}
}
function onPressBack_68572() { // fn#68572, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8947:3737, offset: 0x01c5496a, size: 95 bytes, params: 1, frame: 15
let value = environment.__proto__.__proto__.__proto__;
value = importDefault(8743) /* metro dependency 8743: showUserProfileActionSheet */;
const object2 = {};
copyDataProperties(object2, context, undefined);
object2['userId'] = id;
object2['channelId'] = channel.id;
object2['sourceAnalyticsLocations'] = analyticsLocations;
value(object2);
}
global.__d(_fun68561, 8762, [31, 27, 1949, 1945, 1867, 6816, 661, 1483, 33, 4501, 3860, 697, 4573, 1244, 8763, 566,
5043, 21, 8765, 6819, 6771, 8514, 8767, 8743, 4080, 4008, 1230, 5459, 4015, 1583, 8768, 4578, 6815,
2]) /* metro module 8762, dependencies: [31, 27, 1949, 1945, 1867, 6816, 661, 1483, 33, 4501, 3860, 697, 4573, 1244, 8763, 566, 5043, 21, 8765, 6819, 6771, 8514, 8767, 8743, 4080, 4008, 1230, 5459, 4015, 1583, 8768, 4578, 6815, 2] */;
@@ -1,121 +1,135 @@
/* Metro module 8768; source: modules/user_profile/native/UserProfileAboutMeCardCommand.tsx; dependencies: [31, 661, 33, 4501, 697, 4573, 4015, 8769, 683, 4863, 4080, 8776, 5065, 5068, 2] */
import AnalyticsUtils from '../../../utils/AnalyticsUtils.tsx'; /* Metro dependency 683 */
import ActionSheetActionCreators from '../../action_sheet/native/ActionSheetActionCreators.tsx'; /* Metro dependency 4080 */
import NavigateToLastChannel from '../../main_tabs_v2/native/navigateToLastChannel.tsx'; /* Metro dependency 8776 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as ChatInputUtilsModule from '../../../utils/native/ChatInputUtils.tsx'; /* Metro dependency 4015 */
import * as CreateStylesModule from '../../../design/components/Styles/native/createStyles.tsx'; /* Metro dependency 4501 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
import * as AppAnalyticsUtilsModule from '../../app_analytics/AppAnalyticsUtils.tsx'; /* Metro dependency 4863 */
import * as MarkupReactCommandRuleModule from '../../markup/native/MarkupReactCommandRule.tsx'; /* Metro dependency 8769 */
function _fun68594(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68594, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8953:6, offset: 0x01c55540, size: 305 bytes, params: 8, frame: 23
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = importAll(31) /* metro dependency 31 */;
const env0_3 = (require(661) /* metro dependency 661: Constants */).AnalyticEvents;
const env0_4 = (require(33) /* metro dependency 33 */).jsxs;
const createStylesModule = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = createStylesModule.createStyles;
const object = {};
const MENTION_FOREGROUND = (importDefault(697) /* metro dependency 697: native */).colors.MENTION_FOREGROUND;
object.color = MENTION_FOREGROUND;
const MENTION_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.MENTION_BACKGROUND;
object.backgroundColor = MENTION_BACKGROUND;
let PX_12 = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object.marginEnd = PX_12;
PX_12 = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object.marginBottom = PX_12;
const env0_5 = Reflect.apply(createStyles, createStylesModule, [{commandClickable: object}]);
value = value.memo(UserProfileAboutMeCardCommand);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileAboutMeCardCommand.tsx');
exports.default = value;
}
function UserProfileAboutMeCardCommand({application, command, channel}) { // fn#68595, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8953:358, offset: 0x01c55671, size: 151 bytes, params: 2, frame: 17
const styles = useStyles();
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
return (
<Text
variant="text-md/bold"
onPress={onPress_68596}
onLongPress={onLongPress_68599}
style={styles.commandClickable}
>
{'/'}
{command.displayName}
</Text>
);
}
function UserProfileAboutMeCardCommandOnPress() { // fn#68596, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8953:498, owner: UserProfileAboutMeCardCommand.onPress, offset: 0x01c55708, size: 172 bytes, params: 1, frame: 18
var environment;
let value = environment.__proto__;
value = undefined;
const bestActiveInput = (require(4015) /* metro dependency 4015: ChatInputUtils */).getBestActiveInput();
const markupReactCommandRuleModule = require(8769) /* metro dependency 8769: MarkupReactCommandRule */;
const handleTapCommandMention = markupReactCommandRuleModule.handleTapCommandMention;
let value = ReactModule;
const createStyles = CreateStylesModule.createStyles;
const object2 = {};
object2.channelId = channel.id;
object2.currentText = (bestActiveInput == null ? value : bestActiveInput.getText()) ?? '';
const commandBinding = command;
object2.commandId = commandBinding.id;
object2.commandName = commandBinding.displayName;
object2.onOpenCustomKeyboard = onOpenCustomKeyboard;
object2.onSetCommand = onSetCommand;
Reflect.apply(handleTapCommandMention, markupReactCommandRuleModule, [object2]);
return value;
}
const MENTION_FOREGROUND = (importDefault(697) /* metro dependency 697: native */).colors.MENTION_FOREGROUND;
object2.color = MENTION_FOREGROUND;
const MENTION_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.MENTION_BACKGROUND;
object2.backgroundColor = MENTION_BACKGROUND;
let PX_12 = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object2.marginEnd = PX_12;
PX_12 = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object2.marginBottom = PX_12;
const env0_5 = Reflect.apply(createStyles, CreateStylesModule, [{commandClickable: object2}]);
value = value.memo(UserProfileAboutMeCardCommand);
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileAboutMeCardCommand.tsx');
exports.default = value;
function UserProfileAboutMeCardCommand({application, command, channel}) { // fn#68595, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8953:358, offset: 0x01c55671, size: 151 bytes, params: 2, frame: 17
const styles = useStyles();
const Text = (TextModule).Text;
return (
<Text
variant="text-md/bold"
onPress={onPress_68596}
onLongPress={onLongPress_68599}
style={styles.commandClickable}
>
{'/'}
{command.displayName}
</Text>
);
function UserProfileAboutMeCardCommandOnPress() { // fn#68596, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8953:498, owner: UserProfileAboutMeCardCommand.onPress, offset: 0x01c55708, size: 172 bytes, params: 1, frame: 18
var environment;
let value = environment.__proto__;
value = undefined;
const bestActiveInput = (ChatInputUtilsModule).getBestActiveInput();
const handleTapCommandMention = MarkupReactCommandRuleModule.handleTapCommandMention;
const object = {};
object.channelId = channel.id;
object.currentText = (bestActiveInput == null ? value : bestActiveInput.getText()) ?? '';
const commandBinding = command;
object.commandId = commandBinding.id;
object.commandName = commandBinding.displayName;
object.onOpenCustomKeyboard = onOpenCustomKeyboard;
object.onSetCommand = onSetCommand;
Reflect.apply(handleTapCommandMention, MarkupReactCommandRuleModule, [object]);
return value;
function onPressOnOpenCustomKeyboard(a0) { // fn#68597, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8953:704, owner: UserProfileAboutMeCardCommand.onPress.onOpenCustomKeyboard, offset: 0x01c557b4, size: 38 bytes, params: 2, frame: 12
return env0_0?.openCustomKeyboard(a0);
}
function UserProfileAboutMeCardCommandOnLongPress() { // fn#68599, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8953:1258, owner: UserProfileAboutMeCardCommand.onLongPress, offset: 0x01c55959, size: 56 bytes, params: 1, frame: 13
let value = environment.__proto__;
value = require(8769) /* metro dependency 8769: MarkupReactCommandRule */;
const handleLongPressCommandMention = value.handleLongPressCommandMention;
const commandBinding = command;
return Reflect.apply(handleLongPressCommandMention, value, [commandBinding.displayName, commandBinding.id]);
}
function onPressOnSetCommand() { // fn#68598, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8953:759, owner: UserProfileAboutMeCardCommand.onPress.onSetCommand, offset: 0x01c557da, size: 383 bytes, params: 1, frame: 21
var r1;
var r3;
var r5;
var applicationCommandManager;
var setCommand;
var moduleValue2;
const value2 = undefined;
const defaultImport = AnalyticsUtils;
const track = defaultImport.track;
const POPULAR_APPLICATION_COMMAND_CLICKED = AnalyticEvents.POPULAR_APPLICATION_COMMAND_CLICKED;
let object = {};
const applicationBinding = application;
const value4 = null;
object.application_id = value4 == applicationBinding ? value2 : application.id;
object.command_id = command.id;
const channelBinding = channel;
object.guild_id = channelBinding.getGuildId();
copyDataProperties(object, AppAnalyticsUtilsModule.collectChannelAnalyticsMetadata(channelBinding), channelBinding);
Reflect.apply(track, defaultImport, [POPULAR_APPLICATION_COMMAND_CLICKED, object]);
(ActionSheetActionCreators).hideActionSheet();
(NavigateToLastChannel)();
if (value4 != env0_0) {
env0_0.openSystemKeyboard();
}
const value6 = value4 == env0_0;
if (value6) {
r1 = value6;
r3 = value2;
} else {
applicationCommandManager = env0_0.getApplicationCommandManager();
r1 = value4 == applicationCommandManager;
r3 = applicationCommandManager;
}
if (!r1) {
setCommand = r3.setCommand;
object = {};
object.channelId = channel.id;
object.command = command;
if (value4 != application) {
moduleValue2 = require(5065) /* metro dependency 5065: ApplicationCommandUtils */;
r5 = moduleValue2.getApplicationCommandSection(application);
} else {
r5 = value4;
}
object.section = r5;
object.location = (require(5068) /* metro dependency 5068: ApplicationCommandTypes */).ApplicationCommandTriggerLocations.POPULAR_COMMANDS;
Reflect.apply(setCommand, r3, [object]);
}
return value2;
}
function onPressOnSetCommand() { // fn#68598, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8953:759, owner: UserProfileAboutMeCardCommand.onPress.onSetCommand, offset: 0x01c557da, size: 383 bytes, params: 1, frame: 21
var r1;
var r3;
var r5;
var applicationCommandManager;
var setCommand;
var moduleValue2;
const value2 = undefined;
const defaultImport = importDefault(683) /* metro dependency 683: AnalyticsUtils */;
const track = defaultImport.track;
const POPULAR_APPLICATION_COMMAND_CLICKED = AnalyticEvents.POPULAR_APPLICATION_COMMAND_CLICKED;
let object2 = {};
const applicationBinding = application;
const value4 = null;
object2.application_id = value4 == applicationBinding ? value2 : application.id;
object2.command_id = command.id;
const channelBinding = channel;
object2.guild_id = channelBinding.getGuildId();
const appAnalyticsUtilsModule = require(4863) /* metro dependency 4863: AppAnalyticsUtils */;
copyDataProperties(object2, appAnalyticsUtilsModule.collectChannelAnalyticsMetadata(channelBinding), channelBinding);
Reflect.apply(track, defaultImport, [POPULAR_APPLICATION_COMMAND_CLICKED, object2]);
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet();
(importDefault(8776) /* metro dependency 8776: navigateToLastChannel */)();
if (value4 != env0_0) {
env0_0.openSystemKeyboard();
}
const value6 = value4 == env0_0;
if (value6) {
r1 = value6;
r3 = value2;
} else {
applicationCommandManager = env0_0.getApplicationCommandManager();
r1 = value4 == applicationCommandManager;
r3 = applicationCommandManager;
}
if (!r1) {
setCommand = r3.setCommand;
object2 = {};
object2.channelId = channel.id;
object2.command = command;
if (value4 != application) {
moduleValue2 = require(5065) /* metro dependency 5065: ApplicationCommandUtils */;
r5 = moduleValue2.getApplicationCommandSection(application);
} else {
r5 = value4;
}
object2.section = r5;
object2.location = (require(5068) /* metro dependency 5068: ApplicationCommandTypes */).ApplicationCommandTriggerLocations.POPULAR_COMMANDS;
Reflect.apply(setCommand, r3, [object2]);
function UserProfileAboutMeCardCommandOnLongPress() { // fn#68599, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8953:1258, owner: UserProfileAboutMeCardCommand.onLongPress, offset: 0x01c55959, size: 56 bytes, params: 1, frame: 13
let value = environment.__proto__;
value = require(8769) /* metro dependency 8769: MarkupReactCommandRule */;
const handleLongPressCommandMention = value.handleLongPressCommandMention;
const commandBinding = command;
return Reflect.apply(handleLongPressCommandMention, value, [commandBinding.displayName, commandBinding.id]);
}
}
return value2;
}
global.__d(_fun68594, 8768, [31, 661, 33, 4501, 697, 4573, 4015, 8769, 683, 4863, 4080, 8776, 5065, 5068,
2]) /* metro module 8768, dependencies: [31, 661, 33, 4501, 697, 4573, 4015, 8769, 683, 4863, 4080, 8776, 5065, 5068, 2] */;
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -1,89 +1,107 @@
/* Metro module 10221; source: modules/user_profile/native/UserProfileActivityBadges.tsx; dependencies: [31, 27, 661, 33, 4501, 10222, 6885, 8840, 8835, 8841, 8658, 10224, 10225, 697, 10226, 8375, 6699, 4573, 10236, 2] */
import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as CreateStylesModule from '../../../design/components/Styles/native/createStyles.tsx'; /* Metro dependency 4501 */
import * as UtilsModule from '../../content_inventory/utils.tsx'; /* Metro dependency 8375 */
import * as UseTimestampTickedNowModule from '../../content_inventory/memberlist/useTimestampTickedNow.tsx'; /* Metro dependency 10224 */
import * as BadgesModule from '../../icymi/native/content_inventory/Badges.tsx'; /* Metro dependency 10226 */
function _fun79510(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#79510, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10407:6, offset: 0x01e55dbb, size: 278 bytes, params: 8, frame: 20
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 env0_4 = (require(661) /* metro dependency 661: Constants */).ActivityTypes;
const value = require(33) /* metro dependency 33 */;
const env0_5 = value.jsx;
const env0_6 = value.jsxs;
const env0_7 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({container: {'display': 'flex',
ReactModule;
const env0_7 = (CreateStylesModule).createStyles({container: {'display': 'flex',
'flexDirection': 'row', 'alignItems': 'center', 'gap': 4}, bold: {fontWeight: 'bold'}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileActivityBadges.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileActivityBadges.tsx');
exports.TimestampBadge = TimestampBadge;
exports.PartyBadge = PartyBadge;
exports.EpisodeBadge = EpisodeBadge;
function TimestampBadge({activity}) { // fn#79511, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10407:403, offset: 0x01e55ed1, size: 574 bytes, params: 2, frame: 25
const styles = useStyles();
const useTimestampTickedNow = UseTimestampTickedNowModule.useTimestampTickedNow;
const now = Reflect.apply(useTimestampTickedNow, UseTimestampTickedNowModule, []).now;
const r13 = activity.timestamps?.start ?? activity.created_at;
if (r13 == null) {
return null;
}
if ((importDefault(10225) /* metro dependency 10225: shouldShowActivityTimeBar */)(activity)) {
return null;
}
const end = activity.timestamps?.end;
const isCountDown = activity.timestamps?.isCountDown;
const r11 = isCountDown != null && isCountDown;
let r2 = r11 && end != null && end > now;
r2 = !(r2 === undefined) && r2;
const r7 = r2 ? (require(10222) /* metro dependency 10222: HourglassIcon */).HourglassIcon : (importDefault(6885) /* metro dependency 6885: isEmbeddedActivity */)(activity) ? (require(8840) /* metro dependency 8840: AppsIcon */).AppsIcon : activity.type === ActivityTypes.WATCHING ? (require(8835) /* metro dependency 8835: TvIcon */).TvIcon : activity.type === ActivityTypes.LISTENING ? (require(8841) /* metro dependency 8841: MusicIcon */).MusicIcon : (require(8658) /* metro dependency 8658: GameControllerIcon */).GameControllerIcon;
const TEXT_FEEDBACK_POSITIVE = (Native).colors.TEXT_FEEDBACK_POSITIVE;
const value7 = ((Component) => <Component size="xxs" color={TEXT_FEEDBACK_POSITIVE} />)(r7);
const ActiveTimestamp = (BadgesModule).ActiveTimestamp;
return (
<View style={styles.container}>
{value7}
<ActiveTimestamp entry={{start: r13, end: end, isCountDown: r11}} style={styles.bold} />
</View>
);
}
function PartyBadge({activity}) { // fn#79512, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10407:1088, offset: 0x01e5610f, size: 288 bytes, params: 2, frame: 22
var r0;
var value;
const styles = useStyles();
if ((importDefault(6885) /* metro dependency 6885: isEmbeddedActivity */)(activity)) {
return null;
}
if (activity.party == null) {
return null;
}
const richGameStateBadgeText = (UtilsModule).getRichGameStateBadgeText(activity.state,
activity.party);
if (richGameStateBadgeText == null) {
r0 = null;
} else {
var viewBindingProps = {style: styles.container};
const GroupIcon = (require(6699) /* metro dependency 6699: GroupIcon */).GroupIcon;
value = <GroupIcon size="xxs" color={(importDefault(697) /* metro dependency 697: native */).colors.TEXT_MUTED} />;
value = (
<View {...viewBindingProps}>
{value}
{((Text) => <Text variant="text-sm/medium" color="text-muted">{richGameStateBadgeText}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}
</View>
);
r0 = value;
}
return r0;
}
function EpisodeBadge({activity}) { // fn#79513, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10407:1445, offset: 0x01e5622f, size: 249 bytes, params: 2, frame: 22
var r0;
var value;
const styles = useStyles();
const episodeBadgeText = (require(8375) /* metro dependency 8375: utils */).getEpisodeBadgeText(activity.assets?.large_text);
if (episodeBadgeText == null) {
r0 = null;
} else {
var viewBindingProps = {style: styles.container};
const TopicsIcon = (require(10236) /* metro dependency 10236: TopicsIcon */).TopicsIcon;
value = <TopicsIcon size="xxs" color={(importDefault(697) /* metro dependency 697: native */).colors.TEXT_MUTED} />;
value = (
<View {...viewBindingProps}>
{value}
{((Text) => <Text variant="text-sm/medium" color="text-muted">{episodeBadgeText}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}
</View>
);
r0 = value;
}
return r0;
}
}
function TimestampBadge({activity}) { // fn#79511, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10407:403, offset: 0x01e55ed1, size: 574 bytes, params: 2, frame: 25
const styles = useStyles();
const useTimestampTickedNowModule = require(10224) /* metro dependency 10224: useTimestampTickedNow */;
const useTimestampTickedNow = useTimestampTickedNowModule.useTimestampTickedNow;
const now = Reflect.apply(useTimestampTickedNow, useTimestampTickedNowModule, []).now;
const r13 = activity.timestamps?.start ?? activity.created_at;
if (r13 == null) {
return null;
}
if ((importDefault(10225) /* metro dependency 10225: shouldShowActivityTimeBar */)(activity)) {
return null;
}
const end = activity.timestamps?.end;
const isCountDown = activity.timestamps?.isCountDown;
const r11 = isCountDown != null && isCountDown;
let r2 = r11 && end != null && end > now;
r2 = !(r2 === undefined) && r2;
const r7 = r2 ? (require(10222) /* metro dependency 10222: HourglassIcon */).HourglassIcon : (importDefault(6885) /* metro dependency 6885: isEmbeddedActivity */)(activity) ? (require(8840) /* metro dependency 8840: AppsIcon */).AppsIcon : activity.type === ActivityTypes.WATCHING ? (require(8835) /* metro dependency 8835: TvIcon */).TvIcon : activity.type === ActivityTypes.LISTENING ? (require(8841) /* metro dependency 8841: MusicIcon */).MusicIcon : (require(8658) /* metro dependency 8658: GameControllerIcon */).GameControllerIcon;
const TEXT_FEEDBACK_POSITIVE = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_FEEDBACK_POSITIVE;
const value7 = ((Component) => <Component size="xxs" color={TEXT_FEEDBACK_POSITIVE} />)(r7);
const ActiveTimestamp = (require(10226) /* metro dependency 10226: Badges */).ActiveTimestamp;
return (
<View style={styles.container}>
{value7}
<ActiveTimestamp entry={{start: r13, end: end, isCountDown: r11}} style={styles.bold} />
</View>
);
}
function PartyBadge({activity}) { // fn#79512, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10407:1088, offset: 0x01e5610f, size: 288 bytes, params: 2, frame: 22
var r0;
var value;
const styles = useStyles();
if ((importDefault(6885) /* metro dependency 6885: isEmbeddedActivity */)(activity)) {
return null;
}
if (activity.party == null) {
return null;
}
const richGameStateBadgeText = (require(8375) /* metro dependency 8375: utils */).getRichGameStateBadgeText(activity.state,
activity.party);
if (richGameStateBadgeText == null) {
r0 = null;
} else {
var viewBindingProps = {style: styles.container};
const GroupIcon = (require(6699) /* metro dependency 6699: GroupIcon */).GroupIcon;
value = <GroupIcon size="xxs" color={(importDefault(697) /* metro dependency 697: native */).colors.TEXT_MUTED} />;
value = <View {...viewBindingProps}>{value}{((Text) => <Text variant="text-sm/medium" color="text-muted">{richGameStateBadgeText}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}</View>;
r0 = value;
}
return r0;
}
function EpisodeBadge({activity}) { // fn#79513, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10407:1445, offset: 0x01e5622f, size: 249 bytes, params: 2, frame: 22
var r0;
var value;
const styles = useStyles();
const episodeBadgeText = (require(8375) /* metro dependency 8375: utils */).getEpisodeBadgeText(activity.assets?.large_text);
if (episodeBadgeText == null) {
r0 = null;
} else {
var viewBindingProps = {style: styles.container};
const TopicsIcon = (require(10236) /* metro dependency 10236: TopicsIcon */).TopicsIcon;
value = <TopicsIcon size="xxs" color={(importDefault(697) /* metro dependency 697: native */).colors.TEXT_MUTED} />;
value = <View {...viewBindingProps}>{value}{((Text) => <Text variant="text-sm/medium" color="text-muted">{episodeBadgeText}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}</View>;
r0 = value;
}
return r0;
}
global.__d(_fun79510, 10221, [31, 27, 661, 33, 4501, 10222, 6885, 8840, 8835, 8841, 8658, 10224, 10225, 697, 10226,
8375, 6699, 4573, 10236,
2]) /* metro module 10221, dependencies: [31, 27, 661, 33, 4501, 10222, 6885, 8840, 8835, 8841, 8658, 10224, 10225, 697, 10226, 8375, 6699, 4573, 10236, 2] */;
File diff suppressed because it is too large. Load diff
@@ -1,38 +1,51 @@
/* Metro module 10220; source: modules/user_profile/native/UserProfileActivityCardBadges.tsx; dependencies: [31, 27, 661, 33, 10221, 2] */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
function _fun79507(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#79507, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10406:6, offset: 0x01e55bb5, size: 174 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_2 = (require(27) /* metro dependency 27 */).View;
const env0_3 = (require(661) /* metro dependency 661: Constants */).ActivityTypes;
const env0_4 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileActivityCardBadges.tsx');
ReactModule;
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileActivityCardBadges.tsx');
exports.default = UserProfileActivityCardBadges;
}
function UserProfileActivityCardBadges({activity, style}) { // fn#79508, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10406:262, offset: 0x01e55c63, size: 306 bytes, params: 2, frame: 19
var r6;
var items2;
const type = activity.type;
const PLAYING = ActivityTypes.PLAYING;
if (type === PLAYING) {
items2 = [(require(10221) /* metro dependency 10221: UserProfileActivityBadges */).TimestampBadge];
items2[1] = (require(10221) /* metro dependency 10221: UserProfileActivityBadges */).PartyBadge;
r6 = items2;
} else if (activity.type === ActivityTypes.LISTENING) {
r6 = [(require(10221) /* metro dependency 10221: UserProfileActivityBadges */).TimestampBadge];
} else if (activity.type === ActivityTypes.WATCHING) {
items2 = [(require(10221) /* metro dependency 10221: UserProfileActivityBadges */).TimestampBadge];
items2[1] = (require(10221) /* metro dependency 10221: UserProfileActivityBadges */).EpisodeBadge;
r6 = items2;
} else {
r6 = [];
}
return (
r6.length === 0
? null
: (
<View style={style}>
{r6.map(_fun79509)}
</View>
)
);
function _fun79509(a0, a1) { // fn#79509, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10406:569, offset: 0x01e55d95, size: 38 bytes, params: 3, frame: 15
return ((Component) => <Component activity={activity} key={a1} />)(a0);
}
function UserProfileActivityCardBadges({activity, style}) { // fn#79508, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10406:262, offset: 0x01e55c63, size: 306 bytes, params: 2, frame: 19
var r6;
var items;
const type = activity.type;
const PLAYING = ActivityTypes.PLAYING;
if (type === PLAYING) {
items = [(require(10221) /* metro dependency 10221: UserProfileActivityBadges */).TimestampBadge];
items[1] = (require(10221) /* metro dependency 10221: UserProfileActivityBadges */).PartyBadge;
r6 = items;
} else if (activity.type === ActivityTypes.LISTENING) {
r6 = [(require(10221) /* metro dependency 10221: UserProfileActivityBadges */).TimestampBadge];
} else if (activity.type === ActivityTypes.WATCHING) {
items = [(require(10221) /* metro dependency 10221: UserProfileActivityBadges */).TimestampBadge];
items[1] = (require(10221) /* metro dependency 10221: UserProfileActivityBadges */).EpisodeBadge;
r6 = items;
} else {
r6 = [];
}
return r6.length === 0 ? null : <View style={style}>{r6.map(_fun79509)}</View>;
}
function _fun79509(a0, a1) { // fn#79509, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10406:569, offset: 0x01e55d95, size: 38 bytes, params: 3, frame: 15
return ((Component) => <Component activity={activity} key={a1} />)(a0);
}
global.__d(_fun79507, 10220, [31, 27, 661, 33, 10221,
2]) /* metro module 10220, dependencies: [31, 27, 661, 33, 10221, 2] */;
@@ -1,68 +1,80 @@
/* Metro module 10246; source: modules/user_profile/native/UserProfileActivityTimebar.tsx; dependencies: [31, 27, 661, 33, 4501, 697, 1357, 10247, 4573, 2] */
import MobileVisualRefreshExperiment from '../../themes/experiments/MobileVisualRefreshExperiment.tsx'; /* Metro dependency 1357 */
import UseActivityTimer from '../hooks/useActivityTimer.tsx'; /* Metro dependency 10247 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
function _fun79578(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#79578, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10432:6, offset: 0x01e58c65, size: 373 bytes, params: 8, frame: 23
var object4;
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 env0_4 = (require(661) /* metro dependency 661: Constants */).Fonts;
let value = require(33) /* metro dependency 33 */;
ReactModule;
let value = JsxRuntimeModule;
const env0_5 = value.jsx;
const env0_6 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object4 = {};
const object5 = {};
object = {};
const object2 = {};
const BACKGROUND_MOD_MUTED = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_MUTED;
object5.backgroundColor = BACKGROUND_MOD_MUTED;
object5.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xs;
object5.height = 4;
object5.marginBottom = 4;
object4.bar = object5;
const object6 = {};
object2.backgroundColor = BACKGROUND_MOD_MUTED;
object2.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xs;
object2.height = 4;
object2.marginBottom = 4;
object.bar = object2;
const object3 = {};
const ACTIVITY_TIMEBAR_PROGRESS_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.ACTIVITY_TIMEBAR_PROGRESS_BACKGROUND;
object6.backgroundColor = ACTIVITY_TIMEBAR_PROGRESS_BACKGROUND;
object6.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xs;
object6.height = '100%';
object6.minWidth = 4;
object4.progress = object6;
object4.textRow = {'flexDirection': 'row', 'justifyContent': 'space-between'};
const env0_7 = Reflect.apply(createStyles, value, [object4]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileActivityTimebar.tsx');
object3.backgroundColor = ACTIVITY_TIMEBAR_PROGRESS_BACKGROUND;
object3.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xs;
object3.height = '100%';
object3.minWidth = 4;
object.progress = object3;
object.textRow = {'flexDirection': 'row', 'justifyContent': 'space-between'};
const env0_7 = Reflect.apply(createStyles, value, [object]);
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileActivityTimebar.tsx');
exports.default = UserProfileActivityTimebar;
}
function UserProfileActivityTimebar({start, end, style}) { // fn#79579, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10432:597, offset: 0x01e58dda, size: 481 bytes, params: 2, frame: 30
const value3 = (importDefault(1357) /* metro dependency 1357: MobileVisualRefreshExperiment */)('UserProfileActivityTimebar');
const styles = useStyles();
const {elapsed, duration,
percentage} = (importDefault(10247) /* metro dependency 10247: useActivityTimer */)({start: start, end: end});
const r11 = value3 ? undefined : {fontFamily: Fonts.CODE_NORMAL};
const view = <View style={styles.bar}><View style={[styles.progress, {width: 100 * percentage + '%'}]} /></View>;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
return (
<View style={style}>
{view}
<View style={styles.textRow}>
<Text
variant="text-xs/normal"
style={r11}
tabularNumbers={value3 || undefined}
color={value3 ? 'text-subtle' : undefined}
>
{(require(10247) /* metro dependency 10247: useActivityTimer */).formatTime(elapsed)}
</Text>
<Text
variant="text-xs/normal"
style={r11}
tabularNumbers={value3 || undefined}
color={value3 ? 'text-subtle' : undefined}
>
{(require(10247) /* metro dependency 10247: useActivityTimer */).formatTime(duration)}
</Text>
function UserProfileActivityTimebar({start, end, style}) { // fn#79579, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10432:597, offset: 0x01e58dda, size: 481 bytes, params: 2, frame: 30
const value3 = (MobileVisualRefreshExperiment)('UserProfileActivityTimebar');
const styles = useStyles();
const {elapsed, duration,
percentage} = (UseActivityTimer)({start: start, end: end});
const r11 = value3 ? undefined : {fontFamily: Fonts.CODE_NORMAL};
const view = (
<View style={styles.bar}>
<View style={[styles.progress, {width: 100 * percentage + '%'}]} />
</View>
</View>
);
);
const Text = (TextModule).Text;
return (
<View style={style}>
{view}
<View style={styles.textRow}>
<Text
variant="text-xs/normal"
style={r11}
tabularNumbers={value3 || undefined}
color={value3 ? 'text-subtle' : undefined}
>
{(require(10247) /* metro dependency 10247: useActivityTimer */).formatTime(elapsed)}
</Text>
<Text
variant="text-xs/normal"
style={r11}
tabularNumbers={value3 || undefined}
color={value3 ? 'text-subtle' : undefined}
>
{(require(10247) /* metro dependency 10247: useActivityTimer */).formatTime(duration)}
</Text>
</View>
</View>
);
}
}
global.__d(_fun79578, 10246, [31, 27, 661, 33, 4501, 697, 1357, 10247, 4573,
2]) /* metro module 10246, dependencies: [31, 27, 661, 33, 4501, 697, 1357, 10247, 4573, 2] */;
@@ -1,125 +1,189 @@
/* Metro module 10248; source: modules/user_profile/native/UserProfileActivityVoiceChannel.tsx; dependencies: [27, 3784, 482, 33, 4501, 477, 6771, 8514, 4559, 10249, 4805, 566, 6707, 6711, 1244, 6819, 5278, 3857, 6818, 4573, 9122, 7709, 4080, 10250, 1962, 8743, 10251, 1305, 2] */
import PermissionStore from '../../../stores/PermissionStore.tsx'; /* Metro dependency 3784 */
import ToastActionCreators from '../../toast/native/ToastActionCreators.tsx'; /* Metro dependency 3857 */
import ActionSheetActionCreators from '../../action_sheet/native/ActionSheetActionCreators.tsx'; /* Metro dependency 4080 */
import UseChannelName from '../../channel/useChannelName.tsx'; /* Metro dependency 4805 */
import UseAnalyticsLocations from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import GuildIcon from '../../guild/native/GuildIcon.tsx'; /* Metro dependency 6819 */
import UsePersonalizedVoiceChannelUsers from '../hooks/usePersonalizedVoiceChannelUsers.tsx'; /* Metro dependency 10249 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
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 FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
import * as NativeModule from '../../../design/void/native.tsx'; /* Metro dependency 1305 */
import * as UseIsScreenReaderEnabledNativeModule from '../../a11y/native/useIsScreenReaderEnabled.native.tsx'; /* Metro dependency 4559 */
import * as PressablesModule from '../../../design/void/Pressables/native/Pressables.tsx'; /* Metro dependency 5278 */
import * as ChevronSmallRightIconModule from '../../../design/components/Icon/native/redesign/generated/ChevronSmallRightIcon.tsx'; /* Metro dependency 6818 */
import * as GuildIconModule from '../../guild/native/GuildIcon.tsx'; /* Metro dependency 6819 */
import * as PrivateChannelCallUtilsModule from '../../../utils/native/PrivateChannelCallUtils.tsx'; /* Metro dependency 7709 */
import * as UserProfileAnalyticsContextModule from '../UserProfileAnalyticsContext.tsx'; /* Metro dependency 8514 */
import * as AvatarPileNativeModule from '../../../design/components/Pile/native/AvatarPile.native.tsx'; /* Metro dependency 10251 */
function _fun79590(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#79590, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:6, offset: 0x01e593d4, size: 316 bytes, params: 8, frame: 21
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = (require(27) /* metro dependency 27 */).View;
const permissionStore = importDefault(3784) /* metro dependency 3784: PermissionStore */;
const env0_5 = (require(482) /* metro dependency 482: Constants */).Permissions;
let value = require(33) /* metro dependency 33 */;
let value = JsxRuntimeModule;
const env0_6 = value.jsx;
const env0_7 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
const object = {'flex': 1, 'overflow': 'hidden'};
object.marginTop = (require(477) /* metro dependency 477: PlatformUtils */).isAndroid() ? -2 : -1;
const object2 = {'flex': 1, 'overflow': 'hidden'};
object2.marginTop = (require(477) /* metro dependency 477: PlatformUtils */).isAndroid() ? -2 : -1;
const env0_8 = Reflect.apply(createStyles, value, [{container: {'flexDirection': 'row', 'alignItems': 'center',
'gap': 4, 'overflow': 'hidden'}, channelButton: {'flex': 1, 'flexDirection': 'row', 'alignItems': 'center',
'gap': 2}, channelName: object}]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileActivityVoiceChannel.tsx');
'gap': 2}, channelName: object2}]);
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileActivityVoiceChannel.tsx');
exports.default = UserProfileActivityVoiceChannel;
}
function UserProfileActivityVoiceChannel({guild, channel, onAction, style}) { // fn#79591, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:524, offset: 0x01e59510, size: 1312 bytes, params: 2, frame: 33
var r6;
const PressableOpacity = (PressablesModule).PressableOpacity;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const styles = useStyles();
const env0_3 = (UseAnalyticsLocations)().newestAnalyticsLocation;
const useUserProfileAnalyticsContext = UserProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const env0_4 = Reflect.apply(useUserProfileAnalyticsContext, UserProfileAnalyticsContextModule, []).context;
const value2 = (UseIsScreenReaderEnabledNativeModule).useIsScreenReaderEnabled();
const value3 = (UsePersonalizedVoiceChannelUsers)(channel);
const value4 = (UseChannelName)(channel);
const value5 = (FluxModule).useStateFromStores([PermissionStore], _fun79592);
const r12 = channel.isGuildStageVoice() ? (require(6707) /* metro dependency 6707: StageIcon */).StageIcon : (require(6711) /* metro dependency 6711: VoiceNormalIcon */).VoiceNormalIcon;
const items3 = [styles.container, style];
const items2 = [
value2
? (
<View
accessible
accessibilityLabel={intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.xm6W9D,
{guildName: guild.name})}
>
{((Component) => <Component size={(require(6819) /* metro dependency 6819: GuildIcon */).GuildIconSizes.XXSMALL} guild={guild} />)(importDefault(6819) /* metro dependency 6819: GuildIcon */)}
</View>
)
: (
<PressableOpacity
accessibilityRole="button"
accessibilityLabel={guild.name}
onPress={function() {
onAction({action: 'PRESS_VOICE_CHANNEL_ICON'});
importDefault(dependencyMap[17]).open({key: 'GUILD_NAME_TOAST', content: guild.name, icon: _fun79594});
}}
>
{((Component) => <Component size={(require(6819) /* metro dependency 6819: GuildIcon */).GuildIconSizes.XXSMALL} guild={guild} />)(importDefault(6819) /* metro dependency 6819: GuildIcon */)}
</PressableOpacity>
),
];
const ChevronSmallRightIcon = (ChevronSmallRightIconModule).ChevronSmallRightIcon;
items2[1] = <ChevronSmallRightIcon size="xxs" color="text-default" />;
if (value5) {
r6 = (
<PressableOpacity
style={styles.channelButton}
accessibilityRole="button"
accessibilityLabel={(importDefault(9122) /* metro dependency 9122: getChannelA11yLabel */)({channel: channel})}
accessibilityHint={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['9C444m'])}
onPress={onPress_79595}
>
{((Component) => <Component size="xxs" color="text-default" />)(r12)}
{((Text) => <Text style={styles.channelName} variant="text-xs/normal" lineClamp={1}>{value4}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}
</PressableOpacity>
);
} else {
r6 = (
<View style={styles.channelButton}>
{((Component) => <Component size="xxs" color="text-default" />)(r12)}
{((Text) => <Text style={styles.channelName} variant="text-xs/normal" lineClamp={1}>{value4}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}
</View>
);
}
items2[2] = r6;
const formatToPlainString = intl.formatToPlainString;
const e95u3C = (require(1244) /* metro dependency 1244: indexNative */).t.e95u3C;
const object2 = {};
object2.count = value3.length;
const AvatarPile = (AvatarPileNativeModule).AvatarPile;
const AvatarSizes = (NativeModule).AvatarSizes;
const SIZE_16 = AvatarSizes.SIZE_16;
items2[3] = (
<PressableOpacity
accessibilityRole="button"
accessibilityLabel={Reflect.apply(formatToPlainString, intl, [e95u3C, object2])}
onPress={onPress_79596}
>
<AvatarPile
size={SIZE_16}
totalCount={value3.length}
names={value3.map(function(a0) {
return a0.username;
})}
>
{(value3.length <= 3 ? value3 : value3.slice(0, 3)).map(_fun79599)}
</AvatarPile>
</PressableOpacity>
);
return (
<View style={items3}>
{items2}
</View>
);
function _fun79592() { // fn#79592, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:801, offset: 0x01e59a30, size: 55 bytes, params: 1, frame: 14
return channel.isPrivate() || PermissionStore.can(Permissions.CONNECT, channel);
}
function UserProfileActivityVoiceChannelOnPress() { // fn#79593, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:1225, owner: UserProfileActivityVoiceChannel.onPress, offset: 0x01e59a67, size: 100 bytes, params: 1, frame: 14
onAction({action: 'PRESS_VOICE_CHANNEL_ICON'});
(ToastActionCreators).open({key: 'GUILD_NAME_TOAST',
content: guild.name, icon: icon_79594});
function onPressIcon_79594() { // fn#79594, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:1327, owner: UserProfileActivityVoiceChannel.onPress.icon, offset: 0x01e59acb, size: 79 bytes, params: 1, frame: 16
const GuildIconSizes = (GuildIconModule).GuildIconSizes;
const XSMALL = GuildIconSizes.XSMALL;
return <GuildIcon size={XSMALL} guild={guild} />;
}
}
function UserProfileActivityVoiceChannelOnPress_79595() { // fn#79595, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:1720, owner: UserProfileActivityVoiceChannel.onPress, offset: 0x01e59b1a, size: 97 bytes, params: 1, frame: 16
onAction({action: 'OPEN_VOICE_CHANNEL'});
PrivateChannelCallUtilsModule.openGuildVoiceModal(channel, newestAnalyticsLocation);
(ActionSheetActionCreators).hideActionSheet();
}
function UserProfileActivityVoiceChannelOnPress_79596() { // fn#79596, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:2278, owner: UserProfileActivityVoiceChannel.onPress, offset: 0x01e59b7b, size: 144 bytes, params: 1, frame: 18
onAction({action: 'PRESS_VOICE_CHANNEL_AVATARS'});
const defaultImport = importDefault(dependencyMap[22]);
defaultImport.openLazy(require(dependencyMap[24])(dependencyMap[23], dependencyMap.paths),
'UserProfileActivityVoiceChannelUsers', {users: ConstantsModule.Permissions, channel: channel, onPressUser: onPressUser}, 'stack');
function onPressUser(a0) { // fn#79597, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:2437, owner: UserProfileActivityVoiceChannel.onPress.onPressUser, offset: 0x01e59c0b, size: 60 bytes, params: 2, frame: 14
let value = environment.__proto__.__proto__;
value = importDefault(8743) /* metro dependency 8743: showUserProfileActionSheet */;
const object = {};
copyDataProperties(object, context, undefined);
object['userId'] = a0;
return value(object);
}
}
function _fun79599(a0) { // fn#79599, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:2639, offset: 0x01e59c52, size: 107 bytes, params: 2, frame: 18
const Avatar = (NativeModule).Avatar;
const AvatarSizes = (NativeModule).AvatarSizes;
const SIZE_16 = AvatarSizes.SIZE_16;
return (
<Avatar
size={SIZE_16}
channel={channel}
guildId={guild.id}
user={a0}
key={a0.id}
/>
);
}
function UserProfileActivityVoiceChannel({guild, channel, onAction, style}) { // fn#79591, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:524, offset: 0x01e59510, size: 1312 bytes, params: 2, frame: 33
var r6;
const PressableOpacity = (require(5278) /* metro dependency 5278: Pressables */).PressableOpacity;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const styles = useStyles();
const env0_3 = (importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */)().newestAnalyticsLocation;
const userProfileAnalyticsContextModule = require(8514) /* metro dependency 8514: UserProfileAnalyticsContext */;
const useUserProfileAnalyticsContext = userProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const env0_4 = Reflect.apply(useUserProfileAnalyticsContext, userProfileAnalyticsContextModule, []).context;
const value2 = (require(4559) /* metro dependency 4559: useIsScreenReaderEnabledNative */).useIsScreenReaderEnabled();
const value3 = (importDefault(10249) /* metro dependency 10249: usePersonalizedVoiceChannelUsers */)(channel);
const value4 = (importDefault(4805) /* metro dependency 4805: useChannelName */)(channel);
const value5 = (require(566) /* metro dependency 566: flux */).useStateFromStores([PermissionStore], _fun79592);
const r12 = channel.isGuildStageVoice() ? (require(6707) /* metro dependency 6707: StageIcon */).StageIcon : (require(6711) /* metro dependency 6711: VoiceNormalIcon */).VoiceNormalIcon;
const items3 = [styles.container, style];
const items2 = [value2 ? <View accessible accessibilityLabel={intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.xm6W9D,
{guildName: guild.name})}>{((Component) => <Component size={(require(6819) /* metro dependency 6819: GuildIcon */).GuildIconSizes.XXSMALL} guild={guild} />)(importDefault(6819) /* metro dependency 6819: GuildIcon */)}</View> : <PressableOpacity accessibilityRole="button" accessibilityLabel={guild.name} onPress={function() {
onAction({action: 'PRESS_VOICE_CHANNEL_ICON'});
importDefault(dependencyMap[17]).open({key: 'GUILD_NAME_TOAST', content: guild.name, icon: _fun79594});
}}>{((Component) => <Component size={(require(6819) /* metro dependency 6819: GuildIcon */).GuildIconSizes.XXSMALL} guild={guild} />)(importDefault(6819) /* metro dependency 6819: GuildIcon */)}</PressableOpacity>];
const ChevronSmallRightIcon = (require(6818) /* metro dependency 6818: ChevronSmallRightIcon */).ChevronSmallRightIcon;
items2[1] = <ChevronSmallRightIcon size="xxs" color="text-default" />;
if (value5) {
r6 = <PressableOpacity style={styles.channelButton} accessibilityRole="button" accessibilityLabel={(importDefault(9122) /* metro dependency 9122: getChannelA11yLabel */)({channel: channel})} accessibilityHint={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['9C444m'])} onPress={onPress_79595}>{((Component) => <Component size="xxs" color="text-default" />)(r12)}{((Text) => <Text style={styles.channelName} variant="text-xs/normal" lineClamp={1}>{value4}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}</PressableOpacity>;
} else {
r6 = <View style={styles.channelButton}>{((Component) => <Component size="xxs" color="text-default" />)(r12)}{((Text) => <Text style={styles.channelName} variant="text-xs/normal" lineClamp={1}>{value4}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}</View>;
}
items2[2] = r6;
const formatToPlainString = intl.formatToPlainString;
const e95u3C = (require(1244) /* metro dependency 1244: indexNative */).t.e95u3C;
const object = {};
object.count = value3.length;
const AvatarPile = (require(10251) /* metro dependency 10251: AvatarPileNative */).AvatarPile;
const AvatarSizes = (require(1305) /* metro dependency 1305: native */).AvatarSizes;
const SIZE_16 = AvatarSizes.SIZE_16;
items2[3] = <PressableOpacity accessibilityRole="button" accessibilityLabel={Reflect.apply(formatToPlainString,
intl, [e95u3C,
object])} onPress={onPress_79596}><AvatarPile size={SIZE_16} totalCount={value3.length} names={value3.map(function(a0) {
return a0.username;
})}>{(value3.length <= 3 ? value3 : value3.slice(0, 3)).map(_fun79599)}</AvatarPile></PressableOpacity>;
return (
<View style={items3}>
{items2}
</View>
);
}
function _fun79592() { // fn#79592, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:801, offset: 0x01e59a30, size: 55 bytes, params: 1, frame: 14
return channel.isPrivate() || PermissionStore.can(Permissions.CONNECT, channel);
}
function UserProfileActivityVoiceChannelOnPress() { // fn#79593, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:1225, owner: UserProfileActivityVoiceChannel.onPress, offset: 0x01e59a67, size: 100 bytes, params: 1, frame: 14
onAction({action: 'PRESS_VOICE_CHANNEL_ICON'});
(importDefault(3857) /* metro dependency 3857: ToastActionCreators */).open({key: 'GUILD_NAME_TOAST',
content: guild.name, icon: icon_79594});
}
function UserProfileActivityVoiceChannelOnPress_79595() { // fn#79595, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:1720, owner: UserProfileActivityVoiceChannel.onPress, offset: 0x01e59b1a, size: 97 bytes, params: 1, frame: 16
onAction({action: 'OPEN_VOICE_CHANNEL'});
const privateChannelCallUtilsModule = require(7709) /* metro dependency 7709: PrivateChannelCallUtils */;
privateChannelCallUtilsModule.openGuildVoiceModal(channel, newestAnalyticsLocation);
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet();
}
function UserProfileActivityVoiceChannelOnPress_79596() { // fn#79596, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:2278, owner: UserProfileActivityVoiceChannel.onPress, offset: 0x01e59b7b, size: 144 bytes, params: 1, frame: 18
onAction({action: 'PRESS_VOICE_CHANNEL_AVATARS'});
const defaultImport = importDefault(dependencyMap[22]);
defaultImport.openLazy(require(dependencyMap[24])(dependencyMap[23], dependencyMap.paths),
'UserProfileActivityVoiceChannelUsers', {users: env0_5, channel: channel, onPressUser: onPressUser_79597},
'stack');
}
function _fun79599(a0) { // fn#79599, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:2639, offset: 0x01e59c52, size: 107 bytes, params: 2, frame: 18
const Avatar = (require(1305) /* metro dependency 1305: native */).Avatar;
const AvatarSizes = (require(1305) /* metro dependency 1305: native */).AvatarSizes;
const SIZE_16 = AvatarSizes.SIZE_16;
return (
<Avatar
size={SIZE_16}
channel={channel}
guildId={guild.id}
user={a0}
key={a0.id}
/>
);
}
function onPressIcon_79594() { // fn#79594, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:1327, owner: UserProfileActivityVoiceChannel.onPress.icon, offset: 0x01e59acb, size: 79 bytes, params: 1, frame: 16
const GuildIcon = importDefault(6819) /* metro dependency 6819: GuildIcon */;
const GuildIconSizes = (require(6819) /* metro dependency 6819: GuildIcon */).GuildIconSizes;
const XSMALL = GuildIconSizes.XSMALL;
return <GuildIcon size={XSMALL} guild={guild} />;
}
function onPressOnPressUser(a0) { // fn#79597, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10434:2437, owner: UserProfileActivityVoiceChannel.onPress.onPressUser, offset: 0x01e59c0b, size: 60 bytes, params: 2, frame: 14
let value = environment.__proto__.__proto__;
value = importDefault(8743) /* metro dependency 8743: showUserProfileActionSheet */;
const object2 = {};
copyDataProperties(object2, context, undefined);
object2['userId'] = a0;
return value(object2);
}
global.__d(_fun79590, 10248, [27, 3784, 482, 33, 4501, 477, 6771, 8514, 4559, 10249, 4805, 566, 6707, 6711, 1244,
6819, 5278, 3857, 6818, 4573, 9122, 7709, 4080, 10250, 1962, 8743, 10251, 1305,
2]) /* metro module 10248, dependencies: [27, 3784, 482, 33, 4501, 477, 6771, 8514, 4559, 10249, 4805, 566, 6707, 6711, 1244, 6819, 5278, 3857, 6818, 4573, 9122, 7709, 4080, 10250, 1962, 8743, 10251, 1305, 2] */;
@@ -1,74 +1,96 @@
/* Metro module 10250; source: modules/user_profile/native/UserProfileActivityVoiceChannelUsers.tsx; dependencies: [31, 4396, 33, 4618, 566, 6238, 4617, 1305, 8694, 1244, 2] */
import PresenceStore from '../../../stores/PresenceStore.tsx'; /* Metro dependency 4396 */
import NicknameUtils from '../../../utils/NicknameUtils.tsx'; /* Metro dependency 4617 */
import UserProfileStackedActionSheet from './UserProfileStackedActionSheet.tsx'; /* Metro dependency 8694 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as NativeModule from '../../../design/void/native.tsx'; /* Metro dependency 1305 */
import * as UseAvatarDecorationModule from '../../collectibles/avatar_decorations/useAvatarDecoration.tsx'; /* Metro dependency 4618 */
import * as TableRowNativeModule from '../../../design/components/TableRow/native/TableRow.native.tsx'; /* Metro dependency 6238 */
import * as UserProfileStackedActionSheetModule from './UserProfileStackedActionSheet.tsx'; /* Metro dependency 8694 */
function _fun79610(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#79610, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10436:6, offset: 0x01e59f7a, size: 165 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const presenceStore = importDefault(4396) /* metro dependency 4396: PresenceStore */;
const env0_4 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileActivityVoiceChannelUsers.tsx');
ReactModule;
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileActivityVoiceChannelUsers.tsx');
exports.default = UserProfileActivityVoiceChannelUsers;
}
function UserRow_79611({user, channel, onPress, start, end}) { // fn#79611, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10436:128, offset: 0x01e5a01f, size: 321 bytes, params: 2, frame: 29
const value2 = (require(4618) /* metro dependency 4618: useAvatarDecoration */).useAvatarDecoration(user,
channel.guild_id);
const {status, isMobileOnline,
isVROnline} = (require(566) /* metro dependency 566: flux */).useStateFromStoresObject([PresenceStore],
function() {
var object = {};
var userBinding = user;
object.status = PresenceStore.getStatus(userBinding.id);
object.isMobileOnline = PresenceStore.isMobileOnline(userBinding.id);
object.isVROnline = PresenceStore.isVROnline(userBinding.id);
return object;
});
const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow;
const tableRowProps = {onPress: onPress,
label: (importDefault(4617) /* metro dependency 4617: NicknameUtils */).getName(channel.guild_id, channel.id,
user)};
const Avatar = (require(1305) /* metro dependency 1305: native */).Avatar;
const AvatarSizes = (require(1305) /* metro dependency 1305: native */).AvatarSizes;
const REFRESH_MEDIUM_32 = AvatarSizes.REFRESH_MEDIUM_32;
tableRowProps.icon = <Avatar user={user} avatarDecoration={value2} size={REFRESH_MEDIUM_32} guildId={channel.guild_id} status={status} isMobileOnline={isMobileOnline} isVROnline={isVROnline} autoStatusCutout />;
tableRowProps.start = start;
tableRowProps.end = end;
return <TableRow {...tableRowProps} />;
}
function UserProfileActivityVoiceChannelUsers({users, channel, onBack, onPressUser}) { // fn#79613, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10436:804, offset: 0x01e5a1b8, size: 203 bytes, params: 2, frame: 23
const UserProfileStackedActionSheet = importDefault(8694) /* metro dependency 8694: UserProfileStackedActionSheet */;
const object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['3xHUJ+']);
object2.onBack = onBack;
object2.scrollable = true;
const UserProfileStackedActionSheetList = (require(8694) /* metro dependency 8694: UserProfileStackedActionSheet */).UserProfileStackedActionSheetList;
return (
<UserProfileStackedActionSheet {...object2}>
<UserProfileStackedActionSheetList
data={users}
keyExtractor={function(a0) {
return a0.id;
}}
renderItem={renderItem_79615}
function UserRow_79611({user, channel, onPress, start, end}) { // fn#79611, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10436:128, offset: 0x01e5a01f, size: 321 bytes, params: 2, frame: 29
const value2 = (UseAvatarDecorationModule).useAvatarDecoration(user,
channel.guild_id);
const {status, isMobileOnline,
isVROnline} = (require(566) /* metro dependency 566: flux */).useStateFromStoresObject([PresenceStore],
function() {
var object = {};
var presenceStoreBinding = PresenceStore;
var userBinding = user;
object.status = presenceStoreBinding.getStatus(userBinding.id);
object.isMobileOnline = PresenceStore.isMobileOnline(userBinding.id);
object.isVROnline = PresenceStore.isVROnline(userBinding.id);
return object;
});
const TableRow = (TableRowNativeModule).TableRow;
const tableRowProps = {onPress: onPress,
label: (NicknameUtils).getName(channel.guild_id, channel.id,
user)};
const Avatar = (NativeModule).Avatar;
const AvatarSizes = (NativeModule).AvatarSizes;
const REFRESH_MEDIUM_32 = AvatarSizes.REFRESH_MEDIUM_32;
tableRowProps.icon = (
<Avatar
user={user}
avatarDecoration={value2}
size={REFRESH_MEDIUM_32}
guildId={channel.guild_id}
status={status}
isMobileOnline={isMobileOnline}
isVROnline={isVROnline}
autoStatusCutout
/>
</UserProfileStackedActionSheet>
);
}
);
tableRowProps.start = start;
tableRowProps.end = end;
return <TableRow {...tableRowProps} />;
}
function UserProfileActivityVoiceChannelUsers({users, channel, onBack, onPressUser}) { // fn#79613, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10436:804, offset: 0x01e5a1b8, size: 203 bytes, params: 2, frame: 23
const object = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['3xHUJ+']);
object.onBack = onBack;
object.scrollable = true;
const UserProfileStackedActionSheetList = (UserProfileStackedActionSheetModule).UserProfileStackedActionSheetList;
return (
<UserProfileStackedActionSheet {...object}>
<UserProfileStackedActionSheetList
data={users}
keyExtractor={function(a0) {
return a0.id;
}}
renderItem={renderItem_79615}
/>
</UserProfileStackedActionSheet>
);
function UserProfileActivityVoiceChannelUsersRenderItem({item, start, end}) { // fn#79615, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10436:1079, owner: UserProfileActivityVoiceChannelUsers.renderItem, offset: 0x01e5a283, size: 87 bytes, params: 2, frame: 18
return (
<UserRow_79611
user={item}
channel={channel}
onPress={function() {
return onPressUser(item.id);
}}
start={start}
end={end}
key={item.id}
/>
);
}
}
function UserProfileActivityVoiceChannelUsersRenderItem({item, start, end}) { // fn#79615, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10436:1079, owner: UserProfileActivityVoiceChannelUsers.renderItem, offset: 0x01e5a283, size: 87 bytes, params: 2, frame: 18
return (
<UserRow_79611
user={item}
channel={channel}
onPress={function() {
return onPressUser(item.id);
}}
start={start}
end={end}
key={item.id}
/>
);
}
global.__d(_fun79610, 10250, [31, 4396, 33, 4618, 566, 6238, 4617, 1305, 8694, 1244,
2]) /* metro module 10250, dependencies: [31, 4396, 33, 4618, 566, 6238, 4617, 1305, 8694, 1244, 2] */;
@@ -1,28 +1,37 @@
/* Metro module 8807; source: modules/user_profile/native/UserProfileAlertUserReported.tsx; dependencies: [31, 33, 4500, 1244, 4500, 2] */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as AlertModalNativeModule from '../../../design/components/AlertModal/native/AlertModal.native.tsx'; /* Metro dependency 4500 */
function _fun68855(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68855, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8992:6, offset: 0x01c5f499, size: 131 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_2 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileAlertUserReported.tsx');
ReactModule;
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileAlertUserReported.tsx');
exports.default = UserProfileAlertUserReported;
function UserProfileAlertUserReported() { // fn#68856, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8992:222, offset: 0x01c5f51c, size: 261 bytes, params: 1, frame: 23
const AlertModal = (AlertModalNativeModule).AlertModal;
const object = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
const IwHU3R = (require(1244) /* metro dependency 1244: indexNative */).t.IwHU3R;
object.title = Reflect.apply(string, intl, [IwHU3R]);
object.content = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.qxyRaq);
const AlertActions = (AlertModalNativeModule).AlertActions;
const AlertActionButton = (AlertModalNativeModule).AlertActionButton;
string = intl.string;
const BddRzS = (require(1244) /* metro dependency 1244: indexNative */).t.BddRzS;
object.actions = (
<AlertActions>
<AlertActionButton text={Reflect.apply(string, intl, [BddRzS])} key="okay" />
</AlertActions>
);
return <AlertModal {...object} />;
}
}
function UserProfileAlertUserReported() { // fn#68856, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8992:222, offset: 0x01c5f51c, size: 261 bytes, params: 1, frame: 23
const AlertModal = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertModal;
const object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
const IwHU3R = (require(1244) /* metro dependency 1244: indexNative */).t.IwHU3R;
object2.title = Reflect.apply(string, intl, [IwHU3R]);
object2.content = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.qxyRaq);
const AlertActions = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertActions;
const AlertActionButton = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertActionButton;
string = intl.string;
const BddRzS = (require(1244) /* metro dependency 1244: indexNative */).t.BddRzS;
object2.actions = <AlertActions><AlertActionButton text={Reflect.apply(string, intl,
[BddRzS])} key="okay" /></AlertActions>;
return <AlertModal {...object2} />;
}
global.__d(_fun68855, 8807, [31, 33, 4500, 1244, 4500,
2]) /* metro module 8807, dependencies: [31, 33, 4500, 1244, 4500, 2] */;
@@ -1,64 +1,70 @@
/* Metro module 8796; source: modules/user_profile/native/UserProfileAlertUtils.tsx; dependencies: [31, 33, 4497, 8797, 8798, 8799, 8806, 8807, 8808, 2] */
import UserProfileConfirmCancelFriendRequest from './UserProfileConfirmCancelFriendRequest.tsx'; /* Metro dependency 8797 */
import UserProfileConfirmRemoveFriend from './UserProfileConfirmRemoveFriend.tsx'; /* Metro dependency 8798 */
import UserProfileConfirmRemoveGameFriend from './UserProfileConfirmRemoveGameFriend.tsx'; /* Metro dependency 8799 */
import UserProfileConfirmVideoUnstableConnection from './UserProfileConfirmVideoUnstableConnection.tsx'; /* Metro dependency 8806 */
import UserProfileAlertUserReported from './UserProfileAlertUserReported.tsx'; /* Metro dependency 8807 */
import UserProfileConfirmThreadRemove from './UserProfileConfirmThreadRemove.tsx'; /* Metro dependency 8808 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as UseAlertStoreNativeModule from '../../../design/components/AlertModal/native/useAlertStore.native.tsx'; /* Metro dependency 4497 */
function _fun68790(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68790, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8981:6, offset: 0x01c5d65f, size: 203 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_3 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileAlertUtils.tsx');
ReactModule;
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileAlertUtils.tsx');
exports.confirmCancelFriendRequest = confirmCancelFriendRequest;
exports.confirmRemoveFriend = confirmRemoveFriend;
exports.confirmRemoveGameFriend = confirmRemoveGameFriend;
exports.confirmVideoUnstableConnection = confirmVideoUnstableConnection;
exports.alertUserReported = alertUserReported;
exports.confirmThreadRemove = confirmThreadRemove;
function confirmCancelFriendRequest(a0) { // fn#68791, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8981:234, offset: 0x01c5d72a, size: 83 bytes, params: 2, frame: 16
const openAlert = UseAlertStoreNativeModule.openAlert;
let value = UserProfileConfirmCancelFriendRequest;
value = ((Component) => <Component {...a0} />)(value);
Reflect.apply(openAlert, UseAlertStoreNativeModule, ['cancel-friend-request', value]);
}
function confirmRemoveFriend(a0) { // fn#68792, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8981:322, offset: 0x01c5d77d, size: 83 bytes, params: 2, frame: 16
const openAlert = UseAlertStoreNativeModule.openAlert;
let value = UserProfileConfirmRemoveFriend;
value = ((Component) => <Component {...a0} />)(value);
Reflect.apply(openAlert, UseAlertStoreNativeModule, ['remove-friend', value]);
}
function confirmRemoveGameFriend(a0) { // fn#68793, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8981:406, offset: 0x01c5d7d0, size: 83 bytes, params: 2, frame: 16
const openAlert = UseAlertStoreNativeModule.openAlert;
let value = UserProfileConfirmRemoveGameFriend;
value = ((Component) => <Component {...a0} />)(value);
Reflect.apply(openAlert, UseAlertStoreNativeModule, ['remove-game-friend', value]);
}
function confirmVideoUnstableConnection(a0) { // fn#68794, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8981:502, offset: 0x01c5d823, size: 81 bytes, params: 2, frame: 16
const openAlert = UseAlertStoreNativeModule.openAlert;
let value = UserProfileConfirmVideoUnstableConnection;
value = ((Component) => <Component onConfirm={a0} />)(value);
Reflect.apply(openAlert, UseAlertStoreNativeModule, ['video-unstable-connection', value]);
}
function alertUserReported() { // fn#68795, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8981:599, offset: 0x01c5d874, size: 73 bytes, params: 1, frame: 16
const openAlert = UseAlertStoreNativeModule.openAlert;
let value = UserProfileAlertUserReported;
value = ((Component) => <Component />)(value);
Reflect.apply(openAlert, UseAlertStoreNativeModule, ['user-reported', value]);
}
function confirmThreadRemove(a0) { // fn#68796, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8981:676, offset: 0x01c5d8bd, size: 83 bytes, params: 2, frame: 16
const openAlert = UseAlertStoreNativeModule.openAlert;
let value = UserProfileConfirmThreadRemove;
value = ((Component) => <Component {...a0} />)(value);
Reflect.apply(openAlert, UseAlertStoreNativeModule, ['thread-remove', value]);
}
}
function confirmCancelFriendRequest(a0) { // fn#68791, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8981:234, offset: 0x01c5d72a, size: 83 bytes, params: 2, frame: 16
const useAlertStoreNativeModule = require(4497) /* metro dependency 4497: useAlertStoreNative */;
const openAlert = useAlertStoreNativeModule.openAlert;
let value = importDefault(8797) /* metro dependency 8797: UserProfileConfirmCancelFriendRequest */;
value = ((Component) => <Component {...a0} />)(value);
Reflect.apply(openAlert, useAlertStoreNativeModule, ['cancel-friend-request', value]);
}
function confirmRemoveFriend(a0) { // fn#68792, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8981:322, offset: 0x01c5d77d, size: 83 bytes, params: 2, frame: 16
const useAlertStoreNativeModule = require(4497) /* metro dependency 4497: useAlertStoreNative */;
const openAlert = useAlertStoreNativeModule.openAlert;
let value = importDefault(8798) /* metro dependency 8798: UserProfileConfirmRemoveFriend */;
value = ((Component) => <Component {...a0} />)(value);
Reflect.apply(openAlert, useAlertStoreNativeModule, ['remove-friend', value]);
}
function confirmRemoveGameFriend(a0) { // fn#68793, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8981:406, offset: 0x01c5d7d0, size: 83 bytes, params: 2, frame: 16
const useAlertStoreNativeModule = require(4497) /* metro dependency 4497: useAlertStoreNative */;
const openAlert = useAlertStoreNativeModule.openAlert;
let value = importDefault(8799) /* metro dependency 8799: UserProfileConfirmRemoveGameFriend */;
value = ((Component) => <Component {...a0} />)(value);
Reflect.apply(openAlert, useAlertStoreNativeModule, ['remove-game-friend', value]);
}
function confirmVideoUnstableConnection(a0) { // fn#68794, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8981:502, offset: 0x01c5d823, size: 81 bytes, params: 2, frame: 16
const useAlertStoreNativeModule = require(4497) /* metro dependency 4497: useAlertStoreNative */;
const openAlert = useAlertStoreNativeModule.openAlert;
let value = importDefault(8806) /* metro dependency 8806: UserProfileConfirmVideoUnstableConnection */;
value = ((Component) => <Component onConfirm={a0} />)(value);
Reflect.apply(openAlert, useAlertStoreNativeModule, ['video-unstable-connection', value]);
}
function alertUserReported() { // fn#68795, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8981:599, offset: 0x01c5d874, size: 73 bytes, params: 1, frame: 16
const useAlertStoreNativeModule = require(4497) /* metro dependency 4497: useAlertStoreNative */;
const openAlert = useAlertStoreNativeModule.openAlert;
let value = importDefault(8807) /* metro dependency 8807: UserProfileAlertUserReported */;
value = ((Component) => <Component />)(value);
Reflect.apply(openAlert, useAlertStoreNativeModule, ['user-reported', value]);
}
function confirmThreadRemove(a0) { // fn#68796, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8981:676, offset: 0x01c5d8bd, size: 83 bytes, params: 2, frame: 16
const useAlertStoreNativeModule = require(4497) /* metro dependency 4497: useAlertStoreNative */;
const openAlert = useAlertStoreNativeModule.openAlert;
let value = importDefault(8808) /* metro dependency 8808: UserProfileConfirmThreadRemove */;
value = ((Component) => <Component {...a0} />)(value);
Reflect.apply(openAlert, useAlertStoreNativeModule, ['thread-remove', value]);
}
global.__d(_fun68790, 8796, [31, 33, 4497, 8797, 8798, 8799, 8806, 8807, 8808,
2]) /* metro module 8796, dependencies: [31, 33, 4497, 8797, 8798, 8799, 8806, 8807, 8808, 2] */;
@@ -1,33 +1,37 @@
/* Metro module 8510; source: modules/user_profile/native/UserProfileAvatar.tsx; dependencies: [31, 27, 6816, 33, 8496, 8417, 2] */
import HeaderAvatar from '../../profile_customization/native/HeaderAvatar.tsx'; /* Metro dependency 8417 */
import UserProfileSharedStyles from './UserProfileSharedStyles.tsx'; /* Metro dependency 8496 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as ConstantsModule from './Constants.tsx'; /* Metro dependency 6816 */
function _fun67452(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67452, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8695:6, offset: 0x01c23462, size: 196 bytes, params: 8, frame: 18
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_2 = (require(27) /* metro dependency 27 */).View;
const env0_3 = (require(6816) /* metro dependency 6816: Constants */).AVATAR_SIZE_VARIANT;
const value = require(33) /* metro dependency 33 */;
const env0_4 = value.jsx;
const env0_5 = value.Fragment;
const env0_6 = value.jsxs;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileAvatar.tsx');
ReactModule;
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileAvatar.tsx');
exports.default = UserProfileAvatar;
function UserProfileAvatar(a0) { // fn#67453, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8695:282, offset: 0x01c23526, size: 230 bytes, params: 2, frame: 25
const backgroundColor = a0.backgroundColor;
const size = a0.size;
const r9 = size !== undefined ? size : AVATAR_SIZE_VARIANT;
const value = Object.create(null);
value.backgroundColor = 0;
value.size = 0;
const value2 = copyDataProperties({}, a0, value, backgroundColor);
const value4 = (UserProfileSharedStyles)();
return (
<>
<View style={[value4.avatarBackground, value4.avatarPosition, {backgroundColor: backgroundColor}]} />
{((Component) => <Component style={[value4.avatar,
value4.avatarPosition]} size={r9} {...value2} />)(HeaderAvatar)}
</>
);
}
}
function UserProfileAvatar(a0) { // fn#67453, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8695:282, offset: 0x01c23526, size: 230 bytes, params: 2, frame: 25
const backgroundColor = a0.backgroundColor;
const size = a0.size;
const r9 = size !== undefined ? size : AVATAR_SIZE_VARIANT;
const value = Object.create(null);
value.backgroundColor = 0;
value.size = 0;
const value2 = copyDataProperties({}, a0, value, backgroundColor);
const value4 = (importDefault(8496) /* metro dependency 8496: UserProfileSharedStyles */)();
return (
<>
<View style={[value4.avatarBackground, value4.avatarPosition, {backgroundColor: backgroundColor}]} />
{((Component) => <Component style={[value4.avatar,
value4.avatarPosition]} size={r9} {...value2} />)(importDefault(8417) /* metro dependency 8417: HeaderAvatar */)}
</>
);
}
global.__d(_fun67452, 8510, [31, 27, 6816, 33, 8496, 8417,
2]) /* metro module 8510, dependencies: [31, 27, 6816, 33, 8496, 8417, 2] */;
@@ -1,92 +1,108 @@
/* Metro module 13212; source: modules/user_profile/native/UserProfileAvatarDecorationEditButton.tsx; dependencies: [31, 27, 1945, 6816, 482, 33, 4501, 697, 566, 8418, 8402, 8461, 8396, 1244, 13209, 7598, 1305, 8411, 2] */
import GuildMemberStore from '../../../stores/GuildMemberStore.tsx'; /* Metro dependency 1945 */
import UseAvatarDecorationIfNotExpired from '../../collectibles/avatar_decorations/useAvatarDecorationIfNotExpired.tsx'; /* Metro dependency 8418 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
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 FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
import * as ConstantsModule2 from './Constants.tsx'; /* Metro dependency 6816 */
import * as AvatarDecorationUtilsModule from '../../collectibles/avatar_decorations/native/AvatarDecorationUtils.tsx'; /* Metro dependency 8396 */
import * as ProfileCustomizationUtilsModule from '../../profile_customization/ProfileCustomizationUtils.tsx'; /* Metro dependency 8402 */
import * as UserProfileEditFormControlsModule from './UserProfileEditFormControls.tsx'; /* Metro dependency 13209 */
function _fun100799(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100799, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13402:6, offset: 0x021f9484, size: 384 bytes, params: 8, frame: 22
var object3;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importAll(31) /* metro dependency 31 */;
let value = require(27) /* metro dependency 27 */;
let value = ReactNativeModule;
const env0_4 = value.ActivityIndicator;
const env0_5 = value.View;
const guildMemberStore = importDefault(1945) /* metro dependency 1945: GuildMemberStore */;
const COLLECTIBLES_PREVIEW_SIZE = (require(6816) /* metro dependency 6816: Constants */).COLLECTIBLES_PREVIEW_SIZE;
const env0_8 = (require(482) /* metro dependency 482: Constants */).NOOP;
const env0_9 = (require(33) /* metro dependency 33 */).jsx;
const COLLECTIBLES_PREVIEW_SIZE = (ConstantsModule2).COLLECTIBLES_PREVIEW_SIZE;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object3 = {};
const object4 = {'position': 'relative', 'height': null, 'width': null, 'justifyContent': 'center',
object = {};
const object2 = {'position': 'relative', 'height': null, 'width': null, 'justifyContent': 'center',
'alignItems': 'center'};
object4.height = COLLECTIBLES_PREVIEW_SIZE;
object4.width = COLLECTIBLES_PREVIEW_SIZE;
object2.height = COLLECTIBLES_PREVIEW_SIZE;
object2.width = COLLECTIBLES_PREVIEW_SIZE;
const BACKGROUND_MOD_MUTED = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_MUTED;
object4.backgroundColor = BACKGROUND_MOD_MUTED;
object4.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xs;
object4.overflow = 'hidden';
object3.previewContainer = object4;
object2.backgroundColor = BACKGROUND_MOD_MUTED;
object2.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xs;
object2.overflow = 'hidden';
object.previewContainer = object2;
const TEXT_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_SUBTLE;
object3.noneIcon = {tintColor: TEXT_SUBTLE};
const env0_10 = Reflect.apply(createStyles, value, [object3]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileAvatarDecorationEditButton.tsx');
object.noneIcon = {tintColor: TEXT_SUBTLE};
const env0_10 = Reflect.apply(createStyles, value, [object]);
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileAvatarDecorationEditButton.tsx');
exports.default = UserProfileAvatarDecorationEditButton;
}
function UserProfileAvatarDecorationEditButton({user, guildId, pendingAvatarDecoration, isTryItOut}) { // fn#100800, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13402:610, offset: 0x021f9604, size: 988 bytes, params: 2, frame: 27
var r0;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const styles = useStyles();
const value3 = guildId != null;
const value4 = (FluxModule).useStateFromStores([GuildMemberStore], _fun100801);
const defaultImport = UseAvatarDecorationIfNotExpired;
const getProfilePreviewValue = ProfileCustomizationUtilsModule.getProfilePreviewValue;
object = {pendingValue: pendingAvatarDecoration};
object.userValue = user.avatarDecoration;
object.guildValue = value4?.avatarDecoration;
object.guildId = guildId;
const value5 = defaultImport(Reflect.apply(getProfilePreviewValue, ProfileCustomizationUtilsModule, [object]));
const {product,
isFetching} = (require(8461) /* metro dependency 8461: useFetchCollectiblesProduct */).useFetchCollectiblesProduct(value5?.skuId);
const useUserAvatarDecoration = ProfileCustomizationUtilsModule.useUserAvatarDecoration;
const r1 = pendingAvatarDecoration === undefined ? Reflect.apply(useUserAvatarDecoration, ProfileCustomizationUtilsModule,
[{user: user, guildId: guildId}]) : pendingAvatarDecoration;
const value8 = ReactModule.useCallback(_fun100802, [user, guildId, r1, isTryItOut]);
const r13 = product?.name ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.PoWNfe);
const r10 = value3 ? r1 != null ? r13 : intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.ep5D4i,
{label: r13}) : r13;
const UserProfileEditFormButton = (UserProfileEditFormControlsModule).UserProfileEditFormButton;
if (isFetching) {
object = {};
object.label = intl.string(t['7v0T9P']);
object.buttonText = intl.string(t.MKDeyL);
object.onPress = NOOP;
object.leading = <ActivityIndicator animating size="large" />;
object.loading = true;
object.disabled = true;
object.hideArrow = true;
r0 = object;
} else {
object = {};
object.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['7v0T9P']);
object.buttonText = r10;
object.accessibilityValue = {text: r10};
object.onPress = value8;
object.leading = (
product != null
? (
<View style={styles.previewContainer}>
{((Component) => <Component avatarDecoration={value5} size={COLLECTIBLES_PREVIEW_SIZE - 2 * (importDefault(697) /* metro dependency 697: native */).space.PX_4} animate={false} />)(importDefault(7598) /* metro dependency 7598: CutoutableAvatarDecoration */)}
</View>
)
: ((Icon) => <Icon source={importDefault(8411) /* metro dependency 8411 */} style={styles.noneIcon} />)((require(1305) /* metro dependency 1305: native */).Icon)
);
r0 = object;
}
return <UserProfileEditFormButton {...r0} />;
function _fun100801() { // fn#100801, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13402:772, offset: 0x021f99e0, size: 46 bytes, params: 1, frame: 14
return result ? GuildMemberStore.getMember(guildId, user.id) : null;
}
function _fun100802() { // fn#100802, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13402:1129, offset: 0x021f9a0e, size: 77 bytes, params: 1, frame: 14
const value = environment.__proto__;
(AvatarDecorationUtilsModule).openAvatarDecorationActionSheet({user: user,
guildId: guildId, currentAvatarDecoration: env0_4, isTryItOut: isTryItOut});
}
function UserProfileAvatarDecorationEditButton({user, guildId, pendingAvatarDecoration, isTryItOut}) { // fn#100800, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13402:610, offset: 0x021f9604, size: 988 bytes, params: 2, frame: 27
var object2;
var r0;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const styles = useStyles();
const value3 = guildId != null;
const value4 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildMemberStore], _fun100801);
const defaultImport = importDefault(8418) /* metro dependency 8418: useAvatarDecorationIfNotExpired */;
const profileCustomizationUtilsModule = require(8402) /* metro dependency 8402: ProfileCustomizationUtils */;
const getProfilePreviewValue = profileCustomizationUtilsModule.getProfilePreviewValue;
object2 = {pendingValue: pendingAvatarDecoration};
object2.userValue = user.avatarDecoration;
object2.guildValue = value4?.avatarDecoration;
object2.guildId = guildId;
const value5 = defaultImport(Reflect.apply(getProfilePreviewValue, profileCustomizationUtilsModule, [object2]));
const {product,
isFetching} = (require(8461) /* metro dependency 8461: useFetchCollectiblesProduct */).useFetchCollectiblesProduct(value5?.skuId);
const moduleValue4 = profileCustomizationUtilsModule;
const useUserAvatarDecoration = moduleValue4.useUserAvatarDecoration;
const r1 = pendingAvatarDecoration === undefined ? Reflect.apply(useUserAvatarDecoration, moduleValue4,
[{user: user, guildId: guildId}]) : pendingAvatarDecoration;
const value8 = env0_3.useCallback(_fun100802, [user, guildId, r1, isTryItOut]);
const r13 = product?.name ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.PoWNfe);
const r10 = value3 ? r1 != null ? r13 : intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.ep5D4i,
{label: r13}) : r13;
const UserProfileEditFormButton = (require(13209) /* metro dependency 13209: UserProfileEditFormControls */).UserProfileEditFormButton;
if (isFetching) {
object2 = {};
object2.label = intl.string(t['7v0T9P']);
object2.buttonText = intl.string(t.MKDeyL);
object2.onPress = NOOP;
object2.leading = <ActivityIndicator animating size="large" />;
object2.loading = true;
object2.disabled = true;
object2.hideArrow = true;
r0 = object2;
} else {
object2 = {};
object2.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['7v0T9P']);
object2.buttonText = r10;
object2.accessibilityValue = {text: r10};
object2.onPress = value8;
object2.leading = product != null ? <View style={styles.previewContainer}>{((Component) => <Component avatarDecoration={value5} size={COLLECTIBLES_PREVIEW_SIZE - 2 * (importDefault(697) /* metro dependency 697: native */).space.PX_4} animate={false} />)(importDefault(7598) /* metro dependency 7598: CutoutableAvatarDecoration */)}</View> : ((Icon) => <Icon source={importDefault(8411) /* metro dependency 8411 */} style={styles.noneIcon} />)((require(1305) /* metro dependency 1305: native */).Icon);
r0 = object2;
}
return <UserProfileEditFormButton {...r0} />;
}
function _fun100801() { // fn#100801, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13402:772, offset: 0x021f99e0, size: 46 bytes, params: 1, frame: 14
return result ? GuildMemberStore.getMember(guildId, user.id) : null;
}
function _fun100802() { // fn#100802, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13402:1129, offset: 0x021f9a0e, size: 77 bytes, params: 1, frame: 14
const value = environment.__proto__;
(require(8396) /* metro dependency 8396: AvatarDecorationUtils */).openAvatarDecorationActionSheet({user: user,
guildId: guildId, currentAvatarDecoration: env0_4, isTryItOut: isTryItOut});
}
global.__d(_fun100799, 13212, [31, 27, 1945, 6816, 482, 33, 4501, 697, 566, 8418, 8402, 8461, 8396, 1244, 13209,
7598, 1305, 8411,
2]) /* metro module 13212, dependencies: [31, 27, 1945, 6816, 482, 33, 4501, 697, 566, 8418, 8402, 8461, 8396, 1244, 13209, 7598, 1305, 8411, 2] */;
@@ -1,99 +1,109 @@
/* Metro module 8507; source: modules/user_profile/native/UserProfileBanner.tsx; dependencies: [57, 31, 27, 661, 33, 4501, 674, 697, 3829, 8420, 1423, 8508, 5278, 1244, 8509, 2] */
import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */
import Module00674 from '../../../by-id/module-00674.js'; /* Metro dependency 674 */
import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */
import Banner from '../../profile_customization/native/Banner.tsx'; /* Metro dependency 8508 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as UserSettingsModule from '../../user_settings/UserSettings.tsx'; /* Metro dependency 3829 */
function _fun67444(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67444, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8692:6, offset: 0x01c22b7d, size: 386 bytes, params: 8, frame: 24
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
const env0_5 = (require(27) /* metro dependency 27 */).View;
const env0_6 = (require(661) /* metro dependency 661: Constants */).BANNER_HEIGHT;
let value = require(33) /* metro dependency 33 */;
let value = JsxRuntimeModule;
const env0_7 = value.jsx;
const env0_8 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
object2.bannerContainer = {position: 'relative'};
const object4 = {'position': 'absolute', 'left': 12, 'top': 12, 'right': 'auto', 'bottom': 'auto'};
const value2 = importDefault(674) /* metro dependency 674 */;
const WHITE = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.WHITE;
object4.backgroundColor = value2(WHITE).alpha(0.9).css();
object2.gifTag = object4;
const PRIMARY_800 = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.PRIMARY_800;
object2.gifTagText = {color: PRIMARY_800, fontSize: 14};
const env0_9 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileBanner.tsx');
object = {};
object.bannerContainer = {position: 'relative'};
const object3 = {'position': 'absolute', 'left': 12, 'top': 12, 'right': 'auto', 'bottom': 'auto'};
const WHITE = (Native).unsafe_rawColors.WHITE;
object3.backgroundColor = Module00674(WHITE).alpha(0.9).css();
object.gifTag = object3;
const PRIMARY_800 = (Native).unsafe_rawColors.PRIMARY_800;
object.gifTagText = {color: PRIMARY_800, fontSize: 14};
const env0_9 = Reflect.apply(createStyles, value, [object]);
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileBanner.tsx');
exports.default = UserProfileBanner;
}
function UserProfileBanner({user, displayProfile, style, bannerSafeArea, bannerHeight = BANNER_HEIGHT, pendingBanner, pendingAvatarSrc, pendingAccentColor, pendingThemeColors, disableInteraction}) { // fn#67445, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8692:551, offset: 0x01c22cff, size: 758 bytes, params: 2, frame: 29
var r4;
var PressableOpacity;
var object2;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var items2;
if (bannerSafeArea !== undefined) {
}
disableInteraction = !(disableInteraction === undefined) && disableInteraction;
const styles = useStyles();
const GifAutoPlay = (require(3829) /* metro dependency 3829: UserSettings */).GifAutoPlay;
const value6 = GifAutoPlay.useSetting();
const [property, env0_7] = bannerHeight(pendingAccentColor.useState(false), 2);
let r9 = value6 || property;
const env0_8 = (require(8420) /* metro dependency 8420: ProfileCustomizationUtils */).useUserProfileBannerBackgroundColor({user: user,
guildId: displayProfile?.guildId, pendingAvatarSrc: pendingAvatarSrc, displayProfile: displayProfile});
const r2 = pendingBanner !== undefined ? displayProfile?.getPreviewBanner(pendingBanner, r9,
600) : displayProfile?.getBannerURL({canAnimate: r9, size: 600});
const env0_9 = r2 != null ? (require(1423) /* metro dependency 1423: AvatarUtils */).makeSource(r2) : null;
const isAnimatedImageURL2 = (require(1423) /* metro dependency 1423: AvatarUtils */).isAnimatedImageURL(r2);
const closure = renderBanner;
if (isAnimatedImageURL2) {
if (value6) {
r4 = closure();
} else if (disableInteraction) {
r4 = closure();
} else {
PressableOpacity = (require(5278) /* metro dependency 5278: Pressables */).PressableOpacity;
var pressableOpacityProps = {onPress: onPress_67447, accessibilityRole: 'button',
accessibilityLabel: intl.string((require(1244) /* metro dependency 1244: indexNative */).t['3fzj/l'])};
items2 = [closure()];
r9 = !r9 && ((Caption) => <Caption label={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.I5gL2H)} style={styles.gifTag} textStyle={styles.gifTagText} />)((require(8509) /* metro dependency 8509: Caption */).Caption);
items2[1] = r9;
r4 = <PressableOpacity {...pressableOpacityProps}>{items2}</PressableOpacity>;
function UserProfileBanner({user, displayProfile, style, bannerSafeArea, bannerHeight = BANNER_HEIGHT, pendingBanner, pendingAvatarSrc, pendingAccentColor, pendingThemeColors, disableInteraction}) { // fn#67445, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8692:551, offset: 0x01c22cff, size: 758 bytes, params: 2, frame: 29
var r4;
var PressableOpacity;
var object;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var items2;
if (bannerSafeArea !== undefined) {
}
} else {
r4 = closure();
disableInteraction = !(disableInteraction === undefined) && disableInteraction;
const styles = useStyles();
const GifAutoPlay = (UserSettingsModule).GifAutoPlay;
const value6 = GifAutoPlay.useSetting();
const [property, env0_7] = bannerHeight(pendingAccentColor.useState(false), 2);
let r9 = value6 || property;
const env0_8 = (require(8420) /* metro dependency 8420: ProfileCustomizationUtils */).useUserProfileBannerBackgroundColor({user: user,
guildId: displayProfile?.guildId, pendingAvatarSrc: pendingAvatarSrc, displayProfile: displayProfile});
const r2 = pendingBanner !== undefined ? displayProfile?.getPreviewBanner(pendingBanner, r9,
600) : displayProfile?.getBannerURL({canAnimate: r9, size: 600});
const env0_9 = r2 != null ? (require(1423) /* metro dependency 1423: AvatarUtils */).makeSource(r2) : null;
const isAnimatedImageURL2 = (require(1423) /* metro dependency 1423: AvatarUtils */).isAnimatedImageURL(r2);
const renderBanner2 = renderBanner;
if (isAnimatedImageURL2) {
if (value6) {
r4 = renderBanner2();
} else if (disableInteraction) {
r4 = renderBanner2();
} else {
PressableOpacity = (require(5278) /* metro dependency 5278: Pressables */).PressableOpacity;
var pressableOpacityProps = {onPress: onPress_67447, accessibilityRole: 'button',
accessibilityLabel: intl.string((require(1244) /* metro dependency 1244: indexNative */).t['3fzj/l'])};
items2 = [renderBanner2()];
r9 = !r9 && ((Caption) => <Caption label={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.I5gL2H)} style={styles.gifTag} textStyle={styles.gifTagText} />)((require(8509) /* metro dependency 8509: Caption */).Caption);
items2[1] = r9;
r4 = (
<PressableOpacity {...pressableOpacityProps}>
{items2}
</PressableOpacity>
);
}
} else {
r4 = renderBanner2();
}
return (
<View style={styles.bannerContainer}>
{r4}
</View>
);
function renderBanner() { // fn#67446, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8692:1162, owner: UserProfileBanner.renderBanner, offset: 0x01c22ff5, size: 176 bytes, params: 1, frame: 19
let value = environment.__proto__;
value = undefined;
const styleBinding = style;
let r0 = pendingThemeColors == null ? value : pendingThemeColors[0];
r0 = r0 ?? pendingAccentColor;
r0 = r0 ?? (displayProfile == null ? value : displayProfile.primaryColor);
r0 = r0 ?? env0_8;
return (
<Banner
style={styleBinding}
bannerSource={env0_9}
backgroundColor={r0}
bannerSafeArea={bannerSafeArea}
bannerHeight={Module00057}
key={displayProfile == null ? value : displayProfile.banner}
/>
);
}
function UserProfileBannerOnPress() { // fn#67447, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8692:1490, owner: UserProfileBanner.onPress, offset: 0x01c230a5, size: 23 bytes, params: 1, frame: 11
env0_7(!ConstantsModule.BANNER_HEIGHT);
}
}
return (
<View style={styles.bannerContainer}>
{r4}
</View>
);
}
function renderBanner() { // fn#67446, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8692:1162, owner: UserProfileBanner.renderBanner, offset: 0x01c22ff5, size: 176 bytes, params: 1, frame: 19
let value = environment.__proto__;
value = undefined;
const Banner = importDefault(8508) /* metro dependency 8508: Banner */;
const styleBinding = style;
let r0 = pendingThemeColors == null ? value : pendingThemeColors[0];
r0 = r0 ?? pendingAccentColor;
r0 = r0 ?? (displayProfile == null ? value : displayProfile.primaryColor);
r0 = r0 ?? env0_8;
return (
<Banner
style={styleBinding}
bannerSource={env0_9}
backgroundColor={r0}
bannerSafeArea={bannerSafeArea}
bannerHeight={env0_3}
key={displayProfile == null ? value : displayProfile.banner}
/>
);
}
function UserProfileBannerOnPress() { // fn#67447, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8692:1490, owner: UserProfileBanner.onPress, offset: 0x01c230a5, size: 23 bytes, params: 1, frame: 11
env0_7(!env0_6);
}
global.__d(_fun67444, 8507, [57, 31, 27, 661, 33, 4501, 674, 697, 3829, 8420, 1423, 8508, 5278, 1244, 8509,
2]) /* metro module 8507, dependencies: [57, 31, 27, 661, 33, 4501, 674, 697, 3829, 8420, 1423, 8508, 5278, 1244, 8509, 2] */;
@@ -1,11 +1,18 @@
/* Metro module 6815; source: modules/user_profile/native/UserProfileCard.tsx; dependencies: [31, 27, 6816, 33, 4501, 697, 5278, 4573, 6818, 1357, 2] */
import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */
import MobileVisualRefreshExperiment from '../../themes/experiments/MobileVisualRefreshExperiment.tsx'; /* Metro dependency 1357 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
import * as PressablesModule from '../../../design/void/Pressables/native/Pressables.tsx'; /* Metro dependency 5278 */
import * as ConstantsModule from './Constants.tsx'; /* Metro dependency 6816 */
function _fun53584(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#53584, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6993:6, offset: 0x013502e8, size: 440 bytes, params: 8, frame: 25
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importAll(31) /* metro dependency 31 */;
const env0_4 = (require(27) /* metro dependency 27 */).View;
let value = require(6816) /* metro dependency 6816: Constants */;
let value = ConstantsModule;
const CARD_PADDING = value.CARD_PADDING;
const CARD_ROWS_COLUMN_GAP = value.CARD_ROWS_COLUMN_GAP;
const CARD_ROWS_ICON_SIZE = value.CARD_ROWS_ICON_SIZE;
@@ -16,7 +23,7 @@ function _fun53584(global, require, importDefault, importAll, module, exports, d
const env0_8 = value.Fragment;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
const BORDER_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_SUBTLE;
const BORDER_SUBTLE = (Native).colors.BORDER_SUBTLE;
const env0_9 = Reflect.apply(createStyles, value, [{title: {'marginBottom': 12, 'flexDirection': 'row',
'alignItems': 'center', 'gap': 4}, text: {flexShrink: 1}, rowDivider: {borderBottomWidth: 1,
borderBottomColor: BORDER_SUBTLE, marginLeft: CARD_ROWS_ICON_SIZE + CARD_ROWS_COLUMN_GAP,
@@ -24,104 +31,134 @@ function _fun53584(global, require, importDefault, importAll, module, exports, d
rowLabel: {'flexDirection': 'row', 'alignItems': 'center', columnGap: CARD_ROWS_COLUMN_GAP},
rowLabelText: {flex: 1, lineHeight: CARD_ROWS_ICON_SIZE},
rowSublabel: {marginHorizontal: CARD_ROWS_ICON_SIZE + CARD_ROWS_COLUMN_GAP}}]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileCard.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileCard.tsx');
exports.default = UserProfileCard;
exports.UserProfileFormRow = UserProfileFormRow;
exports.UserProfileCardRows = UserProfileCardRows;
}
function Divider() { // fn#53585, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6993:676, offset: 0x013504a0, size: 41 bytes, params: 1, frame: 14
const styles = useStyles();
return <View style={styles.rowDivider} />;
}
function UserProfileCard(a0) { // fn#53586, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6993:830, offset: 0x013504c9, size: 328 bytes, params: 2, frame: 27
var r14;
var r6;
var Text;
const title = a0.title;
const titleIcon = a0.titleIcon;
const titleStyle = a0.titleStyle;
const children = a0.children;
const style = a0.style;
const object2 = {'title': 0, 'titleIcon': 0, 'titleStyle': 0, 'children': 0, 'style': 0};
silentSetPrototypeOf(object2, null, undefined);
let value = copyDataProperties({}, a0, object2, undefined);
const styles = useStyles();
const value3 = (importDefault(1357) /* metro dependency 1357: MobileVisualRefreshExperiment */)('UserProfileCard');
const viewBindingProps = {style: style, ...value};
value = title != null;
if (value) {
var viewBinding2Props = {style: [styles.title, titleStyle]};
Text = (require(4573) /* metro dependency 4573: Text */).Text;
var textProps = {style: styles.text, accessibilityRole: 'header'};
value = 'text-sm/semibold';
r14 = value3 ? 'text-sm/medium' : value;
textProps.variant = r14;
value = 'text-default';
r14 = value3 ? 'text-strong' : value;
textProps.color = r14;
textProps.lineClamp = 1;
value = <Text {...textProps}>{title}</Text>;
value = <View {...viewBinding2Props}>{value}{titleIcon}</View>;
r6 = value;
} else {
r6 = value;
function Divider() { // fn#53585, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6993:676, offset: 0x013504a0, size: 41 bytes, params: 1, frame: 14
const styles = useStyles();
return <View style={styles.rowDivider} />;
}
return (
<View {...viewBindingProps}>
{r6}
{children}
</View>
);
}
function UserProfileFormRow({label, sublabel, icon, hint, disabled, isDestructive, onPress, labelColor, arrow}) { // fn#53587, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6993:1227, offset: 0x01350611, size: 437 bytes, params: 2, frame: 30
arrow = !(arrow === undefined) && arrow;
const styles = useStyles();
const r16 = isDestructive ? 'text-feedback-critical' : undefined;
let r18 = isDestructive ? 'text-feedback-critical' : 'mobile-text-heading-primary';
const PressableOpacity = (require(5278) /* metro dependency 5278: Pressables */).PressableOpacity;
const items2 = [((Component) => <Component size={CARD_ROWS_ICON_SIZE_VARIANT} color={r16} />)(icon)];
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
r18 = labelColor ?? r18;
items2[1] = <Text variant="text-md/semibold" color={r18} style={styles.rowLabelText}>{label}</Text>;
items2[2] = hint != null && ((Component) => <Component size={CARD_ROWS_ICON_SIZE_VARIANT} color={r16} />)(hint);
items2[3] = arrow && ((ChevronSmallRightIcon) => <ChevronSmallRightIcon size="sm" />)((require(6818) /* metro dependency 6818: ChevronSmallRightIcon */).ChevronSmallRightIcon);
return (
<PressableOpacity
style={styles.row}
accessibilityRole="button"
accessibilityLabel={label}
disabled={disabled}
onPress={onPress}
>
<View style={styles.rowLabel}>
{items2}
function UserProfileCard(a0) { // fn#53586, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6993:830, offset: 0x013504c9, size: 328 bytes, params: 2, frame: 27
var r14;
var r6;
var Text;
const title = a0.title;
const titleIcon = a0.titleIcon;
const titleStyle = a0.titleStyle;
const children = a0.children;
const style = a0.style;
const object = {'title': 0, 'titleIcon': 0, 'titleStyle': 0, 'children': 0, 'style': 0};
silentSetPrototypeOf(object, null, undefined);
let value = copyDataProperties({}, a0, object, undefined);
const styles = useStyles();
const value3 = (MobileVisualRefreshExperiment)('UserProfileCard');
const viewBindingProps = {style: style, ...value};
value = title != null;
if (value) {
var viewBinding2Props = {style: [styles.title, titleStyle]};
Text = (require(4573) /* metro dependency 4573: Text */).Text;
var textProps = {style: styles.text, accessibilityRole: 'header'};
value = 'text-sm/semibold';
r14 = value3 ? 'text-sm/medium' : value;
textProps.variant = r14;
value = 'text-default';
r14 = value3 ? 'text-strong' : value;
textProps.color = r14;
textProps.lineClamp = 1;
value = (
<Text {...textProps}>
{title}
</Text>
);
value = (
<View {...viewBinding2Props}>
{value}
{titleIcon}
</View>
);
r6 = value;
} else {
r6 = value;
}
return (
<View {...viewBindingProps}>
{r6}
{children}
</View>
{sublabel != null && <View style={styles.rowSublabel}>{sublabel}</View>}
</PressableOpacity>
);
}
);
}
function UserProfileCardRows({children}) { // fn#53588, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6993:1887, offset: 0x013507c6, size: 96 bytes, params: 2, frame: 17
const env0_0 = (importDefault(1357) /* metro dependency 1357: MobileVisualRefreshExperiment */)('UserProfileCardRows');
const jsxRuntimeEnv0_8Binding = jsxRuntimeEnv0_8;
const Children = env0_3.Children;
return (
<>
{Children.map(children, _fun53589)}
</>
);
}
function UserProfileFormRow({label, sublabel, icon, hint, disabled, isDestructive, onPress, labelColor, arrow}) { // fn#53587, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6993:1227, offset: 0x01350611, size: 437 bytes, params: 2, frame: 30
arrow = !(arrow === undefined) && arrow;
const styles = useStyles();
const r16 = isDestructive ? 'text-feedback-critical' : undefined;
let r18 = isDestructive ? 'text-feedback-critical' : 'mobile-text-heading-primary';
const PressableOpacity = (PressablesModule).PressableOpacity;
const items2 = [
((Component) => <Component size={CARD_ROWS_ICON_SIZE_VARIANT} color={r16} />)(icon),
];
const Text = (TextModule).Text;
r18 = labelColor ?? r18;
items2[1] = (
<Text
variant="text-md/semibold"
color={r18}
style={styles.rowLabelText}
>
{label}
</Text>
);
items2[2] = hint != null && ((Component) => <Component size={CARD_ROWS_ICON_SIZE_VARIANT} color={r16} />)(hint);
items2[3] = arrow && ((ChevronSmallRightIcon) => <ChevronSmallRightIcon size="sm" />)((require(6818) /* metro dependency 6818: ChevronSmallRightIcon */).ChevronSmallRightIcon);
return (
<PressableOpacity
style={styles.row}
accessibilityRole="button"
accessibilityLabel={label}
disabled={disabled}
onPress={onPress}
>
<View style={styles.rowLabel}>
{items2}
</View>
{sublabel != null && <View style={styles.rowSublabel}>{sublabel}</View>}
</PressableOpacity>
);
}
function UserProfileCardRows({children}) { // fn#53588, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6993:1887, offset: 0x013507c6, size: 96 bytes, params: 2, frame: 17
const env0_0 = (MobileVisualRefreshExperiment)('UserProfileCardRows');
const jsxRuntimeEnv0_8Binding = jsxRuntimeEnv0_8;
const Children = ReactModule.Children;
return (
<>
{Children.map(children, _fun53589)}
</>
);
function _fun53589(a0, a1) { // fn#53589, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6993:2006, offset: 0x01350826, size: 90 bytes, params: 3, frame: 19
const value = environment.__proto__;
const Fragment = env1_3.Fragment;
return (
<Fragment key={a1}>
{
[
env0_0 || a1 === 0
? null
: (
<Divider />
),
a0,
]
}
</Fragment>
);
}
}
function _fun53589(a0, a1) { // fn#53589, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6993:2006, offset: 0x01350826, size: 90 bytes, params: 3, frame: 19
const value = environment.__proto__;
const Fragment = env1_3.Fragment;
return (
<Fragment key={a1}>
{[env0_0 || a1 === 0 ? null : <Divider />, a0]}
</Fragment>
);
}
global.__d(_fun53584, 6815, [31, 27, 6816, 33, 4501, 697, 5278, 4573, 6818, 1357,
2]) /* metro module 6815, dependencies: [31, 27, 6816, 33, 4501, 697, 5278, 4573, 6818, 1357, 2] */;
@@ -1,26 +1,44 @@
/* Metro module 8797; source: modules/user_profile/native/UserProfileConfirmCancelFriendRequest.tsx; dependencies: [31, 33, 4500, 1244, 4500, 2] */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as AlertModalNativeModule from '../../../design/components/AlertModal/native/AlertModal.native.tsx'; /* Metro dependency 4500 */
function _fun68797(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68797, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8982:6, offset: 0x01c5d910, size: 140 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const value = require(33) /* metro dependency 33 */;
const env0_2 = value.jsx;
const env0_3 = value.jsxs;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileConfirmCancelFriendRequest.tsx');
ReactModule;
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileConfirmCancelFriendRequest.tsx');
exports.default = UserProfileConfirmCancelFriendRequest;
function UserProfileConfirmCancelFriendRequest({userDisplayName, onConfirm}) { // fn#68798, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8982:244, offset: 0x01c5d99c, size: 397 bytes, params: 2, frame: 27
const AlertModal = (AlertModalNativeModule).AlertModal;
const object = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['bTfA//']);
object.content = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t['72FwjH'],
{name: userDisplayName});
const AlertActions = (AlertModalNativeModule).AlertActions;
const AlertActionButton = (AlertModalNativeModule).AlertActionButton;
object.actions = (
<AlertActions>
<AlertActionButton
variant="destructive"
text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['bTfA//'])}
onPress={onConfirm}
key="cancel-friend-request"
/>
<AlertActionButton
variant="secondary"
text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['eN6+rI'])}
key="nevermind"
/>
</AlertActions>
);
return <AlertModal {...object} />;
}
}
function UserProfileConfirmCancelFriendRequest({userDisplayName, onConfirm}) { // fn#68798, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8982:244, offset: 0x01c5d99c, size: 397 bytes, params: 2, frame: 27
const AlertModal = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertModal;
const object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['bTfA//']);
object2.content = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t['72FwjH'],
{name: userDisplayName});
const AlertActions = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertActions;
const AlertActionButton = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertActionButton;
object2.actions = <AlertActions><AlertActionButton variant="destructive" text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['bTfA//'])} onPress={onConfirm} key="cancel-friend-request" /><AlertActionButton variant="secondary" text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['eN6+rI'])} key="nevermind" /></AlertActions>;
return <AlertModal {...object2} />;
}
global.__d(_fun68797, 8797, [31, 33, 4500, 1244, 4500,
2]) /* metro module 8797, dependencies: [31, 33, 4500, 1244, 4500, 2] */;
@@ -1,27 +1,45 @@
/* Metro module 8798; source: modules/user_profile/native/UserProfileConfirmRemoveFriend.tsx; dependencies: [31, 33, 4500, 1244, 4500, 2] */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as AlertModalNativeModule from '../../../design/components/AlertModal/native/AlertModal.native.tsx'; /* Metro dependency 4500 */
function _fun68799(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68799, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8983:6, offset: 0x01c5db29, size: 140 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const value = require(33) /* metro dependency 33 */;
const env0_2 = value.jsx;
const env0_3 = value.jsxs;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileConfirmRemoveFriend.tsx');
ReactModule;
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileConfirmRemoveFriend.tsx');
exports.default = UserProfileConfirmRemoveFriend;
function UserProfileConfirmRemoveFriend({userDisplayName, onConfirm}) { // fn#68800, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8983:237, offset: 0x01c5dbb5, size: 406 bytes, params: 2, frame: 27
const AlertModal = (AlertModalNativeModule).AlertModal;
const object = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object.title = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.fPLvZd,
{name: userDisplayName});
object.content = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.l5FFq6,
{name: userDisplayName});
const AlertActions = (AlertModalNativeModule).AlertActions;
const AlertActionButton = (AlertModalNativeModule).AlertActionButton;
object.actions = (
<AlertActions>
<AlertActionButton
variant="destructive"
text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.cvSt1J)}
onPress={onConfirm}
key="confirm-remove"
/>
<AlertActionButton
variant="secondary"
text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['eN6+rI'])}
key="nevermind"
/>
</AlertActions>
);
return <AlertModal {...object} />;
}
}
function UserProfileConfirmRemoveFriend({userDisplayName, onConfirm}) { // fn#68800, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8983:237, offset: 0x01c5dbb5, size: 406 bytes, params: 2, frame: 27
const AlertModal = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertModal;
const object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.title = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.fPLvZd,
{name: userDisplayName});
object2.content = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.l5FFq6,
{name: userDisplayName});
const AlertActions = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertActions;
const AlertActionButton = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertActionButton;
object2.actions = <AlertActions><AlertActionButton variant="destructive" text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.cvSt1J)} onPress={onConfirm} key="confirm-remove" /><AlertActionButton variant="secondary" text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['eN6+rI'])} key="nevermind" /></AlertActions>;
return <AlertModal {...object2} />;
}
global.__d(_fun68799, 8798, [31, 33, 4500, 1244, 4500,
2]) /* metro module 8798, dependencies: [31, 33, 4500, 1244, 4500, 2] */;
@@ -1,39 +1,56 @@
/* Metro module 8799; source: modules/user_profile/native/UserProfileConfirmRemoveGameFriend.tsx; dependencies: [31, 33, 8515, 8800, 4500, 1244, 4500, 2] */
import PeopleUtils from '../../people/PeopleUtils.tsx'; /* Metro dependency 8800 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as AlertModalNativeModule from '../../../design/components/AlertModal/native/AlertModal.native.tsx'; /* Metro dependency 4500 */
import * as UserProfileAnalyticsUtilsModule from '../UserProfileAnalyticsUtils.tsx'; /* Metro dependency 8515 */
function _fun68801(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68801, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8984:6, offset: 0x01c5dd4b, size: 151 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importAll(31) /* metro dependency 31 */;
const value = require(33) /* metro dependency 33 */;
const env0_4 = value.jsx;
const env0_5 = value.jsxs;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileConfirmRemoveGameFriend.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileConfirmRemoveGameFriend.tsx');
exports.default = UserProfileConfirmRemoveGameFriend;
function UserProfileConfirmRemoveGameFriend({userDisplayName, userId, gameName, applicationId}) { // fn#68802, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8984:243, offset: 0x01c5dde2, size: 467 bytes, params: 2, frame: 27
const value2 = ReactModule.useCallback(_fun68803, [applicationId, userId]);
const AlertModal = (AlertModalNativeModule).AlertModal;
object = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object.title = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.fBKKfq,
{name: userDisplayName});
object.content = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.dsU5bl,
{name: userDisplayName, gameName: gameName});
const AlertActions = (AlertModalNativeModule).AlertActions;
const AlertActionButton = (AlertModalNativeModule).AlertActionButton;
const string = intl.string;
const RLcE6x = (require(1244) /* metro dependency 1244: indexNative */).t.RLcE6x;
object.actions = (
<AlertActions>
<AlertActionButton
variant="destructive"
text={Reflect.apply(string, intl, [RLcE6x])}
onPress={value2}
key="confirm-remove"
/>
<AlertActionButton
variant="secondary"
text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['eN6+rI'])}
key="nevermind"
/>
</AlertActions>
);
return <AlertModal {...object} />;
function _fun68803() { // fn#68803, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8984:365, offset: 0x01c5dfb5, size: 108 bytes, params: 1, frame: 15
const value = environment.__proto__;
(UserProfileAnalyticsUtilsModule).trackUserProfileAction({action: 'REMOVE_GAME_FRIEND'});
(PeopleUtils).removeFriend({userId: userId,
applicationId: applicationId, location: 'UserProfileConfirmRemoveGameFriend'});
}
}
}
function UserProfileConfirmRemoveGameFriend({userDisplayName, userId, gameName, applicationId}) { // fn#68802, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8984:243, offset: 0x01c5dde2, size: 467 bytes, params: 2, frame: 27
var object2;
const value2 = env0_3.useCallback(_fun68803, [applicationId, userId]);
const AlertModal = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertModal;
object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.title = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.fBKKfq,
{name: userDisplayName});
object2.content = intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.dsU5bl,
{name: userDisplayName, gameName: gameName});
const AlertActions = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertActions;
const AlertActionButton = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertActionButton;
const string = intl.string;
const RLcE6x = (require(1244) /* metro dependency 1244: indexNative */).t.RLcE6x;
object2.actions = <AlertActions><AlertActionButton variant="destructive" text={Reflect.apply(string, intl,
[RLcE6x])} onPress={value2} key="confirm-remove" /><AlertActionButton variant="secondary" text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['eN6+rI'])} key="nevermind" /></AlertActions>;
return <AlertModal {...object2} />;
}
function _fun68803() { // fn#68803, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8984:365, offset: 0x01c5dfb5, size: 108 bytes, params: 1, frame: 15
const value = environment.__proto__;
(require(8515) /* metro dependency 8515: UserProfileAnalyticsUtils */).trackUserProfileAction({action: 'REMOVE_GAME_FRIEND'});
(importDefault(8800) /* metro dependency 8800: PeopleUtils */).removeFriend({userId: userId,
applicationId: applicationId, location: 'UserProfileConfirmRemoveGameFriend'});
}
global.__d(_fun68801, 8799, [31, 33, 8515, 8800, 4500, 1244, 4500,
2]) /* metro module 8799, dependencies: [31, 33, 8515, 8800, 4500, 1244, 4500, 2] */;
@@ -1,31 +1,49 @@
/* Metro module 8808; source: modules/user_profile/native/UserProfileConfirmThreadRemove.tsx; dependencies: [31, 33, 3995, 4500, 1244, 4500, 2] */
import UserUtils from '../../../utils/UserUtils.tsx'; /* Metro dependency 3995 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as AlertModalNativeModule from '../../../design/components/AlertModal/native/AlertModal.native.tsx'; /* Metro dependency 4500 */
function _fun68857(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68857, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8993:6, offset: 0x01c5f621, size: 147 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const value = require(33) /* metro dependency 33 */;
const env0_3 = value.jsx;
const env0_4 = value.jsxs;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileConfirmThreadRemove.tsx');
ReactModule;
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileConfirmThreadRemove.tsx');
exports.default = UserProfileConfirmThreadRemove;
function UserProfileConfirmThreadRemove({isForumPost, user, onConfirm}) { // fn#68858, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8993:237, offset: 0x01c5f6b4, size: 495 bytes, params: 2, frame: 28
const value2 = (UserUtils).useName(user);
const AlertModal = (AlertModalNativeModule).AlertModal;
const object = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
object.title = Reflect.apply(string, intl, [isForumPost ? t['8sKSjm'] : t.ZPm8jN]);
object.content = intl.formatToPlainString(isForumPost ? t['6UGfnx'] : t['hL+Znb'], {user: value2});
const AlertActions = (AlertModalNativeModule).AlertActions;
const AlertActionButton = (AlertModalNativeModule).AlertActionButton;
string = intl.string;
const N86XcP = (require(1244) /* metro dependency 1244: indexNative */).t.N86XcP;
object.actions = (
<AlertActions>
<AlertActionButton
variant="destructive"
text={Reflect.apply(string, intl, [N86XcP])}
onPress={onConfirm}
key="remove-user-from-thread"
/>
<AlertActionButton
variant="secondary"
text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.yNbnce)}
key="cancel-remove-user-from-thread"
/>
</AlertActions>
);
return <AlertModal {...object} />;
}
}
function UserProfileConfirmThreadRemove({isForumPost, user, onConfirm}) { // fn#68858, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8993:237, offset: 0x01c5f6b4, size: 495 bytes, params: 2, frame: 28
const value2 = (importDefault(3995) /* metro dependency 3995: UserUtils */).useName(user);
const AlertModal = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertModal;
const object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
object2.title = Reflect.apply(string, intl, [isForumPost ? t['8sKSjm'] : t.ZPm8jN]);
object2.content = intl.formatToPlainString(isForumPost ? t['6UGfnx'] : t['hL+Znb'], {user: value2});
const AlertActions = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertActions;
const AlertActionButton = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertActionButton;
string = intl.string;
const N86XcP = (require(1244) /* metro dependency 1244: indexNative */).t.N86XcP;
object2.actions = <AlertActions><AlertActionButton variant="destructive" text={Reflect.apply(string, intl,
[N86XcP])} onPress={onConfirm} key="remove-user-from-thread" /><AlertActionButton variant="secondary" text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.yNbnce)} key="cancel-remove-user-from-thread" /></AlertActions>;
return <AlertModal {...object2} />;
}
global.__d(_fun68857, 8808, [31, 33, 3995, 4500, 1244, 4500,
2]) /* metro module 8808, dependencies: [31, 33, 3995, 4500, 1244, 4500, 2] */;
@@ -1,31 +1,47 @@
/* Metro module 8806; source: modules/user_profile/native/UserProfileConfirmVideoUnstableConnection.tsx; dependencies: [31, 33, 4500, 1244, 4500, 2] */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as AlertModalNativeModule from '../../../design/components/AlertModal/native/AlertModal.native.tsx'; /* Metro dependency 4500 */
function _fun68853(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68853, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8991:6, offset: 0x01c5f297, size: 140 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const value = require(33) /* metro dependency 33 */;
const env0_2 = value.jsx;
const env0_3 = value.jsxs;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileConfirmVideoUnstableConnection.tsx');
ReactModule;
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileConfirmVideoUnstableConnection.tsx');
exports.default = UserProfileConfirmVideoUnstableConnection;
function UserProfileConfirmVideoUnstableConnection({onConfirm}) { // fn#68854, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8991:248, offset: 0x01c5f323, size: 374 bytes, params: 2, frame: 27
const AlertModal = (AlertModalNativeModule).AlertModal;
const object = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
object.title = Reflect.apply(string, intl, [(require(1244) /* metro dependency 1244: indexNative */).t.m2Hyj0]);
string = intl.string;
const EhaK6B = (require(1244) /* metro dependency 1244: indexNative */).t.EhaK6B;
object.content = Reflect.apply(string, intl, [EhaK6B]);
const AlertActions = (AlertModalNativeModule).AlertActions;
const AlertActionButton = (AlertModalNativeModule).AlertActionButton;
string = intl.string;
const ND1my3 = (require(1244) /* metro dependency 1244: indexNative */).t.ND1my3;
object.actions = (
<AlertActions>
<AlertActionButton
text={Reflect.apply(string, intl, [ND1my3])}
onPress={onConfirm}
key="confirm"
/>
<AlertActionButton
variant="secondary"
text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.jEqEhy)}
key="cancel"
/>
</AlertActions>
);
return <AlertModal {...object} />;
}
}
function UserProfileConfirmVideoUnstableConnection({onConfirm}) { // fn#68854, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8991:248, offset: 0x01c5f323, size: 374 bytes, params: 2, frame: 27
const AlertModal = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertModal;
const object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
object2.title = Reflect.apply(string, intl, [(require(1244) /* metro dependency 1244: indexNative */).t.m2Hyj0]);
string = intl.string;
const EhaK6B = (require(1244) /* metro dependency 1244: indexNative */).t.EhaK6B;
object2.content = Reflect.apply(string, intl, [EhaK6B]);
const AlertActions = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertActions;
const AlertActionButton = (require(4500) /* metro dependency 4500: AlertModalNative */).AlertActionButton;
string = intl.string;
const ND1my3 = (require(1244) /* metro dependency 1244: indexNative */).t.ND1my3;
object2.actions = <AlertActions><AlertActionButton text={Reflect.apply(string, intl,
[ND1my3])} onPress={onConfirm} key="confirm" /><AlertActionButton variant="secondary" text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.jEqEhy)} key="cancel" /></AlertActions>;
return <AlertModal {...object2} />;
}
global.__d(_fun68853, 8806, [31, 33, 4500, 1244, 4500,
2]) /* metro module 8806, dependencies: [31, 33, 4500, 1244, 4500, 2] */;
@@ -1,433 +1,522 @@
/* Metro module 10361; source: modules/user_profile/native/UserProfileConnections.tsx; dependencies: [31, 27, 1949, 3996, 6816, 661, 5044, 33, 1305, 4501, 697, 10362, 3860, 4002, 10365, 10366, 8514, 5043, 4915, 1423, 8872, 4863, 3853, 4081, 6797, 3856, 1244, 5278, 3859, 4573, 6249, 3868, 566, 10367, 6815, 10372, 2] */
import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */
import AvatarUtils from '../../../utils/AvatarUtils.tsx'; /* Metro dependency 1423 */
import LocaleStore from '../../user_settings/LocaleStore.tsx'; /* Metro dependency 1949 */
import Linking from '../../../lib/native/Linking.tsx'; /* Metro dependency 3853 */
import StreamerModeStore from '../../../stores/StreamerModeStore.tsx'; /* Metro dependency 3996 */
import Platforms from '../../../lib/Platforms.tsx'; /* Metro dependency 4915 */
import Module10365 from '../../../by-id/module-10365.js'; /* Metro dependency 10365 */
import Module10366 from '../../../by-id/module-10366.js'; /* Metro dependency 10366 */
import UseVisibleUserProfileConnectionsAndAppIdentities from '../hooks/useVisibleUserProfileConnectionsAndAppIdentities.tsx'; /* Metro dependency 10367 */
import UseUserProfileApplicationRoleConnections from '../hooks/useUserProfileApplicationRoleConnections.tsx'; /* Metro dependency 10372 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as IndexNativeModule from '../../../intl/index.native.tsx'; /* Metro dependency 1244 */
import * as NativeModule from '../../../design/void/native.tsx'; /* Metro dependency 1305 */
import * as AvatarUtilsModule from '../../../utils/AvatarUtils.tsx'; /* Metro dependency 1423 */
import * as ToastUtilsModule from '../../toast/native/ToastUtils.tsx'; /* Metro dependency 3856 */
import * as BaseIconImageModule from '../../../design/components/Icon/native/BaseIconImage.tsx'; /* Metro dependency 3859 */
import * as UseTokenModule from '../../../design/tokens/native/useToken.tsx'; /* Metro dependency 3860 */
import * as NativeModule2 from '../../../external/discord_common/js/packages/design/native.tsx'; /* Metro dependency 3868 */
import * as SharedModule from '../../../design/shared.tsx'; /* Metro dependency 4002 */
import * as HapticUtilsNativeModule from '../../haptics/HapticUtils.native.tsx'; /* Metro dependency 4081 */
import * as CreateStylesModule from '../../../design/components/Styles/native/createStyles.tsx'; /* Metro dependency 4501 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
import * as AppAnalyticsUtilsModule from '../../app_analytics/AppAnalyticsUtils.tsx'; /* Metro dependency 4863 */
import * as ConstantsModule2 from '../../connections/Constants.tsx'; /* Metro dependency 5044 */
import * as ClipboardUtilsNativeModule from '../../../utils/ClipboardUtils.native.tsx'; /* Metro dependency 6797 */
import * as UserProfileCardModule from './UserProfileCard.tsx'; /* Metro dependency 6815 */
import * as ConstantsModule3 from './Constants.tsx'; /* Metro dependency 6816 */
import * as UserProfileAnalyticsContextModule from '../UserProfileAnalyticsContext.tsx'; /* Metro dependency 8514 */
import * as ConnectionMetadataVanityItemsModule from '../../connections/native/ConnectionMetadataVanityItems.tsx'; /* Metro dependency 10362 */
function _fun80261(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#80261, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:6, offset: 0x01e73405, size: 737 bytes, params: 8, frame: 28
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = importAll(31) /* metro dependency 31 */;
const value2 = require(27) /* metro dependency 27 */;
const env0_4 = value2.Pressable;
const env0_5 = value2.View;
const localeStore = importDefault(1949) /* metro dependency 1949: LocaleStore */;
const streamerModeStore = importDefault(3996) /* metro dependency 3996: StreamerModeStore */;
const constantsModule = require(6816) /* metro dependency 6816: Constants */;
let value = ReactModule;
const constantsModule = ConstantsModule3;
const CARD_PADDING = constantsModule.CARD_PADDING;
const CARD_ROWS_COLUMN_GAP = constantsModule.CARD_ROWS_COLUMN_GAP;
const env0_8 = constantsModule.CARD_ROWS_ICON_SIZE;
const env0_9 = constantsModule.CARD_ROWS_ICON_SIZE_VARIANT;
const constantsModule2 = require(661) /* metro dependency 661: Constants */;
const constantsModule2 = ConstantsModule;
const env0_10 = constantsModule2.AnalyticEvents;
const env0_11 = constantsModule2.PlatformTypes;
const env0_12 = (require(5044) /* metro dependency 5044: Constants */).MetadataFields;
const value5 = require(33) /* metro dependency 33 */;
const env0_13 = value5.jsx;
const env0_14 = value5.jsxs;
const Icon = (require(1305) /* metro dependency 1305: native */).Icon;
const Icon = (NativeModule).Icon;
let Sizes = Icon.Sizes;
const REFRESH_SMALL_16 = Sizes.REFRESH_SMALL_16;
const nativeModule = require(1305) /* metro dependency 1305: native */;
let getIconSize = nativeModule.getIconSize;
const value7 = Reflect.apply(getIconSize, nativeModule, [REFRESH_SMALL_16]);
const createStylesModule = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = createStylesModule.createStyles;
object2 = {};
object2.cardContainer = {paddingBottom: CARD_PADDING - 12};
object2.cardTitle = {marginBottom: 0};
object2.connectionRow = {'flexDirection': 'row', 'alignItems': 'center', 'columnGap': null, 'paddingVertical': 12,
let getIconSize = NativeModule.getIconSize;
const value7 = Reflect.apply(getIconSize, NativeModule, [REFRESH_SMALL_16]);
const createStyles = CreateStylesModule.createStyles;
object = {};
object.cardContainer = {paddingBottom: CARD_PADDING - 12};
object.cardTitle = {marginBottom: 0};
object.connectionRow = {'flexDirection': 'row', 'alignItems': 'center', 'columnGap': null, 'paddingVertical': 12,
'minHeight': 60, columnGap: CARD_ROWS_COLUMN_GAP};
object2.connectionInfoContainer = {flexGrow: 1};
object2.connectedAccountName = {'flexDirection': 'row', 'alignItems': 'center', 'columnGap': 4};
object2.verifiedIconContainer = {height: value7, width: value7};
object2.verifiedIcon = {'position': 'absolute', 'left': 0, 'top': 0};
object2.connectionMetadata = {'flexDirection': 'row', 'flexWrap': 'wrap', 'alignItems': 'center',
object.connectionInfoContainer = {flexGrow: 1};
object.connectedAccountName = {'flexDirection': 'row', 'alignItems': 'center', 'columnGap': 4};
object.verifiedIconContainer = {height: value7, width: value7};
object.verifiedIcon = {'position': 'absolute', 'left': 0, 'top': 0};
object.connectionMetadata = {'flexDirection': 'row', 'flexWrap': 'wrap', 'alignItems': 'center',
'overflow': 'hidden'};
const INTERACTIVE_TEXT_ACTIVE = (importDefault(697) /* metro dependency 697: native */).colors.INTERACTIVE_TEXT_ACTIVE;
object2.metadataItem = {color: INTERACTIVE_TEXT_ACTIVE};
object2.poweredByContainer = {'flexDirection': 'row', 'alignItems': 'center', 'marginTop': 6};
const value9 = nativeModule;
getIconSize = value9.getIconSize;
const INTERACTIVE_TEXT_ACTIVE = (Native).colors.INTERACTIVE_TEXT_ACTIVE;
object.metadataItem = {color: INTERACTIVE_TEXT_ACTIVE};
object.poweredByContainer = {'flexDirection': 'row', 'alignItems': 'center', 'marginTop': 6};
getIconSize = NativeModule.getIconSize;
Sizes = Icon.Sizes;
const MEDIUM = Sizes.MEDIUM;
object2.applicationIcon = {borderRadius: Reflect.apply(getIconSize, value9, [MEDIUM])};
const env0_16 = Reflect.apply(createStyles, createStylesModule, [object2]);
object.applicationIcon = {borderRadius: Reflect.apply(getIconSize, NativeModule, [MEDIUM])};
const env0_16 = Reflect.apply(createStyles, CreateStylesModule, [object]);
const env0_17 = value.memo(_fun80263);
const env0_18 = value.memo(_fun80269);
value = value.memo(_fun80273);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileConnections.tsx');
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileConnections.tsx');
exports.ApplicationRoleConnection = value;
exports.UserProfileAccountConnectionsCard = UserProfileAccountConnectionsCard;
exports.UserProfileApplicationRoleConnectionsCard = UserProfileApplicationRoleConnectionsCard;
}
function VerifiedIcon({theme, isTwitterVerifiedAccount}) { // fn#80262, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:1125, offset: 0x01e736e6, size: 410 bytes, params: 2, frame: 25
isTwitterVerifiedAccount = !(isTwitterVerifiedAccount === undefined) && isTwitterVerifiedAccount;
const styles = useStyles();
const useTokenModule = require(3860) /* metro dependency 3860: useToken */;
const useToken = useTokenModule.useToken;
const MOBILE_TEXT_HEADING_PRIMARY = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_TEXT_HEADING_PRIMARY;
const r14 = isTwitterVerifiedAccount ? (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.PLATFORM_TWITTER : Reflect.apply(useToken,
useTokenModule, [MOBILE_TEXT_HEADING_PRIMARY, theme]);
const sharedModule = require(4002) /* metro dependency 4002: shared */;
const r9 = sharedModule.isThemeLight(theme) || isTwitterVerifiedAccount ? (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.WHITE : (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.BLACK;
const Icon = (require(1305) /* metro dependency 1305: native */).Icon;
return (
<View style={styles.verifiedIconContainer}>
<Icon
source={importDefault(10365) /* metro dependency 10365 */}
color={r14}
size={REFRESH_SMALL_16}
style={styles.verifiedIcon}
/>
<Icon
source={importDefault(10366) /* metro dependency 10366 */}
color={r9}
{...object}
/>
</View>
);
}
function _fun80263({userId, account, theme, locale, showMetadata}) { // fn#80263, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:1603, offset: 0x01e73880, size: 1537 bytes, params: 2, frame: 35
var r23;
var r16;
var r12;
var object2;
var moduleValue2;
var accountType;
var style;
var intl;
showMetadata = showMetadata === undefined || showMetadata;
const styles = useStyles();
const userProfileAnalyticsContextModule = require(8514) /* metro dependency 8514: UserProfileAnalyticsContext */;
const useUserProfileAnalyticsContext = userProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const trackUserProfileAction = Reflect.apply(useUserProfileAnalyticsContext, userProfileAnalyticsContextModule,
[]).trackUserProfileAction;
let metadata = account.metadata;
const r9 = metadata ?? ({});
if (showMetadata) {
moduleValue2 = require(5043) /* metro dependency 5043: ConnectionsUtils */;
r23 = moduleValue2.getCreatedAtDate(r9[MetadataFields.CREATED_AT], locale);
} else {
r23 = null;
function VerifiedIcon({theme, isTwitterVerifiedAccount}) { // fn#80262, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:1125, offset: 0x01e736e6, size: 410 bytes, params: 2, frame: 25
isTwitterVerifiedAccount = !(isTwitterVerifiedAccount === undefined) && isTwitterVerifiedAccount;
const styles = useStyles();
const useToken = UseTokenModule.useToken;
const MOBILE_TEXT_HEADING_PRIMARY = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_TEXT_HEADING_PRIMARY;
const r14 = isTwitterVerifiedAccount ? (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.PLATFORM_TWITTER : Reflect.apply(useToken,
UseTokenModule, [MOBILE_TEXT_HEADING_PRIMARY, theme]);
const r9 = SharedModule.isThemeLight(theme) || isTwitterVerifiedAccount ? (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.WHITE : (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.BLACK;
const Icon = (NativeModule).Icon;
return (
<View style={styles.verifiedIconContainer}>
<Icon
source={Module10365}
color={r14}
size={REFRESH_SMALL_16}
style={styles.verifiedIcon}
/>
<Icon
source={Module10366}
color={r9}
{...object}
/>
</View>
);
}
const env0_3 = r23;
if (showMetadata) {
object2 = {};
object2.accountType = account.type;
object2.metadata = r9;
object2.style = styles.metadataItem;
accountType = object2.accountType;
metadata = object2.metadata;
style = object2.style;
r16 = PlatformTypes.REDDIT === accountType ? (require(10362) /* metro dependency 10362: ConnectionMetadataVanityItems */).generateRedditMetadataItems(metadata,
style) : PlatformTypes.STEAM === accountType ? (require(10362) /* metro dependency 10362: ConnectionMetadataVanityItems */).generateSteamMetadataItems(metadata,
style) : PlatformTypes.BLUESKY === accountType || PlatformTypes.TWITTER === accountType || PlatformTypes.MASTODON === accountType ? (require(10362) /* metro dependency 10362: ConnectionMetadataVanityItems */).generateTwitterMetadataItems(metadata,
style) : PlatformTypes.PAYPAL === accountType ? (require(10362) /* metro dependency 10362: ConnectionMetadataVanityItems */).generatePaypalMetadataItems(metadata,
style) : PlatformTypes.EBAY === accountType ? (require(10362) /* metro dependency 10362: ConnectionMetadataVanityItems */).generateEbayMetadataItems(metadata,
style) : PlatformTypes.TIKTOK !== accountType ? null : (require(10362) /* metro dependency 10362: ConnectionMetadataVanityItems */).generateTikTokMetadataItems(metadata,
style);
} else {
r16 = null;
}
const r13 = r16 != null && r16.length > 0;
const value14 = (importDefault(4915) /* metro dependency 4915: Platforms */).get(account.type);
const avatarUtilsModule = require(1423) /* metro dependency 1423: AvatarUtils */;
const makeSource = avatarUtilsModule.makeSource;
const isThemeDark2 = (require(4002) /* metro dependency 4002: shared */).isThemeDark(theme);
const value15 = value14 == null;
const source = Reflect.apply(makeSource, avatarUtilsModule,
[isThemeDark2 ? value15 ? undefined : value14.icon.darkPNG : value15 ? undefined : value14.icon.lightPNG]);
const r5 = value14 == null || value14.getPlatformUserUrl == null ? undefined : value14.getPlatformUserUrl(account);
const type = account.type;
const TWITTER = PlatformTypes.TWITTER;
const r24 = type === TWITTER && r9[MetadataFields.TWITTER_VERIFIED] === '1';
const binding = env0_3;
const value19 = binding.useCallback(_fun80264, [account.type, r5, trackUserProfileAction, userId]);
const value20 = binding.useCallback(_fun80266, [account.name, trackUserProfileAction]);
const value21 = binding.useMemo(_fun80267, [account.name, r23, value14?.name]);
const value22 = env0_3.useMemo(_fun80268, [value14?.name, r5]);
const PressableComponent = r5 != null ? (require(5278) /* metro dependency 5278: Pressables */).PressableOpacity : Pressable;
const r8 = r5 != null ? value19 : undefined;
const BaseIconImage = (require(3859) /* metro dependency 3859: BaseIconImage */).BaseIconImage;
const items2 = [<BaseIconImage size={CARD_ROWS_ICON_SIZE_VARIANT} source={source} />];
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const items3 = [<View style={styles.connectedAccountName}><Text variant="text-md/semibold" color="mobile-text-heading-primary">{account.name}</Text>{account.verified ? <VerifiedIcon theme={theme} isTwitterVerifiedAccount={r24} /> : null}</View>];
if (r23 != null) {
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r12 = <Text variant="text-xs/medium" color="text-muted">{intl.format((require(1244) /* metro dependency 1244: indexNative */).t['9rfonh'],
{date: r23})}</Text>;
} else {
r12 = null;
}
items3[1] = r12;
items3[2] = r13 ? <View style={styles.connectionMetadata}>{r16}</View> : null;
items2[1] = <View style={styles.connectionInfoContainer}>{items3}</View>;
items2[2] = r5 != null && ((LinkExternalSmallIcon) => <LinkExternalSmallIcon size="sm" />)((require(6249) /* metro dependency 6249: LinkExternalSmallIcon */).LinkExternalSmallIcon);
return (
<PressableComponent
accessibilityLabel={value21}
accessibilityHint={value22}
accessibilityRole="button"
onPress={r8}
onLongPress={value20}
style={styles.connectionRow}
>
{items2}
</PressableComponent>
);
}
function _fun80269({identity, application}) { // fn#80269, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:4350, offset: 0x01e7415d, size: 477 bytes, params: 2, frame: 25
const styles = useStyles();
const userProfileAnalyticsContextModule = require(8514) /* metro dependency 8514: UserProfileAnalyticsContext */;
const useUserProfileAnalyticsContext = userProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const trackUserProfileAction = Reflect.apply(useUserProfileAnalyticsContext, userProfileAnalyticsContextModule,
[]).trackUserProfileAction;
const iconSource = application.getIconSource(CARD_ROWS_ICON_SIZE);
const username = identity.profile?.username;
const r14 = username ?? '';
const binding = env0_3;
const value6 = binding.useCallback(_fun80270, [r14, trackUserProfileAction]);
const value7 = binding.useMemo(_fun80271, [application.name, r14]);
const value8 = binding.useMemo(function() {
var intl = require(dependencyMap[26]).intl;
var OKzaN3 = require(dependencyMap[26]).t.OKzaN3;
return intl.formatToPlainString(OKzaN3, {name: application.name});
}, [application.name]);
const r5 = iconSource != null ? ((BaseIconImage) => <BaseIconImage size={CARD_ROWS_ICON_SIZE_VARIANT} source={iconSource} style={styles.applicationIcon} />)((require(3859) /* metro dependency 3859: BaseIconImage */).BaseIconImage) : null;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
return (
<Pressable
accessibilityLabel={value7}
accessibilityHint={value8}
accessibilityRole="button"
onLongPress={value6}
style={styles.connectionRow}
>
{r5}
function _fun80263({userId, account, theme, locale, showMetadata}) { // fn#80263, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:1603, offset: 0x01e73880, size: 1537 bytes, params: 2, frame: 35
var r23;
var r16;
var r12;
var object;
var moduleValue2;
var accountType;
var style;
var intl;
showMetadata = showMetadata === undefined || showMetadata;
const styles = useStyles();
const useUserProfileAnalyticsContext = UserProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const trackUserProfileAction = Reflect.apply(useUserProfileAnalyticsContext, UserProfileAnalyticsContextModule,
[]).trackUserProfileAction;
let metadata = account.metadata;
const r9 = metadata ?? ({});
if (showMetadata) {
moduleValue2 = require(5043) /* metro dependency 5043: ConnectionsUtils */;
r23 = moduleValue2.getCreatedAtDate(r9[MetadataFields.CREATED_AT], locale);
} else {
r23 = null;
}
const env0_3 = r23;
if (showMetadata) {
object = {};
object.accountType = account.type;
object.metadata = r9;
object.style = styles.metadataItem;
accountType = object.accountType;
metadata = object.metadata;
style = object.style;
r16 = PlatformTypes.REDDIT === accountType ? (require(10362) /* metro dependency 10362: ConnectionMetadataVanityItems */).generateRedditMetadataItems(metadata,
style) : PlatformTypes.STEAM === accountType ? (require(10362) /* metro dependency 10362: ConnectionMetadataVanityItems */).generateSteamMetadataItems(metadata,
style) : PlatformTypes.BLUESKY === accountType || PlatformTypes.TWITTER === accountType || PlatformTypes.MASTODON === accountType ? (require(10362) /* metro dependency 10362: ConnectionMetadataVanityItems */).generateTwitterMetadataItems(metadata,
style) : PlatformTypes.PAYPAL === accountType ? (require(10362) /* metro dependency 10362: ConnectionMetadataVanityItems */).generatePaypalMetadataItems(metadata,
style) : PlatformTypes.EBAY === accountType ? (require(10362) /* metro dependency 10362: ConnectionMetadataVanityItems */).generateEbayMetadataItems(metadata,
style) : PlatformTypes.TIKTOK !== accountType ? null : (require(10362) /* metro dependency 10362: ConnectionMetadataVanityItems */).generateTikTokMetadataItems(metadata,
style);
} else {
r16 = null;
}
const r13 = r16 != null && r16.length > 0;
const value14 = (Platforms).get(account.type);
const makeSource = AvatarUtilsModule.makeSource;
const isThemeDark2 = (SharedModule).isThemeDark(theme);
const value15 = value14 == null;
const source = Reflect.apply(makeSource, AvatarUtilsModule,
[isThemeDark2 ? value15 ? undefined : value14.icon.darkPNG : value15 ? undefined : value14.icon.lightPNG]);
const r5 = value14 == null || value14.getPlatformUserUrl == null ? undefined : value14.getPlatformUserUrl(account);
const type = account.type;
const TWITTER = PlatformTypes.TWITTER;
const r24 = type === TWITTER && r9[MetadataFields.TWITTER_VERIFIED] === '1';
const binding = env0_3;
const value19 = binding.useCallback(_fun80264, [account.type, r5, trackUserProfileAction, userId]);
const value20 = binding.useCallback(_fun80266, [account.name, trackUserProfileAction]);
const value21 = binding.useMemo(_fun80267, [account.name, r23, value14?.name]);
const value22 = env0_3.useMemo(_fun80268, [value14?.name, r5]);
const PressableComponent = r5 != null ? (require(5278) /* metro dependency 5278: Pressables */).PressableOpacity : Pressable;
const r8 = r5 != null ? value19 : undefined;
const BaseIconImage = (BaseIconImageModule).BaseIconImage;
const items2 = [
<BaseIconImage size={CARD_ROWS_ICON_SIZE_VARIANT} source={source} />,
];
const Text = (TextModule).Text;
const items3 = [
<View style={styles.connectedAccountName}>
<Text variant="text-md/semibold" color="mobile-text-heading-primary">
{account.name}
</Text>
{
account.verified
? (
<VerifiedIcon theme={theme} isTwitterVerifiedAccount={r24} />
)
: null
}
</View>,
];
if (r23 != null) {
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r12 = (
<Text variant="text-xs/medium" color="text-muted">
{intl.format((require(1244) /* metro dependency 1244: indexNative */).t['9rfonh'], {date: r23})}
</Text>
);
} else {
r12 = null;
}
items3[1] = r12;
items3[2] = (
r13
? (
<View style={styles.connectionMetadata}>
{r16}
</View>
)
: null
);
items2[1] = (
<View style={styles.connectionInfoContainer}>
<View style={styles.connectedAccountName}>
{items3}
</View>
);
items2[2] = r5 != null && ((LinkExternalSmallIcon) => <LinkExternalSmallIcon size="sm" />)((require(6249) /* metro dependency 6249: LinkExternalSmallIcon */).LinkExternalSmallIcon);
return (
<PressableComponent
accessibilityLabel={value21}
accessibilityHint={value22}
accessibilityRole="button"
onPress={r8}
onLongPress={value20}
style={styles.connectionRow}
>
{items2}
</PressableComponent>
);
function _fun80264() { // fn#80264, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:2692, offset: 0x01e73e81, size: 127 bytes, params: 1, frame: 14
var environment;
var value2;
if (ReactNativeModule.View != null) {
trackUserProfileAction({action: 'PRESS_VIEW_CONNECTED_ACCOUNT'});
value2 = environment.__proto__;
(require(8872) /* metro dependency 8872: MaskedLinkUtils */).handleClick({href: ReactNativeModule.View,
trusted: account.type !== PlatformTypes.DOMAIN, onConfirm: onConfirm_80265});
}
function onConfirm_80265() { // fn#80265, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:2815, offset: 0x01e73f00, size: 108 bytes, params: 1, frame: 18
const value = environment.__proto__.__proto__;
const trackWithMetadata = AppAnalyticsUtilsModule.trackWithMetadata;
const CONNECTED_ACCOUNT_VIEWED = AnalyticEvents.CONNECTED_ACCOUNT_VIEWED;
Reflect.apply(trackWithMetadata, AppAnalyticsUtilsModule, [CONNECTED_ACCOUNT_VIEWED, {platform_type: account.type,
other_user_id: userId}]);
(Linking).openURL(env1_5);
}
}
function _fun80266() { // fn#80266, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:2973, offset: 0x01e73f6c, size: 137 bytes, params: 1, frame: 15
trackUserProfileAction({action: 'COPY_CONNECTED_ACCOUNT'});
const triggerHapticFeedback = HapticUtilsNativeModule.triggerHapticFeedback;
const HapticFeedbackTypes = HapticUtilsNativeModule.HapticFeedbackTypes;
const IMPACT_LIGHT = HapticFeedbackTypes.IMPACT_LIGHT;
Reflect.apply(triggerHapticFeedback, HapticUtilsNativeModule, [IMPACT_LIGHT]);
ClipboardUtilsNativeModule.copy(account.name);
(ToastUtilsModule).presentCopiedToClipboard();
}
function _fun80267() { // fn#80267, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:3174, offset: 0x01e73ff5, size: 182 bytes, params: 1, frame: 18
var value4;
var intl;
const items2 = [];
let push = items2.push;
Reflect.apply(push, items2, [ReactNativeModule.Pressable?.name ?? '']);
items2.push(account.name);
if (env0_3 != null) {
push = items2.push;
value4 = environment.__proto__;
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
Reflect.apply(push, items2,
[intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t['9rfonh'],
{date: env0_3})]);
}
return items2.join(', ');
}
function _fun80268() { // fn#80268, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:3401, offset: 0x01e740ab, size: 178 bytes, params: 1, frame: 17
var name;
var r0;
var value2;
var value3;
const intl = (IndexNativeModule).intl;
var formatToPlainString;
const t = (IndexNativeModule).t;
var OKzaN3;
var value;
if (ReactNativeModule.View != null) {
value = environment.__proto__;
value = intl.string(t.wuRE8M);
r0 = value;
} else {
value2 = environment.__proto__;
value3 = undefined;
formatToPlainString = intl.formatToPlainString;
OKzaN3 = t.OKzaN3;
name = ReactNativeModule.Pressable == null ? value3 : ReactNativeModule.Pressable.name;
value = '';
value = Reflect.apply(formatToPlainString, intl, [OKzaN3, {name: name ?? value}]);
r0 = value;
}
return r0;
}
}
function _fun80269({identity, application}) { // fn#80269, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:4350, offset: 0x01e7415d, size: 477 bytes, params: 2, frame: 25
const styles = useStyles();
const useUserProfileAnalyticsContext = UserProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const trackUserProfileAction = Reflect.apply(useUserProfileAnalyticsContext, UserProfileAnalyticsContextModule,
[]).trackUserProfileAction;
const iconSource = application.getIconSource(CARD_ROWS_ICON_SIZE);
const username = identity.profile?.username;
const r14 = username ?? '';
const binding = env0_3;
const value6 = binding.useCallback(_fun80270, [r14, trackUserProfileAction]);
const value7 = binding.useMemo(_fun80271, [application.name, r14]);
const value8 = binding.useMemo(function() {
var intl = require(dependencyMap[26]).intl;
var OKzaN3 = require(dependencyMap[26]).t.OKzaN3;
return intl.formatToPlainString(OKzaN3, {name: application.name});
}, [application.name]);
const r5 = (
iconSource != null
? ((BaseIconImage) => <BaseIconImage size={CARD_ROWS_ICON_SIZE_VARIANT} source={iconSource} style={styles.applicationIcon} />)((require(3859) /* metro dependency 3859: BaseIconImage */).BaseIconImage)
: null
);
const Text = (TextModule).Text;
return (
<Pressable
accessibilityLabel={value7}
accessibilityHint={value8}
accessibilityRole="button"
onLongPress={value6}
style={styles.connectionRow}
>
{r5}
<View style={styles.connectionInfoContainer}>
<View style={styles.connectedAccountName}>
<Text variant="text-md/semibold" color="mobile-text-heading-primary">
{r14}
</Text>
</View>
</View>
</Pressable>
);
function _fun80270() { // fn#80270, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:4561, offset: 0x01e7433a, size: 132 bytes, params: 1, frame: 15
trackUserProfileAction({action: 'COPY_CONNECTED_ACCOUNT'});
const triggerHapticFeedback = HapticUtilsNativeModule.triggerHapticFeedback;
const HapticFeedbackTypes = HapticUtilsNativeModule.HapticFeedbackTypes;
const IMPACT_LIGHT = HapticFeedbackTypes.IMPACT_LIGHT;
Reflect.apply(triggerHapticFeedback, HapticUtilsNativeModule, [IMPACT_LIGHT]);
(ClipboardUtilsNativeModule).copy(env0_2);
(ToastUtilsModule).presentCopiedToClipboard();
}
function _fun80271() { // fn#80271, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:4752, offset: 0x01e743be, size: 58 bytes, params: 1, frame: 12
const items2 = [];
items2.push(application.name);
items2.push(env0_2);
return items2.join(', ');
}
}
function _fun80273({applicationRoleConnection}) { // fn#80273, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:5329, offset: 0x01e74449, size: 622 bytes, params: 2, frame: 30
const Text = (TextModule).Text;
const styles = useStyles();
const value2 = (ConnectionMetadataVanityItemsModule).generateRoleConnectionMetadataItems(applicationRoleConnection);
const applicationIconSource = (AvatarUtils).getApplicationIconSource({id: applicationRoleConnection.application.id,
icon: applicationRoleConnection.application.icon});
const Icon = (NativeModule).Icon;
const Icon2 = (NativeModule).Icon;
const Sizes = Icon2.Sizes;
const MEDIUM = Sizes.MEDIUM;
const icon = (
<Icon
size={MEDIUM}
source={applicationIconSource}
disableColor
/>
);
const items2 = [
applicationRoleConnection.platform_name != null
? (
<Text variant="text-md/semibold" color="mobile-text-heading-primary">
{r14}
{applicationRoleConnection.platform_name}
</Text>
)
: null,
];
items2[1] = (
applicationRoleConnection.platform_username != null
? (
<Text variant="text-md/normal" color="text-default">
{applicationRoleConnection.platform_username}
</Text>
)
: null
);
items2[2] = (
value2 != null && value2.length > 0
? (
<View style={styles.connectionMetadata}>
{value2}
</View>
)
: null
);
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
items2[3] = (
<View style={styles.poweredByContainer}>
<Text variant="text-xs/medium" color="text-muted">
{intl.format((require(1244) /* metro dependency 1244: indexNative */).t.zIT9YA,
{applicationHook: function() {
return applicationRoleConnection.application.name;
}})}
</Text>
</View>
);
return (
<View style={styles.connectionRow}>
{icon}
<View style={styles.connectionInfoContainer}>
{items2}
</View>
</View>
</Pressable>
);
}
function _fun80273({applicationRoleConnection}) { // fn#80273, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:5329, offset: 0x01e74449, size: 622 bytes, params: 2, frame: 30
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const styles = useStyles();
const value2 = (require(10362) /* metro dependency 10362: ConnectionMetadataVanityItems */).generateRoleConnectionMetadataItems(applicationRoleConnection);
const applicationIconSource = (importDefault(1423) /* metro dependency 1423: AvatarUtils */).getApplicationIconSource({id: applicationRoleConnection.application.id,
icon: applicationRoleConnection.application.icon});
const Icon = (require(1305) /* metro dependency 1305: native */).Icon;
const Icon2 = (require(1305) /* metro dependency 1305: native */).Icon;
const Sizes = Icon2.Sizes;
const MEDIUM = Sizes.MEDIUM;
const icon = <Icon size={MEDIUM} source={applicationIconSource} disableColor />;
const items2 = [applicationRoleConnection.platform_name != null ? <Text variant="text-md/semibold" color="mobile-text-heading-primary">{applicationRoleConnection.platform_name}</Text> : null];
items2[1] = applicationRoleConnection.platform_username != null ? <Text variant="text-md/normal" color="text-default">{applicationRoleConnection.platform_username}</Text> : null;
items2[2] = value2 != null && value2.length > 0 ? <View style={styles.connectionMetadata}>{value2}</View> : null;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
items2[3] = <View style={styles.poweredByContainer}><Text variant="text-xs/medium" color="text-muted">{intl.format((require(1244) /* metro dependency 1244: indexNative */).t.zIT9YA,
{applicationHook: function() {
return applicationRoleConnection.application.name;
}})}</Text></View>;
return (
<View style={styles.connectionRow}>
{icon}
<View style={styles.connectionInfoContainer}>
{items2}
</View>
</View>
);
}
function UserProfileAccountConnectionsCard({userId, style}) { // fn#80275, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:6366, offset: 0x01e746ca, size: 426 bytes, params: 2, frame: 25
var r0;
var defaultImport;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const UserProfileCardRows = (require(6815) /* metro dependency 6815: UserProfileCard */).UserProfileCardRows;
var value;
const styles = useStyles();
const nativeModule = require(3868) /* metro dependency 3868: native */;
const useThemeContext = nativeModule.useThemeContext;
const env0_1 = Reflect.apply(useThemeContext, nativeModule, []).theme;
const env0_2 = (require(566) /* metro dependency 566: flux */).useStateFromStores([LocaleStore], function() {
return LocaleStore.locale;
});
const hidePersonalInformation = (require(566) /* metro dependency 566: flux */).useStateFromStores([StreamerModeStore],
function() {
return StreamerModeStore.hidePersonalInformation;
});
const {connections,
appIdentities} = (importDefault(10367) /* metro dependency 10367: useVisibleUserProfileConnectionsAndAppIdentities */)(userId);
if (hidePersonalInformation) {
r0 = null;
} else if (connections.length !== 0) {
defaultImport = importDefault(6815) /* metro dependency 6815: UserProfileCard */;
var defaultImportProps2 = {style: [styles.cardContainer, style],
title: intl.string((require(1244) /* metro dependency 1244: indexNative */).t['3fe7U5']),
titleStyle: styles.cardTitle};
value = connections.map(_fun80278);
value = ((Component) => <Component {...defaultImportProps2}><UserProfileCardRows>{[value,
appIdentities.map(_fun80279)]}</UserProfileCardRows></Component>)(defaultImport);
r0 = value;
} else if (appIdentities.length === 0) {
r0 = null;
} else {
defaultImport = importDefault(6815) /* metro dependency 6815: UserProfileCard */;
var defaultImportProps2 = {style: [styles.cardContainer, style],
title: intl.string((require(1244) /* metro dependency 1244: indexNative */).t['3fe7U5']),
titleStyle: styles.cardTitle};
value = connections.map(_fun80278);
value = ((Component) => <Component {...defaultImportProps2}><UserProfileCardRows>{[value,
appIdentities.map(_fun80279)]}</UserProfileCardRows></Component>)(defaultImport);
r0 = value;
);
}
return r0;
}
function UserProfileApplicationRoleConnectionsCard({userId, style}) { // fn#80280, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:7074, offset: 0x01e7491c, size: 297 bytes, params: 2, frame: 24
var r0;
var UserProfileCard;
var intl;
const styles = useStyles();
const value2 = (importDefault(10372) /* metro dependency 10372: useUserProfileApplicationRoleConnections */)(userId);
const hidePersonalInformation = (require(566) /* metro dependency 566: flux */).useStateFromStores([StreamerModeStore],
function() {
return StreamerModeStore.hidePersonalInformation;
});
if (hidePersonalInformation) {
r0 = null;
} else if (value2.length === 0) {
r0 = null;
} else {
UserProfileCard = importDefault(6815) /* metro dependency 6815: UserProfileCard */;
var defaultImportProps = {style: [styles.cardContainer, style]};
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
defaultImportProps.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.PHjkRE);
defaultImportProps.titleStyle = styles.cardTitle;
r0 = <UserProfileCard {...defaultImportProps}>{((UserProfileCardRows) => <UserProfileCardRows>{value2.map(_fun80282)}</UserProfileCardRows>)((require(6815) /* metro dependency 6815: UserProfileCard */).UserProfileCardRows)}</UserProfileCard>;
function UserProfileAccountConnectionsCard({userId, style}) { // fn#80275, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:6366, offset: 0x01e746ca, size: 426 bytes, params: 2, frame: 25
var r0;
var defaultImport;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const UserProfileCardRows = (UserProfileCardModule).UserProfileCardRows;
var value;
const styles = useStyles();
const nativeModule = NativeModule2;
const useThemeContext = nativeModule.useThemeContext;
const env0_1 = Reflect.apply(useThemeContext, nativeModule, []).theme;
const env0_2 = (require(566) /* metro dependency 566: flux */).useStateFromStores([LocaleStore], function() {
return LocaleStore.locale;
});
const hidePersonalInformation = (require(566) /* metro dependency 566: flux */).useStateFromStores([StreamerModeStore],
function() {
return StreamerModeStore.hidePersonalInformation;
});
const {connections,
appIdentities} = (UseVisibleUserProfileConnectionsAndAppIdentities)(userId);
if (hidePersonalInformation) {
r0 = null;
} else if (connections.length !== 0) {
defaultImport = importDefault(6815) /* metro dependency 6815: UserProfileCard */;
var defaultImportProps2 = {style: [styles.cardContainer, style],
title: intl.string((require(1244) /* metro dependency 1244: indexNative */).t['3fe7U5']),
titleStyle: styles.cardTitle};
value = connections.map(_fun80278);
value = ((Component) => <Component {...defaultImportProps2}><UserProfileCardRows>{[value,
appIdentities.map(_fun80279)]}</UserProfileCardRows></Component>)(defaultImport);
r0 = value;
} else if (appIdentities.length === 0) {
r0 = null;
} else {
defaultImport = importDefault(6815) /* metro dependency 6815: UserProfileCard */;
var defaultImportProps2 = {style: [styles.cardContainer, style],
title: intl.string((require(1244) /* metro dependency 1244: indexNative */).t['3fe7U5']),
titleStyle: styles.cardTitle};
value = connections.map(_fun80278);
value = ((Component) => <Component {...defaultImportProps2}><UserProfileCardRows>{[value,
appIdentities.map(_fun80279)]}</UserProfileCardRows></Component>)(defaultImport);
r0 = value;
}
return r0;
function _fun80278(a0) { // fn#80278, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:6849, offset: 0x01e74883, size: 66 bytes, params: 2, frame: 16
return ((Component) => <Component account={a0} theme={theme} locale={locale} userId={userId} key={a0.id} />)(env1_17);
}
function _fun80279({application, identity}) { // fn#80279, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:6909, offset: 0x01e748c5, size: 87 bytes, params: 2, frame: 18
const value = environment.__proto__;
return ((Component) => <Component identity={identity} application={application} key={'' + identity.application_id + '-' + identity.provider_issued_user_id} />)(env1_18);
}
}
return r0;
}
function _fun80264() { // fn#80264, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:2692, offset: 0x01e73e81, size: 127 bytes, params: 1, frame: 14
var environment;
var value2;
if (env0_5 != null) {
trackUserProfileAction({action: 'PRESS_VIEW_CONNECTED_ACCOUNT'});
value2 = environment.__proto__;
(require(8872) /* metro dependency 8872: MaskedLinkUtils */).handleClick({href: env0_5,
trusted: account.type !== PlatformTypes.DOMAIN, onConfirm: onConfirm_80265});
function UserProfileApplicationRoleConnectionsCard({userId, style}) { // fn#80280, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:7074, offset: 0x01e7491c, size: 297 bytes, params: 2, frame: 24
var r0;
var UserProfileCard;
var intl;
const styles = useStyles();
const value2 = (UseUserProfileApplicationRoleConnections)(userId);
const hidePersonalInformation = (require(566) /* metro dependency 566: flux */).useStateFromStores([StreamerModeStore],
function() {
return StreamerModeStore.hidePersonalInformation;
});
if (hidePersonalInformation) {
r0 = null;
} else if (value2.length === 0) {
r0 = null;
} else {
UserProfileCard = importDefault(6815) /* metro dependency 6815: UserProfileCard */;
var defaultImportProps = {style: [styles.cardContainer, style]};
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
defaultImportProps.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.PHjkRE);
defaultImportProps.titleStyle = styles.cardTitle;
r0 = (
<UserProfileCard {...defaultImportProps}>
{((UserProfileCardRows) => <UserProfileCardRows>{value2.map(_fun80282)}</UserProfileCardRows>)((require(6815) /* metro dependency 6815: UserProfileCard */).UserProfileCardRows)}
</UserProfileCard>
);
}
return r0;
function _fun80282(a0) { // fn#80282, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:7424, offset: 0x01e74a45, size: 42 bytes, params: 2, frame: 15
return ((Component) => <Component applicationRoleConnection={a0} key={a0.application.id} />)(env1_19);
}
}
}
function _fun80266() { // fn#80266, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:2973, offset: 0x01e73f6c, size: 137 bytes, params: 1, frame: 15
trackUserProfileAction({action: 'COPY_CONNECTED_ACCOUNT'});
const hapticUtilsNativeModule = require(4081) /* metro dependency 4081: HapticUtilsNative */;
const triggerHapticFeedback = hapticUtilsNativeModule.triggerHapticFeedback;
const HapticFeedbackTypes = hapticUtilsNativeModule.HapticFeedbackTypes;
const IMPACT_LIGHT = HapticFeedbackTypes.IMPACT_LIGHT;
Reflect.apply(triggerHapticFeedback, hapticUtilsNativeModule, [IMPACT_LIGHT]);
const clipboardUtilsNativeModule = require(6797) /* metro dependency 6797: ClipboardUtilsNative */;
clipboardUtilsNativeModule.copy(account.name);
(require(3856) /* metro dependency 3856: ToastUtils */).presentCopiedToClipboard();
}
function _fun80267() { // fn#80267, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:3174, offset: 0x01e73ff5, size: 182 bytes, params: 1, frame: 18
var value4;
var intl;
const items2 = [];
let push = items2.push;
Reflect.apply(push, items2, [env0_4?.name ?? '']);
items2.push(account.name);
if (env0_3 != null) {
push = items2.push;
value4 = environment.__proto__;
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
Reflect.apply(push, items2,
[intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t['9rfonh'],
{date: env0_3})]);
}
return items2.join(', ');
}
function _fun80268() { // fn#80268, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:3401, offset: 0x01e740ab, size: 178 bytes, params: 1, frame: 17
var name;
var r0;
var value2;
var value3;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var formatToPlainString;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
var OKzaN3;
var value;
if (env0_5 != null) {
value = environment.__proto__;
value = intl.string(t.wuRE8M);
r0 = value;
} else {
value2 = environment.__proto__;
value3 = undefined;
formatToPlainString = intl.formatToPlainString;
OKzaN3 = t.OKzaN3;
name = env0_4 == null ? value3 : env0_4.name;
value = '';
value = Reflect.apply(formatToPlainString, intl, [OKzaN3, {name: name ?? value}]);
r0 = value;
}
return r0;
}
function _fun80270() { // fn#80270, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:4561, offset: 0x01e7433a, size: 132 bytes, params: 1, frame: 15
trackUserProfileAction({action: 'COPY_CONNECTED_ACCOUNT'});
const hapticUtilsNativeModule = require(4081) /* metro dependency 4081: HapticUtilsNative */;
const triggerHapticFeedback = hapticUtilsNativeModule.triggerHapticFeedback;
const HapticFeedbackTypes = hapticUtilsNativeModule.HapticFeedbackTypes;
const IMPACT_LIGHT = HapticFeedbackTypes.IMPACT_LIGHT;
Reflect.apply(triggerHapticFeedback, hapticUtilsNativeModule, [IMPACT_LIGHT]);
(require(6797) /* metro dependency 6797: ClipboardUtilsNative */).copy(env0_2);
(require(3856) /* metro dependency 3856: ToastUtils */).presentCopiedToClipboard();
}
function _fun80271() { // fn#80271, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:4752, offset: 0x01e743be, size: 58 bytes, params: 1, frame: 12
const items2 = [];
items2.push(application.name);
items2.push(env0_2);
return items2.join(', ');
}
function _fun80278(a0) { // fn#80278, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:6849, offset: 0x01e74883, size: 66 bytes, params: 2, frame: 16
return ((Component) => <Component account={a0} theme={theme} locale={locale} userId={userId} key={a0.id} />)(env1_17);
}
function _fun80279({application, identity}) { // fn#80279, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:6909, offset: 0x01e748c5, size: 87 bytes, params: 2, frame: 18
const value = environment.__proto__;
return ((Component) => <Component identity={identity} application={application} key={'' + identity.application_id + '-' + identity.provider_issued_user_id} />)(env1_18);
}
function _fun80282(a0) { // fn#80282, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:7424, offset: 0x01e74a45, size: 42 bytes, params: 2, frame: 15
return ((Component) => <Component applicationRoleConnection={a0} key={a0.application.id} />)(env1_19);
}
function onConfirm_80265() { // fn#80265, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10547:2815, offset: 0x01e73f00, size: 108 bytes, params: 1, frame: 18
const value = environment.__proto__.__proto__;
const appAnalyticsUtilsModule = require(4863) /* metro dependency 4863: AppAnalyticsUtils */;
const trackWithMetadata = appAnalyticsUtilsModule.trackWithMetadata;
const CONNECTED_ACCOUNT_VIEWED = AnalyticEvents.CONNECTED_ACCOUNT_VIEWED;
Reflect.apply(trackWithMetadata, appAnalyticsUtilsModule, [CONNECTED_ACCOUNT_VIEWED, {platform_type: account.type,
other_user_id: userId}]);
(importDefault(3853) /* metro dependency 3853: Linking */).openURL(env1_5);
}
global.__d(_fun80261, 10361, [31, 27, 1949, 3996, 6816, 661, 5044, 33, 1305, 4501, 697, 10362, 3860, 4002, 10365,
10366, 8514, 5043, 4915, 1423, 8872, 4863, 3853, 4081, 6797, 3856, 1244, 5278, 3859, 4573, 6249, 3868, 566,
10367, 6815, 10372,
2]) /* metro module 10361, dependencies: [31, 27, 1949, 3996, 6816, 661, 5044, 33, 1305, 4501, 697, 10362, 3860, 4002, 10365, 10366, 8514, 5043, 4915, 1423, 8872, 4863, 3853, 4081, 6797, 3856, 1244, 5278, 3859, 4573, 6249, 3868, 566, 10367, 6815, 10372, 2] */;
@@ -1,376 +1,473 @@
/* Metro module 10490; source: modules/user_profile/native/UserProfileContactButtons.tsx; dependencies: [31, 27, 3793, 661, 33, 4501, 697, 4578, 6771, 8514, 10341, 566, 3995, 10491, 4050, 1244, 8796, 8783, 8776, 4080, 5080, 4603, 10493, 8341, 6682, 8850, 9708, 2] */
import RelationshipStore from '../../../stores/RelationshipStore.tsx'; /* Metro dependency 3793 */
import UserUtils from '../../../utils/UserUtils.tsx'; /* Metro dependency 3995 */
import ActionSheetActionCreators from '../../action_sheet/native/ActionSheetActionCreators.tsx'; /* Metro dependency 4080 */
import UseAnalyticsLocations from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
import NavigateToLastChannel from '../../main_tabs_v2/native/navigateToLastChannel.tsx'; /* Metro dependency 8776 */
import RelationshipActionCreators from '../../../actions/RelationshipActionCreators.tsx'; /* Metro dependency 8783 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */
import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */
import * as FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
import * as ConstantsModule from '../../../Constants.tsx'; /* Metro dependency 661 */
import * as IndexNativeModule from '../../../intl/index.native.tsx'; /* Metro dependency 1244 */
import * as ButtonNativeModule from '../../../design/components/Button/native/Button.native.tsx'; /* Metro dependency 4578 */
import * as IconButtonNativeModule from '../../../design/components/Button/native/IconButton.native.tsx'; /* Metro dependency 8341 */
import * as UserProfileAnalyticsContextModule from '../UserProfileAnalyticsContext.tsx'; /* Metro dependency 8514 */
import * as GameRelationshipStoreHooksModule from '../../game_relationships/GameRelationshipStoreHooks.tsx'; /* Metro dependency 10341 */
function _fun81166(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#81166, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:6, offset: 0x01e9c624, size: 352 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 relationshipStore = importDefault(3793) /* metro dependency 3793: RelationshipStore */;
const env0_5 = (require(661) /* metro dependency 661: Constants */).RelationshipTypes;
let value = require(33) /* metro dependency 33 */;
ReactModule;
let value = JsxRuntimeModule;
const env0_6 = value.jsx;
const env0_7 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
object = {};
let PX_12 = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object2.threeButtonLayout = {'flexDirection': 'row', 'alignItems': 'center', gap: PX_12};
object2.flexGrow = {flex: 1};
object.threeButtonLayout = {'flexDirection': 'row', 'alignItems': 'center', gap: PX_12};
object.flexGrow = {flex: 1};
PX_12 = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object2.iconButtonGroup = {flexDirection: 'row', gap: PX_12};
const env0_8 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/user_profile/native/UserProfileContactButtons.tsx');
object.iconButtonGroup = {flexDirection: 'row', gap: PX_12};
const env0_8 = Reflect.apply(createStyles, value, [object]);
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileContactButtons.tsx');
exports.default = UserProfileContactButtons;
}
function FlatFriendButton(a0) { // fn#81167, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:374, offset: 0x01e9c784, size: 268 bytes, params: 2, frame: 21
var r10;
const icon = a0.icon;
const label = a0.label;
const hasCustomProfileTheme = a0.hasCustomProfileTheme;
const isPending = a0.isPending;
const object = {'icon': 0, 'label': 0, 'hasCustomProfileTheme': 0, 'isPending': 0};
silentSetPrototypeOf(object, null, undefined);
const value = copyDataProperties({}, a0, object, r10);
const r5 = isPending === false || hasCustomProfileTheme ? 'primary' : 'secondary';
r10 = r5 === 'primary' ? (importDefault(697) /* metro dependency 697: native */).colors.WHITE : (importDefault(697) /* metro dependency 697: native */).colors.CONTROL_SECONDARY_TEXT_DEFAULT;
const Button = (ButtonNativeModule).Button;
return (
<Button
text={label}
icon={((Component) => <Component color={r10} size="xs" />)(icon)}
accessibilityLabel={label}
variant={r5}
size="md"
grow
{...value}
/>
);
}
function FlatFriendButton(a0) { // fn#81167, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:374, offset: 0x01e9c784, size: 268 bytes, params: 2, frame: 21
var r10;
const icon = a0.icon;
const label = a0.label;
const hasCustomProfileTheme = a0.hasCustomProfileTheme;
const isPending = a0.isPending;
const object2 = {'icon': 0, 'label': 0, 'hasCustomProfileTheme': 0, 'isPending': 0};
silentSetPrototypeOf(object2, null, undefined);
const value = copyDataProperties({}, a0, object2, r10);
const r5 = isPending === false || hasCustomProfileTheme ? 'primary' : 'secondary';
r10 = r5 === 'primary' ? (importDefault(697) /* metro dependency 697: native */).colors.WHITE : (importDefault(697) /* metro dependency 697: native */).colors.CONTROL_SECONDARY_TEXT_DEFAULT;
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
return (
<Button
text={label}
icon={((Component) => <Component color={r10} size="xs" />)(icon)}
accessibilityLabel={label}
variant={r5}
size="md"
grow
{...value}
/>
);
}
function FriendRequestButton({user, hasCustomProfileTheme, location, ButtonComponent}) { // fn#81168, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:698, offset: 0x01e9c890, size: 575 bytes, params: 2, frame: 23
const newestAnalyticsLocation = (importDefault(6771) /* metro dependency 6771: useAnalyticsLocations */)().newestAnalyticsLocation;
const userProfileAnalyticsContextModule = require(8514) /* metro dependency 8514: UserProfileAnalyticsContext */;
const useUserProfileAnalyticsContext = userProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const env0_1 = Reflect.apply(useUserProfileAnalyticsContext, userProfileAnalyticsContextModule,
[]).trackUserProfileAction;
({}).location = location ?? newestAnalyticsLocation;
const value2 = (require(10341) /* metro dependency 10341: GameRelationshipStoreHooks */).useGameFriendsForUser(user.id);
const relationshipType = (require(566) /* metro dependency 566: flux */).useStateFromStores([RelationshipStore],
function() {
return RelationshipStore.getRelationshipType(user.id);
});
const env0_4 = (importDefault(3995) /* metro dependency 3995: UserUtils */).useName(user);
const FRIEND = RelationshipTypes.FRIEND;
if (relationshipType === FRIEND) {
return null;
}
const BLOCKED = RelationshipTypes.BLOCKED;
if (relationshipType === BLOCKED) {
return null;
}
if (value2.length > 0) {
return null;
}
const PENDING_INCOMING = RelationshipTypes.PENDING_INCOMING;
if (relationshipType === PENDING_INCOMING) {
return null;
}
const PENDING_OUTGOING = RelationshipTypes.PENDING_OUTGOING;
const value3 = relationshipType === PENDING_OUTGOING;
const r10 = value3 ? (require(10491) /* metro dependency 10491: UserClockIcon */).UserClockIcon : (require(4050) /* metro dependency 4050: UserPlusIcon */).UserPlusIcon;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const r9 = value3 ? Reflect.apply(string, intl, [t['fMm5q/']]) : Reflect.apply(string, intl, [t['7815ae']]);
string = intl.string;
return (
<ButtonComponent
icon={r10}
label={r9}
accessibilityHint={value3 ? Reflect.apply(string, intl, [t.H0Ql7N]) : Reflect.apply(string, intl,
[t.gc9aSx])}
onPress={onPress_81170}
hasCustomProfileTheme={hasCustomProfileTheme}
isPending={value3}
/>
);
}
function UserProfileContactButtons({user, disableMessage, disableCalls, location, hasCustomProfileTheme, style}) { // fn#81172, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:1866, offset: 0x01e9cbe0, size: 1683 bytes, params: 2, frame: 47
var r24;
var view;
var object3;
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
var object4;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
var zROXEV;
var formatToPlainString;
var zFfSFQ;
var object6;
var items2;
var object8;
var JJogjm;
var items4;
const IconButton = (require(8341) /* metro dependency 8341: IconButtonNative */).IconButton;
var object9;
var items5;
const userProfileAnalyticsContextModule = require(8514) /* metro dependency 8514: UserProfileAnalyticsContext */;
const useUserProfileAnalyticsContext = userProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const env0_1 = Reflect.apply(useUserProfileAnalyticsContext, userProfileAnalyticsContextModule,
[]).trackUserProfileAction;
const styles = useStyles();
const fluxModule = require(566) /* metro dependency 566: flux */;
const useStateFromStores = fluxModule.useStateFromStores;
let object = [RelationshipStore];
const relationshipType = Reflect.apply(useStateFromStores, fluxModule, [object, function() {
return RelationshipStore.getRelationshipType(user.id);
}]);
const value2 = (require(10341) /* metro dependency 10341: GameRelationshipStoreHooks */).useGameFriendsForUser(user.id);
const closure = function() {
trackUserProfileAction({action: 'SEND_MESSAGE'});
if (closeUserProfile != null) {
closeUserProfile();
function FriendRequestButton({user, hasCustomProfileTheme, location, ButtonComponent}) { // fn#81168, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:698, offset: 0x01e9c890, size: 575 bytes, params: 2, frame: 23
const newestAnalyticsLocation = (UseAnalyticsLocations)().newestAnalyticsLocation;
const useUserProfileAnalyticsContext = UserProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const env0_1 = Reflect.apply(useUserProfileAnalyticsContext, UserProfileAnalyticsContextModule,
[]).trackUserProfileAction;
({}).location = location ?? newestAnalyticsLocation;
const value2 = (GameRelationshipStoreHooksModule).useGameFriendsForUser(user.id);
const relationshipType = (require(566) /* metro dependency 566: flux */).useStateFromStores([RelationshipStore],
function() {
return RelationshipStore.getRelationshipType(user.id);
});
const env0_4 = (UserUtils).useName(user);
const FRIEND = RelationshipTypes.FRIEND;
if (relationshipType === FRIEND) {
return null;
}
importDefault(dependencyMap[20]).popAll();
importDefault(dependencyMap[21]).openPrivateChannel({recipientIds: user.id});
};
const {handlePress, text, inCall,
accessibilityHint} = (importDefault(10493) /* metro dependency 10493: usePrivateChannelCall */)(user.id, false,
function() {
trackUserProfileAction({action: 'VOICE_CALL'});
if (closeUserProfile != null) {
closeUserProfile();
const BLOCKED = RelationshipTypes.BLOCKED;
if (relationshipType === BLOCKED) {
return null;
}
});
const r18 = hasCustomProfileTheme ? 'primary' : 'secondary';
const colors = (importDefault(697) /* metro dependency 697: native */).colors;
const r27 = hasCustomProfileTheme ? colors.WHITE : colors.CONTROL_SECONDARY_TEXT_DEFAULT;
const FRIEND = RelationshipTypes.FRIEND;
if (relationshipType === FRIEND) {
object = {};
object3 = {flexDirection: 'row'};
object3.gap = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object.style = [object3, style];
object4 = {};
if (value2.length > 0) {
return null;
}
const PENDING_INCOMING = RelationshipTypes.PENDING_INCOMING;
if (relationshipType === PENDING_INCOMING) {
return null;
}
const PENDING_OUTGOING = RelationshipTypes.PENDING_OUTGOING;
const value3 = relationshipType === PENDING_OUTGOING;
const r10 = value3 ? (require(10491) /* metro dependency 10491: UserClockIcon */).UserClockIcon : (require(4050) /* metro dependency 4050: UserPlusIcon */).UserPlusIcon;
const intl = (IndexNativeModule).intl;
let string = intl.string;
const t = (IndexNativeModule).t;
const r9 = value3 ? Reflect.apply(string, intl, [t['fMm5q/']]) : Reflect.apply(string, intl, [t['7815ae']]);
string = intl.string;
zROXEV = t.zROXEV;
object4.text = Reflect.apply(string, intl, [zROXEV]);
object4.icon = ((ChatIcon) => <ChatIcon color={r27} size="xs" />)((require(6682) /* metro dependency 6682: ChatIcon */).ChatIcon);
string = intl.string;
zROXEV = t.zROXEV;
object4.accessibilityLabel = Reflect.apply(string, intl, [zROXEV]);
formatToPlainString = intl.formatToPlainString;
zFfSFQ = t.zFfSFQ;
object6 = {};
object6.name = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
object4.accessibilityHint = Reflect.apply(formatToPlainString, intl, [zFfSFQ, object6]);
object4.variant = r18;
object4.size = 'md';
object4.grow = true;
object4.onPress = closure;
object4.disabled = disableMessage;
items2 = [<View style={{flex: 1}}><Button {...object4} /></View>];
object8 = {};
string = intl.string;
JJogjm = t.JJogjm;
object8.text = Reflect.apply(string, intl, [JJogjm]);
object8.icon = ((PhoneCallIcon) => <PhoneCallIcon color={r27} size="xs" />)((require(8850) /* metro dependency 8850: PhoneCallIcon */).PhoneCallIcon);
string = intl.string;
JJogjm = t.JJogjm;
object8.accessibilityLabel = Reflect.apply(string, intl, [JJogjm]);
object8.accessibilityHint = accessibilityHint ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.focH1t);
object8.variant = r18;
object8.size = 'md';
object8.grow = true;
r24 = inCall ? handlePress : _fun81178;
object8.onPress = r24;
r24 = disableCalls || text == null;
object8.disabled = r24;
items2[1] = <View style={{flex: 1}}><Button {...object8} /></View>;
view = <View {...object} key="two-button-group">{items2}</View>;
} else if (relationshipType === RelationshipTypes.BLOCKED) {
object = {};
object3 = {flexDirection: 'row'};
object3.gap = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object.style = [object3, style];
object4 = {};
string = intl.string;
zROXEV = t.zROXEV;
object4.text = Reflect.apply(string, intl, [zROXEV]);
object4.icon = ((ChatIcon) => <ChatIcon color={r27} size="xs" />)((require(6682) /* metro dependency 6682: ChatIcon */).ChatIcon);
string = intl.string;
zROXEV = t.zROXEV;
object4.accessibilityLabel = Reflect.apply(string, intl, [zROXEV]);
formatToPlainString = intl.formatToPlainString;
zFfSFQ = t.zFfSFQ;
object6 = {};
object6.name = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
object4.accessibilityHint = Reflect.apply(formatToPlainString, intl, [zFfSFQ, object6]);
object4.variant = r18;
object4.size = 'md';
object4.grow = true;
object4.onPress = closure;
object4.disabled = disableMessage;
items2 = [<View style={{flex: 1}}><Button {...object4} /></View>];
object8 = {};
string = intl.string;
JJogjm = t.JJogjm;
object8.text = Reflect.apply(string, intl, [JJogjm]);
object8.icon = ((PhoneCallIcon) => <PhoneCallIcon color={r27} size="xs" />)((require(8850) /* metro dependency 8850: PhoneCallIcon */).PhoneCallIcon);
string = intl.string;
JJogjm = t.JJogjm;
object8.accessibilityLabel = Reflect.apply(string, intl, [JJogjm]);
object8.accessibilityHint = accessibilityHint ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.focH1t);
object8.variant = r18;
object8.size = 'md';
object8.grow = true;
r24 = inCall ? handlePress : _fun81178;
object8.onPress = r24;
r24 = disableCalls || text == null;
object8.disabled = r24;
items2[1] = <View style={{flex: 1}}><Button {...object8} /></View>;
view = <View {...object} key="two-button-group">{items2}</View>;
} else if (relationshipType === RelationshipTypes.PENDING_INCOMING) {
object = {};
object3 = {flexDirection: 'row'};
object3.gap = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object.style = [object3, style];
object4 = {};
string = intl.string;
zROXEV = t.zROXEV;
object4.text = Reflect.apply(string, intl, [zROXEV]);
object4.icon = ((ChatIcon) => <ChatIcon color={r27} size="xs" />)((require(6682) /* metro dependency 6682: ChatIcon */).ChatIcon);
string = intl.string;
zROXEV = t.zROXEV;
object4.accessibilityLabel = Reflect.apply(string, intl, [zROXEV]);
formatToPlainString = intl.formatToPlainString;
zFfSFQ = t.zFfSFQ;
object6 = {};
object6.name = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
object4.accessibilityHint = Reflect.apply(formatToPlainString, intl, [zFfSFQ, object6]);
object4.variant = r18;
object4.size = 'md';
object4.grow = true;
object4.onPress = closure;
object4.disabled = disableMessage;
items2 = [<View style={{flex: 1}}><Button {...object4} /></View>];
object8 = {};
string = intl.string;
JJogjm = t.JJogjm;
object8.text = Reflect.apply(string, intl, [JJogjm]);
object8.icon = ((PhoneCallIcon) => <PhoneCallIcon color={r27} size="xs" />)((require(8850) /* metro dependency 8850: PhoneCallIcon */).PhoneCallIcon);
string = intl.string;
JJogjm = t.JJogjm;
object8.accessibilityLabel = Reflect.apply(string, intl, [JJogjm]);
object8.accessibilityHint = accessibilityHint ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.focH1t);
object8.variant = r18;
object8.size = 'md';
object8.grow = true;
r24 = inCall ? handlePress : _fun81178;
object8.onPress = r24;
r24 = disableCalls || text == null;
object8.disabled = r24;
items2[1] = <View style={{flex: 1}}><Button {...object8} /></View>;
view = <View {...object} key="two-button-group">{items2}</View>;
} else if (value2.length === 0) {
var viewBindingProps = {style: [styles.threeButtonLayout, style]};
items4 = [<View style={styles.flexGrow}><FriendRequestButton user={user} location={location} hasCustomProfileTheme={hasCustomProfileTheme} ButtonComponent={FlatFriendButton} /></View>];
var viewBindingProps2 = {style: styles.iconButtonGroup};
var iconButtonProps3 = {icon: ((ChatIcon) => <ChatIcon color={r27} size="xs" />)((require(6682) /* metro dependency 6682: ChatIcon */).ChatIcon),
accessibilityLabel: intl.string(t.zROXEV)};
formatToPlainString = intl.formatToPlainString;
zFfSFQ = t.zFfSFQ;
object9 = {};
object9.name = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
iconButtonProps3.accessibilityHint = Reflect.apply(formatToPlainString, intl, [zFfSFQ, object9]);
iconButtonProps3.variant = r18;
iconButtonProps3.size = 'md';
iconButtonProps3.onPress = closure;
iconButtonProps3.disabled = disableMessage;
items5 = [<IconButton {...iconButtonProps3} />];
items5[1] = <IconButton icon={((PhoneCallIcon) => <PhoneCallIcon color={r27} size="xs" />)((require(8850) /* metro dependency 8850: PhoneCallIcon */).PhoneCallIcon)} accessibilityLabel={intl.string(t.JJogjm)} accessibilityHint={accessibilityHint ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.focH1t)} variant={r18} size="md" onPress={inCall ? handlePress : _fun81177} disabled={disableCalls || text == null} />;
items4[1] = <View {...viewBindingProps2}>{items5}</View>;
view = <View {...viewBindingProps} key="three-button-group">{items4}</View>;
} else {
object = {};
object3 = {flexDirection: 'row'};
object3.gap = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object.style = [object3, style];
object4 = {};
string = intl.string;
zROXEV = t.zROXEV;
object4.text = Reflect.apply(string, intl, [zROXEV]);
object4.icon = ((ChatIcon) => <ChatIcon color={r27} size="xs" />)((require(6682) /* metro dependency 6682: ChatIcon */).ChatIcon);
string = intl.string;
zROXEV = t.zROXEV;
object4.accessibilityLabel = Reflect.apply(string, intl, [zROXEV]);
formatToPlainString = intl.formatToPlainString;
zFfSFQ = t.zFfSFQ;
object6 = {};
object6.name = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
object4.accessibilityHint = Reflect.apply(formatToPlainString, intl, [zFfSFQ, object6]);
object4.variant = r18;
object4.size = 'md';
object4.grow = true;
object4.onPress = closure;
object4.disabled = disableMessage;
items2 = [<View style={{flex: 1}}><Button {...object4} /></View>];
object8 = {};
string = intl.string;
JJogjm = t.JJogjm;
object8.text = Reflect.apply(string, intl, [JJogjm]);
object8.icon = ((PhoneCallIcon) => <PhoneCallIcon color={r27} size="xs" />)((require(8850) /* metro dependency 8850: PhoneCallIcon */).PhoneCallIcon);
string = intl.string;
JJogjm = t.JJogjm;
object8.accessibilityLabel = Reflect.apply(string, intl, [JJogjm]);
object8.accessibilityHint = accessibilityHint ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.focH1t);
object8.variant = r18;
object8.size = 'md';
object8.grow = true;
r24 = inCall ? handlePress : _fun81178;
object8.onPress = r24;
r24 = disableCalls || text == null;
object8.disabled = r24;
items2[1] = <View style={{flex: 1}}><Button {...object8} /></View>;
view = <View {...object} key="two-button-group">{items2}</View>;
return (
<ButtonComponent
icon={r10}
label={r9}
accessibilityHint={value3 ? Reflect.apply(string, intl, [t.H0Ql7N]) : Reflect.apply(string, intl,
[t.gc9aSx])}
onPress={onPress_81170}
hasCustomProfileTheme={hasCustomProfileTheme}
isPending={value3}
/>
);
function FriendRequestButtonOnPress() { // fn#81170, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:1465, owner: FriendRequestButton.onPress, offset: 0x01e9caef, size: 165 bytes, params: 1, frame: 14
var moduleValue;
const relationshipTypeBinding = relationshipType;
const PENDING_OUTGOING = RelationshipTypes.PENDING_OUTGOING;
if (relationshipTypeBinding === PENDING_OUTGOING) {
moduleValue = require(8796) /* metro dependency 8796: UserProfileAlertUtils */;
moduleValue.confirmCancelFriendRequest({userDisplayName: env0_4, onConfirm: onConfirm_81171});
} else {
trackUserProfileAction({action: 'SEND_FRIEND_REQUEST'});
(importDefault(8783) /* metro dependency 8783: RelationshipActionCreators */).addRelationship({userId: user.id,
context: env0_2});
}
function onPressOnConfirm_81171() { // fn#81171, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:1558, owner: FriendRequestButton.onPress.onConfirm, offset: 0x01e9cb94, size: 76 bytes, params: 1, frame: 14
trackUserProfileAction({action: 'CANCEL_FRIEND_REQUEST'});
const defaultImport = RelationshipActionCreators;
defaultImport.cancelFriendRequest(user.id, env1_2);
}
}
}
return view;
}
function FriendRequestButtonOnPress() { // fn#81170, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:1465, owner: FriendRequestButton.onPress, offset: 0x01e9caef, size: 165 bytes, params: 1, frame: 14
var moduleValue;
const relationshipTypeBinding = relationshipType;
const PENDING_OUTGOING = RelationshipTypes.PENDING_OUTGOING;
if (relationshipTypeBinding === PENDING_OUTGOING) {
moduleValue = require(8796) /* metro dependency 8796: UserProfileAlertUtils */;
moduleValue.confirmCancelFriendRequest({userDisplayName: env0_4, onConfirm: onConfirm_81171});
} else {
trackUserProfileAction({action: 'SEND_FRIEND_REQUEST'});
(importDefault(8783) /* metro dependency 8783: RelationshipActionCreators */).addRelationship({userId: user.id,
context: env0_2});
function UserProfileContactButtons({user, disableMessage, disableCalls, location, hasCustomProfileTheme, style}) { // fn#81172, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:1866, offset: 0x01e9cbe0, size: 1683 bytes, params: 2, frame: 47
var r24;
var view;
var object2;
const Button = (ButtonNativeModule).Button;
var object5;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
var zROXEV;
var formatToPlainString;
var zFfSFQ;
var object7;
var items2;
var object10;
var JJogjm;
var items4;
const IconButton = (IconButtonNativeModule).IconButton;
var object11;
var items5;
const useUserProfileAnalyticsContext = UserProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
const env0_1 = Reflect.apply(useUserProfileAnalyticsContext, UserProfileAnalyticsContextModule,
[]).trackUserProfileAction;
const styles = useStyles();
const useStateFromStores = FluxModule.useStateFromStores;
let object = [RelationshipStore];
const relationshipType = Reflect.apply(useStateFromStores, FluxModule, [object, function() {
return RelationshipStore.getRelationshipType(user.id);
}]);
const value2 = (GameRelationshipStoreHooksModule).useGameFriendsForUser(user.id);
const closure = function() {
trackUserProfileAction({action: 'SEND_MESSAGE'});
if (closeUserProfile != null) {
closeUserProfile();
}
importDefault(dependencyMap[20]).popAll();
importDefault(dependencyMap[21]).openPrivateChannel({recipientIds: user.id});
};
const {handlePress, text, inCall,
accessibilityHint} = (importDefault(10493) /* metro dependency 10493: usePrivateChannelCall */)(user.id, false,
function() {
trackUserProfileAction({action: 'VOICE_CALL'});
if (closeUserProfile != null) {
closeUserProfile();
}
});
const r18 = hasCustomProfileTheme ? 'primary' : 'secondary';
const colors = (importDefault(697) /* metro dependency 697: native */).colors;
const r27 = hasCustomProfileTheme ? colors.WHITE : colors.CONTROL_SECONDARY_TEXT_DEFAULT;
const FRIEND = RelationshipTypes.FRIEND;
if (relationshipType === FRIEND) {
object = {};
object2 = {flexDirection: 'row'};
object2.gap = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object.style = [object2, style];
object5 = {};
string = intl.string;
zROXEV = t.zROXEV;
object5.text = Reflect.apply(string, intl, [zROXEV]);
object5.icon = ((ChatIcon) => <ChatIcon color={r27} size="xs" />)((require(6682) /* metro dependency 6682: ChatIcon */).ChatIcon);
string = intl.string;
zROXEV = t.zROXEV;
object5.accessibilityLabel = Reflect.apply(string, intl, [zROXEV]);
formatToPlainString = intl.formatToPlainString;
zFfSFQ = t.zFfSFQ;
object7 = {};
object7.name = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
object5.accessibilityHint = Reflect.apply(formatToPlainString, intl, [zFfSFQ, object7]);
object5.variant = r18;
object5.size = 'md';
object5.grow = true;
object5.onPress = closure;
object5.disabled = disableMessage;
items2 = [
<View style={{flex: 1}}>
<Button {...object5} />
</View>,
];
object10 = {};
string = intl.string;
JJogjm = t.JJogjm;
object10.text = Reflect.apply(string, intl, [JJogjm]);
object10.icon = ((PhoneCallIcon) => <PhoneCallIcon color={r27} size="xs" />)((require(8850) /* metro dependency 8850: PhoneCallIcon */).PhoneCallIcon);
string = intl.string;
JJogjm = t.JJogjm;
object10.accessibilityLabel = Reflect.apply(string, intl, [JJogjm]);
object10.accessibilityHint = accessibilityHint ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.focH1t);
object10.variant = r18;
object10.size = 'md';
object10.grow = true;
r24 = inCall ? handlePress : _fun81178;
object10.onPress = r24;
r24 = disableCalls || text == null;
object10.disabled = r24;
items2[1] = (
<View style={{flex: 1}}>
<Button {...object10} />
</View>
);
view = (
<View {...object} key="two-button-group">
{items2}
</View>
);
} else if (relationshipType === RelationshipTypes.BLOCKED) {
object = {};
object2 = {flexDirection: 'row'};
object2.gap = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object.style = [object2, style];
object5 = {};
string = intl.string;
zROXEV = t.zROXEV;
object5.text = Reflect.apply(string, intl, [zROXEV]);
object5.icon = ((ChatIcon) => <ChatIcon color={r27} size="xs" />)((require(6682) /* metro dependency 6682: ChatIcon */).ChatIcon);
string = intl.string;
zROXEV = t.zROXEV;
object5.accessibilityLabel = Reflect.apply(string, intl, [zROXEV]);
formatToPlainString = intl.formatToPlainString;
zFfSFQ = t.zFfSFQ;
object7 = {};
object7.name = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
object5.accessibilityHint = Reflect.apply(formatToPlainString, intl, [zFfSFQ, object7]);
object5.variant = r18;
object5.size = 'md';
object5.grow = true;
object5.onPress = closure;
object5.disabled = disableMessage;
items2 = [
<View style={{flex: 1}}>
<Button {...object5} />
</View>,
];
object10 = {};
string = intl.string;
JJogjm = t.JJogjm;
object10.text = Reflect.apply(string, intl, [JJogjm]);
object10.icon = ((PhoneCallIcon) => <PhoneCallIcon color={r27} size="xs" />)((require(8850) /* metro dependency 8850: PhoneCallIcon */).PhoneCallIcon);
string = intl.string;
JJogjm = t.JJogjm;
object10.accessibilityLabel = Reflect.apply(string, intl, [JJogjm]);
object10.accessibilityHint = accessibilityHint ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.focH1t);
object10.variant = r18;
object10.size = 'md';
object10.grow = true;
r24 = inCall ? handlePress : _fun81178;
object10.onPress = r24;
r24 = disableCalls || text == null;
object10.disabled = r24;
items2[1] = (
<View style={{flex: 1}}>
<Button {...object10} />
</View>
);
view = (
<View {...object} key="two-button-group">
{items2}
</View>
);
} else if (relationshipType === RelationshipTypes.PENDING_INCOMING) {
object = {};
object2 = {flexDirection: 'row'};
object2.gap = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object.style = [object2, style];
object5 = {};
string = intl.string;
zROXEV = t.zROXEV;
object5.text = Reflect.apply(string, intl, [zROXEV]);
object5.icon = ((ChatIcon) => <ChatIcon color={r27} size="xs" />)((require(6682) /* metro dependency 6682: ChatIcon */).ChatIcon);
string = intl.string;
zROXEV = t.zROXEV;
object5.accessibilityLabel = Reflect.apply(string, intl, [zROXEV]);
formatToPlainString = intl.formatToPlainString;
zFfSFQ = t.zFfSFQ;
object7 = {};
object7.name = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
object5.accessibilityHint = Reflect.apply(formatToPlainString, intl, [zFfSFQ, object7]);
object5.variant = r18;
object5.size = 'md';
object5.grow = true;
object5.onPress = closure;
object5.disabled = disableMessage;
items2 = [
<View style={{flex: 1}}>
<Button {...object5} />
</View>,
];
object10 = {};
string = intl.string;
JJogjm = t.JJogjm;
object10.text = Reflect.apply(string, intl, [JJogjm]);
object10.icon = ((PhoneCallIcon) => <PhoneCallIcon color={r27} size="xs" />)((require(8850) /* metro dependency 8850: PhoneCallIcon */).PhoneCallIcon);
string = intl.string;
JJogjm = t.JJogjm;
object10.accessibilityLabel = Reflect.apply(string, intl, [JJogjm]);
object10.accessibilityHint = accessibilityHint ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.focH1t);
object10.variant = r18;
object10.size = 'md';
object10.grow = true;
r24 = inCall ? handlePress : _fun81178;
object10.onPress = r24;
r24 = disableCalls || text == null;
object10.disabled = r24;
items2[1] = (
<View style={{flex: 1}}>
<Button {...object10} />
</View>
);
view = (
<View {...object} key="two-button-group">
{items2}
</View>
);
} else if (value2.length === 0) {
var viewBindingProps = {style: [styles.threeButtonLayout, style]};
items4 = [
<View style={styles.flexGrow}>
<FriendRequestButton
user={user}
location={location}
hasCustomProfileTheme={hasCustomProfileTheme}
ButtonComponent={FlatFriendButton}
/>
</View>,
];
var viewBindingProps2 = {style: styles.iconButtonGroup};
var iconButtonProps3 = {icon: ((ChatIcon) => <ChatIcon color={r27} size="xs" />)((require(6682) /* metro dependency 6682: ChatIcon */).ChatIcon),
accessibilityLabel: intl.string(t.zROXEV)};
formatToPlainString = intl.formatToPlainString;
zFfSFQ = t.zFfSFQ;
object11 = {};
object11.name = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
iconButtonProps3.accessibilityHint = Reflect.apply(formatToPlainString, intl, [zFfSFQ, object11]);
iconButtonProps3.variant = r18;
iconButtonProps3.size = 'md';
iconButtonProps3.onPress = closure;
iconButtonProps3.disabled = disableMessage;
items5 = [
<IconButton {...iconButtonProps3} />,
];
items5[1] = (
<IconButton
icon={((PhoneCallIcon) => <PhoneCallIcon color={r27} size="xs" />)((require(8850) /* metro dependency 8850: PhoneCallIcon */).PhoneCallIcon)}
accessibilityLabel={intl.string(t.JJogjm)}
accessibilityHint={accessibilityHint ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.focH1t)}
variant={r18}
size="md"
onPress={inCall ? handlePress : _fun81177}
disabled={disableCalls || text == null}
/>
);
items4[1] = (
<View {...viewBindingProps2}>
{items5}
</View>
);
view = (
<View {...viewBindingProps} key="three-button-group">
{items4}
</View>
);
} else {
object = {};
object2 = {flexDirection: 'row'};
object2.gap = (importDefault(697) /* metro dependency 697: native */).space.PX_12;
object.style = [object2, style];
object5 = {};
string = intl.string;
zROXEV = t.zROXEV;
object5.text = Reflect.apply(string, intl, [zROXEV]);
object5.icon = ((ChatIcon) => <ChatIcon color={r27} size="xs" />)((require(6682) /* metro dependency 6682: ChatIcon */).ChatIcon);
string = intl.string;
zROXEV = t.zROXEV;
object5.accessibilityLabel = Reflect.apply(string, intl, [zROXEV]);
formatToPlainString = intl.formatToPlainString;
zFfSFQ = t.zFfSFQ;
object7 = {};
object7.name = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
object5.accessibilityHint = Reflect.apply(formatToPlainString, intl, [zFfSFQ, object7]);
object5.variant = r18;
object5.size = 'md';
object5.grow = true;
object5.onPress = closure;
object5.disabled = disableMessage;
items2 = [
<View style={{flex: 1}}>
<Button {...object5} />
</View>,
];
object10 = {};
string = intl.string;
JJogjm = t.JJogjm;
object10.text = Reflect.apply(string, intl, [JJogjm]);
object10.icon = ((PhoneCallIcon) => <PhoneCallIcon color={r27} size="xs" />)((require(8850) /* metro dependency 8850: PhoneCallIcon */).PhoneCallIcon);
string = intl.string;
JJogjm = t.JJogjm;
object10.accessibilityLabel = Reflect.apply(string, intl, [JJogjm]);
object10.accessibilityHint = accessibilityHint ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.focH1t);
object10.variant = r18;
object10.size = 'md';
object10.grow = true;
r24 = inCall ? handlePress : _fun81178;
object10.onPress = r24;
r24 = disableCalls || text == null;
object10.disabled = r24;
items2[1] = (
<View style={{flex: 1}}>
<Button {...object10} />
</View>
);
view = (
<View {...object} key="two-button-group">
{items2}
</View>
);
}
return view;
function closeUserProfile() { // fn#81174, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:2187, owner: UserProfileContactButtons.closeUserProfile, offset: 0x01e9d273, size: 53 bytes, params: 1, frame: 12
const value = environment.__proto__;
(NavigateToLastChannel)();
(ActionSheetActionCreators).hideActionSheet();
}
function _fun81177() { // fn#81177, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:3443, offset: 0x01e9d348, size: 45 bytes, params: 1, frame: 11
let value = environment.__proto__;
value = require(9708) /* metro dependency 9708: ConfirmStartCall */;
return value.confirmStartCall(handlePress);
}
function _fun81178() { // fn#81178, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:4266, offset: 0x01e9d348, size: 45 bytes, params: 1, frame: 11
let value = environment.__proto__;
value = require(9708) /* metro dependency 9708: ConfirmStartCall */;
return value.confirmStartCall(handlePress);
}
}
}
function closeUserProfile() { // fn#81174, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:2187, owner: UserProfileContactButtons.closeUserProfile, offset: 0x01e9d273, size: 53 bytes, params: 1, frame: 12
const value = environment.__proto__;
(importDefault(8776) /* metro dependency 8776: navigateToLastChannel */)();
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet();
}
function _fun81177() { // fn#81177, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:3443, offset: 0x01e9d348, size: 45 bytes, params: 1, frame: 11
let value = environment.__proto__;
value = require(9708) /* metro dependency 9708: ConfirmStartCall */;
return value.confirmStartCall(handlePress);
}
function onPressOnConfirm_81171() { // fn#81171, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10676:1558, owner: FriendRequestButton.onPress.onConfirm, offset: 0x01e9cb94, size: 76 bytes, params: 1, frame: 14
trackUserProfileAction({action: 'CANCEL_FRIEND_REQUEST'});
const defaultImport = importDefault(8783) /* metro dependency 8783: RelationshipActionCreators */;
defaultImport.cancelFriendRequest(user.id, env1_2);
}
global.__d(_fun81166, 10490, [31, 27, 3793, 661, 33, 4501, 697, 4578, 6771, 8514, 10341, 566, 3995, 10491, 4050,
1244, 8796, 8783, 8776, 4080, 5080, 4603, 10493, 8341, 6682, 8850, 9708,
2]) /* metro module 10490, dependencies: [31, 27, 3793, 661, 33, 4501, 697, 4578, 6771, 8514, 10341, 566, 3995, 10491, 4050, 1244, 8796, 8783, 8776, 4080, 5080, 4603, 10493, 8341, 6682, 8850, 9708, 2] */;
File diff suppressed because it is too large. Load diff
Loaded 100 of 22448 files, more files were not shown because too many files have changed in this diff. Show more