/* Metro module 6793; source: modules/guild_boosting/native/RoleIconUtils.tsx; dependencies: [31, 1938, 1867, 33, 566, 6794, 6795, 1244, 2] */
import GuildStore from '../../../stores/GuildStore.tsx'; /* Metro dependency 1867 */
import GuildRoleStore from '../../../stores/GuildRoleStore.tsx'; /* Metro dependency 1938 */
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 FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */
import * as IndexNativeModule from '../../../intl/index.native.tsx'; /* Metro dependency 1244 */
function _fun53486(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#53486, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6971:6, offset: 0x0134d28a, size: 183 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
(FileImportTrackerModule).fileFinishedImporting('modules/guild_boosting/native/RoleIconUtils.tsx');
exports.useRoleIcon = useRoleIcon;
exports.getRoleIcon = getRoleIcon;
function useRoleIcon({guildId, roleId, size}) { // fn#53487, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6971:235, offset: 0x0134d341, size: 184 bytes, params: 2, frame: 19
size = size === undefined ? 20 : size;
const value2 = (FluxModule).useStateFromStoresObject([GuildStore,
GuildRoleStore], _fun53488, [guildId, roleId]);
const guild = value2.guild;
return guild.useMemo(_fun53489, [guild, value2.role, roleId, size]);
function _fun53488() { // fn#53488, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6971:316, offset: 0x0134d3f9, size: 86 bytes, params: 1, frame: 16
const value = environment.__proto__;
const guildStoreBinding = GuildStore;
const getGuild = guildStoreBinding.getGuild;
const guildIdBinding = guildId;
return {guild: Reflect.apply(getGuild, guildStoreBinding, [guildIdBinding]),
role: guildIdBinding != null && roleId != null ? GuildRoleStore.getRole(guildId, roleId) : undefined};
}
function _fun53489() { // fn#53489, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6971:433, offset: 0x0134d44f, size: 246 bytes, params: 1, frame: 18
var r1;
var r7;
var moduleValue2;
var customIconSrc;
var unicodeEmoji;
if (guild != null) {
if (roleId == null) {
return undefined;
}
var value3 = undefined;
var moduleValue = require(6794) /* metro dependency 6794: RoleIconUtils */;
if (moduleValue.canGuildUseRoleIcons(guild, role)) {
moduleValue2 = require(6794) /* metro dependency 6794: RoleIconUtils */;
r1 = moduleValue2.getRoleIconData(role) ?? ({});
customIconSrc = r1.customIconSrc;
unicodeEmoji = r1.unicodeEmoji;
r7 = customIconSrc != null ? {uri: customIconSrc} : value3;
if (r7 != null) {
return ((Component) => )(importDefault(6795) /* metro dependency 6795: RoleIcon */);
}
if (unicodeEmoji != null) {
return ((Component) => )(importDefault(6795) /* metro dependency 6795: RoleIcon */);
}
return undefined;
}
}
}
}
function getRoleIcon({guildId, roleId, size}) { // fn#53490, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6971:752, offset: 0x0134d545, size: 299 bytes, params: 2, frame: 18
var r0;
var object;
var customIconSrc;
var unicodeEmoji;
var name;
const intl = (IndexNativeModule).intl;
var formatToPlainString;
const t = (IndexNativeModule).t;
var property;
const guild = GuildStore.getGuild(guildId);
if (guild != null) {
if (roleId == null) {
return undefined;
}
var role = GuildRoleStore.getRole(guild.id, roleId);
if (role == null) {
return undefined;
}
var value4 = undefined;
var moduleValue = require(6794) /* metro dependency 6794: RoleIconUtils */;
if (moduleValue.canGuildUseRoleIcons(guild, role)) {
r0 = (require(6794) /* metro dependency 6794: RoleIconUtils */).getRoleIconData(role) ?? ({});
customIconSrc = r0.customIconSrc;
unicodeEmoji = r0.unicodeEmoji;
if (customIconSrc != null) {
object = {source: customIconSrc};
name = role.name;
object.name = name;
object.size = size;
object.unicodeEmoji = unicodeEmoji == null ? value4 : unicodeEmoji.surrogates;
formatToPlainString = intl.formatToPlainString;
property = t['9+YWrE'];
name = role.name;
object.alt = Reflect.apply(formatToPlainString, intl, [property, {name: name}]);
return object;
}
if ((unicodeEmoji == null ? value4 : unicodeEmoji.surrogates) != null) {
object = {source: customIconSrc};
name = role.name;
object.name = name;
object.size = size;
object.unicodeEmoji = unicodeEmoji == null ? value4 : unicodeEmoji.surrogates;
formatToPlainString = intl.formatToPlainString;
property = t['9+YWrE'];
name = role.name;
object.alt = Reflect.apply(formatToPlainString, intl, [property, {name: name}]);
return object;
}
return undefined;
}
}
}
}
global.__d(_fun53486, 6793, [31, 1938, 1867, 33, 566, 6794, 6795, 1244,
2]) /* metro module 6793, dependencies: [31, 1938, 1867, 33, 566, 6794, 6795, 1244, 2] */;