/* Metro module 6792; source: modules/user_profile/native/UserProfileRolesCard.tsx; dependencies: [31, 27, 1945, 1938, 661, 33, 4501, 697, 6793, 3829, 6796, 6797, 3856, 1244, 6794, 6802, 6812, 4573, 5278, 566, 6814, 6815, 2] */
import GuildRoleStore from '../../../stores/GuildRoleStore.tsx'; /* Metro dependency 1938 */
import GuildMemberStore from '../../../stores/GuildMemberStore.tsx'; /* Metro dependency 1945 */
import TidaWebformExperiment from '../../guild/TidaWebformExperiment.tsx'; /* Metro dependency 6796 */
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 UserSettingsModule from '../../user_settings/UserSettings.tsx'; /* Metro dependency 3829 */
import * as ToastUtilsModule from '../../toast/native/ToastUtils.tsx'; /* Metro dependency 3856 */
import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
import * as RoleIconUtilsModule from '../../guild_boosting/native/RoleIconUtils.tsx'; /* Metro dependency 6793 */
import * as ShowSimpleActionSheetModule from '../../action_sheet/native/showSimpleActionSheet.tsx'; /* Metro dependency 6802 */
function _fun53473(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#53473, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:6, offset: 0x0134c8ff, size: 438 bytes, params: 8, frame: 23
const env0_0 = require;
const RoleItem2 = RoleItem;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = ConstantsModule;
const env0_7 = value.DEFAULT_ROLE_COLOR_HEX;
const env0_8 = value.MAX_VISUAL_ROLE_LENGTH;
value = require(33) /* metro dependency 33 */;
const env0_9 = value.jsx;
const env0_10 = value.Fragment;
const env0_11 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object = {roleContainer: {'flexDirection': 'row', 'gap': 8, 'flexWrap': 'wrap'}};
const object2 = {'flexDirection': 'row', 'alignItems': 'center', 'columnGap': 4, 'padding': 6};
const BACKGROUND_MOD_MUTED = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_MUTED;
object2.backgroundColor = BACKGROUND_MOD_MUTED;
object2.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
object.role = object2;
const object3 = {'borderRadius': null, 'height': 12, 'width': 12};
object3.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
object.roleDot = object3;
const env0_12 = Reflect.apply(createStyles, value, [object]);
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileRolesCard.tsx');
exports.default = UserProfileRolesCard;
exports.RoleItem = RoleItem2;
function RoleDot({color}) { // fn#53474, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:542, offset: 0x0134cab5, size: 77 bytes, params: 2, frame: 18
const styles = useStyles();
return ;
}
function RoleItem({role, guildId, color}) { // fn#53475, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:642, offset: 0x0134cb02, size: 598 bytes, params: 2, frame: 23
var r0;
var PressableHighlight;
var intl;
let value = undefined;
const styles = useStyles();
const r8 = role.name.length <= MAX_VISUAL_ROLE_LENGTH ? role.name : '' + role.name.slice(0,
MAX_VISUAL_ROLE_LENGTH) + '...';
const env0_3 = color ?? role.colorString;
const value5 = (RoleIconUtilsModule).useRoleIcon({guildId: guildId,
roleId: role.id, size: 12});
const tags = role.tags;
const env0_5 = value !== (tags == null ? value : tags.guild_connections);
const DeveloperMode = (UserSettingsModule).DeveloperMode;
const value6 = DeveloperMode.useSetting();
const defaultImport = TidaWebformExperiment;
const useExperiment = defaultImport.useExperiment;
const tidaWebformEnabled = Reflect.apply(useExperiment, defaultImport, [{location: 'RoleItem'},
{autoTrackExposure: false}]).tidaWebformEnabled;
const value7 = env0_3.useCallback(_fun53476, [role.id, r8]);
const value8 = env0_3.useCallback(_fun53477, [role, r8, value5]);
const RoleItemRenderContent2 = RoleItemRenderContent;
if (value6) {
PressableHighlight = (require(5278) /* metro dependency 5278: Pressables */).PressableHighlight;
var pressableHighlightProps = {onPress: value7, onLongPress: value6 && tidaWebformEnabled ? value8 : value,
accessibilityRole: 'button', accessibilityLabel: r8};
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
pressableHighlightProps.accessibilityHint = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.sMsaLg);
pressableHighlightProps.style = styles.role;
value = (
{RoleItemRenderContent2()}
);
r0 = value;
} else {
r0 = (
{RoleItemRenderContent2()}
);
}
return r0;
function _fun53476() { // fn#53476, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:1034, offset: 0x0134cd58, size: 77 bytes, params: 1, frame: 15
let value = environment.__proto__;
value = require(6797) /* metro dependency 6797: ClipboardUtilsNative */;
value.copy(role.id);
(ToastUtilsModule).roleIdCopied(env0_2);
}
function _fun53477() { // fn#53477, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:1113, offset: 0x0134cda5, size: 286 bytes, params: 1, frame: 19
var environment;
var moduleValue;
var push;
let object = {};
const value = environment.__proto__;
const intl = (IndexNativeModule).intl;
const string = intl.string;
const t = (IndexNativeModule).t;
object.label = Reflect.apply(string, intl, [t.sMsaLg]);
object.onPress = onPress_53478;
const items2 = [object];
if (ReactNativeModule.View != null) {
moduleValue = require(6794) /* metro dependency 6794: RoleIconUtils */;
if ((moduleValue.getRoleIconData(role) ?? ({})).customIconSrc != null) {
push = items2.push;
object = {};
object.label = intl.string(t['8xHmxo']);
object.onPress = onPress_53479;
Reflect.apply(push, items2, [object]);
}
}
(ShowSimpleActionSheetModule).showSimpleActionSheet({'key': 'RoleItem',
'options': null, 'hasIcons': false, options: items2});
function onPress_53478() { // fn#53478, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:1172, offset: 0x0134cec3, size: 77 bytes, params: 1, frame: 15
let value = environment.__proto__.__proto__;
value = require(6797) /* metro dependency 6797: ClipboardUtilsNative */;
value.copy(role.id);
(ToastUtilsModule).roleIdCopied(env1_2);
}
function onPress_53479() { // fn#53479, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:1375, offset: 0x0134cf10, size: 67 bytes, params: 1, frame: 14
let value = environment.__proto__.__proto__;
value = require(6797) /* metro dependency 6797: ClipboardUtilsNative */;
value.copy(customIconSrc);
(ToastUtilsModule).presentCopiedToClipboard();
}
}
function RoleItemRenderContent() { // fn#53480, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:1537, owner: RoleItem.renderContent, offset: 0x0134cf53, size: 259 bytes, params: 1, frame: 22
var r5;
var value5;
var VerifiedRoleIcon;
var roleBinding;
const jsxRuntimeEnv1_10Binding = jsxRuntimeEnv1_10;
if (env0_5) {
value5 = undefined;
VerifiedRoleIcon = importDefault(6812) /* metro dependency 6812: VerifiedRoleIcon */;
roleBinding = role;
r5 = (
);
} else {
r5 = ;
}
const items2 = [r5, ReactNativeModule.View];
const Text = (TextModule).Text;
items2[2] = (
{env0_2}
);
return (
<>
{items2}
>
);
}
}
function RolesList({guildMemberRoleIds, guildId}) { // fn#53481, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:2057, offset: 0x0134d056, size: 159 bytes, params: 2, frame: 20
const styles = useStyles();
const value2 = (require(566) /* metro dependency 566: flux */).useStateFromStoresArray([GuildRoleStore],
function() {
return GuildRoleStore.getManyRoles(guildId,
guildMemberRoleIds).sort(require(dependencyMap[20]).sortRolesByVerification);
}, [guildMemberRoleIds, guildId]);
return (
value2.length === 0
? null
: (
{value2.map(_fun53483)}
)
);
function _fun53483(a0) { // fn#53483, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:2299, offset: 0x0134d13c, size: 48 bytes, params: 2, frame: 15
return (
);
}
}
function UserProfileRolesCard({userId, guildId, style}) { // fn#53484, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6970:2439, offset: 0x0134d16c, size: 254 bytes, params: 2, frame: 24
var r0;
var UserProfileCard;
var intl;
const r8 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildMemberStore], function() {
return GuildMemberStore.getMember(guildId, userId);
}, [userId, guildId])?.roles ?? [];
if (r8.length === 0) {
r0 = null;
} else {
UserProfileCard = importDefault(6815) /* metro dependency 6815: UserProfileCard */;
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r0 = (
);
}
return r0;
}
}
global.__d(_fun53473, 6792, [31, 27, 1945, 1938, 661, 33, 4501, 697, 6793, 3829, 6796, 6797, 3856, 1244, 6794, 6802,
6812, 4573, 5278, 566, 6814, 6815,
2]) /* metro module 6792, dependencies: [31, 27, 1945, 1938, 661, 33, 4501, 697, 6793, 3829, 6796, 6797, 3856, 1244, 6794, 6802, 6812, 4573, 5278, 566, 6814, 6815, 2] */;